Day31_【 NLP _1.文本预处理 _(1)文本处理的基本方法】
概述
文本预处理:文本语料在输送给模型前一般需要一系列的预处理工作, 才能符合模型输入的要求。
主要环节包括如下:
-
文本处理基本方法(本文)
-
文本张量表示方法
-
文本语料数据分析
-
文本特征处理
-
数据增强方法
文本处理基本方式:
-
分词
-
词性标注
-
命名实体识别
一、分词
含义:将连续的字序列按照一定规范分割为词序列
作用:nlp处理人类语言,而词是作为人类语言的基本单元,分词也就是nlp的领域的重要基础环节
使用:jieba分词工具,做最好的python中文分词组件
1. jieba
安装:
pip install jieba -i https://mirrors.aliyun.com/pypi/simple/
特性:
1.支持多种分词模式(本质是分词的颗粒度)
(1)精确模式:尽可能按照语义进行分割 (常用)
jieba.lcut(content, cut_all=False)
(2)全模式:尽可能分割出所有成词的词语,不能消除歧义
jieba.lcut(content, cut_all=True)
(3)搜索引擎模式:在精确模式基础上,对长词再次切分
jieba.lcut_for_search(content)
2.支持中文繁体分词
- 中国香港, 台湾地区的繁体文本进行分词
- api = 精确模式
3.支持用户自定义词典
- 词典格式: 词语、词频(可省)、词性(可省),用空格隔开,顺序不可颠倒。
- 词性参照 词性对照表
jieba.load_userdict("./userdict.txt")
mydata2 = jieba.lcut(sentence, cut_all=False)
二、词性标注
含义:基于分词后,对词汇的词性进行标注
API:
import jieba.posseg as pseg
pseg.lcut("text")
返回的是:装有pair元组的列表 , 每个pair元组中装有:词汇、词性
jieba词性标注对照表:
- a 形容词
- ad 副形词
- ag 形容词性语素
- an 名形词
- b 区别词
- c 连词
- d 副词
- df
- dg 副语素
- e 叹词
- f 方位词
- g 语素
- h 前接成分
- i 成语
- j 简称略称
- k 后接成分
- l 习用语
- m 数词
- mg
- mq 数量词
- n 名词
- ng 名词性语素
- nr 人名
- nrfg
- nrt
- ns 地名
- nt 机构团体名
- nz 其他专名
- o 拟声词
- p 介词
- q 量词
- r 代词
- rg 代词性语素
- rr 人称代词
- rz 指示代词
- s 处所词
- t 时间词
- tg 时语素
- u 助词
- ud 结构助词 得
- ug 时态助词
- uj 结构助词 的
- ul 时态助词 了
- uv 结构助词 地
- uz 时态助词 着
- v 动词
- vd 副动词
- vg 动词性语素
- vi 不及物动词
- vn 名动词
- vq
- x 非语素词
- y 语气词
- z 状态词
- zg
三、命名实体识别
含义:识别语料中的命名实体
命名实体:人名、地名、机构名、时间、日期、货币、百分比