2020 年人工智能开源生态圈

深度学习为核心的新一代人工智能技术发展到今天,已逐步形成一个庞大的生态结构,覆盖了:经典机器学习深度学习强化学习自然语言处理语音识别计算机视觉、分布式训练、自动建模、IDEs 系统、平台、评分推理系统等完整的细分领域 —— 正确合理的选择与开发内容相匹配的工具,常常会使科学研究工作事半功倍,同时,选择正确高效的工具也是技术应用类专业建设的重要环节。

跨象乘云™ 持续致力为高等院校打造深度学习与新一代人工智能科研教学一体化实验平台,在进一步将深度学习系统与容器化基础设施架构紧密集成的同时,对新一代人工智能开源生态系统提供全方位的支撑,加速高校科研效率及科研成果落地。详细项目列表如下 ——

1. 机器学习

  • SciKit-learn —— 强大的基于 Python 语言的机器学习算法库
  • XGBoost —— 在 Gradient Boosting 框架下实现了 C++机器学习算法
  • Accord.NET —— 完全用 C#编写的音频和图像处理库

2. 深度学习

  • TensorFlow —— 用于机器学习的端到端开源平台
  • PyTorch —— 主流的深度学习工具,开源的机器学习框架
  • MXNET —— 功能齐全,可编程和可扩展的深入学习框架
  • Sonnet —— 由 DeepMind 发布的,在 TensorFlow 上用于构建复杂神经网络的开源库
  • DL4J —— 采用 Java 和 JVM 编写的开源深度学习库

3. 强化学习

  • Gym —— 用于开发和比较强化学习算法的工具
  • Dopamine —— 基于 Tensorflow 的框架,为新入门强化学习研究人员提供的新工具
  • ReAgent —— Facebook 推出的一个构建决策推理系统的模块化端到端平台
  • Tensorlayer —— 面向科学家的深度学习和强化学习库

4. 自然语言处理

  • BERT —— 基于双向 Transformer 的大规模预训练语言模型,NLP 领域中里程碑
  • Transformers —— 神经机器翻译中使用的神经网络,近期 PyTorch-Transformers 非常火爆
  • AllenNLP —— 基于 PyTorch 的 NLP 研究库,利用深度学习来进行自然语言理解
  • flair —— 简单易用的 Python NLP 库,允许将当前最优自然语言处理(NLP)模型应用于文本
  • spaCy —— 工业级强度级的 Python 自然语言处理工具包
  • fastText —— Facebook 人工智能研究实验室(FAIR)开源的一个文本处理库

5. 语音识别

  • Kaldi —— 目前使用广泛的开发语音识别应用的框架
  • DeepSpeech —— 开源语音转文本引擎
  • wav2letter —— Facebook AI 研究院开源的,简单高效的端到端自动语音识别(ASR)系统

6. 计算机视觉

  • YOLO —— 当前深度学习领域解决图像检测问题最先进的实时系统
  • OpenCV —— Intel 开源的跨平台计算机视觉库,被称为 CV 领域开发者与研究者的必备工具包
  • Detectron2 —— 在单个或多个 GPU 服务器上提供更快速的训练速度
  • OpenPose —— 以 Caffe 为框架开发的人体姿态识别项目
  • facenet —— 通用人脸识别系统

7. 分布式训练

  • Spark MLlib —— 开源集群运算框架,大数据领域热门开源软件
  • Mahout —— 分布式线性代数框架,用于快速创建可扩展的高性能机器学习应用程序
  • Horovod —— Uber 开源的一个跨多台机器的分布式深度学习的 TensorFlow 训练框架
  • Dask —— 当开发者需要并行化到多核时,将计算扩展到多个内核甚至多个机器
  • Ray —— 高性能分布式执行框架,热门程度仅次于 Spark

8. 自动建模

  • TPOT —— Python 编写的软件包,利用遗传算法进行特征选择和算法模型选择
  • AutoKeras —— 基于高效神经架构搜索的开源项目,媲美 Google 的 AutoML
  • Featuretools —— 用于自动化特性工程的开源 Python 框架
  • NNI —— 微软发布的一个用于神经网络超参数调整的开源 AutoML 工具包
  • AdaNet —— Google 开源的一个轻量级的基于 TensorFlow 框架的神经网络搜索

9. IDEs

  • Jupyter —— 涵盖了跨数十种编程语言的交互式计算
  • Spyder —— 用于科学计算的使用 Python 编程语言的集成开发环境
  • Zeppelin —— 基于 Web 的交互式数据分析平台

10. 平台

  • H2O —— 开源的分布式内存机器学习平台,支持最广泛使用的统计和机器学习算法
  • MLflow —— 机器学习生命周期的开源平台
  • Kubeflow —— Kubernetes 上的机器学习分布式训练任务支持

11. 评分推理系统

  • ONNX —— 针对机器学习所设计的开放式的文件格式,用于存储训练好的模型
  • Seldon —— 让机器学习模型可以部署于 Kubernetes 上