热门标签 | HotTags
当前位置:  开发笔记 > 后端 > 正文

10分钟快速入门PyTorch(0)

之前有很多小伙伴私信我说文章思想能看懂,但是pytorch的部分因为没有看过pytorch教程所以一脸懵逼。对此我也表示很无奈,既然大家不愿意去官网看教程,那么我就将我学习pyto

之前有很多小伙伴私信我说文章思想能看懂,但是pytorch的部分因为没有看过pytorch教程所以一脸懵逼。对此我也表示很无奈,既然大家不愿意去官网看教程,那么我就将我学习pytorch的经验写出来,一步一步从0开始让大家学会pytorch,教程比官网的更加简单,同时也增加了更多简单的例子让大家快速上手pytorch,愉快地开始炼丹。

什么?你还不知道pytorch是啥,快点去看看专栏里面的pytorch介绍吧。

推荐在电脑端阅读本篇文章。

环境配置

首先当然是需要安装pytorch了,目前pytorch只支持mac和linux,如果你的电脑是windows,装虚拟机或者双系统。如果想要愉快地炼丹,那么强烈推荐使用linux系统,因为所有的深度学习框架在linux上都有很好的支持,远远好于windows系统,而且linux也没有大家想象中的那么难学,目前linux系统的图形界面让大家上手的时候更加容易。

装完了系统之后就需要安装环境了,首推Anaconda,这是一个科学计算的集成环境,安装完这之后基本所需要的包都有了,而且还提供交互式的jupyter notebook,可以说为我们做实验提供了很好的交互。如果去Anaconda的官网下载速度比较慢,可以去清华镜像下载。

安装完Anaconda之后我们就可以安装pytorch了,进入主页,一步一步来就行了,如果要装GPU版的,需要cuda和cudnn,这个网上有很多教程,可以去看看,如果你只是为了快速上手玩玩pytorch,那么可以不用废时间装GPU版。

pytorch基础

装好了pytorch之后,正式进入我们的教程,pytorch基础部分,这个部分主要是介绍一下pytorch处理的对象以及操作。

Tensor

首先介绍里面最基本的操作对象,tensor

《10分钟快速入门PyTorch (0)》

tensor就是张量的英文,表示多维的矩阵,比如一维就是向量,二维就是一般的矩阵等等,pytorch里面处理的单位就是一个一个的tensor

可以显示的得到其大小

《10分钟快速入门PyTorch (0)》

这个和numpy很相似,同时tensor和numpy.array之间也可以相互转换

《10分钟快速入门PyTorch (0)》
《10分钟快速入门PyTorch (0)》

tensor的运算也很简单,一般的四则运算都是支持的

Variable

pytorch和numpy不一样的地方就来了,就是其提供了自动求导功能,也就是可以自动给你你要的参数的梯度,这个操作又另外一个基本元素提供,Variable

《10分钟快速入门PyTorch (0)》

本质上Variable和Tensor没有区别,不过Variabel会放入一个计算图,然后进行前向传播,反向传播以及自动求导

一个Variable里面包含着三个属性,data,grad和creator,其中creator表示得到这个Variabel的操作,比如乘法或者加法等等,grad表示方向传播的梯度,data表示取出这个Variabel里面的数据

《10分钟快速入门PyTorch (0)》
《10分钟快速入门PyTorch (0)》

这就是一个简单的计算图的例子

神经网络

前面讲了两个操作对象,最后讲一下pytorch里面的模型建立,模型的建立主要依赖于torch.nn,torch.nn包含这个所有神经网络的层的结构

《10分钟快速入门PyTorch (0)》

这就是构建所有神经网络的模板,不管你想构建卷积神经网络还是循环神经网络或者是生成对抗网络都依赖于这个结构

本文所有代码以及后续的教程代码都在github上,强烈推荐进入github下载全部代码进行学习

ok,这次介绍了安装环境,引入了基本的pytorch处理单元,相信大家对pytorch也有了一个基本了解,下节内容预告 线性回归和logistic回归

本文代码已经上传到了github 上

欢迎查看我的知乎专栏,深度炼丹

欢迎访问我的博客


