目录

获取语料

语料预处理

特征工程

特征选择

模型训练

模型评估

模型预测



NLP,Natural Language Processing 即自然语言处理。是人工智能的一个子领域,就是用计算机计算处理自然语言。进行自然语言处理一般需要以下步骤。

获取语料

预料,即语言材料,文本的集合成为语料库。在机器学习中,我们通常处理把用于模型训练的一行数据称为一个文本。但是日常中我们一般把一个文件称为一个文本,这个概念对初学者就很容易引起误解。比如处理数据是读入多个文件,但是经过预处理、特征工程后,这些文件可能被合并成一行,这时输入的一个文件不能成为一个文本,自然语言处理的文本概念是相对特征工程后形态而言的。

语料的获取方法:

(1)已有语料,即由自身业务积累下来的语料

(2)网上抓取,即通过爬虫等工具在网上获取的语料

(3)公共语料,一些企业或研究机构公开的语料

语料预处理

在自然语然的工程应用中,语料的预处理大概占总工作量50%以上。因此开发人员大部分的工作都在进行语料的预处理。预处理通常有以下几方面的重要工作:

(1)数据清洗,就是在语料中找到有用的东西。比如去重,对齐,删除,合并、拆分等。

(2)分词,语料中通常是句子和段落,尤其是中文语料词之间没有明显的间隔。这个时候就需要对句子或段落分词。分词的方法通常有:

1)基于理解的分词方法;

2)基于规则的分词方法;

3)基于统计的分词方法;

4)基于字符串的分词方法。

3)词性标注,就是个词语打上标签,比如形容词、动词、名词等。词性标注并不是必须的,比如对应文本分类就不需要标注词性,情感分析就需要关心词性的问题。

4)去停用词,对程序处理无用或者贡献很小的词称为停用词。比如人称、语气、标点符号等无用的词在分词后一般需要删除。

特征工程

语料预处理后,就要考虑如何把词和词语转换为计算机能够处理的类型;如中文转换为数字。常用的处理方法有:

(1)词袋模型BOW,即不考虑词语出现的先后顺序,把词语放入集合中,然后按照出现的次数进行统计计数。

(2)向量模型,把词语转换为向量矩阵。如one-hot,wordToVec。

特征选择

特征工程后,一般会存在非常多的特征向量。特征选择就是选择那些对模型训练作用最大的特征。这个过程非常重要,对于经验丰富和对模型理论较好的开发人员往往能够选择正确特征向量,极大的减少训练时间,提高效率。

模型训练

对不同的业务问题,选择合适的模型进行训练。这些模型可以用开源的算法框架,也可以自己开发。比如采用Naïve Bayes,SVM、FP-Growth、LSTM等。训练过程中需要注意过拟合和欠拟合的问题,比如过拟合可以通过增加训练数据、增加正则化项;欠拟合则可以增加模型复杂度,减少正则化,增加特征维度等。

模型评估

模型评估就是对训练后的模型测量是否达到既定目标。常用的评估方法有:

(1)准确率、精确率、召回率、查全率、特异度、灵敏度

(2)F-Measure、ROC曲线、AUC、PR曲线

模型预测

模型训练和评估后,就可以用来对业务的数据进行预测了。在实际生产业务中,同一个业务通常用多种模型进行预测,分析比较。

