机器学习笔记
1. 监督学习和无监督学习
机器学习在无编程的环境下学习,机器学习的两种主要类型是监督学习和无监督学习。
监督学习有一系列标签,然后用假设函数去拟合它。无监督学习的数据不带有任何标签。
1.1 监督学习
先利用有标签的训练数据学习得到一个模型,然后使用这个模型对新样本进行预测。
在本质上,监督学习的目标在于,构建一个由输入到输出的映射,该映射用模型来表示。
1.2 无监督学习
无监督学习又称无导师学习,是指在没有任何标识的情况下进行分类。
即无监督学习不需要样本数据,可以直接建立模型将数据聚类。
1.3 回归、分类和聚类
回归问题——预测一个具体的数值输出
分类问题——预测一个离散值的输出
聚类问题——将无标签的数据集分成有密集关系的子集或簇
2. 线性回归
属于回归问题
2.1 模型描述
2.2 代价函数
假设有训练样本(x,y),模型为h,参数为θ。h(θ) = θTx(θT表示θ的转置)。
概括来讲,任何能够衡量模型预测出来的值h(θ)与真实值y之间的差异的函数都可以
叫做代价函数C(θ),如果有多个样本,则可以将所有代价函数的取值求均值,记作J(θ)。
代价函数的常见形式:
第一,均方误差(常用于回归问题)
第二,交叉熵
2.3 梯度下降
将代价函数J最小化
给定参数的初始值
不断的改变参数的值来使得代价函数变小,直到找到最小值
2.4 多元梯度下降法
对于线性回归而言,相当于多变量
方法1. 特征缩放—使得梯度下降的速度更快
μ1是训练集中特征x1的平均值
S1是特征X1的取值范围(最大值减去最小值)
方法2. 修改学习率—学习率过大,可能会错过局部最小值;过小,梯度算法速度变小
可以按3的倍数取值,直到选择一个合适的学习率
2.5 正规方程
提供了求参数的解析方法(使用该方法可以不用特征缩放)
2.6 正规方程与梯度下降的比较
2.7 正则化线性回归
正则化防止过拟合
正则化修改正规方程
3. Logistic回归
属于分类问题的算法,算法的输出值介于0和1之间
3.1 决策边界
训练集确定了参数,只有确定了参数之后才能知道决策边界。
也就是相关特征值在哪个范围内y=0,哪个范围内y=1。
3.2 代价函数
3.3 正则化逻辑回归—梯度下降正则化
4. K-Means(K均值聚类算法)
4.1 算法的主要步骤
簇分类、移动聚类中心
4.2 输入
4.3 步骤
4.4 优化目标
4.5 随机初始化
随机初始聚类中心不同,所得到的簇也不同。
所以可以进行多次随机初始化使得算法跳出局部最优
4.6 选取聚类数量
通过观察,手动选择
5. 拟合问题
5.1 解决过拟合问题
- 减少选取变量的数量
- 正则化
使参数变小,避免过度拟合。
因为不知道应该将哪个参数变小,所以可通过修改代价函数,由此来缩小所有的参数。
在代价函数中加入一个额外的正则化(惩罚)项,来缩小每个参数的值。
5.2 欠拟合问题
除了θ0之外的所有参数都为0,所以拟合曲线为直线
6. 神经网络
6.1 假设函数
6.2 代价函数
6.3 反向传播算法
让代价函数最小化
6.4 梯度检测
检测梯度下降是否在往正确的方向进行(为了判断反向传播的正确性
6.5 训练步骤
① 确定神经网络模型
② 随机初始化权重
③ 向前传播计算激活值和代价函数
④ 向后传播计算误差
⑤ 利用梯度检测,检测向后传播的操作是否正确
⑥ 关闭梯度检测
⑦ 使用梯度下降法或者其他高级算法优化代价函数
7. 机器学习诊断法
7.1 评估假设
判断参数(权重)是否过度拟合
将数据分为训练集、验证集和测试集
模型选择用对应的交叉验证集误差最小的模型
7.2 诊断偏方与方差
7.2.1 高偏方与高方差
高偏差——对应着欠拟合的情况,此时交叉验证误差和训练误差都很大,并且两者数值相近
高方差——此时,训练误差很小,但是交叉验证误差会远远大于训练误差
7.2.2 正则化影响偏方和方差
如何正确选择正则化的参数λ——选取交叉验证集误差最小的
学习曲线——可判断算法是否存在偏差或者方差或者两者都有
7.3 精确率和召回率的权衡
7.3.1 定义
7.3.1 怎么权衡
8. 特征降维
8.1 降维的作用
① 压缩数据
② 数据可视化
8.2 主成分分析(PCA)算法
降维算法
需要最小化投影误差,只需在训练集中使用该算法即可
使用算法之前需要进行数据预处理,即进行均值标准化与特征缩放
算法描述
主成分数量的选择(即将数据降到几维合适)
9. 异常检测问题
9.1 基于高斯分布的异常检测方法
处理异常检测的方法是:用数据集建立起概率模型p(x)。
由此可得知哪些特征值的出现概率较高,哪些特征值的出现概率较低。
9.2 如何选择异常检测的特征
9.3 多变量高斯分布的异常检测
10. 处理海量数据集的方法
10.1 随机梯度下降法
当数据量变大的时候,梯度下降法的计算量会变得非常大。