首页 > 其他分享 >PyTorch——从入门到精通:PyTorch简介与安装(最新版)【PyTorch系统学习】

PyTorch——从入门到精通:PyTorch简介与安装(最新版)【PyTorch系统学习】

时间:2024-11-14 08:46:01浏览次数:3  
标签:入门 Python Torch 学习 PyTorch Anaconda 最新版 安装

前言

        在这个由数据驱动的时代,深度学习已经成为了推动技术进步的核心力量。而PyTorch,作为当今最流行的深度学习框架之一,以其动态计算图、易用性和灵活性,受到了全球开发者和研究者的青睐。为了帮助更多的学习者和开发者掌握这一强大的工具,我决定在CSDN开设一个专注于PyTorch的学习专栏。

        这个专栏将是一个系统的学习资源,旨在从基础到高级,逐步引导读者入门并精通PyTorch的使用方法。在本专栏中,我将以PyTorch代码为基准,系统分享PyTorch的基础知识、核心概念、实际案例以及最佳实践。我们不仅会探讨如何使用PyTorch构建和训练神经网络,还会深入讨论如何优化模型、处理数据以及部署应用。此外,我还会定期更新最新的PyTorch特性和行业动态,确保内容的时效性和前瞻性。

        让我们一起开启这段激动人心的学习之旅,探索深度学习的无限可能。无论你是初学者还是有经验的开发者,我都期待与你在我的CSDN专栏 PyTorch:从入门到精通 中相遇!

PyTorch简介

        

        1. Torch 的起源

        Torch是一个开源的科学计算框架,最初由Facebook的人工智能研究团队(FAIR)以及其他团队共同开发,旨在满足深度学习和计算机视觉的需求。Torch的设计和实现基于Lua语言,专注于提供高效的数值计算能力,尤其是在矩阵操作和自动求导方面表现出色。Torch最早的版本大约在2002年就已经出现,但直到2010年,Torch版本才开始受到深度学习研究社区的广泛关注。

        Torch的主要优势包括:

  • 1. 高效性:它利用了高效的C和Fortran库(例如BLAS和ATLAS)进行数值计算。
  • 2. 灵活性:提供了众多灵活的工具,用于构建和实现机器学习模型。
  • 3. 开源性:代码完全开放,便于与全球的研究人员和开发者进行协作。

        然而,尽管Torch具有着上述的优势,但基于Lua语言开发的限制使其在深度学习领域的普及度相对较低,尤其是与已经成为机器学习领域主流语言的Python相比,而这大大限制了Torch在开发者中的使用范围。

        2.PyTorch — Torch的Python版本

        PyTorch 是基于 Torch 设计并开发的,作为Torch的Python版本,由 Soumith Chintala 等人于 2016 年创建。PyTorch的设计宗旨是继承Torch的灵活性,并结合Python语言的普及度、易用性以及其强大的生态系统。自推出以来,PyTorch迅速在深度学习研究和工业应用中崭露头角,成为最受欢迎的深度学习框架之一。

        PyTorch 的核心特点:

  • 动态图(Dynamic Computational Graph):与 TensorFlow 1.x 中的静态计算图不同,PyTorch 使用动态计算图(动态图)。这意味着计算图是在执行时动态生成的,而不是在运行之前就定义好,极大提高了灵活性,特别是对于调试、修改模型结构和研究新算法非常方便。

  • 深度集成 Python:PyTorch 的核心使用 Python 编写,并且与 Python 的数据处理库(如 NumPy、SciPy、Pandas 等)深度集成,使得它对 Python 开发者非常友好。

  • 强大的自动求导功能(Autograd):PyTorch 提供了自动求导机制,可以自动计算梯度,非常方便实现反向传播算法。

