- 列表内容
这篇文章只限于对于想了解文本分析或是机器学习的童鞋,对于已经在这一行干了很久的,希望看了后能提一些建议,欢迎拍砖。
我只想用形象简单的方式,让大家了解文本分析具体是什么,怎么进行机器学习过程,所谓高大上的东西只是自己没有勇气去了解而已。
文本分析顾名思义就是对文本进行统计处理,然后让机器学习一些文本特征,然后进行自动化预测。这里面关联了数据挖掘、机器学习、数学建模等多个方面的知识,所以进行文本分析之前,最起码对以上内容有所了解。但是下面我会用通俗易懂的方式让大家了解文本分析的过程。具体的细节就需要有专业的知识。
文本分析里面所使用的机器学习算法有两大类,分类和聚类算法(这里面不包含神经网络,这个比较难),而下面要讲的就是分类算法。分类算法:ababoost、决策树、svm、bagging、KNN等很多类似算法。文本的形式有很多,可以是结构化、半结构化的、非机构化文本,这里我们讲的是一个非结构化文本。好了,具体内容可以百度一下,不多做解释,开始正题吧。
首先在这里我想给大家先举个例子:
编者:你能说一些黄豆的特点吗?
A童鞋:知道呀,这都不知道,肯定是黄色的,然后。。。。。。。你懂的
编者:B童鞋你能说一些绿豆的特点吗?
B童鞋:你傻呀,肯定是绿的,然后。。。。。。。你懂的
编者:如果我放一盆黄豆、绿豆和其他豆,你能分开吗?
AB童鞋:必须能呀
这里面讲的很明白,如果要分清楚黄豆和绿豆,那必须得知道黄豆的特点和绿豆的特点,这些特点其实是你自己学习出来的,一样的道理,如果让机器去帮你分类一个文本的话,那必须得知道这个文本的特征是什么?这个很重要。
需要得到文本特征的话,就需要和目的关联在一块了,也就是你的业务需求,你要通过文本达到一个什么样的目的。了解目的后,拿到文本就可以通过数据抽取、数据预处理、去噪点、分词、词性标注等一系列过程,得到可供分析的文本形式,比如txt、xml等你感觉很好提炼特征的形式。然后通过特征提取器(就是从txt、xml中提取能够代表这一文本特点的词),并且使其分类(这里前前期可能需要人工干预),得到文本特征和特征的分类,为什么会有分类呢?其实就想黄豆和绿豆一样,他们就是分类,而黄豆和绿豆的特征就是我们上面通过各种数据手段得到的特征。(我不知道大家是否明白这点,这是关键)
从上面可以看到,我们得到了 特征(feature)和分类(category)的关系,比如:黄色:黄豆,绿色:绿豆。。这些数据组合成一个训练集,然后就可以进行我们真正的机器学习了。
那这时候,机器学习就简单了,通过现成的机器学习算法就可以帮助你做这些事了,不用你去多操心了,举个简单的例子:朴素贝叶斯算法,只要你训练集代入到朴素贝叶斯算法中,他就是形成一个model(语言模型)。可以利用model进行预测了,这里需要注意的是训练集必须很大才行,这样才有预测价值,自己想想就明白了。