1 - Scikit-Learn

Sklearn(scikit-learn: machine learning in Python):https://scikit-learn.org/

文档丰富而又详细,提供了练习数据、相关代码实例和可视化图,是少数写的跟教程一样的技术文档。

官方信息

参考信息

2 - TensorFlow

HomePage:https://tensorflow.org/ https://tensorflow.google.cn/

  • 是Google开发的一款神经网络的Python外部的结构包,也是一个采用数据流图来进行数值计算的开源软件库。
  • 可以先绘制计算结构图(一系列可人机交互的计算操作), 然后把编辑好的Python文件转换成更高效的C++,并在后端进行计算。
  • 作为神经网络中最好用的库之一,擅长训练深度神经网络,开源、易于维护和更新。
  • 通过使用TensorFlow可以快速的入门神经网络,降低深度学习(也就是深度神经网络)的开发成本和开发难度。

官方信息

TensorFlow 2.0

TensorFlow 2.0 alpha 版本于 2019 年 3 月 4 日发布,增加了新的功能并改善了用户体验,并且更加紧密地集成了 Keras 作为其高级 API。

Tensorflow 2.0 通过 tf.keras 使用 Keras 作为其高级 API。

参考信息

3 - Keras

Keras是一个模型级(model-level)的库,为开发深度学习模型提供了高层次的构建模块。

依赖于一个专门的、高度优化的张量库(后端引擎,backend engine)来完成张量操作、求微分等低层次的运算。

TensorFlow、Theano、CNTK等都可以无缝嵌入到 Keras 中,充当Keras的张量库,默认为TensorFlow。

Keras处于高度集成框架。 虽然更容易创建模型,但是面对复杂的网络结构时可能不如TensorFlow。

一些描述词

  • 符号主义:基于符号主义特性的Theano和Tensorflow的一个包装
  • Python:由纯Python编写,源代码简单易懂,并且能够轻松访问整个Python数据科学生态系统
  • 用户体验:灵活易用,无需使用复杂的后端,只需几行代码即可简洁明了地定义复杂模型
  • 快速原型:高度模块化,易于搭建和训练网络,适合于快速原型生成
  • 轻量级:通常只需使用Keras本身的函数,很少需要深入到Tensorflow或Theano
  • 内置模型:包含预训练模型库,目前有Inception-ResNet-v2、Inception-v3、MobileNet、ResNet-50、VGG16、VGG19 和 Xception等模型

官方信息

TensorFlow keras

实际上Keras库已经通过tf.keras模块直接集成到TensorFlow中。

