飞桨(PaddlePaddle)快速上手教程

文章目录

      • 飞桨(PaddlePaddle)快速上手教程
        • [1. 快速安装飞桨](#1. 快速安装飞桨)
        • [2. 导入飞桨](#2. 导入飞桨)
        • [3. 实践:手写数字识别任务](#3. 实践:手写数字识别任务)
          • [3.1 数据集定义与加载](#3.1 数据集定义与加载)
          • [3.2 模型组网](#3.2 模型组网)
          • [3.3 模型训练与评估](#3.3 模型训练与评估)
          • [3.4 模型推理](#3.4 模型推理)
        • [4. 总结](#4. 总结)

飞桨(PaddlePaddle)快速上手教程

本教程将引导您通过一个简单的手写数字识别任务来快速了解深度学习模型开发的流程,并掌握飞桨框架API的基本使用方法。

1. 快速安装飞桨

首先,确保您的Python版本在3.6到3.9之间,并安装了相应版本的pip。然后,使用以下命令安装飞桨:

bash 复制代码
python3 -m pip install paddlepaddle -i https://mirror.baidu.com/pypi/simple
2. 导入飞桨

在Python解释器中导入飞桨:

python 复制代码
import paddle
print(paddle.__version__)
3. 实践:手写数字识别任务
3.1 数据集定义与加载

使用飞桨内置的MNIST数据集进行训练和测试。

python 复制代码
from paddle.vision.datasets import MNIST
from paddle.vision.transforms import Normalize

transform = Normalize(mean=[127.5], std=[127.5], data_format='CHW')
train_dataset = MNIST(mode='train', transform=transform)
test_dataset = MNIST(mode='test', transform=transform)
3.2 模型组网

使用飞桨内置的LeNet模型。

python 复制代码
from paddle.vision.models import LeNet
model = LeNet(num_classes=10)
3.3 模型训练与评估

使用paddle.Model封装模型,并进行训练和评估。

python 复制代码
from paddle.Model import Model
from paddle.optimizer import Adam
from paddle.nn.losses import CrossEntropyLoss
from paddle.metric import Accuracy

model = Model(model)
model.prepare(optimizer=Adam(parameters=model.parameters(), learning_rate=0.001),
              loss=CrossEntropyLoss(),
              metrics=Accuracy())
model.fit(train_dataset, epochs=5, batch_size=64, verbose=1)

eval_result = model.evaluate(test_dataset)
print(eval_result)
3.4 模型推理

保存模型并加载进行推理。

python 复制代码
model.save('./output/mnist')
loaded_model = paddle.Model.load('./output/mnist')

# 从测试集中取出一张图片进行推理
img, label = test_dataset[0]
img_batch = paddle.expand_dims(img, axis=0).astype('float32')
pred_label = loaded_model.predict([img_batch])
true_label = label.numpy()[0]
pred_label = pred_label[0].numpy()

print(f'true label: {true_label}, pred label: {pred_label}')
4. 总结

通过以上步骤,您已经完成了一个深度学习任务,从数据加载到模型训练、评估和推理。飞桨提供了丰富的API来支持更复杂的任务和模型开发。您可以访问飞桨官网获取更多教程和案例,深入探索深度学习的世界。

相关推荐
星期天要睡觉3 分钟前
机器学习——CountVectorizer将文本集合转换为 基于词频的特征矩阵
人工智能·机器学习·矩阵
lxmyzzs5 分钟前
【图像算法 - 14】精准识别路面墙体裂缝:基于YOLO12与OpenCV的实例分割智能检测实战(附完整代码)
人工智能·opencv·算法·计算机视觉·裂缝检测·yolo12
什么都想学的阿超14 分钟前
【大语言模型 01】注意力机制数学推导:从零实现Self-Attention
人工智能·语言模型·自然语言处理
大千AI助手2 小时前
SWE-bench:真实世界软件工程任务的“试金石”
人工智能·深度学习·大模型·llm·软件工程·代码生成·swe-bench
天上的光3 小时前
17.迁移学习
人工智能·机器学习·迁移学习
后台开发者Ethan3 小时前
Python需要了解的一些知识
开发语言·人工智能·python
猫头虎3 小时前
猫头虎AI分享|一款Coze、Dify类开源AI应用超级智能体快速构建工具:FastbuildAI
人工智能·开源·prompt·github·aigc·ai编程·ai-native
重启的码农3 小时前
ggml 介绍 (6) 后端 (ggml_backend)
c++·人工智能·神经网络
重启的码农3 小时前
ggml介绍 (7)后端缓冲区 (ggml_backend_buffer)
c++·人工智能·神经网络