如何用 Python 处理自然语言?(Spacy 与 Word Embedding)

Shuyi Wang
27 min readSep 27, 2021

本文教你用简单易学的工业级 Python 自然语言处理软件包 Spacy,对自然语言文本做词性分析、命名实体识别、依赖关系刻画,以及词嵌入向量的计算和可视化。

盲维

我总爱重复一句芒格爱说的话:

To the one with a hammer, everything looks like a nail. (手中有锤,看什么都像钉)

这句话是什么意思呢?

就是你不能只掌握数量很少的方法、工具。

否则你的认知会被自己能力框住。不只是存在盲点,而是存在 “盲维”。

你会尝试用不合适的方法解决问题(还自诩 “一招鲜,吃遍天”),却对原本合适的工具视而不见。

结果可想而知。

所以,你得在自己的工具箱里面,多放一些兵刃。

最近我又对自己的学生,念叨芒格这句话。

因为他们开始做实际研究任务的时候,一遇到自然语言处理 (Natural Language Processing, NLP),脑子里想到的就是 词云情感分析LDA 主题建模

为什么?

因为我的专栏和公众号里,自然语言处理部分,只写过这些内容。

你如果认为,NLP只能做这些事,就大错特错了。

看看 这段视频,你大概就能感受到目前自然语言处理的前沿,已经到了哪里。

当然,你手头拥有的工具和数据,尚不能做出 Google 展示的黑科技效果。

但是,现有的工具,也足可以让你对自然语言文本,做出更丰富的处理结果。

科技的发展,蓬勃迅速。

除了咱们之前文章中已介绍过的结巴分词、SnowNLP 和 TextBlob,基于 Python 的自然语言处理工具还有很多,例如 NLTK 和 gensim 等。

--

--

Shuyi Wang

PhD in Information Science. Associate Professor at Tianjin Normal University. Former Adjunct Faculty at UNT. First Prize Winner of HackNTX 2018.