如何使用 DANN 改进神经网络

文章目录

  • 一、说明
  • 二、语言模型真的理解语言吗?
  • 三、了解分配转变
    • 3.1 样本选择偏差
    • 3.2 非静止环境
    • 3.3 领域适配挑战
    • 3.4 概念漂移
  • 四、对领域对抗训练的介绍

一、说明

   由于其多功能性,神经网络是大多数现代机器学习管道的主要内容。他们处理非结构化数据的能力是一种祝福,因为它让我们能够部分地——部分地——在这里发挥重要作用——用计算规模(更便宜、更容易获得)取代领域洞察力(昂贵且难以获得)。

   然而,事实证明,盲目地堆叠层层并在问题上投入资金并不像某些人希望你相信的那样有效。训练过程中有几个潜在的问题,规模无法解决,其中最主要的是分布转移和泛化。当我们以意想不到的方式/格式向它们提供输入时,神经网络就会中断。例如,尽管 LLM 能力取得了令人瞩目的进步,但这一直是他们最难解决的部分之一——
(本文为国外同行所写)

二、语言模型真的理解语言吗?

   有几种方法可以改进泛化,例如实现稀疏性和/或正则化以减少过度拟合,并应用数据增强来使模型千峰化并阻止它们成为如此精致的公主。

   在本文中,我们将研究超级有趣的“领域对抗神经网络”(简介)和“神经网络的领域对抗训练”(更多细节),以研究领域对抗神经网络 (DANN) 的技术以及它如何提高泛化。为了充分理解其影响,我们将首先介绍重要的背景信息——

   什么是分配转移: 分布偏移,也称为数据集偏移或协变量偏移,是机器学习中的一种现象,其中输入数据(特征或协变量)的统计分布在训练和部署环境之间发生变化。当模型遇到来自不同分布的数据时,这可能会导致在特定数据分布上训练的模型的性能显著下降。
在这里插入图片描述

   你们中的一些人可能已经足够大了,还记得世界从黑白到有色的时候。那是什么感觉?很想听听你们老人的意见。图片来源
分销转移的可能来源: 分布偏移可能来自各种来源,包括样本选择偏差,其中训练数据不能反映真实世界的分布;非静止环境,数据随时间变化;领域适应挑战,在一个领域训练的模型在另一个领域中挣扎;数据收集和标签问题;对抗性攻击;和概念漂移,改变特征和目标变量之间的关系(这是我在尝试构建向人们出售贷款的 AI 时处理的问题)博士。
   缓解分销转移:良好的数据 + 对抗性增强 + 持续监控可以创造奇迹。有些人试图使用复杂的增强方案,但这毫无意义。保持简单 - 并加入一些随机噪音。效果非常好。还有助于避免解决方案中不必要的复杂性。
   有了这些,我们将讨论 DANN 以及为什么我如此喜欢它们——

  •    什么是DANN- DANN 基于一个简单的观察——我们知道,如果神经网络(或任何 AI 模型)在未经训练的相关数据集上表现良好,那么它就具有很好的泛化能力。因此,在亚马逊上的评论(源数据集)上训练一个模型,看看它在 Reddit(目标数据集)上的评论上表现如何。我们想要像皇马瓦德里德的裘德那样表现的AI模型,而不是像曼联的桑乔那样。
  •    DANN 如何实现峰值泛化 - DANN 理论上通过学习域不变特征来实现域不变性 - 这些特征对主要任务有用,同时在源域和目标域之间不加区分。这是通过遵循领域对抗训练来完成的。
  •    领域对抗训练: 领域对抗训练 (DAT) 涉及训练具有两个相互竞争目标的神经网络:准确执行主要任务(例如,分类)和混淆试图区分源域和目标域数据的领域分类器。这种对抗性过程鼓励网络学习对任务有用但独立于域的特征,从而提高目标域的性能,即使标记数据有限。实现这一点的关键组件是梯度反转层,它在正向传递期间充当身份函数,但在反向传播期间反转梯度,从而在特征提取器和域分类器之间创建最小最大值博弈。
    在这里插入图片描述
    图 1:所提出的架构包括一个深度特征提取器(绿色)和一个深度标签预测器(蓝色),它们共同构成了一个标准的前馈架构。U监督域适应是通过添加一个域分类器(红色)来实现的,该分类器通过梯度反转层连接到特征提取器,该梯度反转层在基于反向传播的训练期间将梯度乘以某个负常数。否则,训练将按标准进行,并将标签预测损失(对于源示例)和域分类损失(对于所有样本)降至最低。梯度反转可确保两个域上的特征分布相似(域分类器尽可能无法区分),从而产生域不变特征
    我真的很喜欢 DANN 背后的想法,因为它很直观,可以作为量化其他复杂测量的良好代理,并且可以塑造成各种领域/模型。让我们在本文的其余部分更详细地探讨这些想法。这些论文本身已经很老了,但我认为这个想法与构建现代系统非常相关。

   我们在情感分析分类基准上的实验表明,我们的用于域自适应算法的神经网络比标准神经网络或 SVM 具有更好的性能,即使使用最先进的边缘化堆叠去噪自动编码器提取的输入特征进行训练

   我提供各种咨询和顾问服务。如果您想探索我们如何合作,请通过我的任何社交网站与我联系 这里 或回复这封电子邮件。

