“分类:机器学习尤其是自然语言处理学习材料”的版本间的差异

来自Big Physics
→‎书
 
(未显示2个用户的48个中间版本)
第1行: 第1行:
 
[[分类:机器学习]]
 
[[分类:机器学习]]
 
[[分类:语言研究]]
 
[[分类:语言研究]]
 +
[[分类:吴金闪]]
 +
[[分类:胡韧奋]]
  
这里整理了机器学习,尤其是其中的自然语言处理,的学习材料。
+
这里整理了机器学习,尤其是其中的自然语言处理,的学习材料。这个学习材料请各位再补充一下,例如文献、作业、素材等。
  
 
==课程==
 
==课程==
# Chris Manning和Richard Socher的《Natural Language Processing with Deep Learning》课程,Stanford CS224N,http://onlinehub.stanford.edu/cs224
+
# 主学习目标课程:Chris Manning和Richard Socher的《Natural Language Processing with Deep Learning》课程,Stanford CS224N,http://onlinehub.stanford.edu/cs224 这是一个传送门:https://www.bilibili.com/video/av46216519/
# YSDA Natural Language Processing course, 视频、作业程序 https://github.com/yandexdataschool/nlp_course
+
# 参考课程:YSDA Natural Language Processing course, 视频、作业程序 https://github.com/yandexdataschool/nlp_course
# Andrew Ng和Kian Katanforoosh的 《Deep Learning》课程,Stanford CS230, http://onlinehub.stanford.edu/cs230
+
# 参考课程:CMU CS 11-747 http://phontron.com/class/nn4nlp2019/ 传送门:https://www.bilibili.com/video/av40929856/
# Andrew Ng的系列课程,https://study.163.com/my#/smarts
+
# 参考课程:Andrew Ng和Kian Katanforoosh的 《Deep Learning》课程,Stanford CS230, http://onlinehub.stanford.edu/cs230
 +
# 参考课程:Andrew Ng的系列课程,https://study.163.com/my#/smarts
 +
# 参考课程:CS520 斯坦福大学2020春季知识图谱课程 传送门:https://www.bilibili.com/video/BV12k4y1R76Q
 +
# 参考课程:Patrick Henry Winston MIT 6.034 人工智能 传送门:https://www.bilibili.com/video/av84826023
  
 
==书==
 
==书==
第14行: 第19行:
 
# Yoav Goldberg 《Neural Network Methods for Natural Language Processing》教材, [https://github.com/shucunt/book/blob/master/2017%20-%20Neural%20Network%20Methods%20for%20Natural%20Language%20Processing.pdf 链接]
 
# Yoav Goldberg 《Neural Network Methods for Natural Language Processing》教材, [https://github.com/shucunt/book/blob/master/2017%20-%20Neural%20Network%20Methods%20for%20Natural%20Language%20Processing.pdf 链接]
 
# Dan Jurafsky and James H. Martin 《Speech and Language Processing》 (3rd ed.) 教材, [https://web.stanford.edu/~jurafsky/slp3/ 链接]
 
# Dan Jurafsky and James H. Martin 《Speech and Language Processing》 (3rd ed.) 教材, [https://web.stanford.edu/~jurafsky/slp3/ 链接]
 +
# Delip Rao, Brian McMahan, Natural Language Processing with PyTorch: Build Intelligent Language Applications Using Deep Learning,入门上手教程
  
 
==原始论文==
 
==原始论文==
 
# T Mikolov, K Chen, G Corrado, J Dean, Efficient estimation of word representations in vector space, arXiv preprint arXiv:1301.3781.  
 
# T Mikolov, K Chen, G Corrado, J Dean, Efficient estimation of word representations in vector space, arXiv preprint arXiv:1301.3781.  
 
# T Mikolov, I Sutskever, K Chen, GS Corrado, J Dean, Distributed representations of words and phrases and their compositionality, Advances in neural information processing systems, 3111-3119.
 
