0
  • 聊天消息
  • 系统消息
  • 评论与回复
登录后你可以
  • 下载海量资料
  • 学习在线课程
  • 观看技术视频
  • 写文章/发帖/加入社区
创作中心

完善资料让更多小伙伴认识你,还能领取20积分哦,立即完善>

3天内不再提示

推荐一本中文PyTorch书籍——PyTorch中文手册

DPVg_AI_era 来源:lq 2019-02-16 10:58 次阅读

今天我们强烈推荐一本中文PyTorch书籍 —— PyTorch 中文手册,并附上试读。本书提供PyTorch快速入门指南并与最新版本保持一致,其中包含的 Pytorch 教程全部通过测试保证可以成功运行。

PyTorch 是一个深度学习框架,旨在实现简单灵活的实验。

自 2017 年初首次推出,PyTorch 很快成为 AI 研究人员的热门选择并受到推崇。PyTorch 有许多优势,如采用 Python 语言、动态图机制、网络构建灵活以及拥有强大的社群等。由于其灵活、动态的编程环境和用户友好的界面,PyTorch 是快速实验的理想选择。

PyTorch 现在是GitHub 上增长速度第二快的开源项目,在过去的 12 个月里,贡献者增加了 2.8 倍。而且,去年 12 月在 NeurIPS 大会上,PyTorch 1.0 稳定版终于发布。PyTorch 1.0 增加了一系列强大的新功能,大有赶超深度学习框架老大哥 TensorFlow 之势。

因此,学习 PyTorch 大有裨益!

今天我们强烈推荐一本中文 PyTorch 书籍 ——PyTorch 中文手册 (pytorch handbook),并附上试读。这是一本开源的书籍,目标是帮助那些希望和使用 PyTorch 进行深度学习开发和研究的朋友快速入门,其中包含的Pytorch 教程全部通过测试保证可以成功运行。

开源地址:

https://github.com/zergtant/pytorch-handbook

书籍介绍

这是一本开源的书籍,目标是帮助那些希望和使用 PyTorch 进行深度学习开发和研究的朋友快速入门。

由于本人水平有限,在写此教程的时候参考了一些网上的资料,在这里对他们表示敬意,我会在每个引用中附上原文地址,方便大家参考。

深度学习的技术在飞速的发展,同时 PyTorch 也在不断更新,且本人会逐步完善相关内容。

版本说明

由于 PyTorch 版本更迭,教程的版本会与 PyTorch 版本,保持一致。

12 月 8 日 PyTorch 已经发布 1.0 的稳定版。 API 的改动不是很大,本教程已经通过测试,保证能够在 1.0 中正常运行。 不过目前看影响不大,因为毕竟内容还不多。 v0.4.1 已经新建了分支作为存档,并且该不会再进行更新了。

目录

第一章: pytorch 入门

1. Pytorch 简介

2. Pytorch 环境搭建

3. PyTorch 深度学习:60 分钟快速入门 (官方)

张量

Autograd: 自动求导

神经网络

训练一个分类器

选读:数据并行处理 (多 GPU)

4. 相关资源介绍

第二章 基础

第一节 PyTorch 基础

张量

自动求导

神经网络包 nn 和优化器 optm

数据的加载和预处理

第二节 深度学习基础及数学原理

深度学习基础及数学原理

第三节 神经网络简介

神经网络简介

第四节 卷积神经网络

卷积神经网络

第五节 循环神经网络

循环神经网络

第三章 实践

第一节 logistic 回归二元分类

logistic 回归二元分类

第二节 CNN:MNIST 数据集手写数字识别

CNN:MNIST 数据集手写数字识别

第三节 RNN 实例:通过 Sin 预测 Cos

RNN 实例:通过 Sin 预测 Cos

第四章 提高

第一节 Fine-tuning

Fine-tuning

第二节 可视化

visdom

tensorboardx

第三节 fastai

第四节 数据处理技巧

第五节 并行计算

第五章 应用

第一节 Kaggle 介绍

