查看原文
其他

干货福利|15门最好的NLP入门专讲课大搜集!

大数据文摘 语言生活见闻录 2022-06-09

关注语言逻辑与应用

更了解语言生活的乐趣和应用


前几天发了一篇干货福利| 最全计算语言学(包括NLP实践)自学路线!得到很多读者的反馈,但是好像很多人觉得对NLP还是不能很好地理解和入门,这篇文章是小编亲自测评,能对之前的内容做一个很好的补充,欢迎大家收藏和阅读。



 转自:大数据文摘|bigdatadigest
大数据文摘出品来源:airev编译:DD、Andy
数年前,当小编刚踏足NLP领域时,还没有太多相关课程,找学习资料就颇费功夫;如今,当网上充斥着各种良莠不齐公开课时,从中挑选一门适合自己的又成了另一种颇费功夫,特别对于选择困难综合症患者。
该篇作者根据自己多年的实践经验,对网上诸多NLP公开课进行了评分与评论,很有参考价值。此外,作为涉足NLP也有数年的小编,也推荐不妨先挑一门Code-first课,强推Fast.AI,之后再用大学公开课继续深入,比如伯克利的Info256 以及斯坦福有名的cs224n,之后想再深入理论可以试试CMU的cs11-747.


接下来,我们就来看看作者对15节NLP课程的测评~


如果你的标准很高,那么选择一门符合你需求的网课就会变成了一件很困难的事。因为大部分网课都不全面,并不值得花太多时间在上面。
那么如果有人给你提供了一个关键的学习路径,并告诉你每个模块讲了什么,你该按照什么样的顺序去学习、进阶,你会怎么想?那一定是——完美!
这就是为什么我会写这篇NLP选课指南,利用了我8年的机器学习实践经验作为参考。我个人一共完成或浏览了15个最有名的课。在下面这份严格的评论中,我将重点放在它们提供的实践以及商业知识上 无论你是刚开始接触NLP还是想在业务中实现一个最新算法,这篇文章都将为你提供巨大价值。下面就来看一下这条学习路径,并挑你最感兴趣的课程吧!
我理想中的NLP课程是这样的:
  • 围绕着实践问题展开的;
  • 只涵盖对实践有用的信息,夹杂一些更深入的理论知识作为补充资料;
  • 内容是与时俱进的,至少每次业界有重大新闻,它都能及时更新相应内容;
  • 由一群业界经验丰富的专家编写的;
  • 包含能解决业务实际问题的真实代码。

但理想很丰满,现实……很骨感。

代码至上的网课们


A Code-First Introduction to NLP course


课程链接:https://github.com/fastai/course-nlp

授课人:Fast AI专业评分:8/10工具和库:IPython notebooks, PyTorch, Fast.AI, spacy, sklearn, nltk
我的建议:我个人很享受这种由上而下的学习方式。这门课内容非常扎实(毫无疑问,这是Jeremy Howard本人创建的课程),它很实用且内容在新算法的更新上很及时(最近更新到2019年夏天)。
缺点:它缺少一些业界的实操案例,只关心算法的实际用法。
强推这门课!


SpaCy Tutorial


课程链接:https://github.com/yuibi/spacy_tutorial

授课人:Yuibi Fujimoto专业评分:7/10工具和库:spacy,prodigy,sklearn
我的建议:很完整、实用的指南。它只涉及到了spacy,而这也是很多人的真实需求。这门课对内容细节的把握非常到位。


Natural Language Processing


课程链接:https://github.com/yandexdataschool/nlp_course/tree/master

授课人:Yandex专业评分:7/10工具和库:keras,nltk,gensim,sklearn,bokeh,matplotlib
我的建议:这是一门很新的实战课程,它涉及到了最重要的一些领域。但同样地,它也没有涉及到现实任务的实战,只是专注于算法原理和它们直接的应用。


Natural Language Processing


课程链接:https://www.coursera.org/learn/language-processing

授课人:俄罗斯国立高等经济大学计算机系(HSE Faculty of Computer Science) / Yandex专业评分:3/10工具和库: nltk, sklearn, tensorflow, genism,starspace
我的建议:这是一门很简洁、基础的课程,它只涉及到一些很基础的理论。 缺点:这门课不是很全面,也缺乏关于最新算法和实际业务案例内容。而且,它只使用tensorflow,没有涉及到keras,对于学习深度学习来说,这并不是一个很好的方式。


Advanced NLP with spaCy


课程链接:https://course.spacy.io/en/

授课人:Explosion AI专业评分:8/10工具和库:spacy
我的建议:这门课也只涉及到spacy,但是范围更广。它简单友好的操作界面深得我心。简短,但强推的一门课!在评分项目中,也有涉及到业界实操的内容!


Coursera-Natural Language Processing Certification in TensorFlow

 

课程链接:https://www.coursera.org/learn/natural-language-processing-tensorflow

授课人:Laurence Moroney 专业评分:2/10工具和库:Tensorflow
我的建议:这门简短的课程介绍了一些基础知识,比如:分词、一些基础的词嵌入方法和序列模型。授课方式是理论+小测验。对新手来说,我并不推荐这门课程,因为它缺少太多内容。


