第二章词汇分析1
补充知识:
正则表达式:是一种用于匹配和搜索文本模式的工具。它由一些字符和特殊符号组成,可以描述一个或多个字符的模式,并用来查找符合该模式的字符串。可用于数据清洗、搜索、替换等操作。
正则表达式(regex)可以分为以下几种类型:
- 字面量:直接匹配单个字符,如
a
、1
、.
等。 - 字符集:匹配多个字符中的任意一个,如
[abc]
可以匹配字符a
、b
或c
。 - 重复限定符:用来表示某个模式需要出现多次,如
*
可以匹配零个或多个前面的模式,+
可以匹配一个或多个前面的模式。 - 边界限定符:用来指定某个模式只能出现在字符串的开头、结尾或某个位置上,如
^
表示匹配字符串的开头,$
表示匹配字符串的结尾,[]
表示匹配方括号内的任意一个字符。 - 分组:将正则表达式中的一部分作为一个整体来处理,方便对其进行操作和引用。可以使用圆括号
()
将正则表达式的一部分括起来形成一个分组。 - 特殊字符:一些特殊字符具有特殊的含义,如
\d
表示数字,\s
表示空白字符等。 - 转义字符:用于转义一些特殊字符,使其不再具有特殊含义,如
\
表示反斜杠。
词的处理是自然语言处理中重要的底层任务,是句法分析、文本分类、语言模型等任务的基础。
语素:
语素
又称词素,是语言中意义的最小单元。语素与词不同,语素不能够独立运用而词可以。只包含一个语素的词语称为简单词
(
Simple word
),而包含多个语素的词称为复杂词
(
Complex word
)。例如:
“
电灯
”
,包含
“
电
”
和
“
灯
”。
词的形态学/构词学
在语言学中,研究单词的内部结构和其构成方式的学科称为
形态学(
Morphology)
有些语言的单词通常只包含一个或者两个语素,但是有一些语言的单词则包含多达十个以上的语素。汉语中每个单词的语素都很少,也不会根据性、数、格、人称等发生形态变化。但是对于英语单词 dog,在末尾添加 s 可以将它从单数名词变成复数名词 dogs
语素主要分成两类
:
词根(
Lemma
) 和词缀(Affix
)。
词根
也称为原形或字典形,是指能在字典中查的到的语素,通常是一个词最主要的语素。词缀
是其他附着在原形上的语素,帮助在原形基础上衍生出新词。
例如:中文的偏旁部首、英语的词根词缀
语素组成词汇,如果认识语素,就可以推测不认识的新词的含义,如
果能够自动将词汇分解为语素,可以更好地对词汇进行进一步的分析。
词的词性
词性
(
Part of Speech
,
POS
)也称词类,是根据词在句子中扮演的语法角色以及与周围词的关
系对词的分类。(名词、动词、介词等等)
通过词性可以大致圈定一个词在上下文环境词汇分析中有可能搭配的范围
,例如:介词 “in” 后面通常跟名词短语。通过词性可以为语法分析、语义理解提供帮助。
实义词:表示具体意义,会不断增加
功能词:满足语法功能,数量相对稳定
由于词性可以提供关于单词和其周边邻近成分的大量有用信息,词性分析也是自然语言处理中重要的基础任务之一。
- 英语宾州树库(Penn TreeBank)使用了 48 种不同的词性,汉语宾州树库(Chinese Penn Treebank)中汉语词性被划分为 33 类,而布朗语料库(Brown Corpus)[44] 中则使用了具有 87 个词性。
词语规范化
词语规范化
(
Word Normalization)任务是将单词或词形转化为标准形式,针对有多种形式的单词使用一种单一的形式进行表示。包括词语切分、词形分析和词干提取。
词语切分:
以汉语为代表的汉藏语系(Sino-Tibetan languages)的语言中,单词之间通常没有分隔符。因此在对文本进行分析前,通常需要将句子切分为单词序列,称之为词语切分
词语切分任务可以定义为:给定一个符号串(一句话)
x
=
c
1
c
2
· · ·
c
n
,
(其中
c
i
对于英文来说是字母、 数字、标点符号等,对于中文来说是汉字、数字、标点符号等),输出一个词形(Token
)序列(切分后的句子)
y
=
t
1
t
2
· · ·
t
m
,可能会省略或删除其中的部分标点符号。
例如:
输入:Let’s first understand what’s NLP.
输出:Let␣'s␣first␣understand␣what␣'s␣NLP␣.
通常情况下针对英语等印欧语系语言的词语切分任务可以采用基于有限状态自动机(
Finite
State Automata
)融合正则表达式的方法完成。
词性还原:
词形还原
(
Lemmatization
)是将词的各种变化形式还原其词根的过程。通过词形还原可以实现
词语的规范化,单词的不同变化形式统一为词根。
例如:
原始输入句:They are working on interesting tasks
词形还原后:they be work on interesting task
对于英语,可以通过词典查表实现,但是对于阿拉伯语、土耳其语这种语言,枚举所有词性变换是不可能的。
在一些语言中由于词形变换的复杂性,一个词的原形可能衍生出很多不同的词。采用 词典匹配的方法很难达到较好的分析效果。因此,需要更有效率的词形分析算法。
典型的词形分析算法包括基于有限状态转换机(Finite State Transducer)方法,融合词典和有限状态转换机的方法以及统计机器学习方法等。
词干提取:
词干提取
(Stemming
)是词形分析的简化版本,其目标是将具有词形变化(通常是屈折或派生)
的词语还原为其词干(
Word Stem
)。