1.机器学习
- 什么是机器学习
机器学习是自然语言处理的基。机器学习通俗的说就是已让机器学会算法的算法。 - 模型
模型是对现实问题的一个数学抽象的形式,由一个假设函数以一系列参数构成。
例如预测中国人名对应的性别。假设中国人名由函数输出的符号决定,负数表示女性,非负数表示男性。
关于选取的定义如下:
其中,w和b是函数的参数,x是函数的自变量。则模型指的就是包括参数在内的整个函数。 - 特征
特征——事物的特点转化的数值。
对于上述的模型,关于中国人名,姓氏与性别无关,真正起作用的是名字。而计算机不知道哪部分是姓,哪部分是名。姓氏术语无用的特征,不应该被提取。除此之外,有一些特殊的字(壮、雁、健、强)是男性常用的,而(丽、燕、冰、雪)则是女性常用的。以及(文、海、宝、玉)则是男女通用的。在专家系统中,关于显示编程:String predictGender(String name) { if (name.contains("丽") || name.contains("冰") || ...) return "女"; if (name.contains("壮") || name.contains("雁") || ...) return "男"; return "不知道"; }
如果有人叫“沈雁冰”怎么办?计算机一时间没法分辨,但是这个名字是男性用的。遇到上述情况,为此设置优先级。在机器学习当中,“优先级”可以看做特征权重或模型参数。为了方便计算机处理,将这些特征表示为数值类型的特征,这个过程就叫做特征提取。
-
数据集
如何让机器自动学习,来获得模型的参数呢?首先得有一本习题集。希望机器可以自动从习题集中学习中国人名的规律。其中,“例子”一般称为样本。
习题集在机器学习领域当中就称作数据集,在自然语言处理领域中称作语料库。 -
监督学习
监督学习算法——让机器先做一遍题,然后与标准答案进行比较,最后根据误差纠正模型的错误。 -
无监督学习
无监督学习算法——通过不包含标准答案的习题集进行演变。一般用于聚类和降维。