AI - 框架(Frameworks)
1 - Scikit-Learn
Sklearn(scikit-learn: machine learning in Python):https://scikit-learn.org/
文档丰富而又详细,提供了练习数据、相关代码实例和可视化图,是少数写的跟教程一样的技术文档。
官方信息
- 安装scikit-learn:https://scikit-learn.org/stable/install.html
- Documentation:https://scikit-learn.org/stable/documentation.html
- Quick Start:https://scikit-learn.org/stable/tutorial/basic/tutorial.html
- Examples(主流机器学习模型的示例):https://scikit-learn.org/stable/auto_examples/
- Tutorials:https://scikit-learn.org/stable/tutorial/index.html
- Tutorials Exercises:https://scikit-learn.org/stable/auto_examples/#tutorial-exercises
参考信息
- 中文文档:https://github.com/apachecn/scikit-learn-doc-zh/
- 使用scikit-learn进行线性回归分析:https://paul.pub/sklearn-l1/
- 分类预测与scikit-learn:https://paul.pub/sklearn-l2/
2 - TensorFlow
HomePage:https://tensorflow.org/ https://tensorflow.google.cn/
- 是Google开发的一款神经网络的Python外部的结构包,也是一个采用数据流图来进行数值计算的开源软件库。
- 可以先绘制计算结构图(一系列可人机交互的计算操作), 然后把编辑好的Python文件转换成更高效的C++,并在后端进行计算。
- 作为神经网络中最好用的库之一,擅长训练深度神经网络,开源、易于维护和更新。
- 通过使用TensorFlow可以快速的入门神经网络,降低深度学习(也就是深度神经网络)的开发成本和开发难度。
官方信息
- 安装TensorFlow:https://www.tensorflow.org/install
- 快速入门:https://www.tensorflow.org/tutorials/
- 指南:https://www.tensorflow.org/guide/
- API:https://www.tensorflow.org/api_docs/
- TensorFlow Keras 指南:https://www.tensorflow.org/guide/keras/
TensorFlow 2.0
TensorFlow 2.0 alpha 版本于 2019 年 3 月 4 日发布,增加了新的功能并改善了用户体验,并且更加紧密地集成了 Keras 作为其高级 API。
Tensorflow 2.0 通过 tf.keras 使用 Keras 作为其高级 API。
参考信息
- 中文社区(包含新手入门、完整教程、进阶指南、API中文手册和精华文章等内容 ):http://www.tensorfly.cn/
- TensorFlow Course:https://github.com/open-source-for-science/TensorFlow-Course
- TensorFlow Examples:https://github.com/aymericdamien/TensorFlow-Examples
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等模型
官方信息
- 安装Keras:https://keras.io/#installation
- Keras Documentation:https://keras.io/
- Keras Documentation - zh:https://keras.io/zh/
- Keras Blog:https://blog.keras.io/
- GitHub:https://github.com/keras-team/keras/
- GitHub-Examples:https://github.com/keras-team/keras/tree/master/examples
- GitHub-Applications:https://github.com/keras-team/keras/tree/master/keras/applications
- GitHub-FAQ:https://github.com/keras-team/keras/blob/master/docs/templates/getting-started/faq.md
TensorFlow keras
实际上Keras库已经通过tf.keras模块直接集成到TensorFlow中。
Keras API 已成为 Google TensorFlow 的一部分(https://www.tensorflow.org/guide/keras/)。
- API:https://www.tensorflow.org/api_docs/python/tf/keras
- TensorFlow keras 快速入门:https://www.tensorflow.org/tutorials/keras
- TensorFlow Keras 指南: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-Tutorials:https://github.com/xingkongliang/Keras-Tutorials
- Keras resources:https://github.com/fchollet/keras-resources
- Keras中文文档-非官方:https://keras-cn.readthedocs.io/
- 使用keras构建流行的深度学习模型:https://github.com/fchollet/deep-learning-models
其他
- 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。
官方信息
- 官网:http://pytorch.org/
- GitHub:https://github.com/pytorch/
- 官方实例:https://github.com/pytorch/examples
- 官网推荐60分钟教程:https://pytorch.org/tutorials/beginner/deep_learning_60min_blitz.html
一些参考资料
- 莫烦PyTorch:https://morvanzhou.github.io/tutorials/machine-learning/torch/
- PyTorch中文手册:https://github.com/zergtant/pytorch-handbook
- PyTorch资源集合:https://github.com/INTERMT/Awesome-PyTorch-Chinese
- 关于pytorch的各种资源:https://www.jianshu.com/p/4531c1992106
- PyTorch中文站1:https://ptorch.com/
- PyTorch中文站2:https://www.pytorchtutorial.com/
- PyTorch中文文档1:https://pytorch-cn.readthedocs.io/zh/latest/
- PyTorch中文文档2:https://pytorch.apachecn.org/
- PyTorch常用代码段整理合集:https://mp.weixin.qq.com/s/9nz4vOI2I2wz_buL36TcBg
十分钟学习PyTorch
- 知乎:https://www.zhihu.com/people/sherlockliao/posts
- 源码:https://github.com/L1aoXingyu/pytorch-beginner
PyTorch进阶之路
CN
- 张量与梯度:https://mp.weixin.qq.com/s/O4ctpg7bBHRNBDtXvFNhfA
- 如何实现线性回归:https://mp.weixin.qq.com/s/0ha5nYD5VqEjxWSu47EIpQ
- 使用logistic回归实现图像分类:https://mp.weixin.qq.com/s/V1IHzc1_92pfTsuzs9yC-Q
- 在 GPU 上训练深度神经网络:https://mp.weixin.qq.com/s/aNunUmnQWxPlIUgWTXkYMw
EN
- https://medium.com/dsnet/pytorch-basics-tensors-and-gradients-eb2f6e8a6eee
- https://medium.com/dsnet/linear-regression-with-pytorch-3dde91d60b50
- https://medium.com/dsnet/image-classification-using-logistic-regression-in-pytorch-ebb96cc9eb79
- https://medium.com/dsnet/training-deep-neural-networks-on-a-gpu-with-pytorch-11079d89805
pyro
Pyro是 Uber AI 实验室开源的一款深度概率编程语言(PPL),基于 Python 与 PyTorch 之上,专注于变分推理,同时支持可组合推理算法。
Pyro能够实现灵活而富有表现力的深度概率建模,将现代深度学习和贝叶斯建模的优点结合起来。
AI - 框架(Frameworks)的更多相关文章
- 针对深度学习(神经网络)的AI框架调研
针对深度学习(神经网络)的AI框架调研 在我们的AI安全引擎中未来会使用深度学习(神经网络),后续将引入AI芯片,因此重点看了下业界AI芯片厂商和对应芯片的AI框架,包括Intel(MKL CPU). ...
- 在windows上极简安装GPU版AI框架(Tensorflow、Pytorch)
在windows上极简安装GPU版AI框架 如果我们想在windows系统上安装GPU版本的AI框架,比如GPU版本的tesnorflow,通常我们会看到类似下面的安装教程 官方版本 安装CUDA 安 ...
- NNVM Compiler,AI框架的开放式编译器
NNVM Compiler,AI框架的开放式编译器 深度学习已变得无处不在且不可或缺.在多种平台(例如手机,GPU,IoT设备和专用加速器)上部署深度学习工作负载的需求不断增长.宣布了TVM堆栈,以弥 ...
- NNVM AI框架编译器
NNVM AI框架编译器 深度学习已变得无处不在且不可或缺.看到对在多种平台(例如手机,GPU,IoT设备和专用加速器)上部署深度学习工作负载的需求不断增长.TVM堆栈弥合深度学习框架与面向性能或效率 ...
- AI框架类FAQ
AI框架类FAQ 数据处理 问题:如何在训练过程中高效读取数量很大的数据集? 答复:当训练时使用的数据集数据量较大或者预处理逻辑复杂时,如果串行地进行数据读取,数据读取往往会成为训练效率的瓶颈.这种情 ...
- AI框架外部用户贡献代码
AI框架外部用户贡献代码 概述 飞桨是百度自主研发的一款开源的深度学习框架,是主流深度学习框架中首个完全国产化的产品,已经在农业.医疗.林业.科研.服务等领域成功应用.无论是已入职场的深度学习从业者. ...
- AI框架精要:设计思想
AI框架精要:设计思想 本文主要介绍飞桨paddle平台的底层设计思想,可以帮助用户理解飞桨paddle框架的运作过程,以便于在实际业务需求中,更好的完成模型代码编写与调试及飞桨paddle框架的二次 ...
- 中国人工智能AI框架自主研发
中国人工智能AI框架自主研发 中国AI界争相构建AI开源框架的背后,技术和业务层面的考量因素当然重要,但也不应忽视国家层面的政策支持.对于AI基础设施的建设,中国政府在<新一代人工智能发展规划& ...
- AI框架中图层IR的分析
摘要:本文重点分析一下AI框架对IR有什么特殊的需求.业界有什么样的方案以及MindSpore的一些思考. 本文分享自华为云社区<MindSpore技术专栏 | AI框架中图层IR的分析> ...
- 昇思MindSpore全场景AI框架 1.6版本,更高的开发效率,更好地服务开发者
摘要:本文带大家快速浏览昇思MindSpore全场景AI框架1.6版本的关键特性. 全新的昇思MindSpore全场景AI框架1.6版本已发布,此版本中昇思MindSpore全场景AI框架易用性不断改 ...
随机推荐
- Linux初次修改环境变量
对于刚刚从windows系统跳到Linux的小白们,相信多少都会出现一些强迫症,希望能将Linux的Terminal能调出点色彩,让其好看些.之前自己也不知道怎么按着百度的教程操作完成的,直到组里新来 ...
- Mad Libs游戏
一. 简单的输入输出 输入代码 name1=input('请输入姓名:') name2=input('请输入一个句子:') name3=input('请输入一个地点:') name4=input('请 ...
- vue项目获取地址栏参数(非路由传参)
在项目中,遇到一个需求,就是另一个系统直接跳转到我们项目中的某个页面,不需要做用户的校验直接单纯的跳转新页面,再初始化查询数据,参数以地址栏的形式传入 由于原来项目做过权限控制,所以在路由那边需要进行 ...
- ConcurrentQueue并发队列
表示线程安全的先进先出 (FIFO) 集合 System.Collections.Concurrent 命名空间提供多个线程安全集合类.当有多个线程并发访问集合时,应使用这些类代替 System.Co ...
- Chrome自定义滚动条
/*定义滚动条高宽及背景 高宽分别对应横竖滚动条的尺寸*/ ::-webkit-scrollbar { width: 16px; height: 16px; background-color: #F5 ...
- 最简单的struts应用
博客园 1.搭建一个简单的Struts2应用 具体为一下几个步骤: 1.引入Struts 2工程所需运行库文件. 2.创建并配置web.xml文件 3.创建一个Action类 4.创建并配置strut ...
- T-1-java语言基础
一.Linux的由来和发展 Linux是开源的操作系统 Linux是服务器端的操作系统 java主要用于服务器端 二.Linux目录结构(与Windows不同) 文件系统不同:Windows是盘符 ...
- Acoustic modelling from the signal domain using CNNs
3. Neural network architecture 此处描述了在本文当中所使用的网络结构,和所提取的关键特征(key features).首先,描述了两个新型的网络结构:the networ ...
- spring深入学习(四)-----spring aop
AOP概述 aop其实就是面向切面编程,举个例子,比如项目中有n个方法是对外提供http服务的,那么如果我需要对这些http服务进行响应时间的监控,按照传统的方式就是每个方法中添加相应的逻辑,但是这些 ...
- 第49章:MongoDB-数据导入导出
①导出工具mongoexport Mongodb中的mongoexport工具可以把一个collection导出成JSON格式或CSV格式的文件.可以通过参数指定导出的数据项,也可以根据指定的条件导出 ...