当前位置: 首页 > news >正文

神经网络知识讨论

  • AI 核心任务与数据类型
    • 特征提取核心:AI 的核心是从原始输入数据中提取特征,CV 是将图像数据转换为计算机可识别的特征,NLP 是将文本数据转换为特征,数据挖掘是将结构化数据转换为特征。
    • 数据类型特点:图像数据在计算机眼中是矩阵,每个值是像素点,可直接计算;文本数据如字符串,较难直接处理成矩阵。
  • 神经网络基础概念
    • 映射概念:映射可看作 y = wx + b 的方程,w 和 b 组成映射方程。通过权重参数对输入数据进行组合变换,将原始数据投影到特征空间,得到新特征,目的是让数据更好被认识和识别。
    • 输入与权重矩阵:以图像数据为例,输入数据可拉成向量,如 32×32×3 的图像有 3072 个像素点。权重参数与特征一一对应,做矩阵乘法,横向量乘列向量得一个值,在分类任务中,该值代表数据属于各个类别的概率。
    • 偏置参数:偏置用于对结果做微调,偏置个数与输出结果个数相同,如 10 分类任务就有 10 个偏置。
    • 权重初始化:权重一开始是随机初始化的,后续根据预测结果与真实标签的一致性进行更新。
  • 损失计算方法
    • 回归任务损失:回归任务预测一个值,通过计算预测值与真实值的差异来衡量损失,如计算错误类别和真实类别得分的差值,差值越大损失越大。
    • 分类任务损失:分类任务要得到数据属于各个类别的概率,二分类使用 ZMOD 函数将输入值映射到 0 - 1 之间,大于 0.5 为正例,小于 0.5 为负例;多分类通过 Softmax 函数,先将得分值进行 e 的幂运算放大差异,再进行归一化得到概率值,最后用对数计算损失,只考虑正确类别的概率,概率越高损失越小。
  • 权重更新方法
    • 梯度下降原理:神经网络由前向传播和反向传播组成。前向传播通过输入数据和权重参数得到预测值,计算损失;反向传播通过求梯度找到权重更新方向,梯度是损失对权重参数的偏导数,沿梯度反方向更新权重可使损失变小。
    • 学习率:学习率控制每次更新的步长,一般较小且适中,学习率有 warm up 阶段,先缓慢上升到基础学习率,再进行衰减。
    • 批量处理:有随机梯度下降、批量梯度下降和小批量梯度下降。随机梯度下降用一个样本更新,速度快但结果可能不稳定;批量梯度下降用所有样本求平均,结果稳定但计算量大;小批量梯度下降用一批样本,batch 越大越好,可使求平均更准确。
    • 动量概念:引入动量(惯性),考虑前一步的梯度方向,通过求合力方向更新权重,可使模型更新更快,多数模型都会引入。
  • 网络结构与特征提取
    • 特征提取本质:神经网络通过权重参数对输入数据进行线性组合,将原始数据转换为新特征,权重参数越多,可得到的特征个数越多。
    • 深度学习不可解释性:深度学习得到的特征难以解释其具体含义。
    • 网络结构示例:输入数据通过多组权重和偏置参数得到中间特征和最终预测结果,如输入 1×3 矩阵,通过 3×4 矩阵的 W1 和 4 个偏置 B1 得到 1×4 的中间特征,再经过 4×4 矩阵的 W2 和 4 个偏置 B2,最后通过 4×1 矩阵的 W3 和 1 个偏置 B3 得到预测值。
  • 网络效果与优化
    • 神经元个数影响:神经元个数越多,可切分数据集的 “刀数” 越多,能更好地对数据进行分类,但可能出现过拟合问题。
    • 过拟合问题:模型为了识别离群点开辟过大区域,导致测试时预测错误,数据预处理很重要,数据质量和数量都会影响模型效果。
    • 非线性变换:神经网络的线性变换只能解决线性问题,通过引入激活函数(如 SoftReLU)进行非线性变换,可使模型解决非线性问题。SoftReLU 函数小于 0 时 y = 0,大于 0 时 y = x,能去除不好的特征。
http://www.lryc.cn/news/601457.html

相关文章:

  • 【旧文】Adobe Express使用教程
  • 7月27日星期日今日早报简报微语报早读
  • 数据赋能(340)——技术平台——共享平台
  • Spring之【Bean的生命周期】
  • 视频转GIF工具,一键批量制作高清动图
  • GIt学习——分布式版本控制工具
  • Triton IR
  • Python折线图
  • Java面试新趋势:云原生与新兴框架实战解析
  • 零基础学习性能测试第五章:Tomcat的性能分析与调优-Tomcat原理,核心配置项,性能瓶颈分析,调优
  • MySQL ROUTER安装部署
  • Java面试实战:安全框架与大数据技术深度解析
  • 深度解析 inaSpeechSegmenter:高效音频语音分割与检测开源工具
  • 基于 LSTM 与 SVM 融合的时间序列预测模型:理论框架与协同机制—实践算法(1)
  • maven命令详解
  • Redis C++客户端——命令使用
  • 《不只是接口:GraphQL与RESTful的本质差异》
  • Libevent(4)之使用教程(3)配置
  • PHP框架之Laravel框架教程:3. 数据库操作(简要)
  • net8.0一键创建支持(RabbitMQ)
  • 积分兑换小程序Java
  • Torchv Unstrustured 文档解析库
  • Matplotlib(二)- Matplotlib简单绘图
  • 在docker中安装frp实现内网穿透
  • 【数据结构与算法】数据结构初阶:详解排序(二)——交换排序中的快速排序
  • 【51单片机和数码管仿真显示问题共阴共阳代码】2022-9-24
  • 算法竞赛阶段二-数据结构(36)数据结构双向链表模拟实现
  • hackthebox-Pwn-Restaurant(ret2libc)
  • MySQL 8.4 Windows 版安装记录与步骤参考
  • STM32-USART串口实现接收数据三种方法(1.根据\r\n标志符、2.空闲帧中断、3.根据定时器辅助接收)