NLP基础知识

NLP基础知识

自带库

  • NLTK:英文的库
  • jieba:中文的库

文本处理流程

文本处理流程

分词

英文用NLTK,中文用jieba,比较难处理的时候可能要借助正则表达式

复杂的词形

  • 1、inflection变化:不影响词性
    • walk->walking->walked
  • 2、derivation引申:影响词性
    • nation(n)->national(adj)->nationalize(v)

词形归一化

1、Stemming词干提取:把不影响词性的后缀去掉

walking->walk

walked->walk

2、Lemmatization词形归一:把各类型的词变性,归一

went归一成go

are归一成be

3、Lemmatization出现的问题(借助词性标注完成)

比如原本是are–>are,is–>is

标注后are(v)–>be,is(v)–>be

去除停用词

比如中文的:的,地,得

比如英文的:the,this

NLP实例

情感分析

数据

s1=’this is a good book’
s2=’this is a awesome book’
s3=’this is a bad book’
s4=’this is a terrible book’

把数据变成向量

统计上文出现过的所有单词:this、is 、a 、good 、awesome、 bad、 terrible、 book,然后每个样本的词向量就是这个单词是否出现过

如:s1=[1 1 1 1 0 0 0 1]

训练

然后再用ML方法训练

文本相似度

weyouheworkhappyare
103011
102011
010100

这里一共表示了三个样本,然后我们提取出对应的词向量,然后用一些求两个向量的相似度的方法来计算文本的相似度,比如余弦相似度

文本分类

TF-IDF概念
  • TF:Term Frequency,用来衡量一个term在文档中出现得有多频繁
  • T F ( t ) = t 出 现 在 文 档 中 的 次 数 文 档 中 的 t e r m 总 数 TF(t)={t出现在文档中的次数\over 文档中的term总数} TF(t)=termt
  • IDF:Inverse Document Frequency,衡量一个term有多重要
  • I D F ( t ) = l n ( 文 档 总 数 含 有 t 的 文 档 总 数 ) IDF(t)=ln(\frac{文档总数}{含有t的文档总数}) IDF(t)=ln(t)
  • T F − I D F = T F ∗ I D F TF-IDF=TF*IDF TFIDF=TFIDF(注意这个是杠“-”)
TF-IDF实例

⼀个⽂档有100个单词,其中单词baby出现了3次;且一共有10M的⽂档, baby出现在其中的1000个⽂档中。
T F ( b a b y ) = 3 100 = 0.03 I D F ( b a b y ) = l n ( 10000000 1000 ) = 4 T F − I D F ( b a b y ) = T F ( b a b y ) ∗ I D F ( b a b y ) = 0.03 ∗ 4 = 0.12 TF(baby)={3\over 100}=0.03\\ IDF(baby)=ln({10000000\over 1000})=4\\ TF-IDF(baby)=TF(baby)*IDF(baby)=0.03*4=0.12 TF(baby)=1003=0.03IDF(baby)=ln(100010000000)=4TFIDF(baby)=TF(baby)IDF(baby)=0.034=0.12

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值