# T Mikolov, I Sutskever, K Chen, GS Corrado, J Dean, Distributed representations of words and phrases and their compositionality, Advances in neural information processing systems, 3111-3119.
 +
# Jeffrey Pennington, Richard Socher, and Christopher D. Manning. 2014. GloVe: Global Vectors for Word Representation, https://nlp.stanford.edu/projects/glove/
 +
# Omer Levy, Yoav Goldberg and Ido Dagan, Improving Distributional Similarity with Lessons Learned from Word Embeddings, https://doi.org/10.1162/tacl_a_00134
 +
# P. Bojanowski, E. Grave, A. Joulin, T. Mikolov, Enriching Word Vectors with Subword Information
 +
# A. Joulin, E. Grave, P. Bojanowski, T. Mikolov, Bag of Tricks for Efficient Text Classification
 +
# A. Joulin, E. Grave, P. Bojanowski, M. Douze, H. Jegou, T. Mikolov, FastText.zip: Compressing text classification models
 +
# Quoc V. Le, Tomas Mikolov, Distributed Representations of Sentences and Documents
 +
# A Grover, J Leskovec, node2vec: Scalable Feature Learning forNetworks,KDD2016
 +
# Jacob Devlin, Ming-Wei Chang, Kenton Lee, Kristina Toutanova, BERT: Pre-training of Deep Bidirectional Transformers for Language Understanding
 +
# Maximilian Nickel, Douwe Kiela, Poincaré Embeddings for Learning Hierarchical Representations arXiv:1705.08039(在黎曼几何而不是欧氏几何中学习矢量表示)
  
 
==科普和讲解==
 
==科普和讲解==
第23行: 第38行:
 
# 刘知远 《大数据智能》
 
# 刘知远 《大数据智能》
 
# jaylin008, word2vec与cw2vec的数学原理, https://www.jianshu.com/p/f258d0c5c317
 
# jaylin008, word2vec与cw2vec的数学原理, https://www.jianshu.com/p/f258d0c5c317
 +
# Making sense of word2vec,几种表示算法之间的联系,尤其是word2vec和词共现矩阵之间的联系, https://rare-technologies.com/making-sense-of-word2vec/
 +
# Andrej Karpathy blog,这个研究者记录了自己的学习和思考过程,从一个学生到机器学习领域的专家的过程,并且分享对很多算法、博士生涯的理解 http://karpathy.github.io/2015/05/21/rnn-effectiveness/
  
==平台和素材==
+
==平台、算法和素材==
# 平台:http://hpc.systemsci.org (需要hpc.systemsci.org的linux用户账号,不对公众开放,仅供研究团队内部使用)
+
# 平台:http://hpc.systemsci.org (需要hpc.systemsci.org的linux用户账号,不对公众开放,仅供研究团队内部使用)或者胡韧奋老师的平台
# 平台搭建:anaconda和jupyter (https://www.anaconda.com/) , pytorch(https://pytorch.org/tutorials/)
+
# 平台搭建:anaconda和jupyter (https://www.anaconda.com/) , pytorch(https://pytorch.org/tutorials/), genism(https://radimrehurek.com/gensim/)
# 素材:
+
# word2vec和GloVe: 顺序读取词袋或者利用词语共现矩阵学习词表示。[https://nlp.stanford.edu/projects/glove/ 链接]。在上面列出的[http://onlinehub.stanford.edu/cs224 Stanford CS224N课程]里面有很好的讲解。
 +
# fasttext: 以训练分类标签为目标,产生词向量的副产物,并集成了subword信息。[https://github.com/facebookresearch/fastText 链接]
 +
# ELMo: 基于双向语言模型(采用LSTM模型)学习contextualized word embedding,真正意义上实现了一词多表示。[https://allennlp.org/elmo 链接]
 +
# BERT: 基于双向语言模型(采用深层Transformer模型),将其隐层表示取出,可以得到更高效的contextualized embedding表示。[https://github.com/google-research/bert 链接]
 +
# GPT
 +