在这里插入图片描述

   适应对提取特征分布的影响(最好以彩色查看)。该图显示了t-SNE (van der Maaten, 2013) CNN 激活的可视化 (a) 在没有进行适应的情况下,以及 (b) 当我们的适应程序被纳入训练时。蓝点对应于源域示例,而红色点对应于目标域。在所有情况下,我们方法中的适应使特征的两个分布更加接近。
   加入 150K+ 技术领导者的行列,通过我的免费时事通讯 AI Made Simple 直接在您的收件箱中深入了解 AI 中最重要的想法

三、了解分配转变

   我将跳过重新解释什么是分配转移,因为我们已经在亮点中做到了,我相信你的智慧。如果你需要额外的帮助,可以看一个更传统的例子,说明人工智能中的分配转变是什么样子的——
在这里插入图片描述

来源。在特征 1 上训练的模型显然需要考虑这些变化。
   人们往往会低估转变发生的频率和方式。在介绍如何修复它之前,让我们先了解一些示例。其中一些会相互重叠,但我将它们分开,以展示人们在应对这些挑战时可以采取的不同观点。

3.1 样本选择偏差

   当训练数据不能准确表示真实世界的数据分布时,就会发生样本选择偏差。这种不匹配可能导致模型在训练数据上表现良好,但对真实场景的泛化效果不佳。

   示例 1:面部识别系统和人口统计偏差:
不久前,有一个关于 SOTA Vision 模型的故事,该模型旨在在比赛中跟踪足球。然而,它最终追踪了裁判的光头。我猜数据集没有任何秃头人的俯角图片,导致它被平滑度弄糊涂了。
在这里插入图片描述

图片来源。我敢肯定,X-Risk的工作人员会加班加点地说服你,这实际上是人工智能已经决定将秃头人从基因库中删除,并要求我们用他们的头作为球的证据。
   示例 2:医学诊断和医院特定偏差:
根据特定医院的数据训练的疾病预测模型可能无法很好地推广到来自不同医院或人口统计学的患者。这是因为医疗实践、患者人口统计甚至疾病患病率在不同的医疗环境中可能会有很大差异。

3.2 非静止环境

   在许多实际应用中,数据不是静态的。随着世界的变化,随着时间的流逝和数据分布的发展,基于历史数据训练的模型可能会变得不那么准确。

   示例 1:金融市场和不断变化的趋势:
由于不断变化的市场动态、新法规或不可预见的全球事件等因素,根据历史股价训练的股票预测模型可能会随着时间的推移而变得不那么准确。
   示例 2:语言模型和语言转换:
在社交媒体数据上训练的语言模型需要适应不断变化的语言使用、俚语(我最近了解了 brainrot 这个词)和新兴话题。不同的世代甚至可能完全改变词语(“可怕”这个词已经与原来的含义有很大的偏差)或使用不同类型的交流方式(一代人可能会受到《是的部长》和《硅谷》等节目的启发,使其更具讽刺意味)。更不用说文化总是在与群体互动的 b/c 中转移,这可能会导致新的语言模式/改变修辞手法。

3.3 领域适配挑战

   域适应解决了将在一个域(源域)上训练的模型应用于另一个不同但相关的域(目标域)的挑战。即使任务保持不变,数据特征的差异也会显著影响性能。

   示例 1:医学图像分割 — 不同模式:
