Coursera 机器学习(by Andrew Ng)课程学习笔记(四)——神经网络(一)
来源:互联网 发布:自学编程需要多久 编辑:程序博客网 时间:2024/05/18 00:44
此系列为 Coursera 网站机器学习课程个人学习笔记(仅供参考)
课程网址:https://www.coursera.org/learn/machine-learning
参考资料:http://blog.csdn.net/scut_arucee/article/details/50144225
Week Four——Neural Network:Representation
一、前言
1.1 分类器
当我们用机器学习算法构造一个汽车识别器时,我们需要一个带标签的样本集,其中一部分是汽车,另一个部分可以是其他任何东西,然后我们将这些样本输入给学习算法,以训练一个分类器。训练完毕后,我们输入一幅新的图像,让分类器判定这是否为汽车。
1.1 神经网络的优势
对于复杂的非线性分类问题,当特征变量个数
而神经网络能很好的解决上面那种复杂的非线性分类问题。
二、神经网络的模型
2.1 神经元的模型
在一个神经网络里,我们将神经元模拟成一个逻辑单元(logistic unit),如下图黄色圆圈所示。
2.2 神经网络的模型
神经网络是一组神经元的组合,如下:
同样的,有时我们会加上偏置单元,它们的值永远为
2.3 神经网络的假设函数
为了解释神经网络具体的计算步骤,我们先来说明一些符号:
下面我们看一下隐藏层的神经元是怎么计算它们的值的:
如果神经网络第
如上图,
三、前向传播
下面我们引入符号
总之,对于第二层的第
我们用向量表示
根据上面的映射关系,
第
-
计算完
假设第
这种从输入层的激励开始向前传播到隐藏层,再传播到输出层的行为叫做前向传播(Forward Propagation)。
看了这么多,神经网络到底在做什么呢?
对于上面神经网络的模型那张图,如果不看输入层,只看后面两层:
写出计算公式:
忽略一些上下标,看上去很像逻辑回归。
神经网络所做的事情很像逻辑回归,但它不是使用
四、利用神经网络解决非线性问题
首先,我们先来看下面两张图:
如左图所示,
下面我们通过几个例子来看一下:
与运算(AND)
-
又由于logistic函数
故我们可以得到神经网络的输出和输入的关系:
可以看到,
或运算(OR)
画出真值表:
可以看到,
逻辑非(NOT)
画出真值表:
可以看到,
(NOT
按下图给神经网络分配权重:
可以自己画真值表验证。
同或运算(XNOR)
按下图给神经网络分配权重:
仔细观察,可知
通过真值表,我们会发现这个神经网络确实实现了同或运算(XNOR)。
通过这个例子我们可以看到,复杂函数可以通过一些简单函数的组合来实现。
比如神经网络的第二层可以计算输入层特征变量的函数;第三层可以以第二层为基础,计算更复杂的函数;第四层可以以第三层为基础计算比第三层还要复杂的函数,以此类推。神经网络运用更深的层数可以计算更复杂的函数,使其作为特征传递给最后一层的逻辑回归分类器,更准确地预测分类结果。
五.神经网络在多类别分类中的应用
在多类别分类中,我们的输出并不是一个数,而是一个向量,例如有一个三类别分类问题,我们要识别一个物体是行人,小汽车,摩托车还是卡车,则神经网络的模型可以如下图:
最后一层的输出层相当于有4个逻辑回归的分类器,
训练数据集是
- Coursera 机器学习(by Andrew Ng)课程学习笔记(四)——神经网络(一)
- Coursera 机器学习(by Andrew Ng)课程学习笔记(五)——神经网络(二)
- Andrew Ng机器学习课程笔记(四)之神经网络
- Coursera 机器学习(by Andrew Ng)课程学习笔记(二)——多元线性回归和正规方程
- Coursera 机器学习(by Andrew Ng)课程学习笔记(七)——支持向量机
- Coursera上Andrew Ng机器学习课程总结(一)
- Coursera 机器学习(by Andrew Ng)课程学习笔记(一)——简单的线性回归模型和梯度下降
- COURSERA 机器学习课笔记(by Prof. Andrew Ng)学习笔记(一)
- Coursera 机器学习(by Andrew Ng)课程学习笔记(三)——逻辑回归、过拟合与正则化
- Coursera机器学习(Andrew Ng)笔记:神经网络
- 机器学习:推荐系统(Andrew Ng Coursera课程)
- Coursera上Andrew Ng机器学习课程总结(二)
- Andrew NG 机器学习课程笔记(四)
- Andrew NG 机器学习课程笔记(一)
- Andrew Ng机器学习课程笔记(一)
- Andrew Ng机器学习入门学习笔记(四)之神经网络(一)
- Andrew NG机器学习课程笔记系列之——机器学习之神经网络模型-上(Neural Networks: Representation)
- Andrew NG机器学习课程笔记系列之——机器学习之神经网络模型-下(Neural Networks: Representation)
- C++ 基础知识七
- 卷积神经网络结构详解
- 1_python环境搭建以及开发工具安装
- hdu5984 Pocky(猜数学期望公式)
- java集合总结(二)-各类关系与注意事项
- Coursera 机器学习(by Andrew Ng)课程学习笔记(四)——神经网络(一)
- 初识阿里云2017年10月10日090449
- FullyGridLayoutManager
- Excel导出
- 安卓使用腾讯Bugly实现应用升级功能
- mysql语句
- 1.2.Qt添加程序图标
- Coursera 机器学习(by Andrew Ng)课程学习笔记(五)——神经网络(二)
- 解决ios下的微信打开的页面背景音乐无法自动播放