统计机器学习(一)之 绪论

1.1统计学习

1.统计学习的特点

统计学习(statistical learning)是关于计算机基于数据构建概率统计模型并运用模型对数据进行预测与分析的一门学科

统计学习的主要特点是:

  1. 统计学习以计算机及网络为平台,是建立在计算机及网络之上的
  2. 统计学习以数据为研究对象,是数据驱动的学科
  3. 统计学习的目的是对数据进行预测与分析
  4. 统计学习以方法为中心,统计学习方法构建模型并应用模型进行预测与分析
  5. 统计学习是概率论,统计学,信息论,计算理论,最优化理论等多个领域的交叉学科

Herbert A.Simon曾对学习给出一下定义:"如果一个系统能够通过执行某个过程改进它的性能,这就是学习"

统计学习就是计算机系统通过运用数据及统计学习方法提高系统性能的机器学习

Mitchell (1997) 提供了一个机器学习简洁的定义:机器学习是用数据或以往的经验,以此优化计算机程序的性能标准

2. 统计学习的对象

1. 统计学习的对象是数据(data)

它从数据出发,提取数据的特征,抽象出数据模型,发现数据中的知识,又回到数据的分析与预测中去

data : 计算机及互联网上的各种数字、 文字、 图像、 视 频、 音频数据以及它们的组合。

数据的基本假设同类数据具有一定的统计规律性,这是统计学习的前提

由于它们具有统计规律性,所以可以用概率统计方法来加以处理

附:统计规律性:统计规律性是支配大量个别偶然事件的整体行为的规律性。
随机现象有其偶然性的一面,也有其必然性的一面,这种必然性表现为大量观察或试验中随机事件发生的频率的稳定性,即一个随机事件发生的频率经常在某个定值附近摆动,而且,试验次数越多,一般摆动越少,这种规律性我们称之为统计规律性。
特点:

  1. 只对大量个别偶然事件的总体起作用;
  2. 个别偶然事件的数量越多,统计规律性的表现越明显;
  3. 即使对于大量的个别偶然事件的总体来说,也存在所谓涨落现象。

我的理解是:同类数据是指具有某种共同性质的数据,各种大数定理和中央极限告诉我们,虽然个体随机,但是总体有稳定分布。
一个随机的过程是一个不定因子不断产生的重复过程,但由于它具有某种共同性质,这些不定因子必然存在某种联系,也就是具有某种规律可言,不然这些数据为何具有某种共同性质,

比如,可以用随机变量描述数据中的特征 
概率分布描述数据的统计规律

附:随机变量(random variable)表示随机试验各种结果的实值单值函数。随机事件不论与数量是否直接有关,都可以数量化,即都能用数量化的方式表达。
概率分布:主要用以表述随机变量取值的概率规律

2. 统计学习的目的

用于对数据(特别是未知数据) 进行预测和分析

3.统计学习的方法

    


统计学习的前提:假设数据是同分布产生的 附: 首先看看百度百科对于独立同分布的解释:

独立同分布independent and identically distributed (i.i.d.)

在概率统计理论中,指随机过程中,任何时刻的取值都为随机变量,如果这些随机变量服从同一分布,并且互相独立,那么这些随机变量是独立同分布。如果随机变量X1和X2独立,是指X1的取值不影响X2的取值,X2的取值也不影响X1的取值且随机变量X1和X2服从同一分布,这意味着X1和X2具有相同的分布形状和相同的分布参数,对离随机变量具有相同的分布律,对连续随机变量具有相同的概率密度函数,有着相同的分布函数,相同的期望、方差。如实验条件保持不变,一系列的抛硬币的正反面结果是独立同分布。

关于独立同分布,西瓜书这样解释道:

输入空间X中的所有样本服从一个隐含未知的分布,训练数据所有样本都是独立地从这个分布上采样而得。

好了,那为啥非要有这个假设呢?

我们知道,机器学习就是利用当前获取到的信息(或数据)进行训练学习,用以对未来的数据进行预测、模拟。所以都是建立在历史数据之上,采用模型去拟合未来的数据。因此需要我们使用的历史数据具有总体的代表性。
附:总体的代表性: 从总体中抽取部分观察单位,其测量值的集合作为样本,依据样本信息来推断总体特征,这种研究方法称为抽样研究,为保证样本的代表性,必须遵循随机化原则