在脑部 MRI 扫描中训练用于分割肿瘤的模型在应用于脑部 CT 扫描时可能表现不佳。尽管这两种模式都提供了大脑的图像,但成像技术和图像特征的差异需要域适应。
   示例 2:自然语言处理 — 评论与推文:
在产品评论上训练的情绪分析模型可能会难以处理推文等社交媒体帖子。较短的长度、非正式的语言和在推文中使用俚语与产品评论的更有条理的语言相比,创造了一个不同的领域。
对抗性攻击:故意愚弄模型
对抗性攻击涉及故意制作恶意输入数据以利用机器学习模型中的漏洞。这些攻击旨在导致模型做出错误的预测,从而可能导致严重后果。

   示例 1:图像识别 — 对抗性噪声:
在图像中添加微妙的、精心制作的噪声对人类来说可能是察觉不到的,但会导致图像识别系统对其进行错误分类。例如,攻击者可能会对停车标志图像进行微小的修改,从而导致自动驾驶汽车的视觉系统误解它。
结果表明,Kaggle CIFAR-10测试数据集中67.97%的自然图像和16.04%的ImageNet(ILSVRC 2012)测试图像仅修改一个像素即可被扰动到至少一个目标类别,平均置信度分别为74.03%和22.91%。我们还在原始 CIFAR-10 数据集上显示了相同的漏洞。因此,拟议的攻击在极端有限的情况下探索了对抗性机器学习的不同方式,表明当前的 DNN 也容易受到这种低维攻击。

-一个像素攻击

   示例 2:垃圾邮件检测 — 不断发展的垃圾邮件技术:
垃圾邮件发送者不断改进其技术以绕过垃圾邮件过滤器。垃圾邮件检测模型需要适应这些不断发展的策略,例如使用细微的拼写错误或插入隐藏的文本,以保持有效。我们正在研究类似的东西,以探索多模态人工智能的安全性,以及对抗性黑客如何能够绕过那里的任何安全检查。
   示例 3:语言模型攻击:
   与视觉模型类似,我们可以攻击语言模型以越狱它们——撤消通过对齐或护栏实现的保护——或者让它们吐出训练数据。这通常涉及使用提示注入的类型,其中最著名的是 Deepmind 的 Poem Attack。
在这里插入图片描述

从 ChatGPT 中提取数据

3.4 概念漂移

   当输入要素与目标变量之间的基础关系随时间变化时,就会发生概念漂移。如果我们不小心,这会导致完全摧毁旧模型。

   示例 1:信用评分 — 不断变化的经济因素:
由于经济状况或消费者行为的变化,几年前预测高信用度的因素在今天可能不成立。信用评分模型需要适应这些不断变化的关系,以确保公平和准确的评估。
   示例 2:推荐系统 — 改变用户偏好:
推荐系统依赖于对用户偏好的理解,这些偏好会随着时间的推移而变化。根据过去的购买历史推荐产品的模型需要适应不断变化的口味和偏好,以保持相关性。
修复分配转移围绕着通常的嫌疑人——

   数据质量和数量:确保训练数据包含实际部署中预期的多样性。最重要的是,通过对现有数据应用变换(例如,轮作、裁剪、颜色变化)来扩展训练数据集,从而提高对变化的鲁棒性。一些团队试图在数据增强方面变得过于聪明,实施复杂的方案来解决数据集的局限性。你可能不需要那个。在你决定变得太聪明之前,请考虑以下来自 TrivialAugment 的陈述-

   其次,TA教导我们永远不要忽视最简单的解决方案。有很多复杂的方法可以自动查找增强策略,但迄今为止,最简单的方法被忽略了,即使它的性能相当或更好

   最后,您应该记住,探索不同的特征提取以构建更丰富的数据表示有很多好处。这是提高模型性能的最佳方法之一。

   集成方法: 结合来自不同数据子集或不同架构训练的多个模型的预测,以提高对单个模型偏差的弹性。

   持续学习和模型更新: 实施持续学习和适应新数据的系统,确保模型在数据分布的发展中保持相关性。重新训练变得昂贵,这也是简单模型为王的另一个原因。

   稳健的评估和监控: 评估不同数据集上的模型并监控一段时间内的性能,以检测和解决潜在的分布变化。

   随着对分布转移的探索,让我们来看看 DANN 以及它如何帮助我们更好地处理域转移。

   我们展示了我们的方法在两个不同的分类问题(文档情感分析和图像分类)上的成功,其中在标准基准上实现了最先进的领域适应性能。我们还验证了在人员重新识别应用背景下描述符学习任务的方法。