推荐阅读
  • 2017年人工智能领域的十大里程碑事件回顾
    随着2018年的临近,我们一同回顾过去一年中人工智能领域的重要进展。这一年,无论是政策层面的支持,还是技术上的突破,都显示了人工智能发展的迅猛势头。以下是精选的2017年人工智能领域最具影响力的事件。 ... [详细]
  • 本文详细介绍了 TensorFlow 的入门实践,特别是使用 MNIST 数据集进行数字识别的项目。文章首先解析了项目文件结构,并解释了各部分的作用,随后逐步讲解了如何通过 TensorFlow 实现基本的神经网络模型。 ... [详细]
  • 《计算机视觉:算法与应用》第二版初稿上线,全面更新迎接未来
    经典计算机视觉教材《计算机视觉:算法与应用》迎来了其第二版,现已开放初稿下载。本书由Facebook研究科学家Richard Szeliski撰写,自2010年首版以来,一直是该领域的标准参考书。 ... [详细]
  • 机器学习核心概念与技术
    本文系统梳理了机器学习的关键知识点,涵盖模型评估、正则化、线性模型、支持向量机、决策树及集成学习等内容,并深入探讨了各算法的原理和应用场景。 ... [详细]
  • 新手指南:在Windows 10上搭建深度学习与PyTorch开发环境
    本文详细记录了一名新手在Windows 10操作系统上搭建深度学习环境的过程,包括安装必要的软件和配置环境变量等步骤,旨在帮助同样初入该领域的读者避免常见的错误。 ... [详细]
  • 浪潮AI服务器NF5488A5在MLPerf基准测试中刷新多项纪录
    近日,国际权威AI基准测试平台MLPerf发布了最新的推理测试结果,浪潮AI服务器NF5488A5在此次测试中创造了18项性能纪录,显著提升了数据中心AI推理性能。 ... [详细]
  • 图像分类算法的优化策略与实践
    本文探讨了《Bag of Tricks for Image Classification with Convolutional Neural Networks》论文中的多项技术,旨在通过具体实例和实验验证,提高卷积神经网络在图像分类任务中的性能。文章详细介绍了从模型训练加速、网络结构调整到训练参数优化等多个方面的改进方法。 ... [详细]
  • 吴恩达推出TensorFlow实践课程,Python基础即可入门,四个月掌握核心技能
    量子位报道,deeplearning.ai最新发布了TensorFlow实践课程,适合希望使用TensorFlow开发AI应用的学习者。该课程涵盖机器学习模型构建、图像识别、自然语言处理及时间序列预测等多个方面。 ... [详细]
  • 强人工智能时代,区块链的角色与前景
    随着强人工智能的崛起,区块链技术在新的技术生态中扮演着怎样的角色?本文探讨了区块链与强人工智能之间的互补关系及其在未来技术发展中的重要性。 ... [详细]
  • 本文探讨了图像标签的多种分类场景及其在以图搜图技术中的应用,涵盖了从基础理论到实际项目实施的全面解析。 ... [详细]
  • 如何用GPU服务器运行Python
    如何用GPU服务器运行Python-目录前言一、服务器登录1.1下载安装putty1.2putty远程登录 1.3查看GPU、显卡常用命令1.4Linux常用命令二、 ... [详细]
  • 一项来自Quantamagazine的最新研究揭示,借助人工智能的深度学习技术,特别是深度神经网络,科学家们能够在数学建模领域取得突破,显著提高了处理复杂系统中偏微分方程的速度与效率。 ... [详细]
  • 本文探讨了亚马逊Go如何通过技术创新推动零售业的发展,以及面临的市场和隐私挑战。同时,介绍了亚马逊最新的‘刷手支付’技术及其潜在影响。 ... [详细]
  • 随着5G、云计算、人工智能、大数据等新技术的广泛应用,人们的生活生产方式发生了深刻变化。从人际互联到万物互联,数据存储与处理需求激增,推动了数据与算力设施的发展。 ... [详细]
  • ICML2020: 利用贝叶斯元学习在全局关系图上实现小样本关系抽取
    本文介绍了加拿大蒙特利尔大学Mila研究所唐建教授团队在ICML2020上发布的一项研究,该研究探讨了如何利用全局关系图来探索句子间的新关系,并提出了一种创新的贝叶斯元学习方法。 ... [详细]
author-avatar
浪子烦恼猪_309
这个家伙很懒,什么也没留下!
PHP1.CN | 中国最专业的PHP中文社区 | DevBox开发工具箱 | json解析格式化 |PHP资讯 | PHP教程 | 数据库技术 | 服务器技术 | 前端开发技术 | PHP框架 | 开发工具 | 在线工具
Copyright © 1998 - 2020 PHP1.CN. All Rights Reserved | 京公网安备 11010802041100号 | 京ICP备19059560号-4 | PHP1.CN 第一PHP社区 版权所有