Neural Network(神经网络)实例--手写数字识别
来源:互联网 发布:萌妹系衣服淘宝店推荐 编辑:程序博客网 时间:2024/06/10 09:04
本实例整理自斯坦福机器学习课程课后练习ex3
本例是对一个手写体的数据集(0-9)进行分类,其最终实现的效果同上一个实例相同。只是两者在实现方式上有所不同。
In the previous part of this exercise, you implemented multi-class logistic regression to recognize handwritten digits. However, logistic regression cannot form more complex hypotheses as it is only a linear classifier. You could add more features (such as polynomial features) to logistic regression, but that can be very expensive to train.
1.Model Representation
本例中的手写体图片采用的是
2.Predict
本例中,第一层与第二层的权重(weights)即参数
训练数据X是一个
此时相当于一张图片,经过3层的神经网络模型的计算,就可以得出这张图片对应输出层的十个输出的概率了,然后选择概率值最大的输出,我们就可以知道该图片所对应的手写体数字了。
下面是为了更加形象化计算过程:
同之前One-vs-all中一样,
%循环5000次,即可预测出所有图片所对应的手写体for i = 1:m; a1 = X(i,:)'; % 401 by 1 z2 = Theta1*a1; % 25 by 401 * 401 by 1 a2 = sigmoid(z2);% 25 by 1 a2 = [1;a2]; % column vector , 26 by 1 z3 = Theta2 * a2; % 10 by 26 * 26 by 1 a3 = sigmoid(z3); % 10 by 1 [temp p(i)] = max(a3); end
其中,[temp p(i)] = max(a3),temp 用来保存最大的概率值,p(i)保存为其对应的数字。
如
max的用法戳此处
test = X(3454,:);[temp pp] = max(predict(Theta1, Theta2, test))y(3454,1) %与已知标记进行对比验证%%以下是输出结果temp = 6pp = 1%说明该图片为数字6的概率接近100%了ans = 6
%这是矢量化的形式,即同时一起计算,不用循环 a1 = X'; z2 = Theta1*a1; a2 = sigmoid(z2); a2 = [ones(1,m);a2]; z3 = Theta2 * a2; a3 = sigmoid(z3); [temp p] = max(a3); p = p(:);
- Neural Network(神经网络)实例--手写数字识别
- 卷积神经网络(cnn) 手写数字识别
- 卷积神经网络(cnn) 手写数字识别
- 神经网络实现手写数字识别(MNIST)
- CNN卷积神经网络手写数字识别实例及代码详解
- 使用神经网络识别手写数字
- 利用神经网络识别手写数字
- 初识神经网络--识别手写数字
- Neural Network实战:Java实现Back Propagation算法 + 手写数字识别
- 使用神经网络识别手写数字Using neural nets to recognize handwritten digits
- 《neural networks and deep learning》——使用神经网络识别手写数字
- Neural Networks and Deep Learning之中文翻译-第一章 用神经网络识别手写数字
- 神经网络:简单手写数字识别神经网络
- Introduction to neural network —— C语言实现BP神经网络识别数字
- 第一章 用神经网络识别手写数字(第一节 感知器)
- TensorFlow实战-mnist手写数字识别(卷积神经网络)
- 神经网络用于手写数字识别更新版
- 卷积神经网络CNN 手写数字识别
- [置顶]MVC3小技巧
- [置顶][收集]MVC3 HTML辅助方法集录
- [bzoj1458]士兵占领 最大流
- XTP中CXTPReportControl中合并单元格
- 为什么程序员适合做自由职业者
- Neural Network(神经网络)实例--手写数字识别
- Android事件分发机制以及滑动冲突处理
- 知识图谱4-【再看一篇论文《End-to-End Relation Extraction using LSTMs on Sequences and Tree Structures》】
- freemarker模板引擎学习一.简介+helloworld
- Java资源路径各种情况总结(classpath)
- eclipse导入工程时一直提示项目存在
- kafka调试常用命令
- localStorage存储代替GET方式
- Selenium3+Firefox+IntelliJ IDEA