AWS 开源高性能模型生成器:AutoGluon

作为自动化机器学习平台的其中一员,基于 MXNet 深度学习框架(支持 Pytorch)的 AWS AutoGluon 于 1 月 9 日正式发布,在这之前,AutoGluon 已经在 Github 上悄悄上线一个月了 —— 新一代人工智能实验室的科研人员,以及 AI 开发者们,均可以通过它构建包含图像、文本或表格数据集的机器学习应用程序,并且不需要进行任何手动测试。

AutoGluon 为开发人员自动化了许多决策。通常,像超参数调优这样的任务是需要手动执行的,这要求科学家预测超参数 —— 表示在构建 AI 模型时所做的选择 —— 将如何影响模型训练。另一个通常被称为神经架构搜索,这是一个需要人工监督的复杂工程,在某种程度上,开发人员必须为他们各自的模型确定最佳设计。AutoGluon 可以开箱即用地识别用于表格预测、图像和文本分类以及对象检测的模型,它还提供了一个 API,更有经验的开发人员可以利用该 API 进一步改进模型的预测性能。

Amazon’s AutoGluon helps developers deploy deep learning models with just a few lines of code
Amazon’s AutoGluon helps developers deploy deep learning models with just a few lines of code

开发人员无需在设计深度学习模型时手动尝试必须做出的数百种选择,只需简单地指定让训练好的模型就绪的时间即可。作为响应,AutoGluon 可以利用可用的计算资源在其分配的运行时间内找到最强大的模型。AutoGluon 可以通过自动调整默认范围内的选择来生成仅需三行代码的模型,而这些默认范围在已知范围内可以很好地完成给定任务。开发人员只需指定他们何时准备好训练后的模型,AutoGluon 就会利用可用的计算资源来在分配的 runtime 中找到最强大的模型。

同时,AutoGluon 官方网站为开发人员提供了许多工程案例教程,可利用它们对表格,文本和图像数据进行深度学习(诸如涵盖分类 / 回归等基本任务以及对象检测等更高级的任务)。无疑对本科、研究生人工智能专业建设,提供了重要的项目案例教育资源补充。

GitHub地址项目 GitHub 地址

CNN 101:卷积神经网络的交互式视觉学习

为了应对深度学习模型中的复杂性挑战,日前,佐治亚理工学院研究人员开发了 CNN 101,这是另一个交互式的可视化卷积神经网络系统,可以帮助深度学习、人工智能实验室的科研人员以及学生更好地了解和学习卷积神经网络,它是基础的深度学习模型体系结构。

交互式可视化卷积神经网络系统
CNN 101 :交互式可视化卷积神经网络系统

使用现代 Web 技术构建的 CNN 101 无需专用硬件即可在用户的 Web 浏览器中本地运行。通过紧密集成的交互式视图,CNN 101 通过解释单神经元级别以及层级别的卷积,激活和池化操作,提供了模型工作方式的概述和详细说明。CNN 101 进一步扩大了公众对深度学习技术的教育途径。它应用了交互式可视化技术,为用户提供了一种更简单的方法来学习深度学习机制并建立神经网络直觉。并且,对于现有的通过交互式可视化来解释复杂机器学习算法的研究工作,CNN 101 可以与他们结合在一起。

同时,作者为 CNN 101 录制了演示视频,为了方便观看,跨象乘云™ 提供了源视频下载 ——

Google 发布联邦学习漫画

2017 年,谷歌在官方博客中发文,提出了联邦学习(Federated Learning)。该技术实际上是一种加密的分布式机器学习技术,各个参与方可在不披露底层数据和其加密形态的前提下共建模型。

Federated Learning in Gboard on Android
Federated Learning in Gboard on Android

为了帮助大家更好地理解这个技术,贴心的谷歌还特意出版了一期漫画解析,网上已经有中文翻译版本。这里发布原始链接,供高校新一代人工智能科研实验室、专业教学等师生参考。

最佳 Pytorch 科研项目架构模板实践

