“机器学习”最初的研究动机是让计算机系统具有人的学习能力以便实现人工智能。因为没有学习能力的系统很难被认为是具有智能的。目前被广泛采用的机器学习的定义是“利用经验来改善计算机系统自身的性能”。
事实上,由于“经验”在计算机系统中主要以数据的形式存在,因此机器学习需要设法对数据进行分析学习,这就使得它逐渐成为智能数据分析技术的创新源之一,并且受到越来越多的关注。
机器学习的核心在于建模和算法,学习得到的参数只是一个结果。
成功训练一个模型需要四个要素:数据、转换数据的模型、衡量模型好坏的损失函数和一个调整模型权重以便最小化损失函数的算法。
机器学习里最重要的四类问题(按学习结果分类):
-
预测(Prediction):一般用回归(Regression,Arima)等模型。
-
聚类(Clustering):如K-means方法。
-
分类(Classification):如支持向量机法(Support Vector Machine,SVM),逻辑
回归(Logistic Regression)。
-
降维(Dimensional reduction):如主成分分析法(Principal Component Analysis,
PCA,即纯矩阵运算)。
如果按照学习方法,机器学习又可以分为如下几类
-
监督学习(SupervisedLearning,如深度学习);
-
无监督学习(Un-supervised Learning,如聚类);
-
半监督学习(Semi-supervised Learning);
-
增强学习(Reinforced Learning)。
几种常用的机器学习方法:
-
文本分类
-
特征提取
-
标注
-
搜索与排序
-
推荐系统
-
序列学习
1、
文本分类
文本分类技术在NLP领域有着举足轻重的地位。文本分类是指在给定分类体系,根据文本内容自动确定文本类别的过程。20世纪90年代以来,文本分类已经出现了很多应用,比如信息检索、Web 文档自动分类、数字图书馆、自动文摘、分类新闻、文本过滤单词语义辨析、情感分析等。
分类过程主要分为两个阶段,训练阶段和预测阶段。训练阶段根据训练数据训练得到分类模型。预测阶段根据分类器推断出文本所属类别。训练阶段一般需要先分词,然后提取文本为特征,提取特征的过程称之为特征提取。
一般来说文本分类大致分为如下几个步骤:
-
1)定义阶段:定义数据以及分类体系,具体分为哪些类别,需要哪些数据
-
2)数据预处理:对文档做分词、去停用词等准备工作。
-
3)数据提取特征:对文档矩阵进行降维,提取训练集中最有用的特征。
-
4)模型训练阶段:选择具体的分类模型以及算法,训练出文本分类器。
-
5)评测阶段:在测试集上测试并评价分类器的性能。
-
6)应用阶段:应用性能最高的分类模型对待分类文档进行分类。
2、
特征提取
在使用分类器之前,需要对文本提取特征,而一般来说,提取特征有几种经典的
方法:
-
Bag-of-words:最原始的特征集,一个单词/分词就是一个特征。往往一个数据集就会有上万个特征;有一些简单的指标可以帮助筛选掉一些对分类没帮助的词语,例如去停词、计算互信息熵等。但不管怎么训练,特征维度都很大,每个特征的信息量太小。
-
统计特征:包括Termfrequency(TF)、Inverse document frequency(IDF),以及合并起来的TF-IDF。这种语言模型主要是用词汇的统计特征来作为特征集,每个特征都能够说得出物理意义,看起来会比bag-of-words效果好,但实际效果也差不多。
-
N-Gram:一种考虑了词汇顺序的模型,就是N阶Markov链,每个样本转移成转移概率矩阵,也能取得不错的效果。
3、
标注
事实上,有一些看似分类的问题在实际中却难以归于分类。例如,把图所示的小女孩与狗这张图无论分类成人还是狗看上去都有些问题。
正如你所见,上图里既有人又有狗。其实还不止这些,里面还有草啊、书包啊、树啊等。与其将上图仅仅分类为其中一类,倒不如把这张图里面我们所关心的类别都标注出来。比如,给定一张图片,我们希望知道里面是否有人、是否有狗、是否有草等。给定一个输人,输出不定量的类别,这个就叫作标注任务。
4、
搜索与排序
在这个数据爆炸的时代,在大量数据的场景下,如何用算法帮助人们从这些无序的信息中找到人们需要的信息就成为一个刚需。搜索与排序关注的问题更多的是如何对一堆对象排序。例如在信息检索领域,我们常常关注如何把海量的文档按照与检索条目的相关性进行排序。在互联网时代,由于谷歌和百度等搜索引擎的流行,我们更加关注如何对网页进行排序。互联网时代早期,谷歌研发出一个著名的网页排序算法-PageRank。该算法的排序结果并不取决于特定的用户检索条目,这些排序结果可以更好地为所包含的检索条目的网页进行排序。
5、
推荐系统
推荐系统和搜索排序关系紧密,并且被广泛应用于电子商务、搜索引擎、新闻门户等。推荐系统的主要目标是把用户可能感兴趣的东西推荐给用户。推荐算法用到的信息种类非常多,例如用户的自我描述、过往的购物习惯,以及对过往推荐的反馈等。