Edx-Natural Language Processing Course


课程链接:http://www.edx.org/course/natural-language-processing-nlp-2

授课方:微软专业评分:7/10
我的建议:这门课程介绍了机器学习和NLP领域中可使用的各种方法,你不光能学到经典算法、深度学习算法,还能了解到深度情感相似模型以及在现实工作中如何使用它们。每个模块都有自己的测验和代码作业,可以很好地帮助你理解学到的内容。


Codecademy-Natural Language Processing


课程链接:https://www.codecademy.com/learn/natural-language-processing

专业评分:5/10工具和库:nltk, re
我的建议:这门课时长约10小时,算是NLP入门级别的课程,内容包含:正则表达式、文本处理、词向量、tf-idf。是一门更适合完全没有NLP基础的人的课程。


DataCamp-Natural Language Processing Fundamentals in Python


课程链接:https://www.datacamp.com/courses/natural-language-processing-fundamentals-in-python
授课人:Katharine Jarmul专业评分:7/10工具和库:nltk, re, genism, polyglot, spacy, sklearn 我的建议:这门课主要讲的是如何解决一些小问题。它介绍了一些生成词向量和预处理的技巧,像tf-idf和spacy。我认为这也是一门比较适合刚入门、需要一些实战经验的新手课程。因此我们决定在最后的对比中不把它加入比较。

大学公开课


伯克利 - Applied Natural Language Processing


课程链接:http://people.ischool.berkeley.edu/~dbamman/info256.html
授课人:David Bamman 专业评分:8/10 我的建议: 这门课比较适合有python编程经验,但不了解nlp的人。在这门课中,你会用到目前流行的python库,如:sklearn、keras、spacy,去解决分类、回归问题。我认为,这种强制性的学期制课程比较适合学生党学习。


华盛顿大学(UW) - Natural Language Processing


课程链接:https://courses.cs.washington.edu/courses/cse517/17wi/
授课人:Yejin Choi专业评分:6/10
我的建议:这门课面向的是想学习nlp基础方法理论的新手。这门网课是在2017年录制的,所以你无法从里面找到任何现在最新的内容。它涉及到的当时(2017)最新的内容有:序列、语义和深度学习相关内容。但我认为,学这门课的人需要在课后有自己的探索和研究,去巩固学到的知识。


牛津 - Deep Learning for Natural Language Processing


课程链接:https://www.cs.ox.ac.uk/teaching/courses/2016-2017/dl/
授课人:Phil Blunsom专业评分:8/10
我的建议:这门课需要你有机器学习方面的经验,以及很强的数学背景(包括:概率、线性代数和连续数学)。你将会学到从RNN、BPTT到针对神经网络优化GPU的很多知识和技能。我建议学完这门课的学生再去学习一下最新的模型和理论,因为它并没有实时更新相关内容。


以色列特拉维夫大学 - Advanced Methods in Natural Language Processing 


课程链接:https://www.cs.tau.ac.il/~joberant/teaching/nlp_spring_2019/index.html
授课人:Jonathan Berant专业评分:7/10
我的建议:这门课教授的是NLP领域中最新的一些方法。它只需要你有一定的机器学习背景,nlp背景并不是必须的。而且,授课方准备了很多值得阅读的报告,这也非常有助于学习。


斯坦福 - From Languages to Information 


课程链接:https://web.stanford.edu/class/cs124/
授课人:Dan Jurafsky专业评分:6/10
我的建议:虽然这是门NLP课程,但它也涉及到很多机器学习方面的内容。其中,关于社交网络的内容在其他网课中并没有很好地展开,可以算是这门课的一个亮点。通过这门课,你可以收获很广的知识面,但对于只钻研nlp的人来说,我并不是很推荐这门课。


斯坦福cs224n - Natural Language Processing with Deep Learning


课程链接:http://web.stanford.edu/class/cs224n/
授课人:Chris Manning, Matthew Lamm专业评分:8/10
我的建议:这是面向项目的最新课程,包括这个领域的最新进展。要上这门课,你需要有数学和编程的基础(Python或强大的C++能力)。我只会推荐有一定经验的人去上这门课,你会从中学到更深入的知识。

总结


在分析完所有课程后,我得出的结论是:在最新的算法和企业项目实例方面,没有任何一门课是足够全面的。它们大部分都缺少实战练习,而这大大地阻碍了知识的吸收。
现在,让我们来总结一下工程师在学习一门NLP课程时遇到的主要挑战:
  • 课程内容很快就会过时,我希望它始终包含最新(不一定是复杂的)知识;
  • 没有或过少的实践练习来增强在课程中学到的理论知识;
  • 如果卡住,没有人能帮助你进行练习;
  • 课程以算法原理为重点,而不是如何解决实际问题。

许多不合标准的课程甚至都已不再更新。人们掉入了坑中并为此付出代价,却没有从中收获太多实际价值。
相关报道:

https://airev.us/ultimate-guide-to-natural-language-processing-courses/



本文转载自公众号:大数据文摘



您可能也对以下帖子感兴趣

文章有问题?点此查看未经处理的缓存