自然语言处理专业,哪本著作最值得精读?为什么?

感觉只有对整个学科有一个整体的知识树后才能更好的进行自己方向的研究.明年四月份自然语言处理研究室入学学习,现在零零散散的看过一些论文,但是对这个专业的整体结构没有一个了解.不局限于自然语言处理,机器学习相关的著作也希望推荐一下.不过,希望只推荐一部,值得反复精读的,最好是那种少一些细节,多一些思想和精华的书,谢谢
收藏者
0
被浏览
79

5 个回答

史迪仔Ly LV

发表于 2025-4-9 19:52:41

只是自己的一点浅见.

1.关于整体的知识树
李航大牛总结的很好了:
自然语言处理基本任务: 分类、匹配、翻译、结构化预测、与序列决策过程.

自然语言处理专业,哪本著作最值得精读?为什么?-1.jpg

(Li, Hang. "Deep learning for natural language processing: advantages and challenges." National Science Review (2017).)
另外, 在上面的诸多
model: s |-> ?
? = {c, R+, t, , a}
之前, 实际这里的s并不一定是原始的字符序列, 而是可能经过一系列处理和加标注后的序列.
这里的处理按照从拿到原始序列开始的顺序一步一步的包括:
{非法字符处理, tokenizer/chunker, POS tagger, parser, etc}
(当然实际中这些处理有可能是一步步cascade地做的, 也有可能是jointly一起做的)
根据语言的不同, 以及任务的不同还有其他过程:
比如在英语里, 一个细节问题是如何区分一个点是句号还是缩写符号.
比如如果是Information Extraction有关的东西, 还会有coreference等等的工作.

2. 关于资料和方法论
资料的话不用推荐, 在这个行当混反正早晚都会知道. 只推荐一下michael collins的讲义, 在他的主页上有, 一搜就行.
泛一点的方法论来说, 自然语言处理很大一部分精力在于如何和序列打交道. 打交道具体指:
representation, learning 和 inference. 然后这里的representation大家有两个意思:
1)建模的时候具体的modeling方法
2)对于序列本身的表示, 比如说bag-of-words和word-vec等
具体些的方法论的话, 觉得可以粗略地分为深度学习的方法和非深度学习的方法两条线.
细节实践的话, 参照 @斤木 的回答就行, 超棒.

沐沐君观宇宙 LV

发表于 2025-4-9 20:01:43

2020/07/20 更新
有同学在评论区问推荐的survey, 可以参考这个github: https://github.com/NiuTrans/ABigSurvey
里面的survey大多比较新,能反应领域近期的进展,值得选读。
----以下为原答案。---
读survey.
翻了一下答案,第一时间想到的两本其它答主已经提了,一是SLP,二是NNMNLP. 但又仔细看了一下题目描述,发现了这句话
感觉只有对整个学科有一个整体的知识树后才能更好的进行自己方向的研究
和这个定语
值得反复精读
所以忍不住回来多扯几句,说得不对请海涵。我的建议是,这些好书需要读,但以泛读为主,精读为辅。如果你已经了解了NLP中的基础知识,比如language model, n-gram, syntax, 对于绝大多数对你真正需要的学科知识,更好的选择是定向精读一两篇好的survey.
NLP领域的知识体系过于庞杂。下有machine learning, 上顶data mining, 左接cognition, 右连linguistics, 内含MT, QA, SA, TE, SP等只有你想不到没有别人没做过的任务。了解“整体结构”当然有益,但在这种情况下,在前期如果试图通过花过多时间在把握大局上(注意加粗),几乎没有尽头。另外,你所以为的“整体结构”常常并不是真正的“整体结构”。一个研究者的宏观视角,是在实践中随着对于学科的深入理解而不断变化的。管中窥豹,性价比太低。
我的建议是选择感兴趣的一二切入点:可以是任务,比如MT;也可以是方法,比如NN. 了解经典的思想和最新的进展,然后从此出发向周边的任务、方法探索,是更平衡的做法。从这个角度看,survey远远比大部头的著作要实惠。其实很多survey也是好几百页,打出来和书也没什么分别。如果你读了NMT的survey觉得不过瘾,就去读SMT的survey和seq2seq的survey, 相信你获得inspiration的概率要比不带目标的精读宗成庆老师的统计自然语言处理要大。
NLP发展速度太快,绝大多数东西都没有定论。书籍的滞后性要比期刊强,期刊的滞后性要比会议强。所以,了解了大概就做起来吧少年。

迟钝的小松鼠 LV

发表于 2025-4-9 20:11:58

推荐一个pdf吧,不是著作 。看完,整体的知识树概念应该会有

中文信息处理发展报告 (2016)
地址: http://cips-upload.bj.bcebos.com/cips2016.pdf

雪落 LV

发表于 2025-4-9 20:24:32

2019年更新:
Gatech的Jacob Eisenstein出了本Natural Language Processing,github上面有去年12月的draft版本可以提供下载。下载链接:Natural Language Processing
和Yoav的书比,对于我来说这本书在NLP方向上要更加全面一些,在语言学方面和NN流行之前的各种NLP上的模型都有较为详尽的解释。因为我自己是做NLP的,在NN上灌水久了觉得有点心虚,刚刚投完了EMNLP之后打算认真研读这本书,也安利给大家。
全书分为:

  • Learning;
  • Sequences and trees (LM, sequence labeling,  parsing);
  • Meaning (semantics, discourse);
  • Applications (IE, MT, NLG):
---------------------------------------------------------------------------------------------------------------------
更新:
有很多人要书的链接,说实话我挺讨厌伸手党的,明明是自己在网上就可以搜索到的,评论区的链接打不开,这里贴一个网站:Library Genesis 很多书籍都可以在上面找到。
-------------------------------------------------------------------------------------------------------------------
按照题主的描述,Dan Jurafsky的Speech and Language Processing 应该是最好的选择了。
Manning的Foundations of Statistical Natural Language Processing感觉相对比较旧了,中文的话可以考虑宗成庆的《统计自然语言处理》。很多人对宗老师这本书有负面评价,我觉得倒还好。我们实验室里做NLP的几个人,有忘记一些知识的时候都会把他作为工具书来翻翻。可能的确不适合于入门和精读。
最后想强烈安利Yoav Goldberg的这本:Neural Network Methods for Natural Language Processing
今年新出的书,如果题主对Deep Learning应用于NLP感兴趣的话,这本应该是非常好的选择。如图:

自然语言处理专业,哪本著作最值得精读?为什么?-1.jpg

tccrock LV

发表于 2025-4-9 20:37:37

我最偏爱的还是大神dan jurasfsky的Speech and Language Processing,中文名译为《自然语言处理综论》。大神讲什么都很清楚,一点就通,而且还很贝叶斯。逻辑斯特回归我是先看的吴恩达和林轩田的课,统计学派是从优化角度用拉格朗日乘数法引入正则化L2,L1。要理解L1为何会导致参数稀疏化,还得去看sub-gradient。jurafksy从贝叶斯的角度讲正则化,其实只是贝叶斯公式里的先验概率,你用高斯分布就是L2正则,拉普拉斯分布就是L1正则。 要是看过深度学习训练后的参数分布,你会发现更直观,训练出来的参数部分就是高斯分布的样子~
该书第三版正在撰写中,作者已经完成了不少章节的撰写,所完成的章节均可下载:
Speech and Language Processing

您需要登录后才可以回帖 登录 | 立即注册