[NLP]自然语言的处理步骤相关推荐

  1. nlp自然语言处理_自然语言处理(NLP):不要重新发明轮子

    nlp自然语言处理 介绍 (Introduction) Natural language processing (NLP) is an intimidating name for an intimid ...

  2. NLP自然语言处理-机器学习和自然语言处理介绍(五)

    NLP自然语言处理-机器学习和自然语言处理介绍-知识抽取构建流程 1.什么是知识抽取 知识抽取,即从不同来源.不同结构的数据中进行知识提取,形成知识(结构化数据)存入到知识图谱. 知识抽取的三个基本任 ...

  3. NLP自然语言处理实战(一):利用分词器构建词汇表

    在NLP中,分词(tokenization,也称分词)是一种特殊的文档切分(segmentation)过程.而文档切分能够将文本拆分成更小的文本块或片段,其中含有更集中的信息内容.文档切分可以是将文档 ...

  4. NLP自然语言处理学习

    NLP自然语言处理 一.形式语言和自动机(源码) 请设计程序实现如下有限自动机,并输入三个不同的字符串,对字符串进行合法性检测(即判断字符串中的字符是否在输入符号集中),之后由有限自动机判断字符串是否 ...

  5. NLP 自然语言处理实战

    前言 自然语言处理 ( Natural Language Processing, NLP) 是计算机科学领域与人工智能领域中的一个重要方向.它研究能实现人与计算机之间用自然语言进行有效通信的各种理论和 ...

  6. NLP自然语言处理实例——实现机器自动生成商品的推荐标题和推荐语

    NLP自然语言处理实例--实现机器自动生成商品的推荐标题和推荐语 一.案例目的及实现 二.环境配置 1.安装库时遇到的问题 三.数据预处理 1.移除特殊符号 2.去除停用词 3.文本分词jiaba 四 ...

  7. 数据分析学习总结笔记16:NLP自然语言处理与文本探索性分析

    文章目录 1 引言 2 数据集 3 文本统计信息分析 4 Ngram模型探索 5 基于pyLDAvis的主题模型探索 6 绘制词云图 7 情感分析 7.1 TextBlob 7.2 Vader Sen ...

  8. Python实现某站热门评论情感分析----NLP自然语言处理

    文章目录 前言 准备工作 总体思路 开始动手 Python 爬取热门视频评论信息 Baidu AI 分析所得评论的情感信息 Excel 自动写入所有评论情感信息 主函数(开始执行) 运行结果 Exce ...

  9. 适用于NLP自然语言处理的Python:使用Facebook FastText库

    在本文中,我们将研究FastText,它是用于单词嵌入和文本分类的另一个极其有用的模块. 最近我们被客户要求撰写关于NLP自然语言处理的研究报告,包括一些图形和统计输出. 在本文中,我们将简要探讨Fa ...

最新文章

  1. 【MATLAB】find 函数 总结
  2. java初始化实例化_java类的初始化和实例化区别
  3. 长沙望城:当好“贴心人” 扎牢“人民根” 坚守“云阵地”
  4. ZOJ 3720 Magnet Darts (计算几何,概率,判点是否在多边形内)
  5. 在Linux上搭建VisualSVN Server(svn服务端)
  6. docker entrypoint入口文件详解
  7. 工业机器人九龙坡区职教中心_2020年度机械行业职业教育技能大赛“汇博杯”精密模具智能制造综合技术应用赛项于重庆工业职业技术学院正式闭幕...
  8. 微信警告小游戏“分享滥用”;小米千亿估值再被下调;Facebook 最大规模重组 | CSDN 极客头条...
  9. AI与大众最近的接触——智能语音交互
  10. 安装软件后,在postinst中执行ldconfig无效?
  11. 4. DICOM图像层级分类-DCMTK-元素读取
  12. ubuntu wps安装
  13. 蒸汽管道图纸符号_如何正确画工艺流程图?图标、符号、图示、标志及含义
  14. 基于PHP+MySQL的汽车零配件生产企业ERP生产管理子系统
  15. vue实现文件下载功能
  16. 2020年10月计算机语言排名,最新!2020年10月编程语言排行榜出炉
  17. Eidetic:助你提升记忆力的酷应用
  18. EasyDarwin开源流媒体服务器
  19. ruok is not executed because it is not in the whitelist.
  20. python翻页爬豆瓣影评_Python超级简单的爬虫案例--爬豆瓣影评为例

热门文章

  1. Cookies 和 Session的区别
  2. [置顶]mybatis分页插件实现分页...
  3. HTML5表单那些事
  4. Linux UDP编程
  5. [蓝桥] 基础练习 十进制转十六进制 (java)
  6. [HDU 2096] 小明A+B
  7. Dubbo即将毕业,晋升为Apache顶级项目?
  8. linux 使用 vim 玩python
  9. flutter笔记5:官方资料搬运-安卓客户端打包
  10. 如何禁止特定用户使用sqlplus或PL/SQL Developer等工具登陆?