![深度学习应用与实战](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=1739275276-GnZECZavDcKqVNsYSZ1myXltQqUpCg2b-0-c89bd17fd4915e7cb1563b244c519c28)
3.实验步骤
创建torch_iris.py文件,并按照以下步骤编写代码完成本次实验。
1)数据处理
导入所需PyTorch库,加载鸢尾花数据集并进行处理。
![](https://epubservercos.yuewen.com/4F2D5D/26947460607597206/epubprivate/OEBPS/Images/45365_32_2.jpg?sign=1739275276-9MpKL8uTAdDMHpzOYNUB9h7Blsjs5x63-0-14264bc17cebea292a60247122e7d461)
2)模型构建
此步骤同样包含模型的构建、配置及训练。
![](https://epubservercos.yuewen.com/4F2D5D/26947460607597206/epubprivate/OEBPS/Images/45365_33_1.jpg?sign=1739275276-RVApRoSvdQwRDtWk7Wr3RSJgbe7bAf5P-0-0cdb356495afd33cbc6ba2c40581e374)
3)训练过程评估
![](https://epubservercos.yuewen.com/4F2D5D/26947460607597206/epubprivate/OEBPS/Images/45365_33_2.jpg?sign=1739275276-Xtazo2RHQAW4i5FIHlc4Xo3NoeBgCHw4-0-4cbfb5b51274ff8be224edf438ceb051)
在终端输入以下命令运行本实验。
![](https://epubservercos.yuewen.com/4F2D5D/26947460607597206/epubprivate/OEBPS/Images/45365_33_3.jpg?sign=1739275276-NYN4d3KKpNav882lvnLliRjFg3uQbV1M-0-4c846cfb3f64332c39ef8fd3efaef8bb)
输出内容较多,部分结果显示如下。
![](https://epubservercos.yuewen.com/4F2D5D/26947460607597206/epubprivate/OEBPS/Images/45365_33_4.jpg?sign=1739275276-pVohR7BRz2SGKf8J0ScI4IugiUUI8srQ-0-6b1bbd508579330d0e16ad23c4d9a9fa)
当学习率调整到0.1,训练轮数为100时,模型的准确率可以达到99%。PyTorch训练损失和测试损失可视化效果图如图1.13所示。从图1.13中可看出训练损失和测试损失差距值很小,模型没有出现过拟合问题。
![](https://epubservercos.yuewen.com/4F2D5D/26947460607597206/epubprivate/OEBPS/Images/45365_34_1.jpg?sign=1739275276-9Kr4dFIMYwEGFBH0ICbhQ5zDttFv3XOO-0-b09532ee382025558f79c1e3d252d71c)
图1.13 PyTorch训练损失和测试损失可视化效果图