智能听觉:从任务特定的机器学习到基础模型
关键词:计算机听觉、音频基础模型、多模态学习、声音事件检测
声音无处不在,弥漫于我们生活的每一个角落。鸟儿向伴侣倾诉心意的歌声,浓缩咖啡机中蒸汽的嘶嘶作响,午后阳光下昆虫振翅的嗡嗡声,金属屋顶上雨滴跳跃的滴答声,还有司机因急躁而按下的愤怒喇叭声——这些都是我们日常生活中不可或缺的声音景致。这些声音携带着丰富的信息,从它们起源的状态,到所处的位置,再到对偶然路过听众的意义,无一不透露着生活的点滴。我们天生便擅长捕捉并处理这些声音信息,尽管其他感官可以有意地忽略,但声音却是无法忽视的存在。它是我们耳朵探知世界、感受持续喜悦或烦恼的关键途径。
因此,机器也必须能够聆听。这种能力可以为在现实世界中运作的人工智能代理解锁许多关键功能——尤其是当这些代理具有实体形式时。它还可以帮助代理定位自身并跟踪环境中的实体,即使在它们已经超出了其直接视野之后。这些能力对于广泛的应用非常有用,包括被动监控环境的物联网设备,需要密集和时间准确的意识的自动驾驶代理,或者从额外上下文中受益的智能助手。
1 概述
1.1 声景分类 (ASC)
日常音频分析最基本的任务是声学场景分类(ASC),旨在将整个声音场景分类到预定义的类别中。例如,将一段包含鸟鸣、人声和车辆行驶的音频片段分类为“户外”或“城市街道”。
1.1.1 数据集
常用的数据集包括 TAU Urban acoustic scenes 2019、Cochlscene 等,这些数据集包含来自不同环境的音频片段,并标注了相应的声景类别。
1.1.2 挑战与机遇
- 类别层次结构: 传统方法通常使用扁平的类别层次结构,难以处理语义相似但声学特征不同的声音类别。
- 数据标注: 数据标注工作量大,且难以覆盖所有可能的声景类别。
- 机遇: 基础模型可以学习更复杂的层次结构,并利用其强大的知识表示能力,从而更好地理解和分类声景。
1.2 声音事件分类 (SEC)
将单个声音源分类到预定义的类别中。例如,将一段包含狗叫声的音频片段分类为“狗叫声”。
1.2.1 数据集
常用的数据集包括 AudioSet strong、TUT Sound Events、DESED 等,这些数据集包含标注了声音事件类别和时间的音频片段。
1.2.2 挑战与机遇
- 类别层次结构: 与声景分类类似,声音事件分类也面临类别层次结构的问题。
- 数据标注: 数据标注工作量大,且难以覆盖所有可能的声事件类别。
- 机遇: 基础模型可以学习更复杂的层次结构,并利用其强大的知识表示能力,从而更好地理解和分类声音事件。
1.3 音频标记
将多个并发声音源分类到预定义的类别中。例如,将一段包含鸟鸣、人声和车辆行驶的音频片段标记为“鸟鸣”、“人声”和“车辆行驶”。
1.3.1 数据集
常用的数据集包括 AudioSet、FSD50k、ESC-50 等,这些数据集包含标注了声音事件类别的音频片段。
1.3.2 挑战
- 类别层次结构: 与声景分类和声音事件分类类似,音频标记也面临类别层次结构的问题。
- 数据标注: 数据标注工作量大,且难以覆盖所有可能的声事件类别。
- 机遇: 基础模型可以学习更复杂的层次结构,并利用其强大的知识表示能力,从而更好地理解和标记声音事件。
1.4 声音事件检测
识别多个声音源及其时间活动。例如,检测音频中狗叫声的开始时间和结束时间。
1.4.1 数据集
常用的数据集包括 AudioSet strong、TUT Sound Events、DESED 等,这些数据集包含标注了声音事件类别和时间信息的音频片段。
1.4.2 挑战与机遇
- 数据标注: 数据标注工作量大,且难以覆盖所有可能的声事件类别和时间信息。
- 多音源: 处理多音源环境是一个挑战,需要模型能够区分和识别不同声音源。
- 机遇: 基础模型可以学习更复杂的层次结构,并利用其强大的知识表示能力,从而更好地识别和检测声音事件。
1.5 声音状态和特征预测
预测特定声音源的状态或特征。例如,预测车辆行驶时的状态(加速、减速、匀速)或特征(新、旧、柴油、电动)。
1.5.1 数据集
常用的数据集包括 MAVD、RWCP 等,这些数据集包含标注了声音源状态或特征的音频片段。
1.5.2 挑战与机遇
- 数据标注: 数据标注工作量大,且难以覆盖所有可能的声源状态和特征。
- 主观性: 声源状态和特征的标注具有主观性,不同的人可能会有不同的标注结果。
- 机遇: 基础模型可以学习更复杂的层次结构,并利用其强大的知识表示能力,从而更好地预测声音源的状态和特征。
1.6 音频描述
生成描述音频场景和声音源的完整句子。例如,描述一段包含狗叫声、人声和车辆行驶的音频片段为“一只狗在叫声,一个人在说话,一辆车在行驶”。
1.6.1数据集
常用的数据集包括 Clotho、AudioCaps 等,这些数据集包含人类标注的音频描述。
1.6.2 挑战与机遇
- 描述多样性: 音频描述可以有很多种方式,不同的人可能会有不同的描述。
- 数据标注: 数据标注工作量大,且难以覆盖所有可能的音频描述。
- 机遇: 基础模型可以学习更复杂的层次结构,并利用其强大的知识表示能力,从而生成更丰富和更准确的音频描述。
1.7 音频问答
回答与音频文件相关的自然语言问题。例如,回答“这段音频是什么声音?”或“这段音频中发生了什么?”。
1.7.1 数据集
常用的数据集包括 ClothoAQA、OpenAQA 等,这些数据集包含人类标注的音频描述和问题/答案对。
1.7.2 挑战
- 问题多样性: 音频问答可以有很多种类型的问题,不同的问题需要不同的答案。
- 数据标注: 数据标注工作量大,且难以覆盖所有可能的音频问答问题。
- 机遇: 基础模型可以学习更复杂的层次结构,并利用其强大的知识表示能力,从而更好地回答音频问答问题。
2 传统训练方法
2.1 监督分类
传统上,声音事件或声学场景分类的典型方法是使用直接的监督训练 ,现在通常是深度神经网络(DNN),使用音频及其相应的注释示例进行训练,以学习将呈现给它的声学信息(以声学特征的形式)与要识别的目标类别之间的映射。
2.1.1 基本原理
- 使用已标记的音频数据和对应的标签来训练机器学习模型。
- 模型学习将音频特征映射到目标类别。
- 通过特征提取和分类器等模块进行训练。
- 常用的特征提取方法包括短时傅里叶变换 (STFT) 和梅尔频率倒谱系数 (MFCC)。
2.1.2 优缺点
2.1.2.1 优点
- 方法简单易懂,易于实现。
- 模型性能稳定,可预测性强。
- 适用于数据量充足的情况。
2.1.2.2 缺点
- 需要大量标记数据,成本高。
- 模型泛化能力有限,难以应对新任务。
- 无法利用其他领域的知识。
2.2 迁移学习
近年来,一种更常见的方法依赖于迁移学习,即在一个与任务相关的大量数据上训练网络,并用下游任务数据对其进行微调,后者通常规模较小。这种方法涉及在一个特定的上游任务上训练模型,例如音频标记,对于该任务有大量的数据集可用,然后在特定的下游任务上进一步训练模型。这个过程,称为微调,通过利用之前学习的权重,使模型能够适应新任务,并因此利用了在初始训练阶段识别相关特征的能力。
2.2.1 基本原理
- 使用在相关任务上训练的大型模型(如 PANNs 或 WAV2VEC2.0)。
- 在目标任务上微调模型,以适应特定任务。
- 利用预训练模型学习到的通用特征,提高模型性能。
2.2.2 优缺点
2.2.2.1 优点
- 利用预训练模型的知识,提高模型泛化能力。
- 减少标记数据需求,降低成本。
- 可以利用其他领域的知识。
2.2.2.2 缺点
- 预训练模型可能存在偏差,影响模型性能。
- 微调过程可能需要大量计算资源。
- 难以适应与预训练任务差异较大的新任务。
3 音频基础模型
音频基础模型基于标准的深度学习和迁移学习,但它们的规模导致了新的涌现能力,它们在如此多任务上的有效性激励了同质化。
音频基础模型的两种主要方式
3.1 基本组成
3.1.1 音频编码器(Audio Encoder)
负责将原始音频波形转换成一系列特征表示或“嵌入”(embeddings),这些嵌入能够捕捉音频信号的重要特征。
3.1.2 文本编码器(Text Encoder)
如果模型需要处理语言信息,文本编码器将文本转换为模型可以理解的嵌入形式。
3.1.3 预训练语言模型(Pretrained Language Model, LLM)
一个大型的语言模型,通常在大量文本数据上进行预训练,能够理解和生成自然语言文本。
3.1.4 自监督学习任务(Self-Supervised Learning Tasks)
在预训练阶段,模型通过执行如预测掩码部分(masked parts)的任务来学习音频和文本数据的表示。
3.1.5 接口或适配器(Interface or Adapters)
允许不同组件之间进行有效的信息交换,例如将音频嵌入映射到与文本嵌入相同的空间,以便语言模型可以处理。
3.1.6 融合方法(Fusion Methods)
决定了如何将音频和文本信息结合在一起,可以是早期融合(在输入阶段结合信息)或深度融合(在模型的中间层结合信息)。
3.1.7 微调数据集(Finetuning Dataset)
用于微调预训练模型,使其适应特定的下游任务,如声音事件检测或音频字幕生成。
3.1.8 输出解码器(Output Decoder)
将模型的内部表示转换为最终输出,例如将嵌入转换回文本或生成音频描述。
3.1.9 提示(Prompts)
用于指导模型执行特定任务的语言提示,可以是简单的问题或更复杂的指令。
3.1.10 评估机制(Evaluation Mechanisms)
用于衡量模型性能的标准和工具,包括准确性、适当性和其他与任务相关的指标。
3.1.11 多模态能力(Multimodal Capabilities)
如果模型设计为处理多种类型的输入(如音频和视觉数据),则需要具备将这些不同模态的信息整合在一起的能力。
3.1.12 检索增强(Retrieval-Augmented Generation)
结合外部知识库来增强模型的生成能力,特别是在处理特定领域或高度专业化的查询时。
检索增强生成(Retrieval-Augmented Generation, RAG)的工作原理
3.1.13 指令微调(Instruction Finetuning)
使用特定的指令对模型进行微调,使其能够按照给定的格式或风格生成输出。
3.2 核心优势
3.2.1 通用性
AFMs 通常基于大型语言模型(LLMs),如 GPT-3 或 LLaMA,它们在预训练阶段学习了大量的文本数据,因此具备丰富的语言知识和推理能力。通过将音频信息转换为文本 token,AFMs 可以利用这些知识来理解和描述音频内容。
3.2.2 多任务能力
AFMs 可以通过指令微调(Instruction Fine-tuning)来适应不同的音频分析任务,例如:
声场景分类(ASC):将整个声音场景分类到预定义的类别中,例如“室内”、“户外”、“交通”等。
- 声音事件检测(SED):识别和标记音频中的单个声音事件,并可选地提供它们的时间信息。
- 声音状态和特征预测:识别声音源的特征,例如“汽车加速”、“门关闭”等。
- 音频字幕生成:生成描述音频内容的文本字幕,例如“一只狗在门口叫”。
- 音频问答:根据音频内容回答与声音相关的自然语言问题,例如“这是音乐吗?”
- 空间定位和跟踪:估计声音源的位置和时间变化。
- 环境参数估计:估计空间的物理参数,例如房间大小或回声时间。
3.2.3 易于交互
AFMs 可以通过自然语言指令与用户进行交互,这使得它们更加易于使用和理解。
3.2.4 迁移学习
AFMs 可以利用在预训练阶段学习到的知识来适应新的任务,即使数据量有限也可以取得不错的效果。
3.3 现有音频模型
模型名称 | 模块 | 使用的数据 | 融合类型 | 能力 | 是否公开可用 |
Pengi | 音频编码器: CLAP, 文本编码器: CLAP 前缀层: 使用音频和文本 | AudioSet, FSD50K, CochlScene, 等 | 早期 | 音频字幕生成,音频问题回答,声音事件分类等 | 是 |
APT-LLM | 音频编码器: Audio-MAE 声学适配器: APT LLM | AudioSet, Wavcaps, AudioCaps, 等 | 早期 | 音频标记,声音事件分类,自然语言-音频推理等 | 是 |
LTU | 音频编码器: AST LoRA适配器LLM: LLaMA-7b | OpenAQA | 早期 | 音频标记,音频字幕生成,音频推理等 | 是 |
LTU-AS | 音频编码器: Whisper TLTR 投影层LoRA适配器: LLM | Open-ASQA | 早期 | 音频字幕生成,声音事件分类,音频问题回答等 | 是 |
QWEN-Audio | 音频编码器: Whisper-L-v2, LLM: Qwen | CoVOST 2, Macaw-LLM 指令数据集, 等 | 早期 | 音频字幕生成,声音事件分类,声学场景分类等 | 是 |
Salmonn | 音频编码器: Whisper, BEATs, Q-Former LoRA适配器: LLM | LibriSpeech, GigaSpeech M-set, WavCaps, 等 | 早期 | 音频字幕生成,语音识别,语音情绪识别等 | 是 |
BAT | 音频编码器: Spatial-ASL, 投影层LLM: LLaMA2 | SpatialSoundQA | 早期 | 声音事件分类,声音事件检测和空间定位,音频问题回答 | 是 |
Audio Flamingo | 音频编码器: CLAP 投影层LLM: opt-iml-max-1.3b | WavCaps, Macs, SoundDescs, 等 | 早期 | 深度音频字幕生成,声音事件分类,音频问题回答 | 是 |
UniAudio 1.5 | 音频编码器: LLM-Codec LLM: LLaMA2-7b | MLS, AudioCaps | 早期 | 声音事件分类,语音情绪分类,文本到语音生成等 | 是 |
Gemini 1.5 Pro | N/A | N/A | N/A | 音频相关* | 否 |
GPT-4o9 | N/A | N/A | N/A | 音频相关* | 否 |
LauraGPT | 基于Encodec的音频编码器LLM: Qwen | AISHELL-1, AISHELL-2, WenetSpeech, 等 | 早期 | 自动语音识别,口语理解,语音到文本翻译等 | 是 |
4 未来展望
4.1 大规模基准测试
- 建立通用音频分析基准: 目前缺乏一个用于比较不同音频基础模型性能的通用基准,这限制了模型的比较和评估。未来需要建立一个涵盖不同任务、数据集和模型架构的基准,以促进模型的可比性和透明度。
- 避免数据泄漏: 避免使用训练和测试数据集之间共享数据源的情况,例如使用 AudioSet 衍生的数据集来评估基于 AudioSet 训练的模型,以防止数据泄露。
- 考虑多音源环境: 实际环境中的声音场景通常包含多个声音源,需要考虑多音源环境下的模型性能。
4.2 音频生成
- 利用基础模型的生成能力: 基础模型不仅可以理解音频,还可以生成音频。这可以用于创建逼真的声音效果、生成音乐、甚至进行语音合成。
- 音源化解释: 利用基础模型的音频生成能力,可以提供音源化解释,例如用声音来解释图像或文本,增强人工智能系统的可解释性和可信度。
4.3 多模态融合
- 视觉-语音-语言模型融合: 将视觉、语音和语言模型融合,可以创建能够处理更复杂任务的多模态模型,例如图像描述、视觉问答和图像生成。
- 音频-语言模型融合: 将音频和语言模型融合,可以创建能够更好地理解音频内容的多模态模型,例如更准确的音频分类、音频描述和音频问答。
4.4 超越人类评估
未来基础模型可能能够识别人类无法听到的声音,例如超声波或次声波。需要开发新的评估方法来衡量这些模型的能力,例如通过监测动物或使用外部传感器。
5 常用数据集列表定性观察
数据集 | 评论 |
AudioSet | AudioSet是一个大型(约200万实例)的音频(视觉)数据集,收集自YouTube。原始用户标签已由人工评估者根据527个类别的层次化本体论进行验证。每个实例对应一个10秒的剪辑,平均有2.7个标签,显示出低度的多声源性。请注意,原始数据集包括原始视频的ID,而不是视频本身;鉴于平台不断有内容被移除,AudioSet数据集的大小一直在持续缩小。此外,不同的组可能根据下载日期拥有稍有不同的数据集版本。数据集还部分存在缺失标签的问题。 |
AudioSet-SL | 这是AudioSet数据集的一个较小子集(67k实例),已进一步在帧级别上对剪辑中出现的所有事件进行了注释。 |
Freesound | Freesound是一个在线声音存储库,用户可以上传带有多个标签和简短描述的音频录音。目前拥有超过60万个短剪辑。录音倾向于集中在单一声源上(没有或最小限度地存在其他声源)。 |
FSD50K | FSD50K是从Freesound中选出的一个小规模(约51k实例)剪辑集合,已根据AudioSet本体论的一个子集(200个类别)由人工评估者进行了弱注释。 |
CochlScene | CochlScene是一个通过韩国的智能手机用户众包收集的数据集。用户被要求使用他们的手机提交符合一小套标签的数据。他们还被要求验证其他用户收集的数据。 |
AudioCaps | AudioCaps包含一个较小的AudioSet子集(约46k),具有人工生成的字幕。注释者在字幕过程中有原始AudioSet类别的单词提示,并且在不确定音频内容时可以访问视频流。 |
Clotho | Clotho包含来自Freesound的约5k实例的字幕。在注释过程中,评估者没有得到任何提示。 |
ClothoAQA | ClothoAQA是Clotho的一个子集(约2k实例),包含问题-答案对。它只包含是/否和单词答案的问题。问题是人为注释者在一个三阶段过程中制定的;后续阶段的评估者可以访问前一阶段的问题,并被指示制定不同的问题。每个问题由与提出问题不同的注释者回答。 |
WavText5K | WavText5K是一个小规模数据集,包含来自两个在线存储库的音频剪辑,这些存储库提供了许可的音效。剪辑由原始上传者进行注释。这些存储库针对“音效”专家市场,因此可能包含使用高质量麦克风收集的典型声音,干扰或多声源性很小。 |
SoundDescs | SoundDescs与WavText5K类似,但来自不同的非商业许可源。 |
MACS | MACS是一个小型的音频场景分类子集,包含人工注释的字幕。由于原始重点是记录自然声音景观,它的多声源性比其他字幕数据集要高。仅使用了三种基本的声音景观类别。原始音频是使用一小套录音设备收集的,录音位于几个欧洲城市中的众多位置。 |
WavCaps | WavCaps是一个大规模(约40万)自动字幕数据集。字幕是使用ChatGPT(基于GPT-3的一个版本)生成的,以重新制定数据集来源中的原始标签或描述。 |
NLAR | 在预先筛选ClothoAQA的原始注释以去除错误注释后,作者使用ChatGPT总结每个字幕的声学特征。随后,他们使用ChatGPT创建与原始音频及其预处理字幕相关的问题对。 |
OpenAQA | OpenAQA是一个大型开放式问答数据集。数据集来自多个领域,字幕是使用ChatGPT从原始标签/字幕/描述自动生成的。 |
SpatialSoundQA | 从AudioSet获取的原始音频是使用SoundSpaces 2.0模拟器[108]进行渲染的,房间脉冲响应(RIR)来自90个扫描建筑。问题是通过模板创建的,然后用GPT4重新表述。 |
LAION-630k | 该数据集是从其来源通过聚合音频剪辑及其随附的——上传者定义的——描述派生而来。 |
NonSpeech7K | NonSpeech7k是一个人类非语言声音(例如咳嗽)的精选集,已经过人工验证并在帧级别上进行了强注释。 |
Chime-Home | Chime-Home是一个小数据集,使用单个设备在单个环境中收集。录音被分割成不重叠的4秒块,然后由人工评估者对多个声音事件进行注释。 |
Sonyc-UST | Sonyc-UST是一个小规模的人工注释标签数据集。数据是从美国纽约市的多个位置使用相同的录音设备录制的。 |
相关文章:

