折腾:
【整理】python nlp 基础知识
期间,看到有提到:
Lemmatization
Steaming
去整理看看什么意思和具体区别
【总结】
Lemmatization词形还原 vs Stemming词干提取:
Lemmatization | Stemming | |
英文原意 | lemmatize:vt. 把(文中的词)按屈折变化形式(或异体形式)进行归类 | stem:
|
中文翻译 | 词形还原 词形归并 | 词干提取 |
含义 | 去掉词的各种时态、形态得到词的原型 | 去掉词缀得到词干 |
核心逻辑 | 转变 -》成原型=有效词 | 缩减 -》成词干-》往往非 有效词 |
一句话总结 | 相对复杂,获得结果为词的原形,能够承载一定意义,与词干提取相比,更具有研究和应用价值 | 简单的轻量级的词形归并方式,最后获得的结果为词干,并不一定具有实际意义 |
处理复杂度 | 更复杂 | 相对简单 |
涉及到 |
|
|
更依赖于 | 词典 | 词的规则变化 |
处理结果 |
|
|
举例 |
|
|
代码举例 | nltk: from nltk.stem import WordNetLemmatizer lemmatizer = WordNetLemmatizer() lemmatizer.lemmatize(‘leaves’) | nltk: # 基于Porter词干提取算法 from nltk.stem.porter import PorterStemmer porter_stemmer = PorterStemmer() porter_stemmer.stem(“maximum”) # 基于Lancaster 词干提取算法 from nltk.stem.lancaster import LancasterStemmer lancaster_stemmer = LancasterStemmer() lancaster_stemmer.stem(“maximum”) # 基于Snowball 词干提取算法 from nltk.stem import SnowballStemmer snowball_stemmer = SnowballStemmer(“english”) snowball_stemmer.stem(“maximum”) |
转载请注明:在路上 » 【整理】Lemmatization和Steaming的含义和区别