# 素材:(请胡韧奋补充一下)
 +
 
 +
==讨论班安排==
 +
# 讨论班目标:
 +
## 了解机器学习基本概念,解决什么问题、有哪些典型应用、大概怎么做、粗略的道理
 +
## 了解自然语言处理基本概念,解决什么问题、有哪些典型应用、大概怎么做、粗略的道理
 +
## 会调用其他研究者编好的工具包来解决自己的问题
 +
## 会提出适合用机器学习,尤其是自然语言处理,解决的问题
 +
## 发展算法本身
 +
# 讨论班方式:课程采用讨论班成员自己看、有带头人的集中讨论的模式。学习材料按照进程安排自己先看。看的时候把问题在学习班文件中(可以开一个石墨文档)记下来。带头人还需要把主要内容梳理出来,用概念地图的方式带领大家来思考、讨论、解答问题、学习资源整合。吴金闪会做一个展示,后续每位成员认领相应学习材料的带头人。
 +
# 讨论班进度安排:待进一步细化
 +
## 开班前:分发这个学习材料,参与成员决定自己负责讲解的材料。其中对于没有系统学习过自然语言处理的参与者,Stanford CS224N是必看材料。然后,认领一次或者两次课,来串讲一下。串讲主要是整理思路,不能代替各自自己看。此外,在讲某一个视频或者论文的时候,最好能够做到把相关的基础和概念在其他什么视频中、论文中联系起来。认领材料的同时,在讨论群里面决定后续时间安排。
 +
## 第一次:吴金闪讲一讲自然语言处理,尤其是矢量表示算法,在自己的研究中主要完成什么,以及自己对矢量表示算法以及其他自然语言处理,甚至一般的机器学习的理解。胡韧奋讲一讲自然语言处理概述以及重点讲一讲矢量表示算法,并且做几种自然语言处理技术的展示。Stanford CS224N课程的一次或者两次课的串讲,有必要的话,结合Deep Learning书和Andrew的视频。
 +
## 第二次-第五次:Stanford CS224N课程的一次或者两次课的串讲,有必要的话,结合Deep Learning书和Andrew的视频。两三篇文献。
 +
## 第六次-第七次:自然语言处理技术和自己的研究工作的联系,最好有应用或者基础研究的例子,或者讲解本班的作业。
 +
 
 +
==讨论班lynkage==
 +
# 第一次活动
 +
## [http://www.lynkage.cn/share/PGaGL2EH62nyLm9 第一次活动内容]
 +
## [http://www.lynkage.cn/share/MXAR65k8bJ57qb7 什么是NLP]
 +
## [http://www.lynkage.cn/share/2R9apfZB6rJDwsm 为什么要学NLP]
 +
## [http://www.lynkage.cn/share/pnpdpgyiFW6pqzn 怎么学NLP]
 +
## [http://www.lynkage.cn/share/783zGiH6KFKoPyk 学完了做什么]
 +
 
 +
# CS224n
 +
## [http://www.lynkage.cn/share/QiypF7rgj3YaRYX CS224n主要内容]
 +
## [http://www.lynkage.cn/share/r3q42CepdywkSXJ CS224n-01-02 (Word2Vec,GloVec)]
 +
## [http://www.lynkage.cn/share/GxHQC29K44t4CmG CS224n-03-04 (神经网络,反向传播)]
 +
## [http://www.lynkage.cn/share/eotiaMpn6PgfsyE CS224n-05 (DepParsing依存分析)]
 +
## [http://www.lynkage.cn/share/RswaKgzBDRdDjc4 CS224n-06 (RNN,LM)]
 +
## [http://staging.lynkage.cn/share/fomykMnAE9Cr97P CS224n-07-09 (LSTM,GRU,seq2seq,Attention,课程项目)]
 +
## [http://staging.lynkage.cn/share/JdZgG2A9DRBdEKe CS224n-10 (QA)]
 +
## [http://staging.lynkage.cn/share/FnBeDMT3SnLq8Mf CS224n-11 (CNN)]
 +
 
 +
