我的目标是编写一个程序,能够从人类语言提问中提取音调、个性和意图(例如:我输入:“你好吗?”AI 系统会回应:“我很好。你呢?”)
我知道这是一个不容易解决的问题,那么我应该从哪些深度学习主题入手?还有哪些 Python 模块是最有用的?我已经开始研究 NLTK 了。谢谢。
我的目标是编写一个程序,能够从人类语言提问中提取音调、个性和意图(例如:我输入:“你好吗?”AI 系统会回应:“我很好。你呢?”)
我知道这是一个不容易解决的问题,那么我应该从哪些深度学习主题入手?还有哪些 Python 模块是最有用的?我已经开始研究 NLTK 了。谢谢。
可以作为人工智能领域经典书籍的是 Stuart Russell 和 Peter Norvig 编写的 Artifical Intelligence,并附有一门相关课程:https://www.udacity.com/course/intro-to-artificial-intelligence--cs271
对于理论基础,建议学习机器学���(ML),这对更流行的自然语言处理(NLP)任务会很有用,可参考Andrew Ng 的机器学习课程。
而在应用机器学习和内部工作方面,可参考 Emily Fox 和 Carlos Guestrin 授课的 华盛顿大学的 ML 课程。
对于 NLP,广受欢迎的入门书籍是 Jurafsky 和 Martin 的 Speech and Language Processing。
如果想从统计学角度理解 NLP,可参考 Manning 和 Schutze 的 Statistical NLP 书籍/课程。
如果想从实践角度了解 NLP,则可从NLTK 书籍开始。
了解 NLP 技术的好方法是查看最近几年的相关论文,ACL 组织的ACL 选集收藏了大部分值得关注的 NLP 论文。
另一个好资源是查看 NLP/ML/AI 的会议记录,Joel Tetreaul 维护了一个相关会议及其提交日期的更新列表:http://www.cs.rochester.edu/~tetreaul/conferences.html
网络上有很多人工智能、机器学习、自然语言处理以及更近期的神经网络资源。一个可以随意提问的好论坛是:https://www.reddit.com/r/MachineLearning/,而 datascience.stackexchange.com 则可能更适合提问。
搜索github上的awesome
列表,可以轻松找到人工智能/机器学习/自然语言处理等领域的资源,例如:
@alvas提供了很好的建议。
对于深度学习,请看看Google的Word2Vec算法。它特别适用于自然语言处理问题。以下是一个介绍性的用例:
http://multithreaded.stitchfix.com/blog/2015/03/11/word-is-worth-a-thousand-vectors/
Google最近发布了一个名为Tensorflow
的Python库,用于机器学习,而Word2Vec也是其中的一部分。
最后,最好的实践地方是Kaggle竞赛。尝试阅读入门用例,以了解自然语言处理和机器学习的能力。
https://www.kaggle.com/competitions
大多数竞赛可能会很有挑战性,但Kaggle有一套非常好的教程/入门竞赛,可以让你开始。一旦你知道如何设置基本的NLP/ML任务,那么你就可以开始你喜欢的用例。
愉快的学习:)