智能听觉:从任务特定的机器学习到基础模型
关键词:计算机听觉、音频基础模型、多模态学习、声音事件检测 声音无处不在,弥漫于我们生活的每一个角落。鸟儿向伴侣倾诉心意的歌声,浓缩咖啡机中蒸汽的嘶嘶作响,午后阳光下昆虫振翅的嗡嗡声,金属屋顶上雨滴跳跃的滴答…...

14、如何⽤DDD设计微服务代码模型
在完成领域模型设计后,接下来我们就可以开始微服务的设计和 落地了。在微服务落地前,⾸先要确定微服务的代码结构,也就是我 下⾯要讲的微服务代码模型。 只有建⽴了标准的微服务代码模型和代码规范后,我们才可以将 领域对象映射到…...
ArcGIS Pro SDK (九)几何 12 多面体
ArcGIS Pro SDK (九)几何 12 多面体 文章目录 ArcGIS Pro SDK (九)几何 12 多面体1 通过拉伸多边形或折线构建多面体2 多面体属性3 构建多面体4 通过MultipatchBuilderEx构建多面体5 从另一个多面体构建多面体6 从 3D 模型文件构建…...

二次元手游《交错战线》游戏拆解
交错战线游戏拆解案 游戏亮点即核心趣味 一、关键词: 回合制游戏、二次元、机甲、横板、剧情、养成、异星探索。 二、游戏亮点: 符合目标群体审美的原画。 三、核心趣味: 抽卡、肝或者氪金解锁新皮肤。 核心玩法及系统规则 核心玩法&…...

