机器学习常见名词汇总
本文汇总了人工智能与机器学习领域的核心概念,涵盖机器学习、深度学习、神经网络的定义与区别,以及 NPU、CUDA、PyTorch 等硬件与框架知识。详细解释了超参数与模型参数的差异,包括激活函数、权重、偏置、损失函数和优化器的工作原理。此外还介绍了前向传播、反向传播、梯度下降及其常见问题(消失/爆炸),并阐述了微调(FT/SFT)、过拟合、泛化能力及模型量化等技术细节。

本文汇总了人工智能与机器学习领域的核心概念,涵盖机器学习、深度学习、神经网络的定义与区别,以及 NPU、CUDA、PyTorch 等硬件与框架知识。详细解释了超参数与模型参数的差异,包括激活函数、权重、偏置、损失函数和优化器的工作原理。此外还介绍了前向传播、反向传播、梯度下降及其常见问题(消失/爆炸),并阐述了微调(FT/SFT)、过拟合、泛化能力及模型量化等技术细节。

机器学习是人工智能的一个分支,它使计算机系统能够从数据中学习并提高性能,而无需进行明确的编程。机器学习算法使用统计技术来识别数据中的模式,然后使计算机能够做出预测或决策,无需人类直接指示。
主要特点:
应用领域:
深度学习模型通常比传统机器学习模型更复杂,需要更多的数据和计算资源。在传统机器学习中,特征工程是一个重要的步骤,而在深度学习中,模型可以自动学习特征。深度学习在处理大规模数据集和复杂问题时表现更好,而传统机器学习可能更适合数据量较小或问题较为简单的场景。
深度学习是机器学习的一个子集,它基于人工神经网络的概念,特别是深层神经网络。深度学习模型通过模仿人脑的工作方式来处理数据,通过多层(或'深度')的神经网络来学习复杂的模式。
主要特点:
应用领域:
即神经处理单元(Neural Processing Unit),是专门为优化人工智能和神经网络任务性能而设计的硬件。与传统的 CPU 和 GPU 相比,NPU 在处理 AI 任务时表现出更高的效率和性能,尤其是在执行深度学习算法时。NPU 的设计初衷是快速完成大量的小规模并行计算,这使得它们在处理图片、视频等多媒体数据以及神经网络数据时特别出色。
CUDA(Compute Unified Device Architecture,统一计算架构)是由 NVIDIA 公司开发的一种并行计算平台和编程模型。它允许软件开发者和软件工程师使用 NVIDIA GPU(图形处理单元)进行通用计算任务,而不仅仅是传统的图形渲染。CUDA 提供了一套丰富的 API(应用程序编程接口),使得开发者能够利用 GPU 的强大计算能力来加速计算密集型的应用。
Torch 是一个科学计算框架,最初使用 Lua 语言开发,专门用于机器学习和深度学习算法,特别是神经网络的构建和训练。它以其动态图、自动求导功能、张量操作和丰富的模型库而闻名。Torch 的设计注重简洁和灵活性,允许开发者快速构建和测试新的模型和算法。
PyTorch 是 Facebook 的人工智能研究团队开发,并在 2016 年开源的深度学习框架,它是 Torch 的 Python 版本。PyTorch 继承了 Torch 的设计理念和一些基本功能,但在实现上有所不同。PyTorch 使用 Python 作为主要开发语言,并提供了更友好和灵活的 API 接口。PyTorch 的一个显著特点是其动态计算图,允许在运行时根据需要定义、更改和调整计算图,这使得 PyTorch 在处理复杂的模型和任务时非常灵活和方便。与 Torch 相比,PyTorch 提供了更丰富的文档和社区支持,以及与其他流行框架的接口,如 TensorFlow 和 Keras。PyTorch 还支持多种计算设备,包括 CPU、GPU 和 TPU,用户可以轻松地将模型迁移到不同的硬件上运行,以获得更高的计算效率。
监督微调是指在源数据集上预训练一个神经网络模型,即源模型。然后创建一个新的神经网络模型,即目标模型。目标模型复制了源模型上除了输出层外的所有模型设计及其参数。这些模型参数包含了源数据集上学习到的知识,且这些知识同样适用于目标数据集。源模型的输出层与源数据集的标签紧密相关,因此在目标模型中不予采用。微调时,为目标模型添加一个输出大小为目标数据集类别个数的输出层,并随机初始化该层的模型参数。在目标数据集上训练目标模型时,将从头训练到输出层,其余层的参数都基于源模型的参数微调得到。
监督微调的步骤
具体来说,监督式微调包括以下几个步骤:
预训练 首先在一个大规模的数据集上训练一个深度学习模型,例如使用自监督学习或者无监督学习算法进行预训练;
微调 使用目标任务的训练集对预训练模型进行微调。通常,只有预训练模型中的一部分层被微调,例如只微调模型的最后几层或者某些中间层。在微调过程中,通过反向传播算法对模型进行优化,使得模型在目标任务上表现更好;
评估 使用目标任务的测试集对微调后的模型进行评估,得到模型在目标任务上的性能指标。
超参数是机器学习模型训练前需要设置的参数,它们通常控制着学习过程的某些方面,而不是模型本身的结构或行为。与模型参数不同,模型参数是通过训练数据学习得到的,而超参数则需要人为设定或通过交叉验证等技术进行调整。
网络的每一层在输出时,都需要进行一次非线性变换,被称为激活。如果不进行激活,则网络中各层均进行线性变换。
激活函数在神经网络中起着重要的作用,主要有以下几点:
在训练过程中,权重和偏置通过优化算法(如梯度下降)不断更新。
损失函数用于衡量模型预测值与真实值之间的差异,指导模型参数的更新方向。
优化器负责根据损失函数的梯度更新模型参数,常见的优化算法包括 SGD、Adam 等。
选择合适的优化器对于模型的收敛速度和最终性能至关重要。
优化算法决定了参数更新的策略,直接影响训练效果。
数据从输入层经过隐藏层传递到输出层的过程。
根据输出误差计算各层参数梯度的过程,用于更新权重。
一种常用的优化算法,通过沿着损失函数梯度的反方向更新参数来最小化损失。
在深层网络中,梯度在反向传播时逐渐变小,导致浅层参数无法有效更新。
在深层网络中,梯度在反向传播时变得过大,导致参数更新不稳定。
基于人类反馈的强化学习,用于对齐模型输出与人类偏好。
一种用于约束优化的损失函数形式。
模型在未见过的数据上表现良好的能力。
神经网络的基本计算单元,接收输入信号并进行加权求和及激活。
模型在训练集上表现过好,但在测试集上表现不佳的现象。
降低模型精度以减少存储和计算开销的技术。
一种用于模型量化的库。
另一种高效的量化方案。
涵盖数据准备、预训练、微调、评估等完整生命周期。

微信公众号「极客日志」,在微信中扫描左侧二维码关注。展示文案:极客日志 zeeklog
使用加密算法(如AES、TripleDES、Rabbit或RC4)加密和解密文本明文。 在线工具,加密/解密文本在线工具,online
生成新的随机RSA私钥和公钥pem证书。 在线工具,RSA密钥对生成器在线工具,online
基于 Mermaid.js 实时预览流程图、时序图等图表,支持源码编辑与即时渲染。 在线工具,Mermaid 预览与可视化编辑在线工具,online
解析常见 curl 参数并生成 fetch、axios、PHP curl 或 Python requests 示例代码。 在线工具,curl 转代码在线工具,online
将字符串编码和解码为其 Base64 格式表示形式即可。 在线工具,Base64 字符串编码/解码在线工具,online
将字符串、文件或图像转换为其 Base64 表示形式。 在线工具,Base64 文件转换器在线工具,online