首页 > 代码库 > 我扑在概念上,就像饥饿的人扑在面包上

我扑在概念上,就像饥饿的人扑在面包上

不夸张地说(提示:群主要吹NB),从小到大,我最喜欢的课就是数学了,含几何、微积分、线性代数、概率论。数学老师是我的最佳暗恋对象,无论年轻小伙还是鹤发童颜。高中时曾经有位聪明的帅哥问过数学老师(一位鹤发童颜的老头),觉得我们班上数学概念掌握的最好的人是谁,老师略一沉吟答:应该是xxx了。因为数学概念掌握得清晰,数学考试经常第一,所以精通N国语言及素描的文科才女也会与我促膝长谈,谦虚地询问我有关数学学习方法的事。我能有什么方法,我只有感觉啊(逃)。

 

无论学什么,概念和定义都是理论的基石,勿在浮沙之上筑高台。

 

进入机器学习领域,可能迎面遇上许多似是而非的概念,犹如迷魂阵般的大雾霾:

人工智能?机器学习?统计分析?数据挖掘?模式识别?神经网络?WTF!

 

下面对这些概念做一些定义和区分,来自维基百科(→ 前方高能预警,请自动进入贤者模式):

 

人工智能

人工智能(英语:Artificial Intelligence, AI)亦称机器智能,是指由人工制造出来的系统所表现出来的智能。通常人工智能是指通过普通电脑实现的智能。该词同时也指研究这样的智能系统是否能够实现,以及如何实现的科学领域。

 

人工智能的研究是高度技术性和专业的,各分支领域都是深入且各不相通的,因而涉及范围极广。

 

AI的核心问题包括推理、知识、规划、学习、交流、感知、移动和操作物体的能力等。强人工智能目前仍然是该领域的长远目标。目前比较流行的方法包括统计方法,计算智能和传统意义的AI。目前有大量的工具应用了人工智能,其中包括搜索和数学优化、逻辑推演。而基于仿生学、认知心理学,以及基于概率论和经济学的算法等等也在逐步探索当中。

 

机器学习

机器学习是人工智能的一个分支。人工智能的研究是从以“推理”为重点到以“知识”为重点,再到以“学习”为重点,一条自然、清晰的脉络。显然,机器学习是实现人工智能的一个途径,即以机器学习为手段解决人工智能中的问题。

 

机器学习在近30多年已发展为一门多领域交叉学科,涉及概率论、统计学、逼近论、凸分析、计算复杂性理论等多门学科。机器学习理论主要是设计和分析一些让计算机可以自动“学习”的算法。机器学习算法是一类从数据中自动分析获得规律,并利用规律对未知数据进行预测的算法。因为学习算法中涉及了大量的统计学理论,机器学习与推断统计学联系尤为密切,也被称为统计学习理论。算法设计方面,机器学习理论关注可以实现的,行之有效的学习算法。很多推论问题属于无程序可循难度,所以部分的机器学习研究是开发容易处理的近似算法。

 

机器学习已广泛应用于数据挖掘、计算机视觉、自然语言处理、生物特征识别、搜索引擎、医学诊断、检测信用卡欺诈、证券市场分析、DNA序列测序、语音和手写识别、战略游戏和机器人等领域。

 

机器学习可以分成下面几种类别:

  • 监督学习从给定的训练数据集中学习出一个函数,当新的数据到来时,可以根据这个函数预测结果。监督学习的训练集要求是包括输入和输出,也可以说是特征和目标。训练集中的目标是由人标注的。常见的监督学习算法包括回归分析和统计分类。

  • 无监督学习与监督学习相比,训练集没有人为标注的结果。常见的无监督学习算法有聚类。

  • 半监督学习介于监督学习与无监督学习之间。

  • 强化学习通过观察来学习做成如何的动作。每个动作都会对环境有所影响,学习对象根据观察到的周围环境的反馈来做出判断。

 

统计学

统计学是在数据分析的基础上,自17世纪中叶产生并逐步发展起来的一门学科。它是研究如何测定、收集、整理、归纳和分析反映数据资料,以便给出正确讯息的科学。统计广泛地应用在各门学科,从自然科学、社会科学到人文学科,甚至被用于工商业及政府的情报决策之上。随着大数据(Big Data)时代来临,统计的面貌也逐渐改变,与信息、计算等领域密切结合,是数据科学(Data Science)中的重要主轴之一。

 

譬如自一组数据中,可以摘要并且描述这份数据的集中和离散情形,这个用法称作为描述统计学。另外,观察者以数据的形态,创建出一个用以解释其随机性和不确定性的数学模型,以之来推论研究中的步骤及母体,这种用法被称做推论统计学。这两种用法都可以被称作为应用统计学。数理统计学则是讨论背后的理论基础的学科。

 

数据挖掘

数据挖掘(Data mining)是一个跨学科的计算机科学分支。它是用人工智能、机器学习、统计学和数据库的交叉方法在相对较大型的数据集中发现模式的计算过程。数据挖掘过程的总体目标是从一个数据集中提取信息,并将其转换成可理解的结构,以进一步使用。除了原始分析步骤,它还涉及到数据库和数据管理方面、数据预处理、模型与推断方面考量、兴趣度度量、复杂度的考虑,以及发现结构、可视化及在线更新等后处理。数据挖掘是“数据库知识发现”(KDD)的分析步骤。

 

模式识别

模式识别(英语:Pattern recognition),就是通过计算机用数学技术方法来研究模式的自动处理和判读。我们把环境与客体统称为“模式”。对人类来说,特别重要的是对光学信息(通过视觉器官来获得)和声学信息(通过听觉器官来获得)的识别。这是模式识别的两个重要方面。市场上可见到的代表性产品有光学字符识别(Optical Character Recognition, OCR)、语音识别系统。

 

应用计算机对一组事件或过程进行辨识和分类,所识别的事件或过程可以是文字、声音、图像等具体对象,也可以是状态、程度等抽象对象。这些对象与数字形式的信息相区别,称为模式信息。

 

模式识别又常称作模式分类,从处理问题的性质和解决问题的方法等角度,模式识别分为有监督的分类(Supervised Classification)和无监督的分类(Unsupervised Classification)两种。二者的主要差别在于,各实验样本所属的类别是否预先已知。一般说来,有监督的分类往往需要提供大量已知类别的样本,但在实际问题中,这是存在一定困难的,因此研究无监督的分类就变得十分有必要了。

 

神经网络

人工神经网络(英文:artificial neural network,缩写ANN),简称神经网络(英文:neural network,缩写NN)或类神经网络,是一种模仿生物神经网络(动物的中枢神经系统,特别是大脑)的结构和功能的数学模型或计算模型,用于对函数进行估计或近似。神经网络由大量的人工神经元联结进行计算。大多数情况下人工神经网络能在外界信息的基础上改变内部结构,是一种自适应系统。现代神经网络是一种非线性统计性数据建模工具。

 

站在各位大牛的肩膀上,整理了下面简图,供参考:

技术分享

 

虽然掌握概念枯燥乏味,但却是元认知的重要组成部分。希望大家咀嚼、反刍、消化、吸收,化为己有。相信厚积薄发,指日可待。

我扑在概念上,就像饥饿的人扑在面包上