四、对领域对抗训练的介绍

   本次培训中领域适应的关键是培训过程。DANN 惊人性能的秘诀在于他们的架构。

   我们表明,这种适应行为几乎可以在任何前馈模型中实现,方法是用几个标准层和一个新的梯度反转层来增强它。由此产生的增强架构可以使用标准反向传播和随机梯度下降进行训练,因此可以使用任何深度学习包轻松实现。

   让我们更深入地分析一下。为此,我们将再次拉出架构图。
在这里插入图片描述

   更多的人工智能研究人员应该在他们的图表中使用漂亮的颜色
   其核心思想是训练模型在特定任务上表现良好,同时难以区分源域和目标域。

   以下是主要组件-

   特征提取器:模型的第一部分学习从输入数据中提取特征。这些特征应该与主要任务(例如,分类)相关,同时在两个领域中尽可能相似。

   标签预测因子:该组件侧重于主要任务,利用提取的特征进行预测(例如,对图像进行分类)。它通常仅根据源域中的标记数据进行训练。

   域分类器:此部件充当特征提取器的对手。其目标是确定给定的特征表示是源域还是目标域。

   对抗训练:训练过程涉及特征提取器和域分类器之间的连续来回切换:

   特征提取器试图学习欺骗域分类器的表示,从而难以区分域。
   反过来,域分类器会尝试提高其根据提供的特征区分域的能力。从数学上讲,这些方程决定了训练——
在这里插入图片描述

   这与标准深度学习基本相似。这里的θ代表参数,μ是学习率。需要注意的重要一点在等式 13 中。首先,我们得到了 λ,它权衡了我们的域损失。其余的一切照常进行,“唯一的区别是,在(13)中,类和域预测变量的梯度被减去,而不是相加(差异很重要,否则SGD会尝试使不同域的特征不同,以尽量减少域分类损失)。

   很整洁,对吧?现在让我们介绍最后一位重要球员。

   梯度反转层 (GRL):这个特殊层是 DAT 中的关键元素。它位于特征提取器和域分类器之间。在前向传递(预测)期间,它只是通过梯度。但是,在向后传递(学习)期间,它会反转梯度的方向。

   这是有效的,因为它利用了域分类器、主任务和特征提取器之间的动态。特征提取器在反向传播期间接收到两个冲突信号:

   从标签预测器:更新参数以提高任务性能(例如,分类准确性)。
   从域分类器(通过 GRL):以相反的方向更新参数,使域分类器更难区分域。
   最终结果是提取出对主要任务仍然有用的特征,但关于域来源的信息越来越少。换句话说,它学习域不变特征。

在这里插入图片描述

   在某种程度上,这让我想起了麻省理工学院的优秀论文,“对抗性示例不是错误,它们是功能”。 作者向我们提出了一个简单的理论——图像分类器中有两种类型的信息特征——脆弱特征和鲁棒特征。这两个特征都可用于对高精度图像进行分类,但脆弱的特征会在扰动时断裂,而鲁棒特征则不会。
在这里插入图片描述

   对抗性攻击攻击脆弱的特征。
GRL的集成似乎起到了与鲁棒特征提取类似的作用——它使我们能够提取最鲁棒的特征。

   把所有这些放在一起,就得到了DANN。它优雅、直观且性能卓越。每天都有很多新的人工智能论文发表,但我认为浏览旧的出版物,从第一性原理重新发展想法会很有帮助。希望这篇文章能让你更多地探索研究的这一方面。您认为哪些人工智能领域没有得到足够的尊重?很想知道。
在这里插入图片描述

   在标准办公室(Saenko et al., 2010)数据集上对不同发展议程方法的准确性评估。所有方法(SA除外)均在“完全
转导”方案中进行评估(一些结果转载自Long和Wang,2015)。
我们的方法(最后一行)优于竞争对手,设置了新的最先进的技术。
   如果您喜欢这篇文章并希望分享它,请参阅以下指南。

   这件作品就是这样。感谢您抽出宝贵时间。与往常一样,如果您有兴趣与我合作或查看我的其他作品,我的链接将位于此电子邮件/帖子的末尾。如果你在这篇文章中发现了价值,我将不胜感激你与更多的人分享。正是像您这样的口碑推荐帮助我成长。