PyTorch安装

        在机器学习和深度学习领域,开发者经常需要使用一系列成熟的库和框架来构建和训练模型。手动安装这些库不仅耗时,而且常常会遇到版本兼容性和依赖关系的问题,这些问题可能导致环境配置失败或运行不稳定 。

        Anaconda 和 Miniconda 上述问题提供了一种高效的解决方案 。Anaconda 是一个全面的Python发行版,它预装了大量用于科学计算的库,如NumPy、Pandas、SciPy和Matplotlib,以及深度学习和机器学习框架,如TensorFlow和PyTorch 。Miniconda 则是Anaconda的轻量级版本,它只包含了Python和conda包管理器,用户可以根据自己的需求安装所需的库 。Miniconda的轻量级特性使其在需要快速部署Python环境,或者在磁盘空间有限、网络环境较差的情况下具有优势。而无论是Anaconda还是Miniconda,用户都可以轻松创建隔离的虚拟环境,这样可以为不同的项目配置独立的环境,避免package版本冲突 。

Step 1:安装Anaconda/miniconda

        这里以Anaconda为例,访问Anaconda官网,选择系统DownLoad,具体的安装版本可以参考Anaconda官网的相应介绍。        

 Step 2:检测是否安装成功

        安装完成以后在开始页面中,在最近添加和anaconda包中都能找到anaconda prompt。

Step3:创建虚拟环境 

        有些同学可能会对虚拟环境有些陌生,实际上,虚拟环境就相当于不同的工作间,因为处理任务的不同,在进行工作的环境配置也不相同,也不可能将不同用途的所有工作放在一个位置,这样不仅使得工具的管理更加困难,不能工具的使用之间还可能出现冲突。而虚拟环境的核心作用是为每个项目提供独立的依赖和配置,创建不同的工作间,从而避免不同项目之间的库版本冲突和依赖不兼容问题。通过隔离项目环境,开发者可以轻松管理和切换不同的依赖,确保项目的一致性和可重复性,同时支持不同的Python版本,简化协作和部署过程。通常这一过程,Linux在终端进行,Windows在Anaconda Prompt进行

        查看现存虚拟环境

        查看已经安装好的虚拟环境,操作指令如下:

conda env list

         创建新的虚拟环境

conda create -n env_name python==version 
# 注:将env_name 替换成你的环境的名称,version替换成对应的版本号,eg:3.8

Step4:安装PyTorch

        无论你的电脑是GPU还是CPU配置,都可以安装PyTorch并运行,区别在于GPU 版本的PyTorch能够提供更快的计算速度和更高的性能,特别是在处理大规模数据集和复杂模型时。GPU加速可以显著减少训练和推理时间,使得深度学习模型的开发和测试更加高效。然而,如果你的电脑只配置了CPU,PyTorch仍然可以运行,只是速度可能会慢一些,特别是在执行计算密集型任务时,因此在后续的学习实践中 ,可能会受到一些时间上的限制。

        比较简单的一种安装方法就是打开命令行,输入以下代码并回车:

pip install torch

        而由于PyTorch的安装版本与电脑的系统配置有着很大的关联,因此上述的简单安装方法并不推荐,另一种较为精准的安装方法是访问PyTorch官网,点击首页的Get started .

         然后在以下页面选择你的电脑配置,官网会自动给你对应的Command命令(Run this Command),将这段命令复制到命令行并回车即可。

 Step5:检测PyTorch是否安装成功

        打开任意空白Python文件,如.py 或.ipynb文件,输入以下代码并运行:

import torch

        若代码正确运行则已经安装成功~

感谢阅读,希望对你有所帮助~

标签:入门,Python,Torch,学习,PyTorch,Anaconda,最新版,安装
From: https://blog.csdn.net/m0_74420622/article/details/143757671