【BUG】已解决:Downgrade the protobuf package to 3.20.x or lower.
Downgrade the protobuf package to 3.20.x or lower. 目录 Downgrade the protobuf package to 3.20.x or lower. 【常见模块错误】 【解决方案】 欢迎来到英杰社区https://bbs.csdn.net/topics/617804998 欢迎来到我的主页,我是博主英杰,211科班出身…...

Java开发之Redis
1、非关系型数据库、快、高并发、功能强大 2、为什么快?内存单线程 非阻塞的IO多路复用有效的数据类型/结构 3、应用:支持缓存、支持事务、持久化、发布订阅模型、Lua脚本 4、数据类型: 5 种基础数据类型:String(字…...

Java面试八股之 Spring Bean的生命周期
Spring Bean的生命周期 实例化(Instantiation):Spring容器根据Bean定义信息创建Bean的实例,通常通过无参构造函数进行。 依赖注入(Dependency Injection,DI):Spring容器按照Bean定…...
SQL中的函数
目录 前言 一、系统内置函数 1、数学函数 2、日期和时间函数 3、聚合函数 4、字符串函数 二、自定义函数 1、标量函数的创建与调用 2、内嵌表值函数的创建与调用 3、多语句表值函数的创建与调用 前言 函数是由一个或多个 T-SQL 语句组成的子程序,可用于封…...

VSCode | 修改编辑器注释的颜色
1 打开VsCode的设置进入settings.json 2 添加如下代码 "editor.tokenColorCustomizations": {"comments": "#17e917"},3 保存即可生效...

媒体邀约专访与群访的区别?
传媒如春雨,润物细无声,大家好,我是51媒体网胡老师。 媒体邀约中的专访与群访在多个方面存在显著差异,以下是对这两种采访方式的详细比较: 一、定义与形式 专访: 定义:专访是指由媒体记者对单…...

Pycharm2024最新版community社区版下载安装配置,快速上手
第一步:下载 方法1:官网链接 https://www.jetbrains.com/pycharm/download/?sectionwindows .方法2:百度网盘 链接:https://pan.baidu.com/s/1ic2N5hUQ2m1Kmyr5nK9Jxw?pwd76dt 提取码:76dt --来自百度网盘超级…...
服务器选择租用还是托管?托管和租用哪个比较划算
在构建或扩展IT基础设施时,服务器作为关键组件,其选择方式——租用或托管,直接关系到企业的运营成本、灵活性、安全性及长期发展战略。本文将从技术、经济、安全等多个维度,深入解析这两种方案的优缺点,并探讨在何种情…...

智能制造·数字化工厂建设规划方案(65P)
获取完整PPT见下图 更多有关华为研发管理/IPD、MBSE、PLM、ERP、MES、数据治理、数字样机等方面免费解决方案、资料获取,请见下图...

ACM中国图灵大会专题 | 图灵奖得主Manuel Blum教授与仓颉团队交流 | 华为论坛:面向全场景应用编程语言精彩回顾
ACM 中国图灵大会(ACM Turing Award Celebration Conference TURC 2024)于2024年7月5日至7日在长沙举行。本届大会由ACM主办,in cooperation with CCF,互联网之父Vinton Cerf、中国计算机学会前理事长梅宏院士和廖湘科院士担任学术…...

k8s 公共服务
修改named.conf。修改第13行和第21行 下面是 named.rfc1912 修改位置,在最后 所以用cp -p 复制文件,保留权限 nslookup 回车,server是看哪个dns 在起作用 dns服务器要配置给所有公共服务节点和 k8s 节点 就在网络文件加个DNS2就行了&…...

【数据分析详细教学】全球气温变迁:一个多世纪的数据分析
全球气温变迁:一个多世纪的数据分析 1. 数据集选择与获取 数据可以从NASA的GISTEMP数据集获取,通常提供的格式有TXT和CSV。我们假设数据是以CSV格式提供。 2. 数据预处理 使用Python的pandas库读取数据并进行预处理。 import pandas as pd# 加载数…...
AV1技术学习:Reference Frame System
一、Reference Frames AV1 Codec 允许在其解码的帧缓冲区中最多允许保存 8 帧。对于一个编码帧,可以从解码的帧缓冲区中选择任意 7 个帧作为它的参考帧。编码端可以通过比特流显式地传输参考帧索引,范围从 1到 7。原则上,参考帧索引 1-4 为当…...

数学建模(7)——Logistic模型
一、马尔萨斯人口模型 import numpy as np import matplotlib.pyplot as plt# 初始人口 N0 100 # 人口增长率 r 0.02 # 时间段(年) t np.linspace(0, 200, 200)# 马尔萨斯人口模型 N N0 * np.exp(r * t)# 绘图 plt.plot(t, N, labelPopulation) plt.…...

“微软蓝屏”事件,给IT行业带来的宝贵经验和教训
“微软蓝屏”事件是指2024年7月19日发生的一次全球性技术故障,主要涉及微软视窗(Windows)操作系统及其相关应用和服务。 以下是对该事件的详细解析: 一、事件概述 发生时间:2024年7月19日事件影响:全球多个…...

QT总结——图标显示坑
最近写代码遇到一个神仙大坑,我都怀疑我软件是不是坏了,这里记录一下。 写qt工程的时候我们一般会设置图标,这个图标是窗体的图标同时也是任务栏的图标,但是我发现生成的exe没有图标,这个时候就想着给他加一个图标&…...

多云管理“拦路虎”:深入解析网络互联、身份同步与成本可视化的技术复杂度
一、引言:多云环境的技术复杂性本质 企业采用多云策略已从技术选型升维至生存刚需。当业务系统分散部署在多个云平台时,基础设施的技术债呈现指数级积累。网络连接、身份认证、成本管理这三大核心挑战相互嵌套:跨云网络构建数据…...

基于Docker Compose部署Java微服务项目
一. 创建根项目 根项目(父项目)主要用于依赖管理 一些需要注意的点: 打包方式需要为 pom<modules>里需要注册子模块不要引入maven的打包插件,否则打包时会出问题 <?xml version"1.0" encoding"UTF-8…...
【HTTP三个基础问题】
面试官您好!HTTP是超文本传输协议,是互联网上客户端和服务器之间传输超文本数据(比如文字、图片、音频、视频等)的核心协议,当前互联网应用最广泛的版本是HTTP1.1,它基于经典的C/S模型,也就是客…...
Rapidio门铃消息FIFO溢出机制
关于RapidIO门铃消息FIFO的溢出机制及其与中断抖动的关系,以下是深入解析: 门铃FIFO溢出的本质 在RapidIO系统中,门铃消息FIFO是硬件控制器内部的缓冲区,用于临时存储接收到的门铃消息(Doorbell Message)。…...
在web-view 加载的本地及远程HTML中调用uniapp的API及网页和vue页面是如何通讯的?
uni-app 中 Web-view 与 Vue 页面的通讯机制详解 一、Web-view 简介 Web-view 是 uni-app 提供的一个重要组件,用于在原生应用中加载 HTML 页面: 支持加载本地 HTML 文件支持加载远程 HTML 页面实现 Web 与原生的双向通讯可用于嵌入第三方网页或 H5 应…...
OCR MLLM Evaluation
为什么需要评测体系?——背景与矛盾 能干的事: 看清楚发票、身份证上的字(准确率>90%),速度飞快(眨眼间完成)。干不了的事: 碰到复杂表格(合并单元…...

Windows电脑能装鸿蒙吗_Windows电脑体验鸿蒙电脑操作系统教程
鸿蒙电脑版操作系统来了,很多小伙伴想体验鸿蒙电脑版操作系统,可惜,鸿蒙系统并不支持你正在使用的传统的电脑来安装。不过可以通过可以使用华为官方提供的虚拟机,来体验大家心心念念的鸿蒙系统啦!注意:虚拟…...

深入解析光敏传感技术:嵌入式仿真平台如何重塑电子工程教学
一、光敏传感技术的物理本质与系统级实现挑战 光敏电阻作为经典的光电传感器件,其工作原理根植于半导体材料的光电导效应。当入射光子能量超过材料带隙宽度时,价带电子受激发跃迁至导带,形成电子-空穴对,导致材料电导率显著提升。…...
算法250609 高精度
加法 #include<stdio.h> #include<iostream> #include<string.h> #include<math.h> #include<algorithm> using namespace std; char input1[205]; char input2[205]; int main(){while(scanf("%s%s",input1,input2)!EOF){int a[205]…...

【阅读笔记】MemOS: 大语言模型内存增强生成操作系统
核心速览 研究背景 研究问题:这篇文章要解决的问题是当前大型语言模型(LLMs)在处理内存方面的局限性。LLMs虽然在语言感知和生成方面表现出色,但缺乏统一的、结构化的内存架构。现有的方法如检索增强生成(RA…...