机器学习笔记(三)

1、神经网络(Neural NetWorks)的基本结构

  神经网络是由神经层(layer)搭建起来的。由输入层,隐藏层、输出层组成。输入层就是特征的输入;隐藏层有多层,包含神经网络自生成的新特征(输入特征的屡次项组合);输出层为预测结果。简单的神经网络以下图所示:html

  

  其中$a_{i}^{j}$表示第j层第i个节点,每一条带箭头的线,都有不一样的权重参数,至关于以前讲过的模型参数θ,表示符号为$\Theta_{ik}^{j}$,含义为:第j层第k个节点指向(j+1)层第i个节点的权重。在计算第(j+1)层节点时,每每加入$a_{0}^{j}$,做为偏置,其值为1。基于神经网络能够写出各节点、输出与输入的关系式:网络

  $a_{i}^{j}=function(\sum_{k=0}^{n} \Theta _{ik}^{j-1}a_{k}^{j-1}) $机器学习

  其中function能够是逻辑回归中的逻辑函数,也能够像线性回归直接将求和结果做为输出。下面给出节点的列向量形式和权重的二维矩阵形式:函数

  

  根据这两个列向量,咱们能够将关系式以矩阵形式给出:学习

  $a^{j}=\Theta^{j-1}a^{j-1}$spa

  对于上面图中例子,能够用矩阵表示输入与输出的关系,为了跟图中统一,输入层视做第一层,输出层为第3层:htm

  $a^{2}=\Theta^{1}x$blog

  $a^{3}=\Theta^{2}a^{2}$get

  $h_{\Theta}(x)=a^{3}$io

 

 

 

2、神经网络的二分类实例

  神经网络之因此能很好地解决非线性回归,在于它能够创造并选择最好的多项式。对于网络第一层(输入层),每一个节点都是一次项,第二层是二次项,第n层是n次项。也就是说正常状况下神经网络层数越多,功能也就越强大。神经网络自动调节权值,来强化某个多项式的做用,或弱化某个多项式的影响。来看一个神经网络实现逻辑回归的例子:

  

  对于与运算,当输入全为1是,结果为10,根据逻辑函数,其几率应该接近于1;当输入不全为1时,结果小于-10,其几率接近于0。或非、或运算也是这个道理。在实际应用中,咱们只要给出一堆训练数据,神经网络就能够学会这些权值,而不用人工调节。再来看同或运算,输出与输出层不变,隐藏层能够看作神经网络本身添加了一个新节点(其实是强化),这样经过两个隐藏节点就能够实现比与或非复杂的运算,而这一切都是神经网络本身学习所得。

 

 

 

3、神经网络的多分类

  在《机器学习笔记(二)》中曾讨论过多元逻辑回归,当时的思想是维护多个假设函数,而后最终比较各个函数算出来的几率大小。在神经网络中,咱们从新定义解决多分类的方法。

  

  如上图,表示了四分类的网络结构,输出层共四个节点,分别表明各分类的结果(0/1),实际上这张网络也是维护了4个假设函数。不一样于以前的定义,这里将结果用列向量来表示。网络的目标是使输出层尽量符合所给的列向量$y^{i}$。

相关文章
相关标签/搜索