Neural Networks part 1
程序员文章站
2022-07-14 22:30:12
...
吴恩达老师的机器学习真的是非常好的入门课程,这次我想写写做神经网络feedforward propagation algorithm时遇到的小bug:
这是一个非常简单的神经网络,用来进行手写数字的识别,开始我的预测函数其中计算部分是这样的:
bias=1; %偏置
%第1,2,3层
a{1}=[bias*ones(m,1),X];
a{2}=a{1}*Theta1';
a{3}=[bias*ones(m,1),a{2}]*Theta2';
%输出
[~,p]=max(a{3}, [], 2);
然后发现错误率居然达到了40%,我真的摸不到头脑,然后看别人的代码才发现我没有加**函数,或者说我的sigmoid是y=x; 下面是我改正之后:
bias=1; %偏置
%第1,2,3层
a{1}=[bias*ones(m,1),X];
a{2}=sigmoid(a{1}*Theta1');
a{3}=sigmoid([bias*ones(m,1),a{2}]*Theta2');
%输出
[~,p]=max(a{3}, [], 2);
这次debug感觉还不错。
上一篇: 初学Vue——part 1
推荐阅读
-
Web API---part2课程介绍+part1复习
-
C语言编程入门之--第五章C语言基本运算和表达式-part1
-
关系型数据库之MySQL基础总结_part1
-
iOS集成融云SDK part 1 小记
-
JavaScript Basics_Fundamentals Part 1_Variables
-
JS基础语法---函数练习part1---5个练习
-
详解Linux平台 Oracle 10gR2(10.2.0.5)RAC安装 Part1:准备工作
-
【JavaSE】多线程Part1(11)
-
Smobiler 4.4 更新预告 Part 1(Smobiler能让你在Visual Studio上开发APP)
-
ASP.NET Core 2.1 中的 HttpClientFactory (Part 1) - HttpClientFactory介绍