机器学习

本文最后更新于 2025年9月12日 上午

机器学习

流程示例
类型
工作流

神经网络

基础

神经元接收输入信号,通过加权求和后与偏置相加,然后通过激活函数处理以产生输出。神经元的权重和偏置是网络学习过程中需要调整的参数。

前馈神经网络

Feedforward Neural Network,FNN

基本单元,前馈神经网络特点是数据从输入层开始,经过一个或多个隐藏层,最后到达输出层,全过程没有循环或反馈。

循环神经网络

Recurrent Neural Network, RNN

专门处理序列数据的神经网络,能够捕获输入数据中时间或顺序信息的依赖关系,在自然语言处理(NLP)、语音识别、时间序列预测等任务中有着广泛的应用。

关键特性:其能够保持隐状态(hidden state),使得网络能够记住先前时间步的信息。

隐状态:通过上一时间步的隐状态和当前输入共同计算得到的。

 公式:ht = f(Whhht − 1 + Wxhxt + bh)

# ht:当前时刻隐状态;ht − 1:前一时刻隐状态;Wxh, Whh:权重矩阵;xt:当前时刻的输入;bh:偏置;f():激活函数。

输出:不仅依赖当前输入,还依赖于隐状态的历史信息。

 公式:yt = Whyht + by

# yt:t时刻的输出向量;Why:隐状态到输出状态的矩阵。

展开视图

卷积神经网络

Convolutional Neural Networks, CNN

专门用于处理具有网格状拓扑结构数据(如图像)的深度学习模型,是计算机视觉任务(如图像分类、目标检测和分割)的核心技术。

Transformer模型

一种基于注意力机制的深度学习模型,仅依赖注意力机制来处理序列数据,从而实现更高的并行性和更快的训练速度。

transformer结构

结构:

  • 编码器(Encoder):由NN层相同的模块堆叠而成,每层包含两个子层,每个子层后面都接有 残差连接(Residual Connection) 和 层归一化(Layer Normalization)。

 多头自注意力机制(Multi-Head Self-Attention):计算输入序列中每个词与其他词的相关性。

 前馈神经网络(FNN):对每个词进行独立的非线性变化。

  • 解码器(Decoder):由NN层相同的模块堆叠而成,每层包含三个子层,每个子层后面都接有残差连接和层归一化。

 掩码多头自注意力机制(Masked Multi-Head Self-Attention):计算输出序列中每个词和其他词的相关性。

# 使用掩码防止未来信息泄露

 交叉注意力机制(Encoder-Decoder Attention):计算输出序列与输入序列的相关性。

 前馈神经网络(FNN)

核心思想:

  • 自注意力机制(Self-Attention):允许模型在处理序列时,动态地为每个位置分配不同的权重,从而捕捉序列中任意两个位置之间的依赖关系。
  • 多头注意力(Multi-Head Attention):将输入分成多个子空间,每个子空间独立计算注意力,最后将结果拼接起来。
  • 位置编码(Positional Encoding):位置编码被用来为输入序列中的每个词添加位置信息,代替序列信息(如RNN中的时间步)。

优势:并行计算,长距离依赖(解决RNN的梯度消失),可扩展性。

应用:NLP(机器翻译,GPT),CV(图像分类,目标检测),多模态任务。

Conda指令

 查看环境:conda env list

 进入环境:conda activate 环境名称

 退出环境:conda deactivate

 删除环境:conda remove --name 环境名称 --all

 更换为阿里云镜像源:pip config set global.index-url https://mirrors.aliyun.com/pypi/simple/

 查看当前源:pip config list

 查看当前包:pip list

 下载依赖包requirements.txt:pip install -r requirements.txt

训练模型

模型文件=模型结构+预训练权重


机器学习
http://example.com/2025/08/26/machineLearning/
发布于
2025年8月26日
更新于
2025年9月12日
许可协议