人工智能 | 机器展现的人类智能 |
机器学习 | 计算机利用已有的数据(经验),得出了某种模型,并利用此模型预测未来的一种方法。 |
深度学习 | 实现机器学习的一种技术 |
机器学习可以解决给定数据的预测问题,包括
✓ 数据清洗/特征选择
✓ 确定算法模型/参数优化
✓ 结果预测)
不能解决:
x 大数据存储/并行计算
x 做一个机器人
总的来说,人工智能经历了逻辑推理、知识工程、机器学习三个阶段。机器学习伴随着人工智能的发展而诞生,它是人工智能发展到一定阶段的必然产物
监督学习:在监督学习下,输入数据被称为“训练数据”,每组训练数据有一个明确的标识或结果。监督学习的常见应用场景包括分类问题和回归问题。常见的应用场景包括关联规则的学习以及聚类等。
非监督学习:在非监督学习方式下,输入数据没有被标识,这种学习模型可以用来进行预测,但是模型首先需要学习数据的内在结构以便合理的组织数据来进行预测。非监督学习的常见应用场景包括聚类和降维等。
半监督学习:在半监督学习方式下,输入数据部分被标识,部分没有被标识,这种学习模型可以用来进行预测,但是模型首先需要学习数据的内在结构以便合理的组织数据来进行预测。半监督学习的常见应用场景包括异常检测和聚类等。
强化学习:在强化学习方式下,输入数据作为对模型的反馈,不像监督模型那样,输入数据仅仅是作为一个检查模型对错的方式,在强化学习下,输入数据直接反馈到模型,模型必须对此立刻作出调整。常见的应用场景包括动态系统以及机器人控制等。
机器学习首先要考虑使用什么样的模型。
模型的类别,大致有两种:
一是概率模型(Probabilistic Model)和非概率模型(Non-Probabilistic Model)。
在监督学习中,概率模型可被表示为(|),非概率模型则为 = ()。其中,是输入,是输出。在无监督学习中,概率模型可被表示为(|),非概率模型则为 = ()。其中,是输入,是输出。
决策树、朴素贝叶斯、隐马尔科夫模型、高斯混合模型属于概率模型。感知机、支持向量机、KNN、AdaBoost、K-means以及神经网络均属于非概率模型。
对于非概率模型而言,可按照判别函数线性与否分成线性模型与非线性模型。
感知机、线性支持向量机、KNN、K-means是线性模型。
核支持向量机、AdaBoost、神经网络属于非线性模型。
根据上述损失函数模型,我们可知,损失函数值越小,模型性能越好。给定一个数据集,我们将训练数据集的平均损失称为经验风险。基于经验风险最小化原则,可构建全局损失函数求解最优化问题:
当样本数量足够大时,根据大数定理,经验风险会近似于模型的期望风险。此时,经验风险最
小化能确保有好的学习性能。然而,当样本数量不足时,单单利用经验风险最小化可能会导致
“过拟合”的问题。
为此,我们再原有基础上加上用于控制模型复杂度的正则项(Regularizer),得到结构最小化准则。具体定义是:
其中,()代表对模型复杂度的惩罚。模型越复杂,()越大,模型越简单,()就越小。是
一个正的常数,也叫正则化系数,用于平衡经验风险和模型复杂度。
一般来说,结构风险小的模型需要经验风险和模型复杂度同时小,因此对训练数据和测试数据
都能有较好的拟合。
算法指的是模型学习中的具体计算方法。一般来说,基于参数模型构建的统计学习问题都为最优化问题,它们都具有显式的解析解。
现有的优化方法主要有:梯度下降法、牛顿法、拟牛顿法、ADAM等等。本教程中,用梯度下降法作为主要的优化算法
当损失函数给定时,我们将基于模型训练数据的误差(Training Error)和测试数据的误差(Testing Error)作为模型评估的标准。
测试误差的具体定义为:
其中,′为测试数据数量,L(, መ())是损失函数,代表真实标签,መ()代表预测标签。
一般来说,若我们模型学习的效果好,则训练误差和测试误差接近一致