==研究项目和练手小项目==
 +
# 感想类论文识别:收集一个论文集合,做人工标注,分成感想类论文、思辨类论文、科学研究(定性、定量研究、计算分析、实验)论文,训练分类器,识别更多论文
 +
# 歌词歌曲翻译器:收集一个歌词-歌曲集合,当做平行语料,训练翻译器(由于歌曲的基本但是是什么是不清楚的,可能要从单个乐符或者和弦开始,做类似的subword的NLP),完成从给定歌词得到歌曲,从给定歌曲得到歌词的功能。如果还能结合给定曲子的一部分来作曲,给定歌词的一部分来生成文本,那就更厉害了,可以直接辅助音乐创作了。
 +
# 给定基本词汇生成篇章:根据我们的汉字学习顺序的研究成果,在学习汉字的阶段,我们需要以文带字,以语带字,也就是选定一些基本的字,我们希望篇章主要通过这些基本字来生成。
 +
# 科学学主体识别:尝试用word2vec处理论文的作者,author2vec,计算作者和论文的相似性,作者之间的相似性,作者和词之间的相似性,作者和主题(分类标记词)之间的相似性。
 +
# [[:分类:概念地图强化的问答系统和个性化聊天机器人|概念地图强化的问答系统和个性化聊天机器人]]。
 +
# 概念地图简单自动生成:从一段语料开始,用语法结构(主语、谓语、宾语、状语)提取做粗糙的概念地图自动生成,允许用户选定一些一定要包含的概念和关系。
 +
# 学科概念地图以及科学学“作者-论文-概念”三层网络:做学科领域的概念地图生成和论文标注。
 +
# 产品网络或者国家-产品贸易网络、产业投入产出网络的Glove算法来得到产品、国家、产业的矢量表示。
 +
# 从语料和自然语言处理的角度,来做历史文化哲学科学等问题相关的字词句含义和频率的历史分析。

2020年11月13日 (五) 10:18的最新版本


这里整理了机器学习,尤其是其中的自然语言处理,的学习材料。这个学习材料请各位再补充一下,例如文献、作业、素材等。

课程

  1. 主学习目标课程:Chris Manning和Richard Socher的《Natural Language Processing with Deep Learning》课程,Stanford CS224N,http://onlinehub.stanford.edu/cs224 这是一个传送门:https://www.bilibili.com/video/av46216519/
  2. 参考课程:YSDA Natural Language Processing course, 视频、作业程序 https://github.com/yandexdataschool/nlp_course
  3. 参考课程:CMU CS 11-747 http://phontron.com/class/nn4nlp2019/ 传送门:https://www.bilibili.com/video/av40929856/
  4. 参考课程:Andrew Ng和Kian Katanforoosh的 《Deep Learning》课程,Stanford CS230, http://onlinehub.stanford.edu/cs230
  5. 参考课程:Andrew Ng的系列课程,https://study.163.com/my#/smarts
  6. 参考课程:CS520 斯坦福大学2020春季知识图谱课程 传送门:https://www.bilibili.com/video/BV12k4y1R76Q
  7. 参考课程:Patrick Henry Winston MIT 6.034 人工智能 传送门:https://www.bilibili.com/video/av84826023

  1. Ian Goodfellow and Yoshua Bengio and Aaron Courville 的《Deep Learning》教材, http://www.deeplearningbook.org, 中文版: https://github.com/exacity/deeplearningbook-chinese
  2. Yoav Goldberg 《Neural Network Methods for Natural Language Processing》教材, 链接
  3. Dan Jurafsky and James H. Martin 《Speech and Language Processing》 (3rd ed.) 教材, 链接
  4. Delip Rao, Brian McMahan, Natural Language Processing with PyTorch: Build Intelligent Language Applications Using Deep Learning,入门上手教程

