在 Raspberry Pi 4 上安装 PyTorch_树莓派如何查看是否装了pytorch-程序员宅基地

技术标签: python  raspberryPi  深度学习  树莓派  opencv  

介绍。

本页将指导您在64 位操作系统的 Raspberry Pi 4 上安装PyTorch 1.11.0或更早版本、TorchVisionLibTorchCaffe2 。
PyTorch 是专门为深度学习开发的软件库。它消耗了大量的 Pi 资源。您可以在 Raspberry Pi 4 上运行 PyTorch,但不要期待奇迹。它运行你的模型,如果不是太复杂的话,但它不能训练新模型。它也不能执行所谓的迁移学习。
PyTorch 在 Python 上运行。有可用的 C++ API,但我们尚未对其进行测试。如果您希望您的 PyTorch 模型在您的 Raspberry Pi 上快速运行,请考虑将您的模型导出到 ONNX。保存为 ONNX 模型后,您可以将其导入 ARM 友好的 C++ 框架,例如 ncnn 或 MNN。它将大大加快您的模型。
如果您的 Raspberry Pi 上有 Ubuntu,则Ubuntu 18.0420.04有特殊的编译轮。

提示。

我们经常会遇到这样的问题,如果我们有一个带有预装框架和深度学习示例的 Raspberry Pi 4 的 SD 图像
我们很高兴遵守这一要求。请在我们的GitHub页面上找到专门用于深度学习的完整可用的 Raspberry Pi 4。从我们的 GDrive 站点下载 zip 文件,解压缩并将图像闪存到 16 GB SD 卡上,然后尽情享受吧!
我们只有 Raspberry Pi 64 位操作系统的指南。随着 PyTorch 的发展,在简单的 32 位机器上构建它变得越来越困难。例如,JIT 跟踪 不适用于 32 位操作系统。 此外,今天我们的大多数访问者在他们的 Raspberry Pi 上使用 64 位操作系统来构建他们的深度学习模型,因为它更快、更健壮。
 我们讨论了两种安装,一种带有 Python 3 wheel 。另一种方法是从头开始构建。不幸的是,没有可用于 Raspberry Pi 4 的官方 pip3 wheel 。但是,为了您的方便,我们创建了这些轮并将它们放在GitHub 上。

版本检查。

在 Raspberry 64 位操作系统上安装 PyTorch 之前,请检查您的操作系统。运行命令 uname -a 并使用下面的屏幕转储验证您的版本。

您还需要使用命令gcc -v检查您的 C++ 编译器版本。它还必须是aarch64-linux-gnu版本,如屏幕截图所示。如果您有 64 位操作系统,但您的 gcc 版本与上面给出的不同,请使用最新版本重新安装整个操作系统。该指南可在此处找到:在 Raspberry Pi 4 上安装 64 位操作系统。因为我们要构建库,所以需要一个 64 位 C++ 编译器。即使你使用 Python 轮子,gcc 也会在幕后被调用。
同样重要的是,根据我们的说明安装后的 zram 交换大小超过 3 GB。只要您不从头开始构建 PyTorch,Less 就没有问题。

wheel安装

PyTorch 由 Ninja 构建。完成整个构建大约需要 3 个小时。我们已经在我们的 GitHub 页面上发布了这些wheel。随意使用这些。完成所有繁琐的工作后,现在只需几分钟即可在 Nano 上安装 PyTorch。对于顽固分子,完整的程序将在本手册后面介绍。
整个过程如下。wheel太大,无法在 GitHub 上存储,因此使用了 Google 驱动器。请确保您安装了最新的 pip3 和 python3 版本,否则 pip 可能会出现消息“ .whl is not a supported wheel on this platform ”。

Python检查。

检查您的 Python3 版本。每个版本都需要一个独特的wheel。树莓派 64 位操作系统使用 Python 3.7.3。所以需要下载torch-1.XY- cp37 - cp37m -linux_aarch64.whl。如果你有最新的 Raspberry Pi Bullseye OS,你的 Python 版本是 3.9.2。
毫无疑问,Python 版本会随着时间的推移而升级,您将需要一个不同的轮子。查看所有wheel的GitHub 页面

PyTorch1.11.0版本安装

# get a fresh start
sudo apt-get update
sudo apt-get upgrade
#install the dependencies (if not already onboard)
sudo apt-get install python3-pip libjpeg-dev libopenblas-dev libopenmpi-dev libomp-dev
#above 58.3.0 you get version issues
sudo -H pip3 install setuptools==58.3.0
sudo -H pip3 install Cython
#install gdown to download from Google drive
sudo -H pip3 install gdown

Buster OS
#download the wheel
gdown https://drive.google.com/uc?id=1gAxP9q94pMeHQ1XOvLHqjEcmgyxjlY_R
# install PyTorch 1.11.0
sudo -H pip3 install torch-1.11.0a0+gitbc2c6ed-cp37-cp37m-linux_aarch64.whl
# clean up
rm torch-1.11.0a0+gitbc2c6ed-cp37-cp37m-linux_aarch64.whl

