0

0

淄博烧烤爆火!基于 PaddleX 实现常用香料分类

P粉084495128

P粉084495128

发布时间:2025-07-22 10:01:59

|

858人浏览过

|

来源于php中文网

原创

本文介绍基于PaddleX开发常用香料分类模型的流程。先因淄博烧烤爆火,提及在家DIY烧烤时香料识别的需求,接着说明用MobileNetV2模型,步骤包括安装PaddleX、解压数据集、配置GPU、定义图像处理流程和数据集,再进行模型训练与预测,最后提到还可使用百度EasyDL开发。

☞☞☞AI 智能聊天, 问答助手, AI 智能搜索, 免费无限量使用 DeepSeek R1 模型☜☜☜

淄博烧烤爆火!基于 paddlex 实现常用香料分类 - php中文网

大学生特种兵,快来淄博吃烧烤啦!

近期,随着淄博烧烤的爆火,越来越多的人选择去淄博旅游、吃烧烤,在五一期间,客流量更是远远超过了淄博旅游接待最大容量。

淄博烧烤爆火!基于 PaddleX 实现常用香料分类 - php中文网

为了应对激增的客流量,淄博市加大了旅游接待容量,但在五一期间仍然难以满足游客需求。据了解,淄博市的许多景区和酒店在五一期间也加班加点地提供服务,以确保游客能够有一个愉快的旅行体验。同时,一些有影响力的博主、网红也在社交媒体上呼吁大家文明旅游,避免人流拥挤和垃圾乱扔等不良行为,为淄博市的旅游形象贡献一份力量。

尽管面临巨大的挑战,淄博市依然坚定地推进旅游业的发展,通过不断提升服务质量和配套设施,努力满足游客的需求。相信在各方的共同努力下,淄博市的旅游业一定能够迎来更加繁荣的明天。

但是,烧烤香料种类繁多,如果我们想在家里“DIY”的话,面对如此纷繁复杂的香料类别,很多烹饪新手在使用香料的时候会感觉无从下手,因此通过人工智能来实现香料的识别可以为我们的生活提供极大的方便。那么,我们基于PaddleX开发一款可以进行常用香料分类的模型,就可以大大提高我们的烹饪效率

数据集介绍

数据来源于本开发者(哈密不是瓜)的公开数据集,其中包括五种香料类型。

淄博烧烤爆火!基于 PaddleX 实现常用香料分类 - php中文网        

MobileNetV2简介

MobileNetV2是一个图像分类模型,其是基于深度分离卷积和倒置残差结构的网络,能更好地匹配移动和嵌入式设备。本文档在一个小数据集上展示了如何通过PaddleX进行训练和预测。

1. 安装PaddleX

In [1]
#paddlex 2.0.0 的版本不稳定,所以我们选择使用paddlex 1.3.10的版本 ! pip install "paddlex==1.3.10" -i https://mirror.baidu.com/pypi/simple
   

2. 解压常用香料分类数据集

In [3]
!unzip -oq /home/aistudio/xiangliao.zip
   

3. 模型训练

3.1 配置GPU

In [4]
# 设置使用0号GPU卡(如无GPU,执行此代码后仍然会使用CPU训练模型)import matplotlib
matplotlib.use('Agg') 
import os
os.environ['CUDA_VISIBLE_DEVICES'] = '0'import paddlex as pdx
   

3.2 定义图像处理流程transforms

定义数据处理流程,其中训练和测试需分别定义,训练过程包括了部分测试过程中不需要的数据增强操作,如在本示例中,训练过程使用了RandomCrop和RandomHorizontalFlip两种数据增强方式,更多图像预处理流程transforms的使用可参见paddlex.cls.transforms。

In [5]
from paddlex.cls import transforms
train_transforms = transforms.Compose([
    transforms.RandomCrop(crop_size=224),
    transforms.RandomHorizontalFlip(),
    transforms.Normalize()
])
eval_transforms = transforms.Compose([
    transforms.ResizeByShort(short_size=256),
    transforms.CenterCrop(crop_size=224),
    transforms.Normalize()
])
   

3.3 定义数据集Dataset

分类使用ImageNet格式的数据集,因此采用pdx.datasets.ImageNet来加载数据集,该接口的介绍可参见文档paddlex.datasets.ImageNet。

OpenArt
OpenArt

在线AI绘画艺术图片生成器工具

下载
In [7]
train_dataset = pdx.datasets.ImageNet(
    data_dir='xiangliao/xiangliao',
    file_list='xiangliao/xiangliao/train_list.txt',
    label_list='xiangliao/xiangliao/labels.txt',
    transforms=train_transforms,
    shuffle=True)
eval_dataset = pdx.datasets.ImageNet(
    data_dir='xiangliao/xiangliao',
    file_list='xiangliao/xiangliao/val_list.txt',
    label_list='xiangliao/xiangliao/labels.txt',
    transforms=eval_transforms)
   

3.4 模型开始训练

使用本数据集在P40上训练。 更多训练模型的参数可参见文档paddlex.cls.MobileNetV2。 模型训练过程每间隔save_interval_epochs轮会保存一次模型在save_dir目录下,同时在保存的过程中也会在验证数据集上计算相关指标,具体相关日志参见文档。

