1.泛化
泛化是指从训练集中学习得到的模型参数在测试集中的好坏程度,测试数据必须和训练数据处于同一分布。
2.DNN
深度神经网络(Deep Neural Networks),CNN(卷积神经网络)、RNN(递归神经网络)等都属于其范畴之内,由输入层、隐藏层、输出层组成。
3.数据集:S3DIS/Modelnet40
S3DIS:是一个大型的3D点云室内数据集。
Modelnet40:下载网址Princeton ModelNet
4.T-net
T−Net是一个微型网络,用于生成一个仿射变换矩阵来对点云的旋转、平移等变化进行规范化处理。这个变换/对齐网络是一个微型的PointNet,它输入原始点云数据,输出为一个3∗3 的旋转矩阵。
5.batch size/iteration/epoch
batch size:一次训练所选取的样本数,其大小影响模型的优化程度和速度,同时直接影响到GPU内存的使用情况,假如GPU内存不大,该数值最好设置小一点,适当Batch Size使得梯度下降方向更加准确。
iteration:1个iteration等于使用batch size个样本训练一次。
epoch:1个epoch等于使用训练集中的全部样本训练一次,通俗的讲epoch的值就是整个数据集被轮几次。
5.loss和val_loss
搬运:loss与val loss的关系_vodka、的博客-CSDN博客_loss val_loss
loss:训练集整体的损失值。
val loss:验证集(测试集)整体的损失值。
一般来说,我们在训练的一个模型的时候,我们都会把一个样本划分成训练集和验证集。如果我们按照训练集和验证集9:1的比例来划分,那么当我们在训练模型计算出来的loss值就会分为训练集总体loss以及测试集val loss。两者之间有大致如下的关系:
当loss下降,val_loss下降:训练正常,最好情况。
当loss下降,val_loss稳定:网络过拟合化。这时候可以添加Dropout和Max pooling。
当loss稳定,val_loss下降:说明数据集有严重问题,可以查看标签文件是否有注释错误,或者是数据集质量太差。建议重新选择。
当loss稳定,val_loss稳定:学习过程遇到瓶颈,需要减小学习率(自适应网络效果不大)或batch数量。
当loss上升,val_loss上升:网络结构设计问题,训练超参数设置不当,数据集需要清洗等问题,最差情况。
6.Channel first
pytorch中要求卷积中特征图的通道数放在第二个参数,第一个为batch
7.baseline
baseline意思是基线,这个概念是作为算法提升的参照物而存在的,相当于一个基础模型,可以以此为基准来比较对模型的改进是否有效。
8.预训练
预训练方式表现在模型参数上,就是我之前已经拿一个合适的任务(这个任务可能是和很多任务有共同之处的任务)提前训练好了所有的模型参数(预训练)。我们不需要再从0开始训练所有参数了,但是针对我们目前这个任务,有些参数可能不合适,我们只需要在当前参数的基础上稍加修改(微调)就可以得到比较好的效果,这样学习时间必然会大大减小。
9.编码器和解码器
以卷积神经网络为例,进行分类任务,编码器负责表示输入,解码器负责输出。
编码器:将输入编程成中间表达式形式(特征)【特征抽取】
解码器:将中间表示解码成输出。【分类器】
10.张量
11.正则化
LP L1 L2范数
[Deep Learning] 正则化 - Poll的笔记 - 博客园 (cnblogs.com)
12.ADMM
拉格朗日乘数法是求条件极值的一种方法,具体过程就是将带条件的函数极值问题转化为无条件的极值问题
交替方向乘子法(ADMM)的原理和流程的白话总结 - 曹明 - 博客园 (cnblogs.com)
13.MM算法
Majorization-Minimization和EM算法 - 知乎 (zhihu.com)