此前,跨象乘云™ 发布了《最佳TensorFlow科研项目架构模板实践》,TensorFlow 是帮助深度学习新方法走向实现的强大工具。它为大多数深度学习领域中使用的常用语言提供了大量应用程序接口。对于开发者和研究人员来说,在开启新的项目前首先面临的问题是:如何构建一个简单明了的结构。所以,经过大量的实践和对 Tensorflow 项目贡献,整理了一个结合简洁,具备文件夹结构化组织,并且面向对象设计的 Tensorflow 项目模板最佳实践 —— 为高校深度学习与新一代人工智能科研实验室建设以及科研教学平台提供良好的基础支撑。

另一方面,自从 PyTorch 1.0 发布之后,越来越多的人选择使用 PyTorch,今天给大家介绍一个 Github 项目,作者通过自己使用 PyTorch 的实际工程经验,总结出了一套非常有用的使用 PyTorch 的最佳实践,涉及到使用 PyTorch 的方方面面。

本文总结了使用 PyTorch 框架进行深度学习的一年多经验中的最佳实践。请注意,我们分享的经验大多来自研究和创业的视角。这是一个开放的项目,欢迎其他合作者编辑和改进文档。该文档有三个主要部分。首先,简要回顾一下 Python 中的最佳实践,然后介绍一些使用 PyTorch 的技巧和建议。最后,我们分享了一些使用其他框架的见解和经验,这些框架通常对我们改进工作流有帮助。

GitHub地址项目 GitHub 地址

《机器学习实用指南》第二版发布

Hands-On Machine Learning with Scikit-Learn, Keras, and TensorFlow》(《机器学习实用指南》),这本书最大的特色从理论上讲就是言简意赅,全书基本上没有太多复杂的数学公式推导。这一点正是国内很多高校教材所欠缺的。这本超赞的机器学习实用指南终于正式出版了第二版:《Hands-On Machine Learning with Scikit-Learn, Keras, and TensorFlow: Concepts, Tools, and Techniques to Build Intelligent Systems 2nd Edition》,并且在美国亚马逊上开售(包括 Kindle 版本)。

Hands-On Machine Learning with Scikit-Learn, Keras, and TensorFlow Concepts, Tools, and Techniques to Build Intelligent Systems 2nd Edition
Hands-On Machine Learning with Scikit-Learn, Keras, and TensorFlow Concepts, Tools, and Techniques to Build Intelligent Systems 2nd Edition

本教材作者是 Aurélien Géron,法国人,毕业于AgroParisTech,曾任 Google Youtube 视频分类项目组负责人,创建过多家公司并担任 CTO,也曾在 AgroParisTech 担任讲师。现在是一名机器学习的顾问。第二版相比第一版增加了许多新的内容,最直白的就是第一版使用了 Scikit-LearnTensorFlow,而第二版增加了 Keras 深度学习框架。从内容上来说,第二版增加了更多的机器学习前沿知识,包括:无监督学习,训练深度网络,计算机视觉自然语言处理等等。作者将本书所有章节的详细代码都开源了并发布在 GitHub 上,目前已经收获了 5.5k star。

GitHub地址项目 GitHub 地址

深度学习知识卡片:序列到序列之二

继续之前的:

  1. 深度学习知识卡片:深度学习基本概念
  2. 深度学习知识卡片:Logistic 回归
  3. 深度学习知识卡片:浅层网络的特点
  4. 深度学习知识卡片:深度神经网络的特点
  5. 深度学习知识卡片:偏差与方差
  6. 深度学习知识卡片:正则化
  7. 深度学习知识卡片:最优化训练
  8. 深度学习知识卡片:最优化算法
  9. 深度学习知识卡片:超参数调优
  10. 深度学习知识卡片:结构化机器学习过程
  11. 深度学习知识卡片:误差分析
  12. 深度学习知识卡片:训练集、开发集与测试集
  13. 深度学习知识卡片:学习方法扩展
  14. 深度学习知识卡片:卷积神经网络基础
  15. 深度学习知识卡片:卷积运算的主要参数
  16. 深度学习知识卡片:深度卷积神经网络架构
  17. 深度学习知识卡片:经典卷积神经网络
  18. 深度学习知识卡片:特殊卷积神经网络
  19. 深度学习知识卡片:实践建议
  20. 深度学习知识卡片:目标检测算法
  21. 深度学习知识卡片:人脸识别
  22. 深度学习知识卡片:风格迁移
  23. 深度学习知识卡片:循环神经网络基础
  24. 深度学习知识卡片:循环神经网络应用
  25. 深度学习知识卡片:NLP 中的词表征
  26. 深度学习知识卡片:词嵌入常见方法
  27. 深度学习知识卡片:序列到序列之一

