python神经网络源码_Python 神经网络 源代码

# -*- coding: cp936 -*-

#

# pyneurgen

神经网络

-

遗传算法分析包,构建简单的神经网络并进行预测

#

下载地址:

http://sourceforge.net/projects/pyneurgen/files/

#

内部

doc

帮助文档,简单易懂,但

demo

不完全。

import random

import math

from pyneurgen.neuralnet import NeuralNet

# struct random input number In range(0.8

1);target number always=1.0

inputdata=[]

target=[]

for i in range(20):

a=[]

a.append(random.uniform(0.8,1))

inputdata.append(a)

target.append([1.0])

#

建立神经网络

net=NeuralNet()

net.init_layers(1,[10],1)#one input layer with one node;one haidelayer with ten

nodes;one output layer with one node

net.randomize_network()

net.set_halt_on_extremes(True)

net.set_random_constraint(0.5)

net.set_learnrate(.1)

net.set_all_inputs(inputdata)

net.set_all_targets(target)

net.set_learn_range(0,19)

net.set_test_range(16,19)

net.layers[1].set_activation_type('sigmoid')#

设定隐含层的激励函数,或者输出函数。

net.learn(epochs=200, show_epoch_results=True,

random_testing=False)#

网络开始学习

mse=net.test()

print net.input_layer.values(),net.output_layer.values()

#predict number:

先用学习值的最后一个作为预测值,检验网络是否按照原先的状态运行。

predict =[]#

学习值的最后一个值

net.input_layer.load_inputs(predict)#load

for j in range(len(net.layers)-1):#

开始预测

运行网络

net.layers[j+1].feed_forward()

print net.output_layer.values()#

输出值应和原先的网络的学习值一直

#predict number:

开始随机预测

predict =[random.uniform(0.8,1)]

net.input_layer.load_inputs(predict)

for j in range(len(net.layers)-1):

net.layers[j+1].feed_forward()

print net.input_layer.values(),net.output_layer.values()

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值