训练集,测试集,验证集、一些对机器学习术语的掌握

训练集用于训练模型,然后经过几次迭代后使用测试集测试模型,要保证训练集和测试集是分开的,不能在训练集中混入测试数据。
训练集,测试集,验证集、一些对机器学习术语的掌握
但是尽管这样,但是模型还是会在测试集中学习到东西导致过拟合的发生,也就是测试结果效果特别好。
所以选择将数据集划分成三个:训练集、测试集、验证集
训练集,测试集,验证集、一些对机器学习术语的掌握
训练集,测试集,验证集、一些对机器学习术语的掌握
样本:
有标签样本:特征+标签
无标签样本
模型:
训练时给出特征和标签,让模型学习特征并逐渐与标签建立联系。
测试时不给出标签,让模型自己去将测试样本归类,然后与真实标签比较,看正确率
训练集,测试集,验证集、一些对机器学习术语的掌握
特征和标签的选择:
合适的特征应该可量化,美观不是实用特征,可以使用样式和颜色这样的具体来表现
用户喜欢的鞋子不能做标签,应该选择用户点击鞋子的次数,可量化才可选择作为特征或者标签
训练集,测试集,验证集、一些对机器学习术语的掌握
损失:
L2损失就是平方损失Loss^2
训练集,测试集,验证集、一些对机器学习术语的掌握
MSE 就是平方损失和然后平均
虽然 MSE 常用于机器学习,但它既不是唯一实用的损失函数,也不是适用于所有情形的最佳损失函数。
每一种损失函数都不是所有模型都实用,要根据不同模型选择合适的损失函数,或者自己设计损失函数
训练集,测试集,验证集、一些对机器学习术语的掌握
学习率
训练集,测试集,验证集、一些对机器学习术语的掌握
学习率过大也不行,像之前遇到过的问题,如果发现训练损失稳定在某个值不下降,那么就要减小batch_size,减小学习率,这样让模型从样本中学习更多信息
训练集,测试集,验证集、一些对机器学习术语的掌握
这个金发学习率就是调参中找到的最好的
小批量SGD:
训练集,测试集,验证集、一些对机器学习术语的掌握
特征工程:原始数据转换成特征矢量,也就是模型需要的特征表示形式,这个过程需要大量时间
训练集,测试集,验证集、一些对机器学习术语的掌握
映射分类值:得到一个词汇表
训练集,测试集,验证集、一些对机器学习术语的掌握
训练集,测试集,验证集、一些对机器学习术语的掌握
对于像street_name这种特征不唯一的,如果使用1,2,3这样来标记街道,那么如果一个房子处于两个街道的交界处呢?那就需要两个标记,这样一个特征就需要的是两个值,所以这种数组的编码形式不能满足。
我们一般采用独热码,当是那个街区时,就标记为1,否则标记为0,多个街区就用向量表示:[0,0,0,1,0,…,0]
训练集,测试集,验证集、一些对机器学习术语的掌握
训练集,测试集,验证集、一些对机器学习术语的掌握
良好的特征选取:
训练集,测试集,验证集、一些对机器学习术语的掌握
训练集,测试集,验证集、一些对机器学习术语的掌握
训练集,测试集,验证集、一些对机器学习术语的掌握
训练集,测试集,验证集、一些对机器学习术语的掌握
数据清理:
1、缩放特征值
训练集,测试集,验证集、一些对机器学习术语的掌握
训练集,测试集,验证集、一些对机器学习术语的掌握
2、处理极端离群值
3、分箱
将房屋按维度进行划分,一座城市划分几个维度,那么这就是分箱,分箱之后,就可以使用独热编码来表示维度这个特征
训练集,测试集,验证集、一些对机器学习术语的掌握
4、清查
训练集,测试集,验证集、一些对机器学习术语的掌握
特征组合:
对非线性问题的处理
训练集,测试集,验证集、一些对机器学习术语的掌握
训练集,测试集,验证集、一些对机器学习术语的掌握
L2正则化:
训练集,测试集,验证集、一些对机器学习术语的掌握
训练集,测试集,验证集、一些对机器学习术语的掌握
训练集,测试集,验证集、一些对机器学习术语的掌握
训练集,测试集,验证集、一些对机器学习术语的掌握
训练集,测试集,验证集、一些对机器学习术语的掌握
训练集,测试集,验证集、一些对机器学习术语的掌握
训练集,测试集,验证集、一些对机器学习术语的掌握
训练集,测试集,验证集、一些对机器学习术语的掌握
简单来说,就是lambda值越大,导致原来权重w大的现在会更加拉大差距
合理的lambda值可以使特征的权重保持在理想的范围内,即这些数据都是有效数据
L2正则化对权重较大的特征影响大
训练集,测试集,验证集、一些对机器学习术语的掌握
训练集,测试集,验证集、一些对机器学习术语的掌握
分类:
指定阈值
训练集,测试集,验证集、一些对机器学习术语的掌握
正负分类
训练集,测试集,验证集、一些对机器学习术语的掌握
计算准确率
训练集,测试集,验证集、一些对机器学习术语的掌握
训练集,测试集,验证集、一些对机器学习术语的掌握
精确率和召回率,这个类比于手写签名识别中的错误错误接受率和错误拒绝率
训练集,测试集,验证集、一些对机器学习术语的掌握
训练集,测试集,验证集、一些对机器学习术语的掌握
精确率和召回率会因为阈值设定的不同而此消彼长
训练集,测试集,验证集、一些对机器学习术语的掌握选择准确率还是选择精确率和召回率作为判断标准,因为具体案例不同而有区别:
训练集,测试集,验证集、一些对机器学习术语的掌握
训练集,测试集,验证集、一些对机器学习术语的掌握
训练模型中的案例及做法:
1、梯度消失,使用RELU
训练集,测试集,验证集、一些对机器学习术语的掌握
2、梯度爆炸,使用BatchNormalization,给予大的权重一个惩罚项,
训练集,测试集,验证集、一些对机器学习术语的掌握
训练集,测试集,验证集、一些对机器学习术语的掌握
dropout
训练集,测试集,验证集、一些对机器学习术语的掌握

嵌套embedding :协同过滤的目的

感觉embedding应该翻译为嵌入,将坐标嵌入到一维坐标轴上,或者多维空间中
训练集,测试集,验证集、一些对机器学习术语的掌握
训练集,测试集,验证集、一些对机器学习术语的掌握
训练集,测试集,验证集、一些对机器学习术语的掌握
分类输入数据
训练集,测试集,验证集、一些对机器学习术语的掌握
训练集,测试集,验证集、一些对机器学习术语的掌握
训练集,测试集,验证集、一些对机器学习术语的掌握
使用嵌入来解决巨型输入矢量的问题
训练集,测试集,验证集、一些对机器学习术语的掌握
训练集,测试集,验证集、一些对机器学习术语的掌握
训练集,测试集,验证集、一些对机器学习术语的掌握
就是通过矩阵乘法来降低权重个数

训练集,测试集,验证集、一些对机器学习术语的掌握
训练集,测试集,验证集、一些对机器学习术语的掌握
嵌套其实就是把多维的一个特征向量降维,一个特征映射到低维向量
训练集,测试集,验证集、一些对机器学习术语的掌握