第二节 结构化数据

第三节 计算机视觉

第四节 自然语言处理

第五节 协同过滤

第六章 资源

试读:Pytorch 简介、Pytorch 环境搭建

1.1 Pytorch 简介

1.1.1 PyTorch 的由来

很多人都会拿 PyTorch 和 Google 的 Tensorflow 进行比较,这个肯定是没有问题的,因为他们是最火的两个深度学习框架了。但是说到 PyTorch,其实应该先说 Torch。

1.1.2 Torch 是什么?

Torch 英译中:火炬

ATensorlibrarylikeNumpy,unlikeNumpyithasstrongGPUsupport.LuaisawrapperforTorch(Yes!youneedtohaveagoodunderstandingofLua),andforthatyouwillneedLuaRockspackagemanager.

Torch 是一个与 Numpy 类似的张量(Tensor)操作库,与 Numpy 不同的是 Torch 对 GPU 支持的很好,Lua 是 Torch 的上层包装。

Torchisnotgoinganywhere.PyTorchandTorchusethesameClibrariesthatcontainalltheperformance:TH,THC,THNN,THCUNNandtheywillcontinuetobeshared.WestillandwillhavecontinuedengineeringonTorchitself,andwehavenoimmediateplantoremovethat.

PyTorch 和 Torch 使用包含所有相同性能的 C 库:TH, THC, THNN, THCUNN,并且它们将继续共享这些库。

这样的回答就很明确了,其实 PyTorch 和 Torch 都使用的是相同的底层,只是使用了不同的上层包装语言。

注:LUA 虽然快,但是太小众了,所以才会有 PyTorch 的出现。

1.1.3 重新介绍 PyTorch

PyTorchisanopensourcemachinelearninglibraryforPython,basedonTorch,usedforapplicationssuchasnaturallanguageprocessing.ItisprimarilydevelopedbyFacebook'sartificial-intelligenceresearchgroup,andUber's"Pyro"softwareforprobabilisticprogrammingisbuiltonit.

PyTorch 是一个基于 Torch 的 Python 开源机器学习库,用于自然语言处理等应用程序。 它主要由 Facebook 的人工智能研究小组开发。Uber 的 "Pyro" 也是使用的这个库。

PyTorchisaPythonpackagethatprovidestwohigh-levelfeatures:Tensorcomputation(likeNumPy)withstrongGPUaccelerationDeepneuralnetworksbuiltonatape-basedautogradsystemYoucanreuseyourfavoritePythonpackagessuchasNumPy,SciPyandCythontoextendPyTorchwhenneeded.

PyTorch 是一个 Python 包,提供两个高级功能:

具有强大的 GPU 加速的张量计算(如 NumPy)

包含自动求导系统的的深度神经网络

1.1.4 对比 PyTorch 和 Tensorflow

没有好的框架,只有合适的框架, 这里有个简单的对比,所以这里就不详细再说了https://zhuanlan.zhihu.com/p/28636490 并且技术是发展的,这里的对比也不是绝对的,比如 Tensorflow 在 1.5 版的时候就引入了 Eager Execution 机制实现了动态图,PyTorch 的可视化,windows 支持,沿维翻转张量等问题都已经不是问题了。

1.1.5 再次总结

PyTorch 算是相当简洁优雅且高效快速的框架

设计追求最少的封装,尽量避免重复造轮子

算是所有的框架中面向对象设计的最优雅的一个,设计最符合人们的思维,它让用户尽可能地专注于实现自己的想法

大佬支持,与 google 的 Tensorflow 类似,FAIR 的支持足以确保 PyTorch 获得持续的开发更新

不错的的文档(相比 FB 的其他项目,PyTorch 的文档简直算是完善了,参考 Thrift),PyTorch 作者亲自维护的论坛 供用户交流和求教问题

入门简单

所以如果以上信息有吸引你的内容,那么请一定要读完这本书:)

1.2 Pytorch 环境搭建

