为什么要进行机器学习
我们先从下面一段叙述感受一下什么是机器学习:
-
机器学习致力于研究如何通过计算的手段,利用经验来改善系统自身的性能,从而在计算机上从数据中产生“模型”,用于对新的情况给出判断。——《周志华-机器学习》
-
Vast amounts of data are being generated in many fields, and the statisticians’s job is to make sense of it all: to extract important patterns and trends, and to understand “what the data says”. We call this learning from data.—The Elements of Statistical Learning:Data Mining, Inference, and Prediction
大意是:很多领域都在产生大量的数据,数据科学家的工作就是更好的利用他们,使他们更有价值,提取数据的模式和趋势,以懂得数据代表了什么。我们把这种数据处理方式称作“从数据中学习”。
-
One of the most interesting features of machine learning is that it lies on the boundary of several different academic disciplines, principally computer science, statistics, mathematics, and engineering. … machine learning is usually studied as part of artificial intelligence, which puts it firmly into computer science … understanding why these algorithms work requires a certain amount of statistical and mathematical sophistication that is often missing from computer science ndergraduates.—Machine Learning: An Algorithmic Perspective(与上面类似不在翻译)
大致可以用下图来说明:
为什么可以进行机器学习
- 最常见的就是引入霍夫丁不等式进行解释
- VC维(Vapnik-Chervonenkis dimension)
上面两个概念基本就可以保证在数理方面对机器学习的可信度给予保证,而不是数据科学家yy得到的,对于两个概念的推导和证明后面将陆续推出。
常见的机器学分类
-
监督学习(Supervised learning)
监督学习是从标记的训练数据来推断一个功能的机器学习方法。在监督学习中,每个实例都是由一个输入对象(通常为矢量)和一个期望的输出值(也称为监督信号)组成。数据既有变量( features,特征)又有结果(上图中的标记,label)。
常见的算法:
- k紧邻算法(k-Nearest Neighbors)
- 线性回归(Linear Regression)
- 逻辑回归(Logistic Regression)
- 支撑向量机(Support Vector Machines (SVMs))
- 决策树与随机森林(Decision Trees and Random Forests)
- 神经网络(Neural networks)
-
无监督学习(Unsupervised learning)
该学习模式不需要标签,只需在输入数据中找到数据结构。无监督学习本身可以是一个目标(发现数据中隐藏的模式),也可以是达到目的一种手段(特征学习)。数据只具有变量( features)没有相应的结果(label)。常见的算法:
- 聚类算法(k紧邻算法(k-Nearest Neighbors))
- 降维算法(PCA等)
-
半监督学习(semi-supervised learning)
模型介于监督学习和非监督学习之间,相当于监督学习中数据的变量相应的结果(label),出现了缺失。与使用所有标签数据的模型相比,使用训练集的训练模型在训练时可以更为准确,而且训练成本更低。在现实任务中,未标记样本多、有标记样本少是一个比价普遍现象,如何利用好未标记样本来提升模型泛化能力,就是半监督学习研究的重点。要利用未标记样本,需假设未标记样本所揭示的数据分布信息与类别标记存在联系。 -
强化学习(Reinforcement learning)
强化学习,又称再励学习、评价学习或增强学习,是机器学习的范式和方法论之一,用于描述和解决智能体(agent)在与环境的交互过程中通过学习策略以达成回报最大化或实现特定目标的问题。
强化学习不需要标签,你选择的行动(move)越好,得到的反馈越多,所以你能通过执行这些行动看是输是赢来学习下围棋(Alphago),不需要有人告诉你什么是好的行动什么是坏的行动
常见的术语
- 训练集
- 测试集
- 损失函数
- 模型的泛化
- 正则化
- 交叉验证
- 测试误差(样本外误差)
- 训练误差(样本内误差)
以上内容可以保证小白们对机器学习有个大致的了解,但是机器学习所包含的内容远不止以上内容。博主后续会逐步对一些基本的概念和算法进行详细的推导和讲解。以后推导所涉及的主要内容在以下数目中,可供参考:
- 周志华 《机器学习》
- 李航《统计学习方法》
- Yase S. Abu-Mostafa 《learning from data》
- Kevin P. Murphy 《Machine Learning A Probabilistic Perspective》
- 当然还有我们都熟知高等数学、概率论和线性代数方面的知识。