![深度学习应用与实战](https://wfqqreader-1252317822.image.myqcloud.com/cover/47/47549047/b_47549047.jpg)
上QQ阅读APP看本书,新人免费读10天
设备和账号都新为新人
1.4.2 使用PyTorch实现鸢尾花分类
1.实验目标
(1)理解神经网络模型的构建方式及多分类模型处理操作方式。
(2)使用PyTorch完成神经网络的编写。
(3)模型运算过程中的参数处理。
2.实验环境
使用PyTorch实现的实验环境如表1.2所示。
表1.2 使用PyTorch实现的实验环境
![](https://epubservercos.yuewen.com/4F2D5D/26947460607597206/epubprivate/OEBPS/Images/45365_32_1.jpg?sign=1738848552-nwZB3fHGO1l2LkEx2Trh9TUmS2gb77gO-0-a38e2ae227343a12dc5d8696b29041c7)
3.实验步骤
创建torch_iris.py文件,并按照以下步骤编写代码完成本次实验。
1)数据处理
导入所需PyTorch库,加载鸢尾花数据集并进行处理。
![](https://epubservercos.yuewen.com/4F2D5D/26947460607597206/epubprivate/OEBPS/Images/45365_32_2.jpg?sign=1738848552-9B1vFlusvW4z59xB00jh10emBd0ZbHq1-0-551f2047e34858bef49f08203cc3bff4)
2)模型构建
此步骤同样包含模型的构建、配置及训练。
![](https://epubservercos.yuewen.com/4F2D5D/26947460607597206/epubprivate/OEBPS/Images/45365_33_1.jpg?sign=1738848552-8J1pjcp6zUnaV4nb0qA7cxeMukkTSzLX-0-1c0cc4a85cf94f159267ca5822c0242b)
3)训练过程评估
![](https://epubservercos.yuewen.com/4F2D5D/26947460607597206/epubprivate/OEBPS/Images/45365_33_2.jpg?sign=1738848552-pt6Igx55eSlBmGYEfqnJmZULkVeT1Wnf-0-fef6ae5a4d360521f46b3823398919e6)
在终端输入以下命令运行本实验。
![](https://epubservercos.yuewen.com/4F2D5D/26947460607597206/epubprivate/OEBPS/Images/45365_33_3.jpg?sign=1738848552-lw2KB76960C3MWJBKyzqd0Qt8igsqqL1-0-e745c83c2b35e5148c3ada3e8ffca059)
输出内容较多,部分结果显示如下。
![](https://epubservercos.yuewen.com/4F2D5D/26947460607597206/epubprivate/OEBPS/Images/45365_33_4.jpg?sign=1738848552-YpuNf2LGOOZ7uC77xZNHkrSoLmXph4wT-0-724b86b35dfb356226eb69e82179d8ef)
当学习率调整到0.1,训练轮数为100时,模型的准确率可以达到99%。PyTorch训练损失和测试损失可视化效果图如图1.13所示。从图1.13中可看出训练损失和测试损失差距值很小,模型没有出现过拟合问题。
![](https://epubservercos.yuewen.com/4F2D5D/26947460607597206/epubprivate/OEBPS/Images/45365_34_1.jpg?sign=1738848552-b1xvJc6RaDTANssanMxxyq9SkdYxrTwl-0-e9437ca19b20ff187c58926b83458af5)
图1.13 PyTorch训练损失和测试损失可视化效果图