`

神经网络的分类分析

阅读更多

人工神经网络作为智能算法的一种,一直以来在实践方面取得了一定的成就,比如数字识别、信号处理、数据预测、内容分类等等,但是在理论方面还是缺乏相关的严格数学分析与证明。

 

至于神经网络的相关算法分析将在以后的文章中介绍,这里先介绍下神经网络的分类原理,不足之处请大家指教,相互进步。

 

神经网络为什么能分类?又是如何分类的?以下是本人在相关研究中阅读到一些理解

 

图 1.1 3层前馈人工神经网络拓扑图

 

其中x1,x2,...xn为网络输入,y1,y2,...ym为网络输出。网络的输入输出变换关系如下:


(1)


(2)

 

其中W为网络权值,为第q层网络的第i个节点的阀值,yj为第q层网络的第j个节点的输出,为节点处的激励函数(通常情况下为S型的连续可导的函数:logsig,tan等)。那么高维空间的超平面可表示为:

 

      (3)

  

首先,先介绍下二维空间下超平面的表示,如下图所示:



图 1.2 二维空间超平面划分圆点类和三角形类


图 1.3 判定原理

 


 
通过判定函数,我们就可以把三角形类与圆形类成功分开。那么高维的分类情况也是类似。

在这里,想问下是否考虑过为什么需要用到高维空间下的超平面?

 

首先我们先看一个例子:

 

属于一维空间的点:x1,x2,x3,其中x1=0, x2=1, x3=2, 如下图所示:

 


 图 1.4 一维空间下,x1, x2, x3 的分布情况

 

考虑一个问题,如何用一条直线把圆点与方形分割出来(线性分类)?  在现在这种情况下是无法分割的。

为此,做些变动就可以用直线分割此2类物体。

 

1. 把一维空间的点映射到二维空间的点,这里我们采用如下函数把点映射到二维空间


那么一维的点x1,x2,x3可映射到点(x1,y1),(x2,y2),(x3,y3)

 

x1: 0     ----->     (x1,y1):(0,0)

x2:1      ----->     (x2,y2):(1,2^0.5)---(2^0.5  === 根号2)

x3:2      ----->     (x3,y3):(4,2×2^0.5)---(2×2^0.5 === 2根号2)

 

2. 在二维空间找条直线分割新的映射点,如下图所示:



 图 1.5 映射到二维空间,然后线性分割

 

至此,我们把一维非线性分类问题转移到二维线性分类问题。最终通过在二维找到分割面把二类分割。

总结:高维超平面是把低维非线性分类问题转换到高维空间,通过在高维空间找到超平面进行线性分类。

 

最后一点介绍神经网络权值范围对超平面的影响[1],此处是针对整型权值神经网络,即权值都为整数型。


图1.6 权值范围分别为[-3,3], [-4,4]和[-5,5]的超平面在区域[0,0.5]的分布情况

 

从图可以看到权值范围越大,超平面越密集,那么同样的两个不同类型的类别就越容易被分割在不同的区域内(即越容易进行分类)。

 

 

 

参考文献

[1]. Sorin Drafhici. On the capabilities of neural networks using limited precision weights [J]. Neural Networks, Contributed article. 2002, 15: 395-414.

 

注:其他相关参考文献未写在参考文献并不代表未参考,只是找不到相关论文,凭自己印象写出来。

 

 

 

 

 

 

 

 

 

 

 

  • 大小: 23.9 KB
  • 大小: 10.2 KB
  • 大小: 9 KB
  • 大小: 7.9 KB
  • 大小: 7.8 KB
  • 大小: 9.8 KB
  • 大小: 20.7 KB
  • 大小: 27.9 KB
  • 大小: 10.3 KB
  • 大小: 9.7 KB
  • 大小: 14.1 KB
  • 大小: 67.8 KB
1
3
分享到:
评论

相关推荐

Global site tag (gtag.js) - Google Analytics