0
对于自然语言处理领域来说,2019 年可谓是令人惊叹的一年!
日前,NLP 专家 Elvis 盘点了 2019 年 NLP 和 ML 领域发生的大事件,涵盖具有价值的论文、文章、工程工作、年度报告等等,并为大家呈上了值得关注和学习的一波课程和图书资源。
针对所有的大事件,Elvis 还事无巨细地为大家一一附上了相关链接,诚意满满!
为了给大家提供一个较好的阅读体验,本文只附上了其中的部分链接,感兴趣的同学可以前往原文,找到相应的链接地址:
https://medium.com/dair-ai/nlp-year-in-review-2019-fb8d523bcb19
本文 PDF 地址:https://github.com/omarsar/nlp_highlight
2019 年,谷歌人工智能部门针对语境化语言表征的自监督学习任务,发布了轻量级的 BERT 模型——ALBERT(论文:《ALBERT: A Lite BERT for Self-supervised Learning of Language Representations》)。该模型主要的改进之处在于减少冗余,并且更高效地分配模型的容量。该方法在12个自然语言处理任务上,都实现了最先进的性能。
2019 年初,英伟达的研究人员发表了一篇著名的论文「StyleGAN」,它基于风格迁移方法,提出了一种可选的 GAN 生成架构。接着,他们在论文《Analyzing and Improving the Image Quality of StyleGAN》中对 StyleGAN 进行了改进,重新设计了生成器的归一化过程。
图 1:上一行为目标图像,下一行为合成图像
Code2Seq 是于 2019 年发表的一项非常有趣的工作,它是一种根据结构化的代码表征生成自然语言序列的方法。Code2Seq 可以实现诸如自动化代码摘要和文档生成。
不知各位有没有想过为生物医学文本挖掘任务训练一个生物医学语言模型?2019 年,研究人员提出了一种从生物医学文献中提取出重要信息的语境化方法—— BioBERT。
在 BERT 发布之后,Facebook 的研究人员也随即发布了 RoBERTa,它引入了新的优化方法来改进 BERT,并在各种自然语言处理的对比基准上取得了最先进的实验结果。
Facebook 人工智能院的研究人员近期还发布了一种基于全注意力层的方法(《Augmenting Self-attention with Persistent Memory》),从而提升 Transformer 语言模型的效率。该研究组还提出了一种使用自然语言教人工智能系统如何做计划的方法(《Hierarchical Decision Making by Generating and Following Natural Language Instructions》)。
图 2:全注意力层示意图
可解释性仍然是机器学习和自然语言处理领域的一个重要课题。论文《Explainable Artificial Intelligence (XAI): Concepts, Taxonomies, Opportunities and Challenges toward Responsible AI》给出了有关可解释性、分类标准、未来可能的研究方向的综述。
Sebastian Ruder 在发表的论文《Neural Transfer Learning for Natural Language Processing》中,提出了自然语言处理神经迁移学习。
一些研究人员研发出了一种在对话语境中进行情感识别的方法《Emotion Recognition in Conversations with Transfer Learning from Generative Conversation Modeling》,它可以实现情感对话生成。另一个相关的工作《DialogueGCN: A Graph Convolutional Neural Network for Emotion Recognition in Conversation》,用到了一种叫做「DialogueGCN」的图神经网络方法来检测对话中的情感。
谷歌人工智能量子计算团队在「Nature」杂志上发表了一篇论文《Quantum supremacy using a programmable superconducting processor》,他们声称已经研发出了一种比世界上最大的超级计算机还要快的量子计算机。
如上所述,可解释性是神经网络架构领域需要进行大量改进的领域之一。论文《Attention is not not Explanation》讨论了在语言建模中,将注意力机制作为可解释性的一种可靠的手段的局限性。
《Neural Logic Machines》这项工作提出了一种「神经-符号」网络架构,可以在归纳学习和逻辑推理方面取得很好的性能。该模型在数组排序和寻找最短路径任务中表现出色。
图 3:神经逻辑机的架构
论文《On Extractive and Abstractive Neural Document Summarization with Transformer Language Models》将 Transformer 语言模型应用到了提取和抽象出神经文档摘要的任务中。
论文《Building Machine Learning Models via Comparisons》中,研究者们还研发出了一种方法,重点研究通过比较的方法构建并训练机器学习模型。这项技术不需要大量的「特征-标签」数据对,而是将图像与模型之前看到过的图像进行比较,以确定图像是否应该被赋予某种标签。
Nelson Liu 及其研究伙伴发表了论文《Linguistic Knowledge and Transferability of Contextual Representations》,讨论了通过预训练的语境模型(如 BERT 和 ELMo)获取的语言知识类型。
XLNet 是一种用于自然语言处理任务的预训练方法,它在 20 种任务上相较于 BERT 有了进一步的提升。关于这份卓越的工作的总结,请参阅: https://medium.com/dair-ai/xlnet-outperforms-bert-on-several-nlp-tasks-9ec867bb563b。
DeepMind 的论文《Learning and Evaluating General Linguistic Intelligence》报告了一项广泛的实证研究的结果,旨在评估应用于各项任务的语言理解模型。这项广泛的分析对于更好地理解语言模型获取的内容非常重要,从而提高它们的效率。
VisualBERT是一种简单而鲁棒的框架,用于为「视觉-语言」任务(包括 VQA 和 Flickr30K 等)建模。该方法利用了堆叠的 Transformer 层以及注意力机制,来对齐文本片段中的元素和图像的区域。
《To Tune or Not to Tune? Adapting Pretrained Representations to Diverse Tasks》通过详细的分析对比了各种自然语言处理中的迁移学习方法,并给出了对自然语言处理从业人员的建议。
Alex Wang 和 Kyunghyun 在《BERT has a Mouth, and It Must Speak: BERT as a Markov Random Field Language Model》提出了一种能够生成高质量、流畅的语言的 BERT 实现。
Facebook 的研究人员发布了「XLM」的 PyTorch 实现代码(https://github.com/facebookresearch/XLM),这是一种用于跨语言模型预训练的模型。
《RL in NMT: The Good, the Bad and the Ugly》对用于神经机器翻译的强化学习算法进行了全面的分析。
在 JAIR 上发表的综述论文《A Survey of Cross-lingual Word Embedding Models》中,对跨语言词嵌入模型的训练、评估和使用进行了全面的概述。
Gradient 平台发表了一篇优秀的博文「The Promise of Hierarchical Reinforcement Learning」,详细说明了目前强化学习的局限性,也给出了一条通过分层强化学习解决这些问题的潜在出路。
很快,一些人也发布了一系列优秀的强化学习入门教程(https://github.com/araffin/rl-tutorial-jnrr19/blob/master/1_getting_started.ipynb)。
论文《Contextual Word Representations: A Contextual Introduction》简要介绍了语境化词表征方法。
机器学习技术已经被广泛用于解决现实世界中的问题,但另一方面,人们也通过一些有趣和富有创意的方式使用机器学习。机器学习创意和人工智能领域中其它类型的研究同样重要,因为归根到底,我们希望的是构建能够帮助我们塑造文化和社会的人工智能系统。
2019 年底,Gary Marcus 和 Yoshua Bengio 针对深度学习、符号人工智能和混合人工智能系统进行了激烈的辩论。
《2019 人工智能索引报告》最终发布了,它全面分析了人工智能的现状,可以让读者更好地了解人工智能领域的总体进展。
常识推理仍然是一个重要的研究领域,因为我们想要构建的人工智能系统,不仅仅要能够根据拥有的数据进行预测,还要能够理解并对这些决定进行推理。这种技术可以被用于人工智能对话系统,旨在使智能体可以与人类进行更加自然的对话。Nasrin Mostafazadeh 在一篇《The Art Of AI Storytelling: How One 30 Under 30 Scientist Is Teaching Devices To Make Assumptions》采访文中,针对尝试推理及其应用展开了讨论,其应用涉及故事描述和语言理解。
你还可以参阅论文《Explain Yourself! Leveraging Language Models for Commonsense Reasoning》,看看如何利用语言模型进行常识推理。
激活地图集是由谷歌和 Open AI 的研究人员开发的一项技术,旨在更好地理解并可视化神经网络中神经元之间发生的交互。
图 4:Inception V1 分类网络的激活地图集显示出了许多完全被实现了的特征(例如,电子产品、建筑物、食物、动物耳朵、植物和水的背景)
此外,2019 年图灵奖获得者 Geoffery Hinton 和 Yann LeCun 发表的获奖演讲(地址:https://fcrc.acm.org/turing-lecture-at-fcrc-2019)也值得一读,分享图灵奖这一殊荣的还有 Yoshua Bengio。
论文《Tackling Climate Change with Machine Learning》讨论了利用机器学习处理气候变化问题。
OpenAI 发表了一份内容丰富的报告《Release Strategies and the Social Impacts of Language Models》,讨论语言模型对社会的影响,包括有益的使用和潜在的技术滥用现象等主题。
情感分析技术仍然被广为使用。Mojifier 是一个很酷炫的项目,它可以通过观察一幅图像检测到其中的情感,并使用与检测到的情感相匹配的表情替换人脸。
使用人工智能技术开展影像学研究也是 2019 年的一大趋势。论文《Radiological images and machine learning: trends, perspectives, and prospects》很好地总结了这一研究领域的发展趋势和前景。
纽约大学的研究人员还发布了一个 PyTorch 实现的深度神经网络,用于提升影像学专家在乳腺癌筛查中的工作表现(详细可参考:https://medium.com/@jasonphang/deep-neural-networks-improve-radiologists-performance-in-breast-cancer-screening-565eb2bd3c9f)。MIMIC-CXR是一个重要的数据集,它包含胸部 X 光片和影像学文本报告的数据库。
纽约时报撰写了一篇关于 Karen Spark Jones 的文章(https://www.nytimes.com/2019/01/02/obituaries/karen-sparck-jones-overlooked.html),回忆她对自然语言处理和信息检索做的开创性贡献。
Open AI Five 成为第一个在电子竞技比赛中击败世界冠军的人工智能系统(https://openai.com/blog/openai-five-defeats-dota-2-world-champions/)。
《全球人工智能人才报告》给出了世界范围内人工智能人才库和全球人工智能需求的详细报告。
DeepMind 团队开设了一个非常棒的播客(地址:https://deepmind.com/blog?filters=%7B%22category%22:%5B%22Podcasts%22%5D%7D),订阅者可以讨论最前沿的人工智能话题。
在人工智能的潜力方面,Demis Hassabis 接受了「经济学人」的采访(https://worldin.economist.com/article/17385/edition2020demis-hassabis-predicts-ai-will-supercharge-science?utm_medium=pr&utm_source=inf-a&utm_campaign=worldin),在采访中他谈到了一些具有未来主义的想法,比如利用人工智能扩展人类的思维,也许可以为重要的科学问题寻找解决方案。
2019 年,机器学习在健康领域的应用也取得了重大的进展。例如,马萨诸塞州的研究人员研发出了一种可以像人类一样准确地发现脑出血的人工智能系统(https://venturebeat.com/2019/01/04/massachusetts-generals-ai-can-spot-brain-hemorrhages-as-accurately-as-humans/)。
图 5:通过人工智能系统分析得到的脑部扫描结果
Janelle Shane 总结了一组「奇怪」的实验,展示了机器学习如何以有创意的方式进行有趣的实验。有时,这种实验需要真正理解人工智能系统到底在做什么(和没有做什么)。其中的一些实验包括生成「假蛇」图像和讲笑话。
图 6:蛇的种类
《Earth to exoplanet: Hunting for planets with machine learning》一文尝试使用 TensorFlow 平台上构建的机器学习模型寻找行星。
OpenAI 在《Better Language Models and Their Implications》一文中讨论了发布大规模无监督语言模型的影响(包括潜在的恶意用例)。
一篇名叫《Using Nucleus and TensorFlow for DNA Sequencing Error Correction》的 Colab 笔记本针对如何将 Nucleus 和 TensorFlow 用于「DNA 序列纠错」给出了一个很棒的间接。关于使用深度学习架构进行 DNA 探索的更多细节,请参阅博文:https://blog.floydhub.com/exploring-dna-with-deep-learning/
图 7:我们将基于共识的 DNA 序列纠错任务形式化定义为一个多类别分类问题。通过使用 Nucleus,我们构建了一个基因组范围内的归一化碱基技术矩阵。TensorFlow 让我们可以训练能够训练一个神经网络,来预测位于窗口中间位置的正确碱基。
Alexander Rush 是一名哈佛大学的自然语言处理研究者,他撰写了一篇关于张量问题的重要文章《Tensor Considered Harmful》,并指出了现有的库怎样暴露出了这些问题。他还提出了关于张量索引命名的建议。
这部分将重点介绍与软件和数据集相关的事件,它们对自然语言处理和机器学习的研究和工程大有助益。
Hugging Face 发布了一种广受欢迎的基于 PyTorch 的 Transformer 程序库「pytorch-transformers」。它让许多自然语言处理从业人员和研究者们可以轻松地使用最先进的通用框架(例如,BERT、GPT-2 和 XLM 等)。如果你对如何使用 pytorch-transformers 感兴趣,请参阅 Roberto Silveira 的教程(https://rsilveira79.github.io/fermenting_gradients/machine_learning/nlp/pytorch/pytorch-transformer-squad/),该教程介绍了如何使用该库进行机器理解。
图 8:Hugging Face 的 pytorch-transformers
2019 年,谷歌发布了 TensorFlow 2.0,引入了一些新的特性。关于最佳实践的更多信息请参阅:https://medium.com/tensorflow/effective-tensorflow-2-0-best-practices-and-whats-changed-a0ca48767aff。Francois Chollet 也撰写了一篇关于这些新特性的详细概述:https://colab.research.google.com/drive/1UCJt8EYjlzCs1H1d1X0iDGYJsHKwu-NO。
同时,新发布的 PyTorch 1.3 也包含大量的新特性,包括命名张量和其它的前端改进。
Allen 人工智能研究院发布了「Iconary」,这是一个可以和人类玩猜图游戏的人工智能系统。这项工作结合了视觉/语言学习系统和常识推理。同时,他们还发表了一种新的常识推理对比基准「Abductive-NLI」。
spaCy 发布了一个新的代码库,将 Transformer 语言模型合并到 spaCy 中,从而能够提取特征并在 spaCy NLP 工作流程中使用它们。这项工作是基于 Hugging Face 开发的 Transformer 库构建的。Maximilien Roberti 也撰写了一篇关于如何将 fast.ai 的代码与 pytorch-transformers 结合起来的博文《Fastai with Hugging Face Transformers (BERT, RoBERTa, XLNet, XLM, DistilBERT)》。
Facebook 人工智能团队发布了「PHYRE」,这是一种用于物理推理的对比基准,旨在通过结局各种物理难题来测试人工智能系统的物理推理能力。
图 9:PHYRE-B Tier 示意图
斯坦福自然语言处理小组发布了用于自然语言分析的 Python 代码库「StanfordNLP 0.2.0」。你可以在超过 70 种不同的语言上进行不同类型的语言分析(例如:词形还原和词性标注识别)。
GQA 是一个可视化问答数据集,用于支撑与视觉推理相关的研究。
exBERT 是一种可视化工具,用于探索 Transformer 语言模型的嵌入和注意力机制,原论文为《exBERT: A Visual Analysis Tool to Explore Learned Representations in Transformers Models》。
图 10:exBERT 工作示意图
Distill 平台上发表了一篇关于如何在循环神经网络(RNN)中可视化记忆内容的论文《Visualizing memorization in RNNs》。
Mathpix 工具可以让你拍摄一个公式的照片,然后自动帮你升恒该公式的 Latex 代码。
图 11:Mathpix 工作示意图
Parl.ai 平台可以为涉及人工智能对话系统的工作托管许多流行的数据集。
Uber 的研究人员发布了开源工具 Ludwig,它使用户可以很方便地仅仅使用几行代码就可以训练并测试深度学习模型,旨在在训练和测试模型的过程中避免任何的编码工作。
谷歌的人工智能研究人员发布了「Natural Questions」,这是一个用于训练并评估开放领域问答系统的大规模语料库。
2019 年,数据科学作家和爱好者的数量激增。这对于我们的研究领域是非常有益的,也鼓舞了研究社区进行健康的讨论和学习。
这里列举了一些有趣的必看论文和博文:
Christian Perone 对最大似然估计(MLE)和最大后验估计(MAP)进行了介绍,这是理解模型参数估计的重要原则。
Reiichiro Nakano 发表了博文《Neural Style Transfer with Adversarially Robust Classifiers》,讨论了具有对抗性鲁棒分类器的神经风格迁移。
Saif M. Mohammad 撰写了一系列文章(阅读地址:https://medium.com/@nlpscholar/state-of-nlp-cbf768492f90)讨论 ACL 论文接收情况的历时分析。
图 12:上图分别显示了进行学术研究时间的平均数、中位数,以及首次发表论文的人数占总人数的比例。
有一个值得思考的问题是:语言模型能学会语法吗?《Finding Syntax with Structural Probes》使用结构化探测技术,旨在说明使用上下文语境表征和查找树结构的方法实现这一目标是可能的。
Andrej Karpathy 撰写了一篇博文《A Recipe for Training Neural Networks》总结了如何高效训练神经网络的最佳实践和方法。
谷歌人工智能部门的研究人员和其它研究人员合作,使用 BERT 模型来改进对搜索的理解,像 BERT 这种语境化的方法可以理解搜索查询背后的意图。
Rectified Adam(RAdam)是一种基于 Adam 优化器的新型优化技术,有助于改进人工智能架构。研究者们在提出更好、更稳定的优化器的方面做出了一些工作,但是作者们声称他们关注的是优化的其它方面,它们对于提升收敛性同样重要。
随着近几年来机器学习工具的大幅发展,对于如何实现能够解决实际问题的机器学习系统的讨论也越来越多。Chip Huyen 撰写了《Machine Learning System Design》,重点强调了超参数调优和数据流水线等课题。
英伟达打破了创建最大的语言模型的记录,该模型训练了数十亿的参数。
Abigail See 撰写了博文《What makes a good conversation?》,讨论了如何在为执行自然语言生成任务开发的系统环境下实现良好的人机对话。
谷歌人工智能团队发表了两个自然语言对话数据集,旨在使用更复杂、更自然的对话数据集提升数字助理等对话应用程序的个性化程度。
深度强化学习仍然是人工智能领域中最广为讨论的话题之一,它甚至吸引了心理学和神经科学领域的兴趣。在「Trends in Cognitive Sciences」上发表的论文《Reinforcement Learning, Fast and Slow》中,介绍了一些该领域的重要概念。
Samira Abner 撰写了博文《From Attention in Transformers to Dynamic Routing in Capsule Nets》,总结了 Transformer 和 capsule 网络背后的主要组成部分及其联系。Adam Kosiorek 还针对堆叠化的基于 capsule 的自编码器(一种无监督版本的 capsule 网络)撰写了文章「Stacked Capsule Autoencoders》,并将其用于目标检测任务。
图 13:两个相邻的 capsule 层之间的连接,其中较低层有 3 类 capsule,较高层有 2 类 capsule。
研究人员在 Distill 平台上发表了一篇互动文章「A Visual Exploration of Gaussian Processes》,旨在展示对高斯过程的可视化探索。
通过在 Distill 平台上发表的《Open Questions about Generative Adversarial Networks》,Augustus Odena 呼吁研究人员解决关于对抗生成网络(GAN) 的重要开放性问题。
研究人员使用 PyTorch 框架实现了用于区分出垃圾邮件制造者的图卷积网络(GCN)。
2019 年初,VentureBeat 发布了一份由 Rumman Chowdury、Hilary Mason、Andrew Ng 以及 Yan LeCun 提出的 2019 年预测列表(https://venturebeat.com/2019/01/02/ai-predictions-for-2019-from-yann-lecun-hilary-mason-andrew-ng-and-rumman-chowdhury/)。现在,大家可以看看他们的预测是否正确。
《Multi-label Text Classification using BERT- The Mighty Transformer》提出的模型学着如何调整 BERT 以执行多标签文本分类任务。
由于 BERT 的盛行,在过去的几个月中,许多研究人员开发了对BERT 进行「压缩」的方法,旨在建立更快、更小、内存效率更高的版本。Mitchell A.Gordon 撰写了《All The Ways You Can Compress BERT》一文,总结了压缩的类型和围绕这一目标开发的方法。
超级智能仍然是专家们争论的重要课题。该课题需要对框架、政策有正确的理解,并且进行仔细的观察。K.Eric Drexler 以科技报告的形式撰写了一系列有趣的综合性论文《Reframing Superintelligence Comprehensive AI Services as General Intelligence》,对于理解围绕超级智能主题的一些问题和思考是很有帮助的。
Eric Jang 撰写了博文《Meta-Learning in 50 Lines of JAX》,介绍了元学习的概念,旨在构建并训练不仅可以预测、也可以学习的机器学习模型。
Sebastian Ruder 撰写了一份 AAAI 2019 亮点工作总结,阅读地址:https://ruder.io/aaai-2019-highlights/。
图神经网络是 2019 年最火的话题之一。David Mack 撰写了《Finding shortest paths with Graph Neural Networks》一文,介绍了他们如何使用这种技术和注意力机制一起计算最短路径。
贝叶斯方法仍然是一个有趣的课题,特别是如何将它们应用于神经网络,从而避免像过拟合这样的常见问题。Kumar Shridhar 针对这一话题给出了一个阅读材料的推荐列表:https://medium.com/neuralspace/bayesian-neural-network-series-post-1-need-for-bayesian-networks-e209e66b70b2。
图 14:以点估计作为权重的网络 vs 以概率分布为权重的网络
在 2019 年中,也许道德规范是人们针对人工智能系统讨论的最多的话题之一,包括偏见、公平性、透明度等问题。关于这一部分,本文将列举出一些相关的有趣故事和论文:
论文《Does mitigating ML’s impact disparity require treatment disparity?》通过在真实世界数据集上进行实验,讨论了应用不同学习过程得到的结果。
Hugging Face 发表了文章《Ethical analysis of the open-sourcing of a state-of-the-art conversational AI》,讨论在用于对话人工智能的开源自然语言处理场景下的道德问题。
随着我们不断向社会引进基于人工智能的技术,能够量化道德伦理在人工智能研究中的作用是非常重要的。论文《On Quantifying and Understanding the Role of Ethics in AI Research: A Historical Account of Flagship Conferences and Journals》对量化道德伦理的措施和「与伦理相关的研究在引领人工智能、机器学习和机器人领域中的作用」进行了深入的分析。
NAACL 2019 上发表的论文《Lipstick on a Pig: Debiasing Methods Cover up Systematic Gender Biases in Word Embeddings But do not Remove Them》讨论了去偏方法可以如何消除词嵌入中的性别偏置。
读者可以听一听 Zachary Lipton 关于其论文《Troubling Trends in ML Scholarship》的报告(https://www.youtube.com/watch?v=A2Jtqi_oa2Y])。我也曾对这篇有趣的论文进行了总结:《An Overview of Troubling Trends in Machine Learning Scholarship》。
Gary Marcus 和 Ernest Davis 发表了他们的新书《Rebooting AI: Building Artificial Intelligence We Can Trust》。这本书的主题是讨论我们为了实现鲁棒的人工智能必须采取的措施。
关于人工智能未来的发展,Francois Chollet 也撰写了一篇令人印象深刻的论文《On the Measure of Intelligence》。
Andrew Trask 在优达学城上开设了有关差分隐私保护、联邦学习、以及加密人工智能的课程《Secure and Private AI》。关于隐私这一话题,Emma Bluemke 撰写了博文《PRIVACY-PRESERVING AI IN MEDICAL IMAGING: FEDERATED LEARNING, DIFFERENTIAL PRIVACY, AND ENCRYPTED COMPUTATION》,讨论了如何在保护患者隐私的同时训练机器学习模型。
2019 年初,Mariya Yao 的博文《RECENT BREAKTHROUGH RESEARCH PAPERS IN AI ETHICS》中,给出了一份包含人工智能伦理的研究论文清单。虽然这些参考论文的清单是自 2018 年统计的,但我相信它在今天仍然具有意义。
最后为大家呈上 2019 年新更新的一些 ML/NLP 学习资源:
卡内基梅隆大学发布了他们的《自然语言处理神经网络》课程的教学材料和大纲。
Elvis Saravia 和 Soujanya Poria 发布了一个名为「NLP-Overview」的项目,旨在为学生和从业者提供应用于自然语言处理的现代深度学习技术的简要概述,包括理论、算法、应用和最新成果(相关地址:https://github.com/omarsar/nlp_overview)。
图 15:NLP 概述
微软研究院发布了一本关于数据科学基础的免费电子书(https://www.datasciencecentral.com/profiles/blogs/new-book-foundations-of-data-science-from-microsoft-research-lab),主体涵盖了从马尔科夫链蒙特卡洛方法到随机图的方方面面。
《机器学习的数学》是一本免费电子书,介绍了机器学习中最重要的数学概念。它还包含了一些描述机器学习部件的 Jupyter notebook 教程。
Jean Gallier 和 Jocelyn Quaintance 撰写了一本内容丰富的免费电子书《Algebra, Topology, Differential Calculus, and Optimization Theory For Computer Science and Machine Learning》,内容涵盖了机器学习中使用到的数学概念。
斯坦福大学发布了《自然语言理解》课程的相关视频:https://www.youtube.com/playlist?list=PLoROMvodv4rObpMCir6rNNUlFAn56Js20。
OpenAI 整理了一份关于如何保持并提高机器学习技能的推荐阅读列表:https://openai.com/blog/learning-day/。显然,他们的员工每天都在使用这些方法不断学习并扩展他们的知识。
图 16:OpenAI 的员工在 Learning Day 做些什么?
Adrian Rosebrock 发布了一本 81 页的指南(https://www.pyimagesearch.com/start-here/),介绍如何使用 Python 和 OpenCV 完成计算机视觉任务。
Emily m. Bender 和 Alex Lascarides 出版了一本名为《自然语言处理的语言学基础》的书。本书的主要思想是以语义和语用为基础,来探讨自然语言处理领域中的「意义」是什么。
Elad Hazan 发表了名为《机器学习的优化》的演讲笔记,旨在将机器学习训练呈现为一个具有优美数学和符号的优化问题。Deellearning .ai 也发布了文章《Parameter optimization in neural networks》,讨论了使用可视化和互动方法进行神经网络参数优化。
Andreas Mueller 发布了新的《应用机器学习》课程视频列表:https://www.youtube.com/playlist?list=PL_pVmAaAnxIQGzQS2oI3OWEPT-dpmwTfA。
Fast.ai 发布了名为《Deep Learning from the Foundations》的新慕课。
麻省理工学院发布了其课程《Introduction to Deep Learning》的教学视频和大纲(https://www.youtube.com/playlist?list=PLtBw6njQRU-rwp5__7C0oIVt26ZgjG9NI)。
Chip Huyen 在推特上发布了一系列优质的机器学习入门免费在线课程:https://twitter.com/chipro/status/1157772112876060672。
Andrew Trask 发布了他名为《Grokking Deep Learning》的新书。本书是一本理解神经网络架构基本构建模块的入门书。
Sebastian Raschka 上传了 80 份关于如何实现不同的深度学习模型(例如,RNN 和 CNN)的笔记(https://github.com/rasbt/deeplearning-models)。最棒的是,这些模型都是使用 PyTorch 和 TensorFlow 框架实现的。
教程《Understand TensorFlow by mimicking its API from scratch》可以帮助大家深度了解 TensorFlow 的工作机制。Christian Perone 也为 PyTorch 撰写了一份教程:http://blog.christianperone.com/2018/03/pytorch-internal-architecture-tour/。
Fast.ai 还发布了一份名为《Intro to NLP》的课程,主题包括情感分析、主题建模、Transformer 等。
Xavier Bresson 的演讲谈到了如何使用图卷积网络进行分子生成,视频链接:https://ipam.wistia.com/medias/excbyr8gvv。此外,论文《Pre-training Graph Neural Networks》也讨论了如何预训练图神经网络。
就图神经网络而言,一些工程师使用它们来预测分子和晶体的性质。谷歌人工智能团队还发表了博文《Learning to Smell: Using Deep Learning to Predict the Olfactory Properties of Molecules》,来解释他们如何使用图神经网络进行气味预测。如果读者对图神经网络感兴趣,请参下面这篇关于不同的图神经网络及其应用的全面概述:https://arxiv.org/pdf/1812.08434.pdf。
约翰霍普金斯大学的 Rene Vidal 发布了一份关于无监督学习方法(如 PCA)的视频播放列表:https://www.youtube.com/playlist?list=PLFInMJnvb3owAddRh4qk2gCX25kGLDay-。
如果你对于将一个预训练好的 TensorFlow 模型转换成 PyTorch 模型感兴趣,那么 Thomas Wolf 的这篇博文会对你有所帮助:https://medium.com/huggingface/from-tensorflow-to-pytorch-265f40ef2a28。
想了解生成式深度学习吗?David Foster 的新书《Generative Deep Learning》告诉数据科学家们如何将生成对抗网络(GAN)和编码器-解码器模型用于执行绘画、协作、作曲等任务。本书附带的官方 TensorFlow 代码仓库、PyTorch 版代码。
下面这份 Colab 笔记本文件包含实现并学习因果推理概念(如干预、反事实等)的代码块:https://colab.research.google.com/drive/1rjjjA7teiZVHJCMTVD8KlZNu3EjS7Dmu#scrollTo=T9xtzFTJ1Uwf。
Sebastian Ruder,Matthew Peters,Swabha Swayamdipta 和 Thomas Wolf 等人提供的 NAACL 2019 《自然语言处理中的迁移学习》教程材料链接:https://github.com/huggingface/naacl_transfer_learning_tutorial。他们还给出了一个用于入门的配套的谷歌 Colab 笔记本文件:https://colab.research.google.com/drive/1iDHCYIrWswIKp-n-pOg69xLoZO09MEgf。
Jay Alammar 发表了一篇关于数据表征的博文《A Visual Intro to NumPy and Data Representation》。他还撰写了许多有趣的插图指南(GPT-2:https://jalammar.github.io/illustrated-gpt2/。BERT:http://jalammar.github.io/a-visual-guide-to-using-bert-for-the-first-time/)。
Peter Bloem 还发表了一篇非常详细的博文《TRANSFORMERS FROM SCRATCH》,解释了 Transformer 的组成部分。
图 18:自注意力机制的示意图
Mihail Eric 在《Trends in Natural Language Processing: ACL 2019 In Review》中,对 ACL 2019 上体现出来的自然语言处理领域发展趋势进行了很好的概述。相关的主题包括将知识引入自然语言处理架构、可解释性、减少偏置等等。如果读者对此感兴趣,请参阅:(1)https://medium.com/@mgalkin/knowledge-graphs-in-natural-language-processing-acl-2019-7a14eb20fce8(2)http://noecasas.com/post/acl2019/
斯坦福大学发布了 CS231n 2019 版的完整教学大纲:http://cs231n.stanford.edu/syllabus.html
David Abel 发布了 ICLR 2019 的一系列笔记:https://david-abel.github.io/notes/iclr_2019.pdf。他也给出了一份很棒的 NeurIPS 2019 总结:https://david-abel.github.io/notes/neurips_2019.pdf。
《动手学深度学习》是一本很棒的书,为读者介绍了深度学习的相关知识,并附有 notebook 代码。
图 19:动手学深度学习
关于 BERT、ELMo、以及自然语言处理迁移学习的插图指南,请参阅:http://jalammar.github.io/illustrated-bert/。
图 20:自然语言处理中的迁移学习
Fast.ai 发布了2019 版的《程序员使用深度学习》课程。
Pieter Abbeel 和其他人一起教授的深度无监督学习课程链接如下:https://sites.google.com/view/berkeley-cs294-158-sp19/home。
Gilbert Strang 发布了一本关于线性代数和神经网络的新书:http://math.mit.edu/~gs/learningfromdata/'。
加州理工学院发布了他们的《机器学习基础》课程的完整的教学大纲、课程幻灯片和视频播放列表:http://tensorlab.cms.caltech.edu/users/anima/cs165.html。
《Scipy Lecture Notes》是一套教你如何掌握「matplotlib」、「Numpy」、「Scipy」等工具的教程。
如果读者想要理解高斯过程,请参阅教程《Understanding Gaussian processes》及附带的代码。
Lilian Wang 在博文《Generalized Language Models》中深入介绍了生成式语言模型(如 ULMFit、OpenAI GPT-2、BERT),这是一篇必读的文章。
「Paper with Code」网站展示了一些精选的机器学习论文及其代码,并给出了目前最先进的模型的结果。
Christoph Molnar 发布了第一版的《Interpretable Machine Learning》,这是一本涉及用于更好地解释机器学习算法的重要技术的书。
David Bamman 发布了加州大学伯克利分校自然语言处理课程的完整教学大纲和幻灯片:http://people.ischool.berkeley.edu/~dbamman/nlp18.html。
加州大学伯克利分校发布了他们的《应用自然语言处理》课程的全部材料:https://github.com/dbamman/anlp19。
Aerin Kim 是微软的一名高级研究工程师,他住那些了与应用数学和深度学习相关的一系列文章:https://towardsdatascience.com/@aerinykim。起主题主要包括条件独立、伽马分布、复杂度等。
Tai-Danae Bradley 的博文《Matrices as Tensor Network Diagrams》,讨论了如何思考矩阵和张量。这篇文章用到了一些酷炫的可视化效果,有助于更好地理解矩阵上执行的某些变换和操作。
图 21:矩阵和张量
2019 已经过去,2020 年作为 AI 界 主力军之二的 ML、NLP 又将迎来哪些具有历史性的时刻和值得关注的工作呢?我们拭目以待吧!
Via https://medium.com/dair-ai/nlp-year-in-review-2019-fb8d523bcb19 雷锋网雷锋网雷锋网
雷峰网原创文章,未经授权禁止转载。详情见转载须知。