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)

相关推荐
浊酒南街38 分钟前
决策树(理论知识1)
算法·决策树·机器学习
B站计算机毕业设计超人1 小时前
计算机毕业设计PySpark+Hadoop中国城市交通分析与预测 Python交通预测 Python交通可视化 客流量预测 交通大数据 机器学习 深度学习
大数据·人工智能·爬虫·python·机器学习·课程设计·数据可视化
学术头条1 小时前
清华、智谱团队:探索 RLHF 的 scaling laws
人工智能·深度学习·算法·机器学习·语言模型·计算语言学
18号房客1 小时前
一个简单的机器学习实战例程,使用Scikit-Learn库来完成一个常见的分类任务——**鸢尾花数据集(Iris Dataset)**的分类
人工智能·深度学习·神经网络·机器学习·语言模型·自然语言处理·sklearn
feifeikon1 小时前
机器学习DAY3 : 线性回归与最小二乘法与sklearn实现 (线性回归完)
人工智能·机器学习·线性回归
古希腊掌管学习的神1 小时前
[机器学习]sklearn入门指南(2)
人工智能·机器学习·sklearn
IT猿手2 小时前
最新高性能多目标优化算法:多目标麋鹿优化算法(MOEHO)求解TP1-TP10及工程应用---盘式制动器设计,提供完整MATLAB代码
开发语言·深度学习·算法·机器学习·matlab·多目标算法
强哥之神2 小时前
Nexa AI发布OmniAudio-2.6B:一款快速的音频语言模型,专为边缘部署设计
人工智能·深度学习·机器学习·语言模型·自然语言处理·音视频·openai
18号房客2 小时前
一个简单的深度学习模型例程,使用Keras(基于TensorFlow)构建一个卷积神经网络(CNN)来分类MNIST手写数字数据集。
人工智能·深度学习·机器学习·生成对抗网络·语言模型·自然语言处理·tensorflow
神秘的土鸡2 小时前
神经网络图像隐写术:用AI隐藏信息的艺术
人工智能·深度学习·神经网络