原始论文

  1. T Mikolov, K Chen, G Corrado, J Dean, Efficient estimation of word representations in vector space, arXiv preprint arXiv:1301.3781.
  2. T Mikolov, I Sutskever, K Chen, GS Corrado, J Dean, Distributed representations of words and phrases and their compositionality, Advances in neural information processing systems, 3111-3119.
  3. Jeffrey Pennington, Richard Socher, and Christopher D. Manning. 2014. GloVe: Global Vectors for Word Representation, https://nlp.stanford.edu/projects/glove/
  4. Omer Levy, Yoav Goldberg and Ido Dagan, Improving Distributional Similarity with Lessons Learned from Word Embeddings, https://doi.org/10.1162/tacl_a_00134
  5. P. Bojanowski, E. Grave, A. Joulin, T. Mikolov, Enriching Word Vectors with Subword Information
  6. A. Joulin, E. Grave, P. Bojanowski, T. Mikolov, Bag of Tricks for Efficient Text Classification
  7. A. Joulin, E. Grave, P. Bojanowski, M. Douze, H. Jegou, T. Mikolov, FastText.zip: Compressing text classification models
  8. Quoc V. Le, Tomas Mikolov, Distributed Representations of Sentences and Documents
  9. A Grover, J Leskovec, node2vec: Scalable Feature Learning forNetworks,KDD2016
  10. Jacob Devlin, Ming-Wei Chang, Kenton Lee, Kristina Toutanova, BERT: Pre-training of Deep Bidirectional Transformers for Language Understanding
  11. Maximilian Nickel, Douwe Kiela, Poincaré Embeddings for Learning Hierarchical Representations arXiv:1705.08039(在黎曼几何而不是欧氏几何中学习矢量表示)

科普和讲解

  1. 吴军 《数学之美》
  2. 刘知远 《大数据智能》
  3. jaylin008, word2vec与cw2vec的数学原理, https://www.jianshu.com/p/f258d0c5c317
  4. Making sense of word2vec,几种表示算法之间的联系,尤其是word2vec和词共现矩阵之间的联系, https://rare-technologies.com/making-sense-of-word2vec/
  5. Andrej Karpathy blog,这个研究者记录了自己的学习和思考过程,从一个学生到机器学习领域的专家的过程,并且分享对很多算法、博士生涯的理解 http://karpathy.github.io/2015/05/21/rnn-effectiveness/