Keras API 已成为 Google TensorFlow 的一部分(https://www.tensorflow.org/guide/keras/)。

>>> import tensorflow as tf
>>> tf.__version__
'1.12.0'
>>> tf.keras
<module 'tensorflow._api.v1.keras' from 'D:\\DownLoadFiles\\anaconda3\\envs\\mlcc\\lib\\site-packages\\tensorflow\\_api\\v1\\keras\\__init__.py'>
>>>

参考信息

其他

  • Keras的datasets模块提供了常用数据库的接口,可以用来载入常用的数据库,便于新手熟悉使用。
  • Keras的wrappers.scikit-learn模块提供了与scikit-learn联动的机制。

4 - PyTorch

PyTorch是一个针对深度学习, 并且使用GPU和CPU来优化的张量库(tensor library)。

一个开源的深度学习平台,提供从研究原型到生产部署的无缝路径(An open source deep learning platform that provides a seamless path from research prototyping to production deployment)

更适合小型项目和原型设计

一款强大的动态计算图模式的深度学习框架,训练神经网络的过程简单明了。

  • 大部分框架是静态计算图模式,其应用模型在运行之前就已经确定了,而 PyTorch 支持在运行过程中根据运行参数动态改变应用模型。
  • 可以简单理解为:一种是先定义后使用,另一种是边使用边定义。
  • 动态计算图模式是 PyTorch 的天然优势之一。
  • 在PyTorch中,可以使用标准调试器 ,例如pdb或PyCharm。

官方信息

一些参考资料

十分钟学习PyTorch

PyTorch进阶之路

CN

  1. 张量与梯度:https://mp.weixin.qq.com/s/O4ctpg7bBHRNBDtXvFNhfA
  2. 如何实现线性回归:https://mp.weixin.qq.com/s/0ha5nYD5VqEjxWSu47EIpQ
  3. 使用logistic回归实现图像分类:https://mp.weixin.qq.com/s/V1IHzc1_92pfTsuzs9yC-Q
  4. 在 GPU 上训练深度神经网络:https://mp.weixin.qq.com/s/aNunUmnQWxPlIUgWTXkYMw

EN

  1. https://medium.com/dsnet/pytorch-basics-tensors-and-gradients-eb2f6e8a6eee
  2. https://medium.com/dsnet/linear-regression-with-pytorch-3dde91d60b50
  3. https://medium.com/dsnet/image-classification-using-logistic-regression-in-pytorch-ebb96cc9eb79
  4. https://medium.com/dsnet/training-deep-neural-networks-on-a-gpu-with-pytorch-11079d89805

pyro

Pyro是 Uber AI 实验室开源的一款深度概率编程语言(PPL),基于 Python 与 PyTorch 之上,专注于变分推理,同时支持可组合推理算法。

Pyro能够实现灵活而富有表现力的深度概率建模,将现代深度学习和贝叶斯建模的优点结合起来。

AI - 框架(Frameworks)的更多相关文章

  1. 针对深度学习(神经网络)的AI框架调研

    针对深度学习(神经网络)的AI框架调研 在我们的AI安全引擎中未来会使用深度学习(神经网络),后续将引入AI芯片,因此重点看了下业界AI芯片厂商和对应芯片的AI框架,包括Intel(MKL CPU). ...

  2. 在windows上极简安装GPU版AI框架(Tensorflow、Pytorch)

    在windows上极简安装GPU版AI框架 如果我们想在windows系统上安装GPU版本的AI框架,比如GPU版本的tesnorflow,通常我们会看到类似下面的安装教程 官方版本 安装CUDA 安 ...

  3. NNVM Compiler,AI框架的开放式编译器

    NNVM Compiler,AI框架的开放式编译器 深度学习已变得无处不在且不可或缺.在多种平台(例如手机,GPU,IoT设备和专用加速器)上部署深度学习工作负载的需求不断增长.宣布了TVM堆栈,以弥 ...

  4. NNVM AI框架编译器

    NNVM AI框架编译器 深度学习已变得无处不在且不可或缺.看到对在多种平台(例如手机,GPU,IoT设备和专用加速器)上部署深度学习工作负载的需求不断增长.TVM堆栈弥合深度学习框架与面向性能或效率 ...

  5. AI框架类FAQ

    AI框架类FAQ 数据处理 问题:如何在训练过程中高效读取数量很大的数据集? 答复:当训练时使用的数据集数据量较大或者预处理逻辑复杂时,如果串行地进行数据读取,数据读取往往会成为训练效率的瓶颈.这种情 ...

  6. AI框架外部用户贡献代码

    AI框架外部用户贡献代码 概述 飞桨是百度自主研发的一款开源的深度学习框架,是主流深度学习框架中首个完全国产化的产品,已经在农业.医疗.林业.科研.服务等领域成功应用.无论是已入职场的深度学习从业者. ...

  7. AI框架精要:设计思想

    AI框架精要:设计思想 本文主要介绍飞桨paddle平台的底层设计思想,可以帮助用户理解飞桨paddle框架的运作过程,以便于在实际业务需求中,更好的完成模型代码编写与调试及飞桨paddle框架的二次 ...

  8. 中国人工智能AI框架自主研发

    中国人工智能AI框架自主研发 中国AI界争相构建AI开源框架的背后,技术和业务层面的考量因素当然重要,但也不应忽视国家层面的政策支持.对于AI基础设施的建设,中国政府在<新一代人工智能发展规划& ...

  9. AI框架中图层IR的分析

    摘要:本文重点分析一下AI框架对IR有什么特殊的需求.业界有什么样的方案以及MindSpore的一些思考. 本文分享自华为云社区<MindSpore技术专栏 | AI框架中图层IR的分析> ...

  10. 昇思MindSpore全场景AI框架 1.6版本,更高的开发效率,更好地服务开发者

    摘要:本文带大家快速浏览昇思MindSpore全场景AI框架1.6版本的关键特性. 全新的昇思MindSpore全场景AI框架1.6版本已发布,此版本中昇思MindSpore全场景AI框架易用性不断改 ...

随机推荐

  1. sqlite基本用法

    DDL-数据定义语言 CREATE 创建一个新的表,一个表的视图,或者数据库中的其他对象. ALTER 修改数据库中的某个已有的数据库对象,比如一个表. DROP 删除整个表,或者表的视图,或者数据库 ...

  2. React Native不同设备分辨率适配和设计稿尺寸单位px的适配

    React Native中使用的尺寸单位是dp(一种基于屏幕密度的抽象单位.在每英寸160点的显示器上,1dp = 1px),而设计师使用的是px, 这两种尺寸如何换算呢? 官方提供了PixelRat ...

  3. mac查看当前调用tcp的进程并关闭指定进程

    查看所有tcp进程 监听的端口 lsof -iTCP -sTCP:LISTEN 查看指定端口信息 lsof -i: 关闭指定进程 kill -

  4. EXCEL公式及宏

    VLOOKUP特别好用的一个用于映射的公式 1.需要根据ID找到对应的NAME 2.将可以用于映射的两列放到G,H列中(注意!用于检索的要放在相对的第一列中) 3.VLOOKUP(A2,G:H,2,F ...

  5. 运用SharedPreferences“偷取”输入的信息

    运用SharedPreferences"偷取"输入的信息 本次的任务是 利用SharedPreferences来完成信息的保存和读取 就是你输入什么 手机就可以把输入的内容&quo ...

  6. win 10 的wordcloud的安装

    这两天为了安装wordcloud库可谓是“一把辛酸”,各种出错 jieba什么就不说了,安装和使用都很简单只需要一句代码就可以实现了,而wordcloud在安装之前,本以为也像jieba那样的简单,但 ...

  7. redis学习-string常用命令

    keys * :查询所有的key值 set:为指定键设置对应的值 get:获取指定键的值 mset:一次传入多个键值对 mget:一次获取多个键的值 del:删除指定键 strlen:获取指定键值的长 ...

  8. wcf生成客户端代理类步骤及语句

    通过svcutil.exe工具生成客户端代理类和客户端的配置文件 .在运行中输入cmd打开命令行 ()cd C:\Program Files (x86)\Microsoft SDKs\Windows\ ...

  9. 基于面向方面和UML的实时系统建模研究

    一.基本信息 标题:基于面向方面和UML的实时系统建模研究 时间:2010 出版源:计算机技术与发展 领域分类:面向方向:实时系统:横切关注点:统一建模语言: 二.研究背景 问题定义:实时系统建模研究 ...

  10. vue组件自定义属性命名

    今天自己写vue组件demo的时候发现一个有趣的问题:vue组件自定义属性命名不支持用驼峰命名! 上面图示为正常情况下的自定义属性,没有任何问题. 但是一旦出现自定义属性中包含了大写字母,则如下图所示 ...