通过独立同分布的假设,就可以大大减小训练样本中个例的情形。

机器学习并不总是要求数据同分布。在不少问题中要求样本(数据)采样自同一个分布是因为希望用训练数据集训练得到的模型可以合理用于测试集,使用同分布假设能够使得这个做法解释得通。

统计学习方法包括模型的假设空间、模型选择的准则以及模型学习的算法。实现统计学习的步骤如下:

(1)      得到一个有限的训练数据集合;

(2)      确定包含所有可能的模型的假设空间,即学习模型的集合;

(3)      确定模型选择的准则,即学习的策略;

(4)      实现求解最优模型的算法,即学习的算法;

(5)      通过学习方法选择最优模型;

(6)      利用学习的最优模型对新数据进行预测或分析。

《机器学习实战》开发机器学习应用程序的步骤 本书学习和使用机器学习算法开发应用程序,通常遵循以下的步骤。

  1. 收集数据。我们可以使用很多方法收集样本数据,如:制作网络爬虫从网站上抽取数据、从RSS反馈或者API中得到信息、设备发送过来的实测数据(风速、血糖等)。提取数据的方法非常多,为了节省时间与精力,可以使用公开可用的数据源。

  2. 准备输入数据。得到数据之后,还必须确保数据格式符合要求,本书采用的格式是Python语言的List。使用这种标准数据格式可以融合算法和数据源,方便匹配操作。本书使用Python语言构造算法应用,不熟悉的读者可以学习附录A。此外还需要为机器学习算法准备特定的数据格式,如某些算法要求特征值使用特定的格式,一些算法要求目标变量和特征值是字符串类型,而另一些算法则可能要求是整数类型。后续章节我们还要讨论这个问题,但是与收集数据的格式相比,处理特殊算法要求的格式相对简单得多。

  3. 分析输入数据。此步骤主要是人工分析以前得到的数据。为了确保前两步有效,最简单的方法是用文本编辑器打开数据文件,查看得到的数据是否为空值。此外,还可以进一步浏览数据,分析是否可以识别出模式;数据中是否存在明显的异常值,如某些数据点与数据集中的其他值存在明显的差异。通过一维、二维或三维图形展示数据也是不错的方法,然而大多数时候我们得到数据的特征值都不会低于三个,无法一次图形化展示所有特征。本书的后续章节将会介绍提炼数据的方法,使得多维数据可以压缩到二维或三维,方便我们图形化展示数据。这一步的主要作用是确保数据集中没有垃圾数据。如果是在产品化系统中使用机器学习算法并且算法可以处理系统产生的数据格式,或者我们信任数据来源,可以直接跳过第3步。此步骤需要人工干预,如果在自动化系统中还需要人工干预,显然就降低了系统的价值。

  4. 训练算法。机器学习算法从这一步才真正开始学习。根据算法的不同,第4步和第5步是机器学习算法的核心。我们将前两步得到的格式化数据输入到算法,从中抽取知识或信息。这里得到的知识需要存储为计算机可以处理的格式,方便后续步骤使用.如果使用无监督学习算法,由于不存在目标变量值,故而也不需要训练算法,所有与算法相关的内容都集中在第5步。

  5. 测试算法。这一步将实际使用第4步机器学习得到的知识信息。为了评估算法,必须测试算法工作的效果。对于监督学习,必须已知用于评估算法的目标变量值;对于无监督学习,也必须用其他的评测手段来检验算法的成功率。无论哪种情形,如果不满意算法的输出结果,则可以回到第4步,改正并加以测试。问题常常会跟数据的收集和准备有关,这时你就必须跳回第1步重新开始。

  6. 使用算法。将机器学习算法转换为应用程序,执行实际任务,以检验上述步骤是否可以在实际环境中正常工作。此时如果碰到新的数据问题,同样需要重复执行上述的步骤。下节我们将讨论实现机器学习算法的编程语言Python。之所以选择Python,是因为它具有其他编程语言不具备的优势,如易于理解、丰富的函数库(尤其是矩阵操作)、活跃的开发者社区等。

阅读更多
文章标签: 统计学 机器学习
个人分类: 机器学习
想对作者说点什么? 我来说一句

没有更多推荐了,返回首页

关闭
关闭
关闭