24小时热门版块排行榜    

CyRhmU.jpeg
查看: 1524  |  回复: 4
当前主题已经存档。

wswswws

银虫 (正式写手)

[交流] 人工神经网络实验系统(BP网络) V1.0 --可以试一试

人工神经网络实验系统(BP网络) V1.0 Beta


                         零.说在前面的一番话

    大家好,这个程序是我自己做的,为了学习的方便和用于研究目的。
其运用了人工神经网络中的前向网终的BP网络的理论,还结合了Hebb学
习规则,使其具有一定的学习、自适应和分辩能力。

    本来,只做了个感知器的模型,后将多个感知器用BP网络连结,
做成一个"人工大脑"。对这个"大脑"的操作,有两种,一种是学习功能,
一种是处理功能。但在神经网络"学习"过程中要输入很多的样本来测试数
据。为了方便,我为这个神经网络做了套指令系统。也就是说,将要学习
的样本数据做成"指令",把神经网络当作"CPU"让它来处理,就方便了许多。
当然,这些学习样本还可以存成文件的,以便以后再研究时用。
    现在,我把这个程序拿出来和大家分享,大家可以任意"训练"这个
"人工大脑",说不定有奇迹发生哦!


                    一.一些基本常识和原理

[什么叫神经网络?]

    人的思维有逻辑性和直观性两种不同的基本方式。逻辑性的思维是
指根据逻辑规则进行推理的过程;它先将信息化成概念,并用符号表
示,然后,根据符号运算按串行模式进行逻辑推理;这一过程可以写成
串行的指令,让计算机执行。然而,直观性的思维是将分布式存储的
信息综合起来,结果是忽然间产生想法或解决问题的办法。这种思维
方式的根本之点在于以下两点:1.信息是通过神经元上的兴奋模式分布
储在网络上;2.信息处理是通过神经元之间同时相互作用的动态过程
来完成的。
    人工神经网络就是模拟人思维的第二种方式。这是一个非线性动力
学系统,其特色在于信息的分布式存储和并行协同处理。虽然单个神经
元的结构极其简单,功能有限,但大量神经元构成的网络系统所能实现
的行为却是极其丰富多彩的。

[人工神经网络的工作原理]

人工神经网络首先要以一定的学习准则进行学习,然后才能工作。现以
人工神经网络对手写“A”、“B”两个字母的识别为例进行说明,规定
当“A”输入网络时,应该输出“1”,而当输入为“B”时,输出为“0”。
所以网络学习的准则应该是:如果网络作出错误的的判决,则通过网络
的学习,应使得网络减少下次犯同样错误的可能性。首先,给网络的各
连接权值赋予(0,1)区间内的随机值,将“A”所对应的图象模式输入给
网络,网络将输入模式加权求和、与门限比较、再进行非线性运算,得到
网络的输出。在此情况下,网络输出为“1”和“0”的概率各为50%,也
就是说是完全随机的。这时如果输出为“1”(结果正确),则使连接权值
增大,以便使网络再次遇到“A”模式输入时,仍然能作出正确的判断。
如果输出为“0”(即结果错误),则把网络连接权值朝着减小综合输入加
权值的方向调整,其目的在于使网络下次再遇到“A”模式输入时,减小
犯同样错误的可能性。如此操作调整,当给网络轮番输入若干个手写字
母“A”、“B”后,经过网络按以上学习方法进行若干次学习后,网络
判断的正确率将大大提高。这说明网络对这两个模式的学习已经获得了
成功,它已将这两个模式分布地记忆在网络的各个连接权值上。当网络
再次遇到其中任何一个模式时,能够作出迅速、准确的判断和识别。一
般说来,网络中所含的神经元个数越多,则它能记忆、识别的模式也就
越多。

[ Last edited by 幻影无痕 on 2006-10-30 at 13:45 ]
回复此楼
已阅   回复此楼   关注TA 给TA发消息 送TA红花 TA的回帖

yuefour

金虫 (正式写手)

1

11111111111
2楼2005-06-25 08:12:40
已阅   回复此楼   关注TA 给TA发消息 送TA红花 TA的回帖

janny

至尊木虫 (著名写手)

1

谢谢
3楼2006-06-03 15:09:02
已阅   回复此楼   关注TA 给TA发消息 送TA红花 TA的回帖

minminxiaoqi

金虫 (小有名气)

非常感谢!!
MJHGHJGJH
4楼2006-12-22 20:26:39
已阅   回复此楼   关注TA 给TA发消息 送TA红花 TA的回帖

清鱼儿

铜虫 (初入文坛)

楼主是做什么的?
5楼2006-12-22 22:50:45
已阅   回复此楼   关注TA 给TA发消息 送TA红花 TA的回帖
相关版块跳转 我要订阅楼主 wswswws 的主题更新
普通表情 高级回复(可上传附件)
信息提示
请填处理意见