3. Model Representation I

1

神经网络是在模仿大脑中的神经元或者神经网络时发明的。因此,要解释如何表示模型假设,我们不妨先来看单个神经元在大脑中是什么样的。

我们的大脑中充满了如上图所示的这样的神经元,神经元是大脑中的细胞。其中有两点值得我们注意,一是神经元有像这样的细胞主体(Nucleus),二是神经元有一定数量的输入神经和输出神经。这些输入神经叫做树突(Dendrite),可以把它们想象成输入电线,它们接收来自其他神经元的信息。神经元的输出神经叫做轴突(Axon),这些输出神经是用来给其他神经元传递信号或者传送信息的。

简而言之,神经元是一个计算单元,它从输入神经接受一定数目的信息,并做一些计算,然后将结果通过它的轴突传送到其他节点或者大脑中的其他神经元。

下面是一组神经元的示意图:


神经元利用微弱的电流进行沟通。这些弱电流也称作动作电位,其实就是一些微弱的电流。所以如果神经元想要传递一个消息,它就会就通过它的轴突发送一段微弱电流给其他神经元。

2

上图中,黄色的圆圈就代表了一个神经元,X为输入向量,θ 代表神经元的权重(实际上就是我们之前所说的模型参数),hθ (X)代表激励函数(在神经网络术语中,激励函数只是对类似非线性函数g(z)的另一个术语称呼,g(z)等于1除以1加e的-z次方)。

实际上,你可以这样理解,神经元就是权重θ。

当讲输入送进神经元后,经计算(实际上就是XTθ )会有一个输出,这个输出再送入激励函数中,便得到了神经元的真实输出。

注意:当我们绘制一个神经网络时,当我绘制一个神经网络时,通常我只绘制输入节点 x1、x2、x3等等,但有时也可以增加一个额外的节点 x0 ,这个 x0 节点有时也被称作偏置单位或偏置神经元。但因为 x0 总是等于1,所以有时候,我们会画出它,有时我们不会画出,这要看画出它是否对例子有利。

神经网络就是不同的神经元组合在一起。第一层为输入层,最后一层为输出层,而中间的所有层均为隐藏层。

注意:输入单元x1、x2、x3,再说一次,有时也可以画上额外的节点 x0。同时,这里有3个神经元,我在里面写了a1(2) 、 a2(2)和a3(2) ,然后再次说明,我们可以在这里添加一个a0(2) ,这和 x0 一样,代表一个额外的偏度单元,它的值永远是1(注意:a1(2) 、 a2(2) 和 a3(2) 中计算的是g(XTθ)的值,而a0(2)中存放的就是偏置1)。

如果一个网络在第 j 层有 sj 个单元,在 j+1 层有 sj +1 个单元,那么矩阵 θ(j) 即控制第 j 层到第 j+1 层的映射。

矩阵 θ(j) 的维度为 s(j+1) * (sj+1) ,s(j+1)行, (sj+1) 列。

总之,以上我们的这样一张图,展示了是怎样定义一个人工神经网络的。这个神经网络定义了函数h:从输入 x 到输出 y 的映射。我将这些假设的参数
记为大写的 θ,这样一来不同的 θ,对应了不同的假设,所以我们有不同的函数,比如说从 x 到 y 的映射。

以上就是我们怎么从数学上定义神经网络的假设。

4. Model Representation II

5. Examples and Intuitions I

运用神经网络,解决“与”、“或”的分类问题。

6. Examples and Intuitions II

神经网络还可以用于识别手写数字。

它使用的输入是不同的图像或者说就是一些原始的像素点。第一层计算出一些特征,然后下一层再计算出一些稍复杂的特征,然后是更复杂的特征,然后这些特征实际上被最终传递给最后一层逻辑回归分类器上,使其准确地预测出神经网络“看”到的数字。

以下展示了通过神经网络进行多分类的例子。