相关文章

  • 当警察,需要什么证书?(非常详细),零基础入门到精通,看这一篇就够了
    前言近日,浙江公安招聘网络安全技术特殊职位15名、电子物证特殊职位12名,报考条件中的证书值得网安从业者关注。经常说,证书是加分项,也是门槛,就和学历一样,需要用到时,短时间也拿不到,可能错失重要的机会。或许机会就这一次,错过了,以后不会再有了。证书并非越多越好,关键在于精和......
  • 深度学习 PyTorch 中的 logits 和交叉熵损失函数
    在深度学习中,理解损失函数是训练模型的关键一步。在分类任务中,交叉熵损失函数是最常用的损失函数之一。本文将详细解释PyTorch中的logits、交叉熵损失函数的工作原理,并展示如何调整张量的形状以确保计算正确的损失。什么是logits?logits是模型输出的未归一化预测值,通常......
  • 入门
    软件开发流程:先有用户需求产品设计和架构设计开发编码实现交付用户使用开发自测容易出现思维定式,比如我代码里面写了哪些业务,哪些判断,我就去验证哪些,没有写的话就不去验证.另外,有些关键的数据需要专业的测试技术才能验证出来,开发者自测也会受到技术......
  • C++零基础入门&趣味学信息学奥赛_开发环境安装
    Arduino软件安装,安装树莓派Pico开发板及上传Pico固件目录1.安装Windows驱动程序1.1.下载安装arduino软件:1.2.安装开发板Pico1.3.上传Arduino兼容的Pico固件1.安装Windows驱动程序                                        ......
  • HarmonyOS Next 入门实战 - 创建项目、主题适配
    ​开发一个简单的demo,其中涉及一些鸿蒙应用开发的知识点,其中涉及导航框架,常用组件,列表懒加载,动画,深色模式适配,关系型数据库等内容,在实践中学习和熟悉鸿蒙应用开发。​​​​首先下载并安装DevEcoStudio开发环境,下载完成后按照提示安装即可,过程不在多说。DevEcoStudio-Harmo......
  • 【自动驾驶-感知】CenterNet与CenterFusion融合目标检测的目标检测模型实战代码-基于P
    【自动驾驶-感知】CenterNet与CenterFusion融合目标检测的目标检测模型实战代码一.CenterNet目标检测模型1.中心点热力图2.物体尺寸回归3.分类任务4.损失函数二、融合目标检测CenterFusion算法原理三.实现案例与代码数据集与实验环境数据预处理与增强模型定义......
  • 《MyBatis-Plus 代码生成器基础入门》
    1.概念介绍MyBatis-Plus是一个MyBatis的增强工具,旨在简化开发、提高效率。它在MyBatis的基础上只做增强不做改变,为简化开发、提高效率而生。MyBatis-Plus提供了代码生成器功能,可以快速地根据数据库表结构生成Entity(实体类)、Mapper(映射器接口)、Service(服务层接口及其实......
  • libcurl.net入门使用
    libcurl.net入门使用关于libcurl.net一个引用libcurl.dll并封装为.NET使用的Curl库,方便在.NET应用程序里面执行Curl命令,没有其他库依赖,只是对libcurl.dll的封装和引用。在大多数情况下,我们可以或者比较容易获取Web请求的Curl格式的请求内容,因此该库可以比较方便地对已知Curl命......
  • 红客入门教程,零基础入门到精通,收藏这篇就够了
    渗透测试是门技术,也是一门艺术。参考书籍《欺骗的艺术》《入侵的艺术》《社会工程学攻击1》《社会工程学攻击2》这门技术(艺术)一开始也不是每个人都会的,正所谓没有人一出生就会走路,从不懂到入门到深谙,一步步慢慢来,每个人都是这样;但是在这个过程中,思路无疑是最重要的,没有做......
  • 网络安全工程师就业前景如何?好就业吗?零基础入门到精通,收藏这篇就够了
    随着互联网的飞速发展,网络安全问题日益严重,网络安全工程师作为守护信息安全的中坚力量,其重要性愈加凸显。那么,网络安全工程师的就业前景如何?是否容易就业?本文将详细探讨网络安全工程师的就业前景、市场需求以及职业发展的多方面因素,为有意从事这一职业的你提供全面的参考。......