编码器解码器架构加上注意力机制可以解决非常多的自然语言处理问题,以下介绍了 BLEU 分值和注意力机制。它们在机器翻译的架构和评估中都是不能缺少的部分。

序列到序列之二
序列到序列之二

以上是所有关于吴恩达深度学习专项课程的知识卡片,由于它们包含的信息较多,跨象乘云™ 提供完整的《深度学习知识卡片》原图下载,以便人工智能专业学生,在学习过程中慢慢理解与优化。

深度学习知识卡片:序列到序列之一

继续之前的:

  1. 深度学习知识卡片:深度学习基本概念
  2. 深度学习知识卡片:Logistic 回归
  3. 深度学习知识卡片:浅层网络的特点
  4. 深度学习知识卡片:深度神经网络的特点
  5. 深度学习知识卡片:偏差与方差
  6. 深度学习知识卡片:正则化
  7. 深度学习知识卡片:最优化训练
  8. 深度学习知识卡片:最优化算法
  9. 深度学习知识卡片:超参数调优
  10. 深度学习知识卡片:结构化机器学习过程
  11. 深度学习知识卡片:误差分析
  12. 深度学习知识卡片:训练集、开发集与测试集
  13. 深度学习知识卡片:学习方法扩展
  14. 深度学习知识卡片:卷积神经网络基础
  15. 深度学习知识卡片:卷积运算的主要参数
  16. 深度学习知识卡片:深度卷积神经网络架构
  17. 深度学习知识卡片:经典卷积神经网络
  18. 深度学习知识卡片:特殊卷积神经网络
  19. 深度学习知识卡片:实践建议
  20. 深度学习知识卡片:目标检测算法
  21. 深度学习知识卡片:人脸识别
  22. 深度学习知识卡片:风格迁移
  23. 深度学习知识卡片:循环神经网络基础
  24. 深度学习知识卡片:循环神经网络应用
  25. 深度学习知识卡片:NLP 中的词表征
  26. 深度学习知识卡片:词嵌入常见方法
序列到序列之一
序列到序列之一

序列到序列的方法,使用最多的就是编码器解码器框架,其它还有束搜索等模块的介绍。

深度学习知识卡片:词嵌入常见方法

继续之前的:

  1. 深度学习知识卡片:深度学习基本概念
  2. 深度学习知识卡片:Logistic 回归
  3. 深度学习知识卡片:浅层网络的特点
  4. 深度学习知识卡片:深度神经网络的特点
  5. 深度学习知识卡片:偏差与方差
  6. 深度学习知识卡片:正则化
  7. 深度学习知识卡片:最优化训练
  8. 深度学习知识卡片:最优化算法
  9. 深度学习知识卡片:超参数调优
  10. 深度学习知识卡片:结构化机器学习过程
  11. 深度学习知识卡片:误差分析
  12. 深度学习知识卡片:训练集、开发集与测试集
  13. 深度学习知识卡片:学习方法扩展
  14. 深度学习知识卡片:卷积神经网络基础
  15. 深度学习知识卡片:卷积运算的主要参数
  16. 深度学习知识卡片:深度卷积神经网络架构
  17. 深度学习知识卡片:经典卷积神经网络
  18. 深度学习知识卡片:特殊卷积神经网络
  19. 深度学习知识卡片:实践建议
  20. 深度学习知识卡片:目标检测算法
  21. 深度学习知识卡片:人脸识别
  22. 深度学习知识卡片:风格迁移
  23. 深度学习知识卡片:循环神经网络基础
  24. 深度学习知识卡片:循环神经网络应用
  25. 深度学习知识卡片:NLP 中的词表征