or Bullseye OS
# download the wheel
gdown https://drive.google.com/uc?id=1ilCdwQX7bq72OW2WF26Og90OpqFX5g_-
# install PyTorch 1.11.0
sudo -H pip3 install torch-1.11.0a0+gitbc2c6ed-cp39-cp39-linux_aarch64.whl
# clean up
rm torch-1.11.0a0+gitbc2c6ed-cp39-cp39-linux_aarch64.whl

PyTorch1.10.0版本安装

# get a fresh start
sudo apt-get update
sudo apt-get upgrade
# install the dependencies (if not already onboard)
sudo apt-get install python3-pip libjpeg-dev libopenblas-dev libopenmpi-dev libomp-dev
# above 58.3.0 you get version issues
sudo -H pip3 install setuptools==58.3.0
sudo -H pip3 install Cython
# install gdown to download from Google drive
sudo -H pip3 install gdown

Buster OS
# download the wheel
gdown https://drive.google.com/uc?id=1y-X1UGC43xUfnycJcuDp7tlyFi8QHxvs
# install PyTorch 1.10.0
sudo -H pip3 install torch-1.10.0a0+git36449ea-cp37-cp37m-linux_aarch64.whl
# clean up
rm torch-1.10.0a0+git36449ea-cp37-cp37m-linux_aarch64.whl

or Bullseye OS
# download the wheel
gdown https://drive.google.com/uc?id=10zJmU1f7PoxN8ARZol4mtbwok4G23XKZ
# install PyTorch 1.10.0
sudo -H pip3 install torch-1.10.0a0+git36449ea-cp39-cp39-linux_aarch64.whl
# clean up
rm torch-1.10.0a0+git36449ea-cp39-cp39-linux_aarch64.whl

PyTorch1.9.0版本安装

# get a fresh start
sudo apt-get update
sudo apt-get upgrade
# install the dependencies (if not already onboard)
sudo apt-get install python3-pip libjpeg-dev libopenblas-dev libopenmpi-dev libomp-dev
# above 58.3.0 you get version issues
sudo -H pip3 install setuptools==58.3.0
sudo -H pip3 install Cython
# install gdown to download from Google drive
sudo -H pip3 install gdown

Buster OS
# download the wheel
gdown https://drive.google.com/uc?id=18KztAf3W_kqFYP2f9uqLj3HBdhoMvVe4
# install PyTorch 1.9.0
sudo -H pip3 install torch-1.9.0a0+gitd69c22d-cp37-cp37m-linux_aarch64.whl
# clean up
rm torch-1.9.0a0+gitd69c22d-cp37-cp37m-linux_aarch64.whl

or Bullseye OS
# download the wheel
gdown https://drive.google.com/uc?id=1p9Sp5YmCJwIkmQIWkpuIkE4NgeYPOr-U
# install PyTorch 1.9.0
sudo -H pip3 install torch-1.9.0a0+gitd69c22d-cp39-cp39-linux_aarch64.whl
# clean up
rm torch-1.9.0a0+gitd69c22d-cp39-cp39-linux_aarch64.whl

成功安装后,您可以使用以下命令检查 PyTorch。

版权声明:本文为博主原创文章,遵循 CC 4.0 BY-SA 版权协议,转载请附上原文出处链接和本声明。
本文链接:https://blog.csdn.net/weixin_41012767/article/details/124247281

智能推荐

esp32-cam Thonny 烧录以及通信-程序员宅基地

文章浏览阅读229次,点赞4次,收藏3次。链接:https://pan.baidu.com/s/1cBsrCJ_TATFsuVhVdr0VmA?IO1和GND不再短接。重新插拔一下,就可以了。

字符,字节和编码-程序员宅基地

文章浏览阅读39次。级别:中级摘要:本文介绍了字符与编码的发展过程,相关概念的正确理解。举例说明了一些实际应用中,编码的实现方法。然后,本文讲述了通常对字符与编码的几种误解,由于这些误解而导致乱码产生的原因,以及消除乱码的办法。本文的内容涵盖了“中文问题”,“乱码问题”。掌握编码问题的关键是正确地理解相关概念,编码所涉及的技术其实是很简单的。因此,阅读本文时需要慢读多想,多思考。引言“字符与编码”...

Linux 修改 ELF 解决 glibc 兼容性问题_glibc_private-程序员宅基地

文章浏览阅读1.1k次。Linux glibc 问题相信有不少 Linux 用户都碰到过运行第三方(非系统自带软件源)发布的程序时的 glibc 兼容性问题,这一般是由于当前 Linux 系统上的 GNU C 库(glibc)版本比较老导致的,例如我在 CentOS 6 64 位系统上运行某第三方闭源软件时会报:[root@centos6-dev ~]# ldd tester./tester: /lib64/libc.so.6: version `GLIBC_2.17' not found (required by._glibc_private