AIStudio使用VisualDL查看训练过程中的指标变化

  1. 点击左边菜单图标的『可视化』;
  2. 设置logdir,logdir的路径为训练代码中save_dir指定的目录下的vdl_log目录,例如output/mobilenetv2/vdl_log
  3. 点击下方『启动VisualDL服务按钮』,再『打开VisualDL』即可
In [8]
num_classes = len(train_dataset.labels)
model = pdx.cls.MobileNetV2(num_classes=num_classes)
model.train(num_epochs=10,
            train_dataset=train_dataset,
            train_batch_size=32,
            eval_dataset=eval_dataset,
            lr_decay_epochs=[4, 6, 8],
            save_interval_epochs=1,
            learning_rate=0.025,
            save_dir='output/mobilenetv2',
            use_vdl=True)
   

4. 模型预测

此处请在AIStudio Notebook页面的右上角菜单,选择重启执行器,以释放显存,重新加载训练好的模型

In [49]
import paddlex as pdximport matplotlib.pyplot as plt
model = pdx.load_model('output/mobilenetv2/best_model')
image_name = 'ziran.jpg'#使用事先准备好的孜然图片进行预测result = model.predict(image_name)print("Predict Result:", result)#根据原始训练配置,最后模型效果在准确率在93%以上
   

5. 彩蛋

除了使用PaddleX全流程工具开发本项目,还可以使用百度EasyDL的文心大模型进行开发,大家快去试试吧!

EasyDL官网:https://ai.baidu.com/easydl/?track=cp:aipinzhuan|pf:pc|pp:EasyDL|pu:title|ci:|kw:10091801

EasyDL相关课程:https://aistudio.baidu.com/aistudio/topic/EasyDL

EasyDL开发流程图

淄博烧烤爆火!基于 PaddleX 实现常用香料分类 - php中文网        

模型校验效果图

淄博烧烤爆火!基于 PaddleX 实现常用香料分类 - php中文网        

相关专题

更多
硬盘接口类型介绍
硬盘接口类型介绍

硬盘接口类型有IDE、SATA、SCSI、Fibre Channel、USB、eSATA、mSATA、PCIe等等。详细介绍:1、IDE接口是一种并行接口,主要用于连接硬盘和光驱等设备,它主要有两种类型:ATA和ATAPI,IDE接口已经逐渐被SATA接口;2、SATA接口是一种串行接口,相较于IDE接口,它具有更高的传输速度、更低的功耗和更小的体积;3、SCSI接口等等。

987

2023.10.19

PHP接口编写教程
PHP接口编写教程

本专题整合了PHP接口编写教程,阅读专题下面的文章了解更多详细内容。

42

2025.10.17

人工智能在生活中的应用
人工智能在生活中的应用

人工智能在生活中的应用有语音助手、无人驾驶、金融服务、医疗诊断、智能家居、智能推荐、自然语言处理和游戏设计等。本专题为大家提供人工智能相关的文章、下载、课程内容,供大家免费下载体验。

394

2023.08.17

人工智能的基本概念是什么
人工智能的基本概念是什么

人工智能的英文缩写为AI,是研究、开发用于模拟、延伸和扩展人的智能的理论、方法、技术及应用系统的一门新的技术科学;该领域的研究包括机器人、语言识别、图像识别、自然语言处理和专家系统等。本专题为大家提供相关的文章、下载、课程内容,供大家免费下载体验。

287

2024.01.09

人工智能不能取代人类的原因是什么
人工智能不能取代人类的原因是什么

人工智能不能取代人类的原因包括情感与意识、创造力与想象力、伦理与道德、社会交往与沟通能力、灵活性与适应性、持续学习和自我提升等。本专题为大家提供相关的文章、下载、课程内容,供大家免费下载体验。

619

2024.09.10

Python 人工智能
Python 人工智能

本专题聚焦 Python 在人工智能与机器学习领域的核心应用,系统讲解数据预处理、特征工程、监督与无监督学习、模型训练与评估、超参数调优等关键知识。通过实战案例(如房价预测、图像分类、文本情感分析),帮助学习者全面掌握 Python 机器学习模型的构建与实战能力。

32

2025.10.21

http与https有哪些区别
http与https有哪些区别

http与https的区别:1、协议安全性;2、连接方式;3、证书管理;4、连接状态;5、端口号;6、资源消耗;7、兼容性。本专题为大家提供相关的文章、下载、课程内容,供大家免费下载体验。

1590

2024.08.16

ip地址修改教程大全
ip地址修改教程大全

本专题整合了ip地址修改教程大全,阅读下面的文章自行寻找合适的解决教程。

86

2025.12.26

压缩文件加密教程汇总
压缩文件加密教程汇总

本专题整合了压缩文件加密教程,阅读专题下面的文章了解更多详细教程。

50

2025.12.26

热门下载

更多
网站特效
/
网站源码
/
网站素材
/
前端模板

精品课程

更多
相关推荐
/
热门推荐
/
最新课程
React 教程
React 教程

共58课时 | 3万人学习

Pandas 教程
Pandas 教程

共15课时 | 0.9万人学习

ASP 教程
ASP 教程

共34课时 | 2.9万人学习

关于我们 免责申明 举报中心 意见反馈 讲师合作 广告合作 最新更新
php中文网:公益在线php培训,帮助PHP学习者快速成长!
关注服务号 技术交流群
PHP中文网订阅号
每天精选资源文章推送

Copyright 2014-2025 https://www.php.cn/ All Rights Reserved | php.cn | 湘ICP备2023035733号