机器学习之神经网络模型-下(Neural Networks: Representation)的更多相关文章

  1. Machine Learning - 第4周(Neural Networks: Representation)

    Neural networks is a model inspired by how the brain works. It is widely used today in many applicat ...

  2. (原创)Stanford Machine Learning (by Andrew NG) --- (week 4) Neural Networks Representation

    Andrew NG的Machine learning课程地址为:https://www.coursera.org/course/ml 神经网络一直被认为是比较难懂的问题,NG将神经网络部分的课程分为了 ...

  3. Stanford机器学习---第四讲. 神经网络的表示 Neural Networks representation

    原文 http://blog.csdn.net/abcjennifer/article/details/7749309 本栏目(Machine learning)包括单参数的线性回归.多参数的线性回归 ...

  4. Ng第八课:神经网络表述(Neural Networks: Representation)

    8.1  非线性假设 8.2  神经元和大脑 8.3  模型表示 1 8.4  模型表示 2 8.5  特征和直观理解 1 8.6  样本和直观理解 II 8.7  多类分类 8.1  非线性假设 无 ...

  5. #Week6 Neural Networks : Representation

    一.Non-linear Hypotheses 线性回归和逻辑回归在特征很多时,计算量会很大. 一个简单的三层神经网络模型: \[a_i^{(j)} = \text{"activation& ...

  6. 机器学习(六)--------神经网络(Neural Networks)

    无论是线性回归还是逻辑回归都有这样一个缺点,即:当特征太多时, 计算的负荷会非常大. 比如识别图像,是否是一辆汽车,可能就需要判断太多像素. 这时候就需要神经网络. 神经网络是模拟人类大脑的神经网络, ...

  7. 机器学习之神经网络模型-上(Neural Networks: Representation)

    在这篇文章中,我们一起来讨论一种叫作"神经网络"(Neural Network)的机器学习算法,这也是我硕士阶段的研究方向.我们将首先讨论神经网络的表层结构,在之后再具体讨论神经网 ...

  8. Coursera, Machine Learning, Neural Networks: Representation - week4/5

    Neural Network Motivations 想要拟合一条曲线,在feature 很多的情况下,feature的组合也很多,在现实中不适用,比如在computer vision问题中featu ...

  9. 8、神经网络:表述(Neural Networks: Representation)

    8.1 非线性假设 我们之前学的,无论是线性回归还是逻辑回归都有这样一个缺点,即:当特征太多时,计算的负荷会非常大. 下面是一个例子: 当我们使用x1, x2 的多次项式进行预测时,我们可以应用的很好 ...

随机推荐

  1. libevent I/O示例

    I/O示例使用一个windows平台上服务器/客户端的例子来演示.由于为了减少代码篇幅等各种由于本人懒而产生的原因,以下代码没有做错误处理以及有些小问题,但是我想应该不影响演示,大家多包涵. 服务器代 ...

  2. MongoDB学习笔记-游标

    理解MongoDB的游标有两种维度:客户端和服务器端.下面将从这两方面来说明. 客户端 find方法返回值是一个游标.可以通过游标来对最终结果进行控制.比如限制结果数量,略过某一部分,根据任意键按任意 ...

  3. MS Chart-按照数据库的最大最小时间设置X轴label.

    核心代码: Chart1.ChartAreas[0].AxisX.Interval = (Front_Max - Front_Min).Days / 2; Chart1.ChartAreas[0].A ...

  4. typings的理解

    简介一些js库扩展了JavaScript的特性和语法,但是TypeScript编译器并不识别,通过typings.json配置可以辅助IDE,给出有智能的提示信息,以及重构的依据.因此需要在typin ...

  5. svn中的图标解释

    黄色感叹号(有冲突): --这是有冲突了,冲突就是说你对某个文件进行了修改,别人也对这个文件进行了修改,别人抢在你提交之前先提交了,这时你再提交就会被提示发生冲突,而不 允许你提交,防止你的提交覆盖了 ...

  6. 使用Log4j进行日志操作

    使用Log4j进行日志操作 一.Log4j简介 (1)概述 Log4j是Apache的一个开放源代码项目,通过使用Log4j,我们可以控制日志信息输送的目的地是控制台.文件.GUI组件.甚至是套接字服 ...

  7. 开发中可能会用到的几个 jQuery 小提示和技巧(转)

    今天,我们将分享一些很有用的技巧和窍门给 jQuery 开发人员.jQuery 是最好的 JavaScript 库之一,用于简化动画,事件处理,支持 Ajax 和 HTML 的客户端脚本.网络中有大量 ...

  8. C实现面向对象封装、继承、多态

    参考资料:      http://blog.chinaunix.net/uid-26750235-id-3102371.html      http://www.eventhelix.com/rea ...

  9. sao/jsp

    sao/i18n/message/ Messages-Client.xml   Messages-Server.xml   sao/wsdl Verification.wsdl   IProcessS ...

  10. 疯狂java讲义——初始化块