文章目录
- Chapter 1: Machine Learning
- 存在的问题
- 过拟合Overfitting
- 解决过拟合 regularization and validation
- regularization 正则化
- validation 验证
- 机器学习的类型
- 有监督学习
- 分类Classification
- 回归Regression
- 无监督学习
- 聚类
- 强化学习
- Chapter 2: Neural Network
- Chapter 3: Training of Multi-Layer Neural Network
- Chapter 4: Neural Network and Classification
- Chapter 5: Deep Learning
- Chapter 6: Convolutional Neural Network
Chapter 1: Machine Learning
- 深度学习是一种机器学习,而机器学习是一种人工智能。
机器学习的本质
:机器学习是一种从“数据”中找到“模型”的技术。在这里,数据的字面意思是指文档、音频、图像等信息。这个“模型”是机器学习的最终产物。
- 机器学习的创建是为了
解决分析模型几乎不可用的问题
。机器学习的主要思想是在方程和定律不好时使用训练数据实现一个模型.
- 但是由于训练的数据与得出的模型是存在不同的
存在的问题
过拟合Overfitting
- 训练数据中始终会存在异常点,这些异常点会影响边界的分类,机器识别是不能识别这些异常点的,这就会造成,当你将训练数据全部考虑的时候,就会得到通用性较低的模型
以上面的图为例子:对于图一,似乎拟合的十分成功,但是对于应用在图二的身上的正确性就有待确认
解决过拟合 regularization and validation
regularization 正则化
- 正则化是一种尽可能
简单地试图构建模型结构
的数值方法。简化的模型可以在较小的性能代价下避免过拟合的影响。
validation 验证
- 验证是一个保留一部分训练数据并使用其来监控性能的过程。验证集不用于培训过程。当训练后的模型对保留数据输入的性能水平较低时,模型被过拟合。在这种情况下,我们将修改模型,以防止过拟合。
机器学习的验证的过程
:
1.将训练数据分为两组:一组用于训练,另一组用于验证。根据经验,训练集与验证集的比率是8:2。
2.用训练集来训练模型。
3.使用验证集来评估模型的性能。
a.如果该模型的表现令人满意,则完成训练。
b.如果性能不能产生足够的结果,则修改模型并重复步骤2中的过程。
交叉验证:
交叉验证是验证过程中的一个细微变化。它仍然将训练数据分成组进行训练和验证,但不断改变数据集。交叉验证不是保留最初的划分集,而是重复对数据的划分。这样做的原因是,当模型是固定的时,模型也会过度拟合。由于交叉验证保持了验证数据集的随机性,它可以更好地检测模型的过拟合。
机器学习的类型
- 根据训练方法,这些机器学习技术可以分为三种类型
有监督学习(Supervised Learning),无监督学习(Unsupervised Learning),强化学习(Reinforcement Learning)
有监督学习
有监督学习步骤:
1.选择一个练习问题。运用现有的知识来解决这个问题。比较一下答案和解决方案。
2.如果答案是错误的,请修改当前的知识。
3.对所有的练习问题,重复步骤1和步骤2。
- 在监督学习中,每个训练数据集都应该由
输入对和正确的输出对
组成。正确的输出是模型应该为给定的输入而产生的输出。- 在监督学习中,学习就是对模型进行一系列修正,以减少相同输入的正确输出和模型输出之间的差异。
分类Classification
分类问题的重点是从实际上查找数据所属的类。
垃圾邮件过滤服务➔分类邮件定期或垃圾邮件
数字识别服务➔分类数字图像到0-9
人脸识别服务➔人脸图像分类的注册用户之一
- 监督学习需要输入和正确的输出的训练数据。同样,分类问题的训练数据是:{ 输入,类别}
- 数据对用类代替了与输入对应的正确输出。
- 例子:我们希望机器学习回答的模型是用户的输入坐标(X,Y)属于这两个类(∆和)中的哪一个
- 那么输入的数据的形式就是
回归Regression
- 回归并不能决定类别。相反,它
估计了一个值
。- 例如,如果您有年龄和收入的数据集(用a表示),并且想要找到按年龄估计收入的模型,它就变成一个回归问题
- 那么就有输入的数据的形式就是{ 年龄 ,收入 }
无监督学习
- 相比之下,无监督学习的训练数据
只包含没有正确输出的输入
。- 无监督学习通常用于
研究数据的特征和对数据进行预处理
。这个概念类似于一个学生,他只是通过构造和属性来分类问题,而不学习如何解决它们,因为没有已知的正确输出
聚类
- 聚类是无监督学习的代表性应用之一。
它调查了个体数据的特征,并对相关数据进行了分类。
这很容易混淆聚类和分类,因为它们的结果是相似的。虽然它们产生相似的输出,但它们是两种完全不同的方法。我们必须记住,聚类和分类是完全不同的术语。当你遇到聚类这个术语时,只要提醒自己它关注的是无监督学习
强化学习
- 强化学习采用输入、一些输出和等级作为训练数据。它通常在需要最佳交互时使用,如控制和游戏玩法。