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

Pytorch 机器学习专业基础知识+神经网络搭建相关知识

文章目录

      • 一、三种学习方式
      • 二、机器学习的一些专业术语
      • 三、模型相关知识
      • 四、常用的保留策略
      • 五、数据处理
      • 六、解决过拟合与欠拟合
      • 七、成功的衡量标准

一、三种学习方式

有监督学习:
1、分类问题
2、回归问题
3、图像分割
4、语音识别
5、语言翻译
无监督学习
1、聚类
2、降维
强化学习

二、机器学习的一些专业术语

样本(sample)或输入(input)或数据点(data point)
可以理解为一个图像
预测(prediction)或输出(output)
可以理解为是结果
目标(target)或标签(label)
图像实际标注的标签
损失值(loss value)或预测误差(prediction error)
预测与实际的差距
类别(classes)
数据集一组可能的值或标签
二分类(binary classification)
将输入实例归类为两个互斥类中的其中一个分类任务
多类别分类(multi-class classification)
多标签分类
一个输入实例,多个标签标记
标量回归(scakar regression)
每个输入数据与一个标量质量相关联
向量回归(vector regression)
多个标签,组成向量
批(batch)
一批为一个样本集,取决于CPU内存 2-256不等 权重在每个批次上更新
轮数
运行一遍为一个epoch,训练模型需要多个epoch

三、模型相关知识

通常模型数据集分为三个部分 训练、测试、验证
模型一般有两种参数
1、算法内参数或权重,用于优化器和反向传播
2、超参数,用于控制层数、学习率、结构参数

过拟合:在训练集效果很好,到了验证集或测试机效果不佳
欠拟合:在训练集就效果不佳

对数据集进行划分:
1、分出大部分数据作为训练集,用于训练
2、验证集一般用于超参数的调优
3、迭代执行1和2的步骤
4、最后冻结算法和超参数后,测试集进行评估

四、常用的保留策略

1、简单保留验证
留一定比例用于测试
2、K折验证
留一定比例测试,整个数据集分为K个包,一般K取值2-10
选一个包作为验证集,其余都是训练集,评估效果为各个包的平均评分
3、带混洗的K折验证
在创建保留的验证集时,混洗数据集

五、数据处理

需要考虑的东西有:
1、数据代表性
要做到分层抽样,防止局部特征
2、时间敏感性
要注意预防数据泄露
3、数据容易
避免重复数据影响性能

数据预处理
1、向量化(正常的数据类型有文本、声音、图像、视频)
先把数据转换为Pytorch张量,torchvision库可以把PIL图像转换为张量
2、值归一化
归一化就是将特定的特征数据表示为均值为0,标准差为1的数据
3、处理缺失值
用不可能出现的值替换缺失值
4、特征工程
用较少资源更快解决问题
用大量数据学得特征,自己学

六、解决过拟合与欠拟合

欠拟合很简单,加大数据集 用更多的数据

过拟合的解决:
1、获取更多数据(人造数据或数据增强)
2、缩小网络规模(可以去掉一些中间线性层)
3、应用权重正则化(通过惩罚矩阵来实现)
有两种惩罚模型的方案:
L1正则化 权重系数绝对值之和加入成本
L2正则化 所有权重系数平方和加入成本(通常用1e-5)

七、成功的衡量标准

平衡的标准 ROC AUC
不平衡的标准:
准确略 precision
查全率 recall
平均精读均值 MAP (Mean Average Precision)

http://www.lryc.cn/news/170056.html

相关文章:

  • torch 和paddle 的GPU版本可以放在同一个conda环境下吗
  • MYBATIS-PLUS入门使用、踩坑记录
  • C# 静态类和sealed类(密封类)的区别
  • el-table如何实现自动缩放,提示隐藏内容
  • CRM客户管理软件对出海企业的帮助与好处
  • 【QT--使用百度地图API显示地图并绘制路线】
  • C数据结构二.练习题
  • 猫头虎博主第5️⃣期赠书活动:《Java官方编程手册(第12版·Java 17)套装上下册》
  • (1)数据库 MSQ 数据库 安装 使用 以及增删改查
  • 什么测试自动化测试?
  • 【踩坑篇】代码中使用 Long 作为 Map的Key存在的问题
  • 微服务保护-授权规则/规则持久化
  • 练习敲代码速度
  • uni-app:实现条件判断展示图片(函数判定+三目运算)
  • http概念
  • Postman应用——Variable变量使用(Global、Environment和Collection)
  • php高级 TP+Redis实现发布订阅和消息推送案例实战
  • Python 基础入门
  • 【跟小嘉学 Rust 编程】二十九、Rust 中的零拷贝序列化解决方案(rkyv)
  • 路由器端口转发
  • Redis模块一:缓存简介
  • 【去除若依首页】有些小项目不需要首页,去除方法
  • Ardupilot — EKF3使用光流室内定位代码梳理
  • 【Linux】自动化构建工具 —— make/makefileLinux第一个小程序 - 进度条
  • tensorflow的unet模型
  • (2023 最新版)IntelliJ IDEA 下载安装及配置教程
  • react 实现拖动元素
  • 【EI会议】第二届声学,流体力学与工程国际学术会议(AFME 2023)
  • Android StringFog 字符串自动加密
  • 上四休三,未来的期许