10分钟看懂自然语言处理之文本处理
2018-03-14 本文已影响29人
林檎果
自然语言处理的目的是让机器试图理解和处理人类的文字。通常来说,人的语言是冗余的,含有歧义的,而机器是准确的,无歧义的,要让机器理解,这之间存在一个转换的问题。
通常做法的逻辑思路是,文本处理-->特征提取-->建立模型
文本处理是为了让数据干净,便于输入数学模型做处理。
文本处理的常见流程:
- 文本获取:下载数据集;通过爬虫程序从网上收集;通过SQL语句从数据库读取等等;
- 文本提取:从多种数据来源提取文本(如从网页、txt、pdf文件、OCR纸张的复印件、甚至语音识别),如用正则表达式提取文本,网页则用CSS选择器的语法提取文本,复印件图片则用OCR识别文本技术。
- 文本正则化:也就是规范化文本,英文需要处理大小写,可以根据需要去除标点符号,
- 文本词语切分:中文需要分词,英文直接按空格拆分出一个个单词。
- 通用词删除:去掉高频的无意义的词,如“的”、“地”、“得”等等。
- 词性分析:词是动词、名词、状语之类的。为了了解句子结构。
- 专有名词识别:公司名、人名、地名
- 词干提取(stemming)和词形还原(lemmatization) :英文词会有各种时态和单复数变形,需要把词还原成词干。
关于我:
linxinzhe,全栈工程师,目前供职于某500强通信企业。人工智能,区块链爱好者。
GitHub:https://github.com/linxinzhe
欢迎留言讨论,也欢迎关注我,收获更多AI开发相关的知识,我也会关注你的哦!