Promised Place

云之彼端

This is HT (Jinghu Hu)'s personal blog about his research in mechanical engineering and deep learning


Little things matter.

我对统计学习的理解

在理工科的研究和工程应用中,我们常常需要用到模型,用来基于理论预测现实。而近现代科学,就是人类用现代科学方法,理解自然和人类社会,并建立理论知识,构建并验证模型的过程。

传统的模型建立方法,具有一套逻辑清晰的方法论。我们通过观察,实验和数据收集,了解感兴趣的因变量和一系列简单的自变量的关系,建立定量的,基于数学方程的模型。经过一系列验证后依然成立的数学方程,便可应用到广阔的工程学科中。以我们初中物理所提及的滑动摩擦力为例子。研究者们先确定了可能影响摩擦力$f$的变量:表面粗糙程度(滑动摩擦系数\(\mu)\)、接触面积$S$、下压力$N$、滑动速度$v$等。然后通过单变量实验,确定了实际滑动摩擦力与上述自变量之间的关系f=\(\mu N\)。经过其他研究者的验证,上述简单的方程能够完美的确定物理在相对滑动时受到的滑动摩擦力。因而,上述公式成立。在之后,所有需要计算滑动摩擦力的场合,我们都可以使用上述简单的线性方程$f=\mu N$,对滑动摩擦力进行计算。

这套方法论在近代科学的进步中所向披靡。但随着研究的问题日益复杂,这套基于数学物理方程的科学研究方法逐渐减缓了前进的步伐。在流体力学的研究中,科学家们能够通过理论分析获得控制流体流动的流体力学偏微分方程:纳维——斯托克斯方程。但时至今日,这个方程是否有确定的分析解,仍然是数学家们苦苦探索的数学难题。但人类很快基于这种偏微分方程提出了名为数值分析的工具:既然能把方程列出来,那只要求出一个数值上合情合理的解,就不需要在意这个方程的分析解是什么,而能够直接应用在实际工程中了。因此,数学就多了一大块名为数值分析的工具包。

随着人类文明的发展,终于,出现了即使是方程都列不出来的问题了。比如某些社会学问题。统计学习历史上一个经典的学习案例,就是属于泰坦尼克号轮船乘客生还与否的学习问题。从南安普顿开出的巨轮撞上了冰山并沉没。过半乘客罹难。由于存在乘客名单,因此能够清楚地知晓所有乘客的舱位,性别,年龄……以及他们是否获救。人们希望获悉,这些纷繁复杂的变量中,哪些变量最终对某名特定的乘客的最终获救与否起到了重要作用。

对于这种案例,原本对自然科学研究的模型理论方法自然不再适用:即使是我们认为获救概率大的头等舱年轻女性,也不可能保证百分之百获救;我们认为罹难概率大的三等舱男性老人,也并非全部丧生。针对某个特定的个体,上述绝对的推断都存在错误的风险。但是从一个整体的角度上来看,某些特定的变量确实对某一个个体的生存率起到了重要的影响,而这种情况,就需要让机器自动学习一个模型,在给定一部分数据之后,机器认识到了这些数据带来的规律。并建立一个模型并将参数优化。在再度被提供一个个体案例之后,机器可以将这个案例的输入数据输入到自己的模型中,计算出输出结果(本案例中为生存率)。诚然,对于某个特定个体而言,这个模型存在着一定的误差。但是对于整体而言,这个模型能够在很大程度上提供宏观的预测准确率。这就是机器学习(或者统计学习)目前的基本思路。

机器学习的基础是统计学习模型。从最简单的开始,有以下数类模型(未完全):

  • 分类器
  • 决策树
  • 简单贝叶斯分类器
  • 简单神经网络
  • 深度学习网络
最近的文章

Set up a VPS, install Jekyll and Nginx, and build your own blog website

Virtual private servers (VPSs) are something you want to get around Internet censorship, maintain a personal website without spending too much, or test your programs without destroying your local data. For those unfamiliar with Linux command user ...…

继续阅读