机器学习研究的主要内容是关于在计算机上从数据中产生“模型”的算法,即“学习算法“
发展历程
时间 | 时期 | 成果 | ||||||
二十世纪五十年代到七十年代 | 推理期 | 赋予机器逻辑推理能力,机器具备智能。代表作:A.Newell和H.Simon的“逻辑推理家”以及“通用问题求解” | ||||||
七十年代中期 | 知识期 | 机器具有智能,必须让机器拥有知识。代表:E.A.Feigenbaum,专家系统。问题:知识工程瓶颈,即知识总结并传递给计算机难度大 | ||||||
八十年代 | 学习期(样例学习) |
| ||||||
九十年代中期 | 学习期(统计学习) | 代表支持向量机以及核方法 | ||||||
二十一世纪初 | 深度学习 |
|
机器学习分类
1.有监督学习
监督学习是指利用一组已知类别的样本调整分类器的参数,使其达到所要求性能的过程,也称为监督训练或有教师学习。在监督学习的过程中会提供对错指示,通过不断地重复训练,使其找到给定的训练数据集中的某种模式或规律,当新的数据到来时,可以根据这个函数预测结果。监督学习的训练集要求包括输入和输出,主要应用于分类和预测。
2.无监督学习
与监督学习不同,在非监督学习中,无须对数据集进行标记,即没有输出。其需要从数据集中发现隐含的某种结构,从而获得样本数据的结构特征,判断哪些数据比较相似。因此,非监督学习目标不是告诉计算机怎么做,而是让它去学习怎样做事情。
3.半监督学习
半监督学习是监督学习和非监督学习的结合,其在训练阶段使用的是未标记的数据和已标记的数据,不仅要学习属性之间的结构关系,也要输出分类模型进行预测。
4.强化学习
强化学习(Reinforcement Learning, RL),又称再励学习、评价学习或增强学习,是机器学习的范式和方法论之一,用于描述和解决智能体(agent)在与环境的交互过程中通过学习策略以达成回报最大化或实现特定目标的问题。
机器学习基本概念
所谓机器学习就是致力于研究如何通过计算的手段,利用经验来改善系统自身的性能。经验就是指数据。也就是说机器学习一种算法,可以利用数据来得到模型,在面对新的情况时,模型就会给出相应的结果,同时,模型也需要不断地进行优化,优化算法也是机器学习中极为重要的一环。
常见机器学习算法
1.线性模型:
线性回归、套索回归、岭回归、逻辑回归
2.决策树:ID3、C4.5、CART
3.支持向量机
4.贝叶斯分类器:朴素贝叶斯、高斯朴素贝叶斯、多项式朴素贝叶斯、贝叶斯置信网络、贝叶斯网络
5.近邻算法
6.聚类分析:基于划分的K-means、基于密度的DBSCAN,层次聚类
7.随机森林
8.降维算法
9.梯度提升算法
10.深度学习算法
机器学习损失函数
1. 0-1损失函数
2. 绝对值损失函数
3. 平方损失函数
4. log对数损失函数
5. 指数损失函数
6. Hinge损失函数
模型优化方法
梯度下降是迭代法的一种,可以用于求解最小二乘问题(线性和非线性都可以)。在求解机器学习算法的模型参数,即无约束优化问题时,梯度下降(Gradient Descent)是最常采用的方法之一,另一种常用的方法是最小二乘法。在求解损失函数的最小值时,可以通过梯度下降法来一步步的迭代求解,得到最小化的损失函数和模型参数值。梯度的方向是函数在给定点上升最快的方向,那么梯度的反方向就是函数在给定点下降最快的方向。
主要有:
1. (全量)梯度下降
2. 随机梯度下降
3. 小批量梯度下降
4. 引入动量的梯度下降
5. 自适应学习率的Adagrad算法
6. 牛顿法
模型评估方法
1. 错误率和精度
错误率是分类错误的样本占总样本数的比例
精度是分类正确的样本占总样本数的比例
2. 查准率、查全率以及F1
真实情况 | 预测情况
| ||
正 |
| ||
反 |
|
查准率P、查全率R
3.ROC和AOC
ROC曲线的横轴为“假正例率”,纵轴为“真正例率”. 以FPR为横坐标,TPR为纵坐标,那么ROC曲线就是改变各种阈值后得到的所有坐标点 (FPR,TPR) 的连线,画出来如下。红线是随机乱猜情况下的ROC,曲线越靠左上角,分类器越佳.
AUC(Area Under Curve)
AUC就是ROC曲线下的面积. 真实情况下,由于数据是一个一个的,阈值被离散化,呈现的曲线便是锯齿状的,当然数据越多,阈值分的越细,”曲线”越光滑.
模型选择
1. 交叉验证
所有数据分为三部分:训练集、交叉验证集和测试集。交叉验证集不仅在选择模型时有用,在超参数选择、正则项参数 [公式] 和评价模型中也很有用。
2. k-折叠交叉验证
假设训练集为S ,将训练集等分为k份:S1,S2,...,Sk{S_1, S_2, ..., S_k}S1,S2,...,Sk.
然后每次从集合中拿出k-1份进行训练
利用集合中剩下的那一份来进行测试并计算损失值
最后得到k次测试得到的损失值,并选择平均损失值最小的模型
3. Bias与Variance,欠拟合与过拟合
欠拟合一般表示模型对数据的表现能力不足,通常是模型的复杂度不够,并且Bias高,训练集的损失值高,测试集的损失值也高.
过拟合一般表示模型对数据的表现能力过好,通常是模型的复杂度过高,并且Variance高,训练集的损失值低,测试集的损失值高。
参数调优
1. 网格搜索
一种调参手段;穷举搜索:在所有候选的参数选择中,通过循环遍历,尝试每一种可能性,表现最好的参数就是最终的结果
2. 随机搜索
与网格搜索相比,随机搜索并未尝试所有参数值,而是从指定的分布中采样固定数量的参数设置。它的理论依据是,如果随即样本点集足够大,那么也可以找到全局的最大或最小值,或它们的近似值。通过对搜索范围的随机取样,随机搜索一般会比网格搜索要快一些。
3. 贝叶斯优化算法
贝叶斯优化用于机器学习调参由J. Snoek(2012)提出,主要思想是,给定优化的目标函数(广义的函数,只需指定输入和输出即可,无需知道内部结构以及数学性质),通过不断地添加样本点来更新目标函数的后验分布(高斯过程,直到后验分布基本贴合于真实分布。简单的说,就是考虑了上一次参数的信息,从而更好的调整当前的参数。