平台、算法和素材

  1. 平台:http://hpc.systemsci.org (需要hpc.systemsci.org的linux用户账号,不对公众开放,仅供研究团队内部使用)或者胡韧奋老师的平台
  2. 平台搭建:anaconda和jupyter (https://www.anaconda.com/) , pytorch(https://pytorch.org/tutorials/), genism(https://radimrehurek.com/gensim/)
  3. word2vec和GloVe: 顺序读取词袋或者利用词语共现矩阵学习词表示。链接。在上面列出的Stanford CS224N课程里面有很好的讲解。
  4. fasttext: 以训练分类标签为目标,产生词向量的副产物,并集成了subword信息。链接
  5. ELMo: 基于双向语言模型(采用LSTM模型)学习contextualized word embedding,真正意义上实现了一词多表示。链接
  6. BERT: 基于双向语言模型(采用深层Transformer模型),将其隐层表示取出,可以得到更高效的contextualized embedding表示。链接
  7. GPT
  8. 素材:(请胡韧奋补充一下)

讨论班安排

  1. 讨论班目标:
    1. 了解机器学习基本概念,解决什么问题、有哪些典型应用、大概怎么做、粗略的道理
    2. 了解自然语言处理基本概念,解决什么问题、有哪些典型应用、大概怎么做、粗略的道理
    3. 会调用其他研究者编好的工具包来解决自己的问题
    4. 会提出适合用机器学习,尤其是自然语言处理,解决的问题
    5. 发展算法本身
  2. 讨论班方式:课程采用讨论班成员自己看、有带头人的集中讨论的模式。学习材料按照进程安排自己先看。看的时候把问题在学习班文件中(可以开一个石墨文档)记下来。带头人还需要把主要内容梳理出来,用概念地图的方式带领大家来思考、讨论、解答问题、学习资源整合。吴金闪会做一个展示,后续每位成员认领相应学习材料的带头人。
  3.  讨论班进度安排:待进一步细化
    1. 开班前:分发这个学习材料,参与成员决定自己负责讲解的材料。其中对于没有系统学习过自然语言处理的参与者,Stanford CS224N是必看材料。然后,认领一次或者两次课,来串讲一下。串讲主要是整理思路,不能代替各自自己看。此外,在讲某一个视频或者论文的时候,最好能够做到把相关的基础和概念在其他什么视频中、论文中联系起来。认领材料的同时,在讨论群里面决定后续时间安排。
    2. 第一次:吴金闪讲一讲自然语言处理,尤其是矢量表示算法,在自己的研究中主要完成什么,以及自己对矢量表示算法以及其他自然语言处理,甚至一般的机器学习的理解。胡韧奋讲一讲自然语言处理概述以及重点讲一讲矢量表示算法,并且做几种自然语言处理技术的展示。Stanford CS224N课程的一次或者两次课的串讲,有必要的话,结合Deep Learning书和Andrew的视频。
    3. 第二次-第五次:Stanford CS224N课程的一次或者两次课的串讲,有必要的话,结合Deep Learning书和Andrew的视频。两三篇文献。
    4. 第六次-第七次:自然语言处理技术和自己的研究工作的联系,最好有应用或者基础研究的例子,或者讲解本班的作业。

讨论班lynkage

  1. 第一次活动
    1. 第一次活动内容
    2. 什么是NLP
    3. 为什么要学NLP
    4. 怎么学NLP
    5. 学完了做什么
  1. CS224n
    1. CS224n主要内容
    2. CS224n-01-02 (Word2Vec,GloVec)
    3. CS224n-03-04 (神经网络,反向传播)
    4. CS224n-05 (DepParsing依存分析)
    5. CS224n-06 (RNN,LM)
    6. CS224n-07-09 (LSTM,GRU,seq2seq,Attention,课程项目)
    7. CS224n-10 (QA)
    8. CS224n-11 (CNN)

研究项目和练手小项目

  1. 感想类论文识别:收集一个论文集合,做人工标注,分成感想类论文、思辨类论文、科学研究(定性、定量研究、计算分析、实验)论文,训练分类器,识别更多论文
  2. 歌词歌曲翻译器:收集一个歌词-歌曲集合,当做平行语料,训练翻译器(由于歌曲的基本但是是什么是不清楚的,可能要从单个乐符或者和弦开始,做类似的subword的NLP),完成从给定歌词得到歌曲,从给定歌曲得到歌词的功能。如果还能结合给定曲子的一部分来作曲,给定歌词的一部分来生成文本,那就更厉害了,可以直接辅助音乐创作了。
  3. 给定基本词汇生成篇章:根据我们的汉字学习顺序的研究成果,在学习汉字的阶段,我们需要以文带字,以语带字,也就是选定一些基本的字,我们希望篇章主要通过这些基本字来生成。
  4. 科学学主体识别:尝试用word2vec处理论文的作者,author2vec,计算作者和论文的相似性,作者之间的相似性,作者和词之间的相似性,作者和主题(分类标记词)之间的相似性。
  5. 概念地图强化的问答系统和个性化聊天机器人
  6. 概念地图简单自动生成:从一段语料开始,用语法结构(主语、谓语、宾语、状语)提取做粗糙的概念地图自动生成,允许用户选定一些一定要包含的概念和关系。
  7. 学科概念地图以及科学学“作者-论文-概念”三层网络:做学科领域的概念地图生成和论文标注。
  8. 产品网络或者国家-产品贸易网络、产业投入产出网络的Glove算法来得到产品、国家、产业的矢量表示。
  9. 从语料和自然语言处理的角度,来做历史文化哲学科学等问题相关的字词句含义和频率的历史分析。

本分类目前不含有任何页面或媒体文件。