当前位置: 首页 > news >正文

第五十二回 戴宗二取公孙胜 李逵独劈罗真人-飞桨AI框架安装和使用示例

吴用说只有公孙胜可以破法术,于是宋江请戴宗和李逵去蓟州。两人听说公孙胜的师傅罗真人在九宫县二仙山讲经,于是到了二仙山,并在山下找到了公孙胜的家。

两人请公孙胜去帮助打高唐州,公孙胜说听师傅的。罗真人说出家人不管闲事,不同意公孙胜下山。晚上李逵偷偷摸进罗真人的屋里,一斧头砍在他的脑门上。出了门,又砍了一个道童。

第二天,李逵等三人上山,又看到了罗真人。罗真人质问李逵,为什么用斧子劈我,还杀了我一个道童? 罗真人用法力把李逵吹到蓟州府厅堂,被当作妖怪当场拿下。李逵被泼了一身屎尿,重重打了一顿,然后关入大牢。李逵在牢里说自己是罗真人的亲随直日神将,节级、牢子等倒是好吃好喝的供着他。

李逵说自己是罗真人的亲随直日神将,头脑很灵活啊。当前人工智能也越来越聪明,开始进入了爆发期,学AI,从现在开始。

 飞桨AI框架安装和使用示例

飞桨PaddlePaddle是非常流行的国产AI框架,让我们一起来动手实践吧!

安装

飞桨安装参考页面:https://www.paddlepaddle.org.cn/install/quick?docurl=/documentation/docs/zh/install/pip/linux-pip.html

在这个安装页面,选好操作系统、安装方式和计算平台,系统会给出一条指令,类似:

python -m pip install paddlepaddle-gpu==2.6.0.post120 -f https://www.paddlepaddle.org.cn/whl/linux/mkl/avx/stable.html


执行这条安装指令即可。


编译安装

如果安装页面里没有找到合适的安装文件,可以采用编译安装的方法,编译的方法参考官网,基本步骤是:


下载源码

git clone https://github.com/PaddlePaddle/Paddle.git

然后编译安装:

cd Paddle# 如果要使用较稳定的版本编译,可切换到 release2.3 分支下:# git checkout release/2.3# 进行 Wheel 包的编译,请创建并进入一个叫 build 的目录下mkdir build && cd build# 链接过程中打开文件数较多,可能超过系统默认限制导致编译出错,设置进程允许打开的最大文件数:ulimit -n 4096# 执行 cmake,完成编译
cmake .. -DPY_VERSION=3.7 \-DCMAKE_BUILD_TYPE=Release \-DWITH_GPU=OFF \-DWITH_XPU=ON \-DON_INFER=ON \-DWITH_PYTHON=ON \-DWITH_AVX=ON \-DWITH_MKL=ON \-DWITH_MKLDNN=ON \-DWITH_XPU_BKCL=ON \-DWITH_DISTRIBUTE=ON \-DWITH_NCCL=OFFmake -j$(nproc)

编译成功后,使用pip安装,如:

pip install paddlepaddle-0.0.0-cp38-cp38-linux_riscv64.whl

然后输入python3进入交互界面,执行验证命令:

import paddle
paddle.utils.run_check()

如果输出:PaddlePaddle is installed successfully!

就证明安装好了飞桨。

飞桨简单示例

飞桨的特点是单机多卡和多机多卡训练非常方便,比如单机多卡只需要多一句话`dist.spawn(train)`即可。下面是一个使用lenet模型,Mnist数据集进行训练的例子,这个模型和数据集都比较小,更适合做演示:

import paddle
from paddle.vision.transforms import ToTensor
import paddle.distributed as disttrain_dataset = paddle.vision.datasets.MNIST(mode='train', transform=ToTensor())
test_dataset = paddle.vision.datasets.MNIST(mode='test', transform=ToTensor())
lenet = paddle.vision.models.LeNet()# Mnist继承paddle.nn.Layer属于Net,model包含了训练功能
model = paddle.Model(lenet)# 设置训练模型所需的optimizer, loss, metric
model.prepare(paddle.optimizer.Adam(learning_rate=0.001, parameters=model.parameters()),paddle.nn.CrossEntropyLoss(),paddle.metric.Accuracy(topk=(1, 2)))
def train():# 启动训练model.fit(train_dataset, epochs=1, batch_size=64, log_freq=400)# 启动评估
#     model.evaluate(test_dataset, log_freq=20, batch_size=64)if __name__ == '__main__':# spawn自适应支持单机单卡和单机多卡训练dist.spawn(train)

可以切换数据集和模型,比如数据集换成Cifar10 ,模型可以用ResNet18。

改成这样:

train_dataset = paddle.vision.datasets.Cifar10(mode='train', transform=ToTensor())
test_dataset = paddle.vision.datasets.Cifar10(mode='test', transform=ToTensor())
# lenet = paddle.vision.models.LeNet()
resnet = paddle.vision.models.resnet18()
# model = paddle.Model(lenet)
model = paddle.Model(resnet)

戴宗苦苦求罗真人放过李逵,罗真人说李逵是天杀星,我也不敢逆天去杀了此人,只是磨练一下他罢了。然后罗真人召唤了一名黄巾力士,把李逵带回来了。

戴宗再求,说我们来了几天了,高唐那边事情紧急,请真人放公孙胜去帮忙。罗真人说,我本来不想让他去,看你们这么讲义气就同意他去。我有几句后,公孙胜要记住。

欲知后事如何,且听下回分解。

http://www.lryc.cn/news/313228.html

相关文章:

  • CSAPP-程序的机器级表示
  • TCP传输收发
  • OJ习题之——圆括号编码
  • Android耗电分析之Battery Historian工具使用
  • vue el-avatar 使用require提示无法找到图片
  • 深入理解 C# 中的 Task:异步编程的利器
  • YOLOv9电动车头盔佩戴检测,详细讲解模型训练
  • OpenStack之Nova
  • 虽说主业搞前端,看到如此漂亮的网页UI,也是挪不开眼呀。
  • 嵌入式学习第二十六天!(网络传输:TCP编程)
  • 【LeetCode】升级打怪之路 Day 14:二叉树的遍历
  • [Unity实战]使用NavMeshAgent做玩家移动
  • 官网:随便搞个?那不如不搞,搞不好就给公司减分了。
  • Ansible 基础入门
  • 讨论:5万官网是建站界的劳斯莱斯了吧,到了软件开发领域呢?
  • 手写分布式配置中心(三)增加实时刷新功能(短轮询)
  • 【RabbitMQ】WorkQueue
  • 国内免费好用 Chat GPT推荐
  • 基于springboot实现在线考试系统项目【项目源码+论文说明】
  • golang中go build 后读取配置文件
  • 为raspberrypi编译bpftrace调试工具
  • 分段线性化问题探析
  • 从零学算法2917
  • [HackMyVM] 靶场 Wave
  • 云渲染平台都开始涨价了?2024年性价比高的云渲染平台推荐
  • 搜索-BFS Meteor Shower S(流星雨)
  • RabbitMQ实战:Springboot集成RabbitMQ并验证五种消息模型
  • 配置与管理防火墙
  • 【SpringBoot】-- 实现本地文件/图片上传到服务器生成url地址
  • 计算机基础专升本笔记十四-计算机网络基础(一)