词嵌入常见方法
词嵌入常见方法

GloVe 词向量是很常见的词向量学习方法,它学到的词表征可进一步用于语句分类等任务。GloVe 的全称叫:Global Vectors for Word Representation,它是一个基于全局词频统计(Count-based & Overall Statistics)的词表征(Word Representation)工具,它可以把一个单词表达成一个由实数组成的向量,这些向量捕捉到了单词之间一些语义特性,比如相似性(Similarity)、类比性(Analogy)等。我们通过对向量的运算,比如欧几里得距离或者 Cosine 相似度,可以计算出两个单词之间的语义相似性。

 

深度学习知识卡片:NLP 中的词表征

继续之前的:

  1. 深度学习知识卡片:深度学习基本概念
  2. 深度学习知识卡片:Logistic 回归
  3. 深度学习知识卡片:浅层网络的特点
  4. 深度学习知识卡片:深度神经网络的特点
  5. 深度学习知识卡片:偏差与方差
  6. 深度学习知识卡片:正则化
  7. 深度学习知识卡片:最优化训练
  8. 深度学习知识卡片:最优化算法
  9. 深度学习知识卡片:超参数调优
  10. 深度学习知识卡片:结构化机器学习过程
  11. 深度学习知识卡片:误差分析
  12. 深度学习知识卡片:训练集、开发集与测试集
  13. 深度学习知识卡片:学习方法扩展
  14. 深度学习知识卡片:卷积神经网络基础
  15. 深度学习知识卡片:卷积运算的主要参数
  16. 深度学习知识卡片:深度卷积神经网络架构
  17. 深度学习知识卡片:经典卷积神经网络
  18. 深度学习知识卡片:特殊卷积神经网络
  19. 深度学习知识卡片:实践建议
  20. 深度学习知识卡片:目标检测算法
  21. 深度学习知识卡片:人脸识别
  22. 深度学习知识卡片:风格迁移
  23. 深度学习知识卡片:循环神经网络基础
  24. 深度学习知识卡片:循环神经网络应用
NLP 中的词表征
NLP 中的词表征

词嵌入在自然语言处理中非常重要,因为不论执行怎样的任务,将词表征出来都是必须的。上图展示了词嵌入的方法,我们可以将词汇库映射到一个 200 或 300 维的向量,从而大大减少表征词的空间。此外,这种词表征的方法还能表示词的语义,因为词义相近的词在嵌入空间中距离相近。

深度学习知识卡片:循环神经网络应用

继续之前的:

  1. 深度学习知识卡片:深度学习基本概念
  2. 深度学习知识卡片:Logistic 回归
  3. 深度学习知识卡片:浅层网络的特点
  4. 深度学习知识卡片:深度神经网络的特点
  5. 深度学习知识卡片:偏差与方差
  6. 深度学习知识卡片:正则化
  7. 深度学习知识卡片:最优化训练
  8. 深度学习知识卡片:最优化算法
  9. 深度学习知识卡片:超参数调优
  10. 深度学习知识卡片:结构化机器学习过程
  11. 深度学习知识卡片:误差分析
  12. 深度学习知识卡片:训练集、开发集与测试集
  13. 深度学习知识卡片:学习方法扩展
  14. 深度学习知识卡片:卷积神经网络基础
  15. 深度学习知识卡片:卷积运算的主要参数
  16. 深度学习知识卡片:深度卷积神经网络架构
  17. 深度学习知识卡片:经典卷积神经网络
  18. 深度学习知识卡片:特殊卷积神经网络
  19. 深度学习知识卡片:实践建议
  20. 深度学习知识卡片:目标检测算法
  21. 深度学习知识卡片:人脸识别
  22. 深度学习知识卡片:风格迁移
  23. 深度学习知识卡片:循环神经网络基础
循环神经网络应用
循环神经网络应用

循环神经网络在语言建模等序列问题上有非常强大的力量,但同时它也存在很严重的梯度消失问题。因此像 LSTMGRU 等基于门控的 RNN 有非常大的潜力,它们使用门控机制保留或遗忘前面时间步的信息,并形成记忆以提供给当前的计算过程。