本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若转载,请注明出处:/a/673367.html

如若内容造成侵权/违法违规/事实不符,请联系我们进行投诉反馈qq邮箱809451989@qq.com,一经查实,立即删除!

相关文章

mathtype7最新产品密钥激活2024最新

MathType是一款专业的数学公式编辑器,广泛应用于教育、科研和出版等领域。随着在线教育和远程工作的兴起,MathType的使用场景更加广泛,成为教师、学生、研究人员和专业作家必不可少的工具之一。本文将详细介绍MathType的功能特点、操作步骤以…

HTML 总结

HTML 简介 HTML(HyperText MarkupLanguage): 超文本标记语言 超文本 : 普通文本指的是只有文字没有图片 ,视频, 音乐,而超文本就有 标记语言 : 由标签构成的语言 HTML的标签都是预定好的, 如<a> </a> 为超链接 HTML代码直接在浏览器中运行,由浏览器内核进行解…

C++自定义String类

自定义一个String类型,该类包含一个指向字符串的指针和一个统计对象数量的计数器. 代码如下: //string.h #pragma once //String类型 #include <iostream> using namespace std;class String { private:char* m_str;//保存字符串的地址static int num_strings;//创建的对…

Nginx服务的主配置文件及配置举例

Nginx服务的主配置文件 安装Nginx认识Nginx服务全局配置I/O 事件配置HTTP 配置日志格式设定 访问状态统计配置查看Nginx已安装模块修改 nginx.conf 配置文件重启服务&#xff0c;访问测试 基于授权的访问控制准备用户密码认证文件修改 nginx.conf 配置文件重启服务&#xff0c;…

Xcode下载安装

1.Xcode可用版本判断&#xff1a; 2.Xcode下载安装&#xff1a; 方案1:AppStore 下载更新 若方案1失败则 方案2:指定版本Xcode包下载解压安装 苹果下载 3.Xcode命令行工具插件安装 xcode-select --install 备注&#xff1a; xcode_x.x.x.xip(压缩包存在时效性(使用前24h/…

【目录扫描】feroxbuster v2.10.2 字典整合版

# 简介 Feroxbuster是一款强大的目录扫描工具&#xff0c;Feroxbuster的主要功能是基于字典的目录扫描&#xff0c;并且默认使用Seclists字典进行使用&#xff01;并且具有快速和高效的特点&#xff0c;采用了多线程的技术来加快扫描速度。还支持暂停交互式设置等&#xff01;…

从一个猜数游戏开始

标题 一、从源码中学习1.1 源码1.2 运行结果 二、 导入一个trait三、重要源码分析 一、从源码中学习 1.1 源码 一个简单的猜数大小游戏&#xff0c;不集的输入&#xff0c;直到猜测正确时退出。 use rand::Rng; use std::cmp::Ordering; use std::io;fn main() {let secret_…

解锁自动化文档转换:Python-Markdown的魔法

文章目录 解锁自动化文档转换&#xff1a;Python-Markdown的魔法背景Python-Markdown是什么&#xff1f;如何安装Python-Markdown&#xff1f;Python-Markdown库函数使用方法场景应用示例常见问题与解决方案总结 解锁自动化文档转换&#xff1a;Python-Markdown的魔法 背景 在…

【Leetcode每日一题】 动态规划 - 简单多状态 dp 问题 - 买卖股票的最佳时机含冷冻期(难度⭐⭐)(79)

1. 题目解析 题目链接&#xff1a;309. 买卖股票的最佳时机含冷冻期 这个问题的理解其实相当简单&#xff0c;只需看一下示例&#xff0c;基本就能明白其含义了。 2.算法原理 二、算法思路 1. 状态表示 dp[i][0]&#xff1a;表示第 i 天结束后&#xff0c;处于「买入」状态…

总结2024.6.2

最近&#xff0c;还没受到offer&#xff0c;找工作找到自闭。在找工作的过程中&#xff0c;也听到一些面试官问我的职业生涯规划。这也让我陷入了沉思。自从考研结束后&#xff0c;都是被这个社会推着走的。我当初也想过自己要从事什么工作&#xff0c;不过&#xff0c;后面还是…

