| |
|
开发:
C++知识库
Java知识库
JavaScript
Python
PHP知识库
人工智能
区块链
大数据
移动开发
嵌入式
开发工具
数据结构与算法
开发测试
游戏开发
网络协议
系统运维
教程: HTML教程 CSS教程 JavaScript教程 Go语言教程 JQuery教程 VUE教程 VUE3教程 Bootstrap教程 SQL数据库教程 C语言教程 C++教程 Java教程 Python教程 Python3教程 C#教程 数码: 电脑 笔记本 显卡 显示器 固态硬盘 硬盘 耳机 手机 iphone vivo oppo 小米 华为 单反 装机 图拉丁 |
-> 人工智能 -> 在python中按吴恩达教学实现模型的建立 -> 正文阅读 |
|
[人工智能]在python中按吴恩达教学实现模型的建立 |
——本文仅个人理解向,不具很高的指导意义。 文章是为了实现图像分类与预测 1:获得数据集(已知信息): 即教学中的x。 //物种名称 因为输入的数据是数组,而名称是字符串。我们要构造字典,用数字来表示名称。 dict{名字:数字} //具体图像 因为已知的每一个文件夹是一个物种,那么我们需要将这些文件的路径和文章名称(标签)建立连续
如图所示就实现了路径与标签之间的关系 而吴恩达所讲述里面,数据应该是特征值一样的存在。我们去制作模型就是为了让机器能通过不同的特征值将未知的图像预测出来。(在这里是指输入图片,返回的标签和图片是对应的) 将路径打开获得图像,再对图像做处理获得图像的数据,这些图像数据和标签就是吴恩达中的x. 将x分为训练集和测试集,用训练集获得的假设函数用以测试集验证是否准确。 还可以增加验证集。 2:假设函数: 根据理解,这个模型应该是一个神经网络的形式,我们的假设函数就是很多的激活函数的作用下获得的。 我选择的是:paddle.nn.ReLU()????????#激活函数 具体这个激活函数在官方的库里有介绍,这里就不多说明。 3:代价函数: ?loss=paddle.nn.CrossEntropyLoss(),?#指定损失函数 4:关于梯度下降之类的,机械学习去不断更正假设函数里面的参数 ?parameters=model.parameters() 5:学习率: learning_rate=0.0001 6:评估: paddle.metric.Accuracy())?#指定评估方法 输入的数据通过模型算出的标签和实际标签是否相同,大量数据的准确率。通过评估可以去减小我们的学习率。 7:过拟合和正则化: 在评估操作后(学习率改变后)值仍不准确,那就可能是过拟合,可以通过正则化的方式去拟合。 paddle.nn.Dropout(0.2)???#正则化 至此已经将所有信息与吴恩达课程所学对应上了。 最后做一下建立模型的总结: 1:获得数据 2:建立模型(可以在已有模型上进行添加和更改,即预训练模式,可以加快模型的实现准确率) 3:优化(改变学习率,正则化……) 4:评估(测试集的准确率,是优化的依据) 5:预测 本文仅是理解过程,如果想具体实现,可以参考百度飞桨图像分类------第三天(实现蝴蝶图像分类)_iterhuiの博客-CSDN博客 |
|
|
上一篇文章 下一篇文章 查看所有文章 |
|
开发:
C++知识库
Java知识库
JavaScript
Python
PHP知识库
人工智能
区块链
大数据
移动开发
嵌入式
开发工具
数据结构与算法
开发测试
游戏开发
网络协议
系统运维
教程: HTML教程 CSS教程 JavaScript教程 Go语言教程 JQuery教程 VUE教程 VUE3教程 Bootstrap教程 SQL数据库教程 C语言教程 C++教程 Java教程 Python教程 Python3教程 C#教程 数码: 电脑 笔记本 显卡 显示器 固态硬盘 硬盘 耳机 手机 iphone vivo oppo 小米 华为 单反 装机 图拉丁 |
360图书馆 购物 三丰科技 阅读网 日历 万年历 2024年11日历 | -2024/11/27 1:32:05- |
|
网站联系: qq:121756557 email:121756557@qq.com IT数码 |