wxWidgets:常用表达式_wxwidget 正则表达式 非数字字符-程序员宅基地

文章浏览阅读282次。wxWidgets:常用表达式wxWidgets:常用表达式不同风味的正则表达式转义Escapes元语法匹配限制和兼容性基本正则表达式正则表达式字符名称wxWidgets:常用表达式一个正则表达式描述字符的字符串。这是一种匹配某些字符串但不匹配其他字符串的模式。不同风味的正则表达式POSIX 定义的正则表达式 (RE) 有两种形式:扩展正则表达式(ERE) 和基本正则表达式(BRE)。ERE 大致是传统egrep 的那些,而 BRE 大致是传统ed 的那些。这个实现增加了第三种风格:高级正则表达式_wxwidget 正则表达式 非数字字符

Java中普通for循环和增强for循环的对比_for循环10万数据需要时间-程序员宅基地

文章浏览阅读3.4k次,点赞5次,收藏11次。Java中普通for循环和增强for循环的对比_for循环10万数据需要时间

学习PCB设计前的知识扫盲_pcb端子设计基础知识-程序员宅基地

文章浏览阅读2.7k次,点赞13次,收藏97次。0.工厂制作PCB线路板流程1.PCB的结构铜层阻焊丝印本质(PCB画电路板到底在画什么)基础工艺指标2.PCB图中的元素元素布局布线叠层设计3.PCB的设计依据原理图原理图元件库4.PCB的设计流程——总结_pcb端子设计基础知识

随便推点

Qt Creator 安装 VLD_qtcreater vld-程序员宅基地

文章浏览阅读509次。Qt Creator 安装 VLD2015-04-14 16:52:55你好L阅读数 2325更多分类专栏:qt版权声明:本文为博主原创文章,遵循CC 4.0 BY-SA版权协议,转载请附上原文出处链接和本声明。本文链接:https://blog.csdn.net/lin_jianbin/article/details/45044459一、环境说明1、VLD内存..._qtcreater vld

Linux 开发环境工具[zt]-程序员宅基地

文章浏览阅读120次。软件集成开发环境(代码编辑、浏览、编译、调试)Emacs http://www.gnu.org/software/emacs/Source-Navigator 5.2b2 http://sourceforge.net/projects/sourcenavAnjuta http://anjuta.sourceforge...._linux上安装flawfinder

java小易——Spring_spring的beanfactory是hashmap吗-程序员宅基地

文章浏览阅读109次。SpringIoC DI AOPspring底层用的是ConcurrentHashMap解耦合:工厂模式:需要一个模板控制反转 IoC将原来有动作发起者(Main)控制创建对象的行为改成由中间的工厂来创建对象的行为的过程叫做IoC一个类与工厂之间如果Ioc以后,这个时候,动作发起者(Main)已经不能明确的知道自己获得到的对象,是不是自己想要的对象了,因为这个对象的创建的权利与交给我这个对象的权利全部转移到了工厂上了所用包:DOM4j解析XML文件lazy-init = _spring的beanfactory是hashmap吗

温故而知新:部分常见的图像数学运算处理算法的用途_图像处理算啊-程序员宅基地

文章浏览阅读1.3k次,点赞29次,收藏24次。本文将图像处理中常用的数学运算算法及其对图像的作用做了个汇总介绍,有助于图像处理时针对对应场景快速选择合适的数学算法。_图像处理算啊

EM Agent Fatal agent error: State Manager failed at Startup_check agent status retcode=1-程序员宅基地

文章浏览阅读1.1k次。EM 不定期异常宕机,问题重复出现,之前几次因为忙于其它事,无力兼顾,等回头处理时,发现EM已恢复正常。这次问题又重现,准备彻底解决,过程如下:1. 重新启动EM失败,报错:/u01/oracle/agent/core/12.1.0.5.0/bin/emctl status agentOracle Enterprise Manager Cloud Control 12c Relea_check agent status retcode=1

JVM常用调优参数 ——JVM篇_jvm调优-程序员宅基地

文章浏览阅读1.9w次,点赞50次,收藏366次。JVM常用性能调优参数详解​ 在学习完整个JVM内容后,其实目标不仅是学习了解整个JVM的基础知识,而是为了进行JVM性能调优做准备,所以以下的内容就是来说说JVM性能调优的知识。一、性能调优​ 性能调优包含多个层次,比如:架构调优、代码调优、JVM调优、数据库调优、操作系统调优等等。​ 架构调优和代码调优是JVM调优的基础,其中架构调优是对系统影响最大的。性能调优基本上按照以下步骤进行:明确优化目标发现性能瓶颈性能调优通过监控及数据统计工具获得数据确认是否达到目标二、何时进_jvm调优