Mysql常见问题总结

1、MySQL初始化报错 mysqld --initialize --usermysql --console 2024-06-02T15:52:22.645557Z 0 [System] [MY-013169] [Server] D:\installSoft\mysql-8.0.21-winx64\bin\mysqld.exe (mysqld 8.0.21) initializing of server in progress as process 8980 2024-06-02T15:52:2…

向量叉乘的方向

向量叉乘的方向 最近在百度上看到这样一个帖子&#xff1a; 可以根据这个判断是顺时针还是逆时针的 ab的方向&#xff1a;四指由a开始&#xff0c;指向b&#xff0c;拇指的指向就是ab的方向&#xff0c;垂直于a和b所在的平面&#xff1b; ba的方向&#xff1a;四指由b开始&a…

驾校-短视频营销招生精品课:抖音推广技巧,抖音短视频招生(41节课)

课程下载&#xff1a;驾校-短视频营销招生精品课&#xff1a;抖音推广技巧&#xff0c;抖音短视频招生(41节课)-课程网盘链接提取码下载.txt资源-CSDN文库 更多资源下载&#xff1a;关注我。 课程内容&#xff1a; 课程目录 [1]-第1课驾校为什么要全力做好短视频营销.mp4 …

Gorm入门

Gorm入门 声明&#xff1a;本博客为看李文周大佬gorm入门视频笔记 【GORM简明教程】关于GORM你看这一个就够了_哔哩哔哩_bilibili 我的代码仓库&#xff1a;6月/Gorm 沉着冷静/2023 - 码云 - 开源中国 (gitee.com) gorm介绍 安装库 go get -u github.com/jinzhu/gormgo ge…

拼图游戏完整思路(全代码演示)

主界面 小练习1&#xff1a; 一、三个界面的设置1&#xff1a;创建窗体 1、将三个主界面分开为三个类&#xff0c;每个类都去继承JFrame这个类&#xff0c;使得每个类都可以使用创建页面功能 2、对每个类进行空参构造&#xff0c;在空参构造里面进行窗体属性的赋值 3、创建一个…

JavaScript基础(十一)

String对象的方法 上一次说了String&#xff0c;那也少不了方法。 length 字符串长度 charAt(a) 返回指定位置的字符&#xff0c;(这里a代表下标&#xff0c;它返回的就是下标a对应的字符) concat(b) 连接字符串&#xff0c;b是被合并的对象名&#xff0c;和加号拼接一样…

创新指南|领导者如何评估自己的表现——麦肯锡专有的CEO卓越评估工具

CEO是任何组织中最具挑战性和要求最高的职位之一&#xff0c;尤其是在当前的经济环境下。这也是最重要的职位之一。研究表明&#xff0c;一家公司 45% 的业绩可归因于CEO的影响。但 CEO 们的实际表现如何&#xff1f;他们面临哪些问题&#xff1f;如何帮助他们发挥出最佳水平&a…

HALCON飞拍贴片机框架程序——硬件介绍

本专栏主要讲解三头贴片机框架程序&#xff0c;包括硬件介绍和软件代码。硬件主要为视觉部分&#xff0c;软件为视觉检测代码部分。贴片机的机械硬件不做介绍。 具体设备运行视频可以搜索博主抖Y&#xff1a;“伶俐科技”观看。 贴片机硬件如下图分为三个部分&#xff0c;第一…

了解Maven,并配置国内源

目录 1.了解Maven 1.1什么是Maven 1.2快速创建一个Maven项⽬ 1.3Maven 核⼼功能 1.3.1项⽬构建 1.3.2依赖管理 1.4Maven Help插件 2.Maven 仓库 2.1中央仓库 2.2本地仓库 3.Maven 设置国内源 1.查看配置⽂件的地址 2.配置国内源 3.设置新项⽬的setting 1.了解Ma…

Ubuntu22.04之安装星火应用商店《兼容windows应用》(二百三十七)

简介&#xff1a; CSDN博客专家&#xff0c;专注Android/Linux系统&#xff0c;分享多mic语音方案、音视频、编解码等技术&#xff0c;与大家一起成长&#xff01; 优质专栏&#xff1a;Audio工程师进阶系列【原创干货持续更新中……】&#x1f680; 优质专栏&#xff1a;多媒…