其他分享
首页 > 其他分享> > 机器学习基础--一些基本的概念

机器学习基础--一些基本的概念

作者:互联网

前言

开始重新巩固一下机器学习的内容,先从基本的一些概念和定义开始。

本文介绍的内容如下所示:

  1. 机器学习的基本定义
  2. 局部最优和全局最优
  3. 机器学习、深度学习、数据挖掘、大数据之间的关系
  4. 为什么要使用机器学习

1. 机器学习的基本定义

机器学习算法是一种能够从数据中学习的算法。那么这里的学习的定义是什么呢?这里有一个简单的定义:

对于某类任务 T 和性能度量 P,一个计算机程序通过经验 E 改进后,在任务 T 上由性能度量 P 衡量的性能有所提升,这称为学习。

举例来说这个定义,比如对于图像分类这个任务,一般的性能度量 P 就是分类的准确率,而经验 E 其实就是图片数据集,当我们采用的算法,比如 CNN,在给定的训练集上训练后,然后在测试集上的准确率有所提升,这就是学习了。

这里的任务 T、经验 E 和性能 P 其实指代的内容非常的多,这里简单的介绍一下。

首先,对于任务 T,在机器学习领域里,可以是这些方向的任务:

对于性能度量 P,在不同的任务中会采用不同的性能指标,比如:

而经验 E,一般就是指数据集了,不同的任务对数据集的要求也不一样,比如图片分类一般就是图片和图片的标签,但目标检测、图像分割,需要的除了图片、标签,有的还需要图片中物体的标注框或者坐标信息等。

2. 局部最优和全局最优

优化问题一般分为局部最优和全局最优。其中,

  1. 局部最优,就是在函数值空间的一个有限区域内寻找最小值;而全局最优,是在函数值空间整个区域寻找最小值问题。
  2. 函数局部最小点是它的函数值小于或等于附近点的点,但是有可能大于较远距离的点。
  3. 全局最小点是那种它的函数值小于或等于所有的可行点。

2.1 如何区分局部最小点和鞍点

参考知乎回答:

通常一阶导数为 0 的点称为稳定点,可以分为三类:

鞍点如下所示:

一般区分鞍点和局部最优的方法是使用神经网络 loss surface 的 Hessian 矩阵,通过计算 Hessian 矩阵的特征值,进行判断:

根据文章:Geometry of Neural Network Loss Surfaces via Random Matrix Theory,可以看到神经网络的 Hessian 矩阵的特征值分布如下:

其中 $\phi$ 表示参数数目和数据量之比,其值越大表示数量相对较少,$\lambda$ 是特征值,$\epsilon$ 表示 loss 值,所以从上图可以得到:

另外一种判断是否是鞍点的方法:若某个一阶导数为0的点在至少一个方向上的二阶导数小于0,那它就是鞍点

最优点和鞍点的区别在于其在各个维度是否都是最低点

只要某个一阶导数为0的点在某个维度上是最高点而不是最低点,那它就是鞍点。而区分最高点和最低点当然就是用二阶导数,斜率从负变正的过程当然就是“下凸”,即斜率的导数大于0,即二阶导数大于0。反之则为“上凹”,二阶导数小于0。

2.2 如何避免陷入局部最小值或者鞍点

实际上,我们并不需要害怕陷入局部最小值,原因有这几个:

另外,根据https://www.zhihu.com/question/68109802的回答:

实际上我们可能并没有找到过”局部最优“,更别说全局最优了;

”局部最优是神经网络优化的主要难点“,这其实是来自于一维优化问题的直观想象,单变量的情况下,优化问题最直观的困难就是有很多局部极值。但在多变量的情况下,就不一定能找到局部最优了;

而对于鞍点,逃离鞍点的做法有这几种:

  1. 利用严格鞍点负特征值对应的方向,采用矩阵向量乘积的形式找到下降方向;
  2. 利用扰动梯度方法逃离鞍点,在梯度的模小于某个数的时候,在梯度上加个动量。

3. 机器学习、深度学习、数据挖掘、大数据之间的关系

首先来看这四者简单的定义:

关于这四个的关系,可以如下图所示:

机器学习和数据挖掘之间的关系如下:

数据挖掘是一个过程,在此过程中机器学习算法被用作提取数据集中的潜在有价值模式的工具。

大数据与深度学习关系总结如下:

(1)深度学习是一种模拟大脑的行为。可以从所学习对象的机制以及行为等等很多相关联的方面进行学习,模仿类型行为以及思维。

(2)深度学习对于大数据的发展有帮助。深度学习对于大数据技术开发的每一个阶段均有帮助,不管是数据的分析还是挖掘还是建模,只有深度学习,这些工作才会有可能一一得到实现。

(3)深度学习转变了解决问题的思维。很多时候发现问题到解决问题,走一步看一步不是一个主要的解决问题的方式了,在深度学习的基础上,要求我们从开始到最后都要基于一个目标,为了需要优化的那个最终目标去进行处理数据以及将数据放入到数据应用平台上去,这就是端到端(End to End)。

(4)大数据的深度学习需要一个框架。在大数据方面的深度学习都是从基础的角度出发的,深度学习需要一个框架或者一个系统。总而言之,将你的大数据通过深度分析变为现实,这就是深度学习和大数据的最直接关系。

机器学习和深度学习的关系:

4. 为什么要使用机器学习

原因如下:

一些机器学习的应用例子:


参考

  1. 《深度学习》
  2. 深度学习 500 问--https://github.com/scutan90/DeepLearning-500-questions
  3. 《hands-on-ml-with-sklearn-and-tf》
  4. https://www.zhihu.com/question/68109802
  5. https://www.zhihu.com/question/358632429/answer/919562000
  6. https://www.zhihu.com/question/68109802/answer/263503269

欢迎关注我的公众号--AI算法笔记,查看更多的算法、论文笔记。

在这里插入图片描述

标签:机器,--,数据,局部,学习,概念,深度,鞍点
来源: https://www.cnblogs.com/cai-study-ai-cv/p/13907049.html