PyTorch 的安装十分简单,根据 PyTorch 官网,对系统选择和安装方式等灵活选择即可。 这里以 anaconda 为例,简单的说一下步骤和要点。 国内安装 anaconda 建议使用清华或者中科大 [http://mirrors.ustc.edu.cn/help/anaconda.html] 镜像,快的不是一点半点。

1.2.1 安装 Pytorch

anaconda 安装完成后可以开始创建环境,这里以 win10 系统为例。打开 Anaconda Prompt

#pytorch为环境名,这里创建python3.6版。condacreate-npytorchpython=3.6#切换到pytorch环境activatepytorch#安装GPU版本,根据cuda版本选择cuda80,cuda92,如果cuda是9.0版,则不需要#直接condainstallpytorch-cpytorch即可#win下查看cuda版本命令nvcc-Vcondainstallpytorchcuda92-cpytorch#cpu版本使用#condainstallpytorch-cpu-cpytorch#torchvision是torch提供的计算机视觉工具包,后面介绍pipinstalltorchvision

需要说明的一点是如果使用清华源,可以直接添加 pytorch 源镜像去掉,并且去掉 - c pytorch这样才能使用镜像源。

验证输入 python 进入

importtorchtorch.__version__#得到结果'0.4.1'

1.2.2 配置 Jupyter Notebook

新建的环境是没有安装安装 ipykernel 的所以无法注册到 Jupyter Notebook 中,所以先要准备下环境

#安装ipykernelcondainstallipykernel#写入环境python-mipykernelinstall--namepytorch--display-name"PytorchforDeeplearning"

下一步就是定制 Jupyter Notebook

#切换回基础环境activatebase#创建jupyternotebook配置文件jupyternotebook--generate-config##这里会显示创建jupyter_notebook_config.py的具体位置

打开文件,修改

c.NotebookApp.notebook_dir=''默认目录位置c.NotebookApp.iopub_data_rate_limit=100000000这个改大一些否则有可能报错

1.2.3 测试

至此 Pytorch 的开发环境安装完成,可以在开始菜单中打开 Jupyter Notebook 在 New 菜单中创建文件时选择 Pytorch for Deeplearning创建 PyTorch 的相关开发环境了

1.2.4 问题解决

问题 1:启动 python 提示编码错误

删除 .python_history来源

问题 2 默认目录设置不起效

打开快捷方式,看看快捷方式是否跟这个截图一样,如果是则删除% USERPROFILE%改参数会覆盖掉 notebook_dir 设置,导致配置不起效

如果你还发现其他问题,请直接留言

1.3 PyTorch 深度学习:60 分钟快速入门 (官方)

本章为官方网站的 [Deep Learning with PyTorch: A 60 Minute Blitz] (https://pytorch.org/tutorials/beginner/deep_learning_60min_blitz.html) 的中文翻译,目前在网上看到所有中文翻译版本都已经过时了,所以才又从新翻译了一遍,确保与官方同步

目录

张量

Autograd: 自动求导本章是冲突的重灾区,建议阅读

神经网络

训练一个分类器

选读:数据并行处理 (多 GPU)

说明

本章中的所有图片均来自于 PyTorch 官网,版权归 PyTorch 所有.

声明:本文内容及配图由入驻作者撰写或者入驻合作网站授权转载。文章观点仅代表作者本人,不代表电子发烧友网立场。文章及其配图仅供工程师学习之用,如有内容侵权或者其他违规问题,请联系本站处理。 举报投诉
  • 深度学习
    +关注

    关注

    73

    文章

    5237

    浏览量

    119908
  • 开源项目
    +关注

    关注

    0

    文章

    36

    浏览量

    7097
  • pytorch
    +关注

    关注

    2

    文章

    761

    浏览量

    12831

原文标题:强推!《PyTorch中文手册》来了

文章出处:【微信号:AI_era,微信公众号:新智元】欢迎添加关注!文章转载请注明出处。

收藏 人收藏

    评论

    相关推荐

    TorchFix:基于PyTorch的代码静态分析

    TorchFix是我们最近开发的一个新工具,旨在帮助PyTorch用户维护健康的代码库并遵循PyTorch的最佳实践。首先,我想要展示一些我们努力解决的问题的示例。
    的头像 发表于 12-18 15:20 739次阅读

    pytorch模型转换需要注意的事项有哪些?

    什么是JIT(torch.jit)? 答:JIT(Just-In-Time)是组编译工具,用于弥合PyTorch研究与生产之间的差距。它允许创建可以在不依赖Python解释器的情况下运行的模型
    发表于 09-18 08:05

    如何往星光2板子里装pytorch

    如题,想先gpu版本的pytorch只安装cpu版本的pytorch,pytorch官网提供了基于conda和pip两种安装方式。因为咱是risc架构没对应的conda,而使用pip安装提示也没有
    发表于 09-12 06:30

    基于PyTorch AMD的解决方案

    2.0经验的力量PyTorch AMD的解决方案
    的头像 发表于 09-04 16:11 509次阅读

    如何加速生成2 PyTorch扩散模型

    加速生成2 PyTorch扩散模型
    的头像 发表于 09-04 16:09 820次阅读
    如何加速生成2 <b class='flag-5'>PyTorch</b>扩散模型

    使用PyTorch加速图像分割

    使用PyTorch加速图像分割
    的头像 发表于 08-31 14:27 487次阅读
    使用<b class='flag-5'>PyTorch</b>加速图像分割

    深度学习框架pytorch介绍

    深度学习框架pytorch介绍 PyTorch是由Facebook创建的开源机器学习框架,其中TensorFlow是完全基于数据流图的。它是一个使用动态计算图的框架,允许用户更灵活地定义和修改模型
    的头像 发表于 08-17 16:10 1136次阅读

    深度学习框架pytorch入门与实践

    深度学习框架pytorch入门与实践 深度学习是机器学习中的一个分支,它使用多层神经网络对大量数据进行学习,以实现人工智能的目标。在实现深度学习的过程中,选择一个适用的开发框架是非常关键
    的头像 发表于 08-17 16:03 1196次阅读

    如何将PyTorch模型与OpenVINO trade结合使用?

    无法确定如何转换 PyTorch 掩码 R-CNN 模型以配合OpenVINO™使用。
    发表于 08-15 07:04

    Pytorch模型转换为DeepViewRT模型时出错怎么解决?

    我最终可以在 i.MX 8M Plus 处理器上部署 .rtm 模型。 我遵循了 指南,我将 Pytorch 模型转换为 ONNX 模型,然后按照指南中的描述,我尝试将 ONNX 模型转换为量化
    发表于 06-09 06:42

    PyTorch教程4.1之Softmax回归

    电子发烧友网站提供《PyTorch教程4.1之Softmax回归.pdf》资料免费下载
    发表于 06-05 15:46 0次下载
    <b class='flag-5'>PyTorch</b>教程4.1之Softmax回归

    PyTorch教程4.6之分类中的泛化

    电子发烧友网站提供《PyTorch教程4.6之分类中的泛化.pdf》资料免费下载
    发表于 06-05 15:39 0次下载
    <b class='flag-5'>PyTorch</b>教程4.6之分类中的泛化

    PyTorch教程2.5之自动微分

    电子发烧友网站提供《PyTorch教程2.5之自动微分.pdf》资料免费下载
    发表于 06-05 11:38 0次下载
    <b class='flag-5'>PyTorch</b>教程2.5之自动微分

    PyTorch教程14.4之锚箱

    电子发烧友网站提供《PyTorch教程14.4之锚箱.pdf》资料免费下载
    发表于 06-05 11:22 0次下载
    <b class='flag-5'>PyTorch</b>教程14.4之锚箱

    PyTorch教程简介

    电子发烧友网站提供《PyTorch教程简介.pdf》资料免费下载
    发表于 06-02 14:12 11次下载
    <b class='flag-5'>PyTorch</b>教程简介