这篇文章受最近发现的比较有意思的自然语言处理中BPE算法和规范化方法启发,总结了一些预处理方法。

1.双字节编码BPE-Byte pair encoding

这个算法的主要目的是压缩数据,并解决未注册词的问题。这里的未注册词指没有出现在训练语料库中,但出现在测试中的词。
The main purpose of this algorithm is to compress the data and solve the problem of unregistered words. Unregistered words here refer to words that do not appear in the training corpus, but appear when testing.

2.规范化Normalisation

这是一个经常被忽略,但很有用的方法。规范化的目的是把文本转换为规范形式,比如将soooo 转换为so,这对于社交媒体等文本很重要,可以确保单词的特征在一个相似的维度。然而规范化没有一种标准的方法,需要根据场景定义。
This is an often overlooked but useful preprocessing method. The purpose of normalisation is to transform text into canonical form, like transforming soooo to so, which is important for data especially social media, to make sure features are on a similar scale. However, there is no standard approach to normalisation, and the method needs to be defined according to the scenario.

3.1词形还原Lemmatisation

词形还原的目的是把一个词还原为能表达完整语义的一般形式。比如把good,better,best都还原为good
The purpose of lemmatisation is to reduce a word to a general form that can express the complete meaning. For example, transfer ‘good’, ‘better’, and ‘best’ to good.

3.2词干提取Stemming

词干提取与词形还原有共通之处,是去除词缀得到词根的过程。比如从cats, catlike, catty提取出同一个词根cat。
Stemming, has something in common to lemmatisation, is the process of removing affixes to get root of words. For example, we can extract the root ‘cat’ from ‘cats’, ‘catlike’, ‘catty’.

这两个方法都是为了减少单复数、时态等变形对分析结果的影响,但也可能会对训练产生不良影响。一个单词可能结束于不同的词性或意义,因为被词形还原或词根提取了。
These two methods are both designed to reduce the influence of the deformation like simple and complex numbers and tense on the analysis results, but they may also have a negative impact on the training. A word may also end up having a different POS or meaning, because it got lemmatised or stemmed.

4.停用词删除Stopword Removal

停用词是一种语言中常用的词。比如英文中的a,the,is等,删除这些词可以帮助我们专注于分析更为重要的词。
Stopwords are commonly used words in a languagelike a, the, is, etc. in English. Removing these words helps us focus on more important words during analysis.

5.标点符号删除Punctuation removal

通过去除标点符号,可以降低结构特征噪声,使模型更加有效。
By removing the punctuation, it can reduce the structure characteristic noise and make the model more effective.

6.小写化Lowercasing

在英文中,将所有文本小写是一种最简单有效的方法,适用于大多数自然语言处理问题,并有助于提高预期输出的一致性。但也要注意,有时在英文中,与小写单词相比,一些大写单词可能具有特殊的含义。
In English, lowercasing all text is one of the simplest and most effective methods for most natural language processing problems, and helps to improve the consistency of the expected output. However, note that some upper case words can have special meanings compared with lowercase words.

Nlp预处理方法(BPE Byte pair encoding、Normalization、Lemmatisation、Stemming…)相关推荐

  1. Byte Pair Encoding

    Introduction In natural language processing models, the inputs to the model are usually sequences of ...

  2. python常用的数据预处理方法

    2019独角兽企业重金招聘Python工程师标准>>> 转载自:http://2hwp.com/2016/02/03/data-preprocessing/ 常见的数据预处理方法,以 ...

  3. sklearn中常用的数据预处理方法

    常见的数据预处理方法,以下通过sklearn的preprocessing模块来介绍; 1. 标准化(Standardization or Mean Removal and Variance Scali ...

  4. python中常用的九种预处理方法

    本文总结的是我们大家在python中常见的数据预处理方法,以下通过sklearn的preprocessing模块来介绍; 1. 标准化(Standardization or Mean Removal ...

  5. python数据预处理的方法_python中常用的九种数据预处理方法

    python中常用的九种预处理方法分享 本文总结的是我们大家在python中常见的数据预处理方法,以下通过sklearn的preprocessing模块来介绍; 1. 标准化(Standardizat ...

  6. 数据挖掘中数据预处理方法_数据挖掘中的数据预处理

    数据挖掘中数据预处理方法 In the previous article, we have discussed the Data Exploration with which we have star ...

  7. 文本预处理方法_生产中的自然语言处理27种快速文本预处理方法

    文本预处理方法 大纲(Outline) Estimates state that 70%–85% of the world's data is text (unstructured data) [1] ...

  8. 史上最详尽的NLP预处理模型汇总

    文章发布于公号[数智物语] (ID:decision_engine),关注公号不错过每一篇干货. 转自 | 磐创AI(公众号ID:xunixs) 作者 | AI小昕 编者按:近年来,自然语言处理(NL ...

  9. 图像处理六:预处理方法

    一.标准化处理与归一化 对图像做数据预处理,最常见的对图像预处理方法有两种: (1)白化处理(图像标准化处理): 图像标准化是将数据通过去均值实现中心化的处理,根据凸优化理论与数据概率分布相关知识,数 ...

  10. 高数量类别特征(high-cardinality categorical attributes)的预处理方法

    high-cardinality categorical attributes,从字面上理解,即对于某个category特征,不同值的数量非常多,这里暂且把它叫做高数量类别属性.反之,即低数量类别属性 ...

最新文章

  1. 【硬核技能】舒工自创bind绑定数据方法,类似angular和vue绑定数据原理
  2. 【HoorayOS】开源的Web桌面应用框架(第二版 v120311)
  3. SQL拆分实现与注意事项
  4. oracle insert if语句怎么写,oracle存储过程的调用(insert 语句的存储过程)
  5. ubuntu20.04安裝迅雷
  6. java重定向url有参数吗_JavaScript重定向URL参数的两种方法小结
  7. datatable 转list
  8. Django + react + 阿里云ecs 前后端分离部署上线
  9. 国土空间规划中工作底图如何制作
  10. 2种继承方式学习笔记
  11. static{}语句块详解
  12. java 选取topn_取Oracle中实现TOPN,选取前几条记录
  13. PB的特点及Powerscript的语言基础
  14. 一加Ace竞速版,手游党的开心搭档
  15. [学习打卡]Python基础入门(一)
  16. ROS集成开发环境 --- RoboWare(安装及学习笔记)
  17. 阿里云服务器CPU第三代Intel Xeon可扩展处理器(Ice Lake)性能评测
  18. 常用设计模式-策略模式+工厂模式+模板模式(使用场景、解决方案)
  19. nginx的http_rewrite模块的rewrite指令
  20. ORA-01858 :在要求输入数字处找到非数字字符

热门文章

  1. 【easyui】之DataGrid数据显示
  2. Material Dialogs的使用
  3. 用Ai制作立体logo
  4. conda install 安装慢,或者直接卡死,这么解决
  5. Alfa与申威【江南所】
  6. 学会这几个可视化布局思路,轻松做出企业级可视化大屏
  7. 自己怎么做网站,个人做网站的步骤
  8. html 输入字数限制,说一说限制字数的输入框踩的坑
  9. 【微信小程序】微信小程序接口数据加密、解密算法
  10. 微信小程序之自定义计时器