• 大小: 2.77M
    文件类型: .zip
    金币: 1
    下载: 0 次
    发布日期: 2023-09-14
  • 语言: 其他
  • 标签: 其他  

资源简介

MyANN.zip

资源截图

代码片段和文件信息

// MyANN.cpp : 定义控制台应用程序的入口点。
//

#include “stdafx.h“
#include “NeuralNetwork.h“
//参考别人的算法写的BP 三层神经网络 加了很多注释 帮助自己理解 也帮助大家看 废话不多时 上代码
//详细的神经网络算法参考这个博文,写的非常好http://www.cnblogs.com/ronny/p/ann_02.html
//还有一本书 [游戏编程中的人工智能技术].pdf 该书第二部分主要讲解神经网络 也是零基础入门 非常好

int _tmain(int argc _TCHAR* argv[])
{
   //定义一个神经网络类
    NeuralNetwork m_ann;
    //定义一个三层网络,其中数组中代表网络的节点
int ann_nodes[3]={4204};
//创建一个三层神经网络,主要是设置网络参数
m_ann.create(3ann_nodes);
    //创建网络中的节点,主要是记录各连接线之间的关系(便于找到权重索引和输入索引)
m_ann.initializeNetwork();
   
//生成训练向量和理想输出向量 二者是一致的
vector>inputData;
vector>outData;
for (int i = 0; i < m_ann.iterNum; i++)
{
int index = i % 4;
vector dvect(4 0);
dvect[index] = 1;
outData.push_back(dvect);
for (int i = 0; i != dvect.size(); i++)
{
dvect[i] += (5e-3*rand() / RAND_MAX - 2.5e-3);
}
inputData.push_back(dvect);
}

//训练网络
//先前向计算输出
for (int i=0;i {
vector current_t;
    current_t.clear();
m_ann.forwardCalculate(inputData.at(i)current_t);
m_ann.backPropagate(outData.at(i)current_t);
      
printf(“input %.4f %.4f %.4f %.4f  \n“inputData.at(i).at(0)inputData.at(i).at(1)inputData.at(i).at(2)inputData.at(i).at(3));
printf(“output %.4f %.4f %.4f %.4f  \n“current_t.at(0)current_t.at(1)current_t.at(2)current_t.at(3));
}

//测试
vectorcurr_myinput;
curr_myinput.push_back(0.01);
curr_myinput.push_back(0.99);
curr_myinput.push_back(0.001);
curr_myinput.push_back(-0.05);
vector current_output;
m_ann.forwardCalculate(curr_myinputcurrent_output);
printf(“测试代码:----------\n“);
printf(“测试input %.4f %.4f %.4f %.4f  \n“curr_myinput.at(0)curr_myinput.at(1)curr_myinput.at(2)curr_myinput.at(3));
printf(“测试output %.4f %.4f %.4f %.4f  \n“current_output.at(0)current_output.at(1)current_output.at(2)current_output.at(3));
system(“pause“);
   

return 0;
}


 属性            大小     日期    时间   名称
----------- ---------  ---------- -----  ----
     目录           0  2015-11-22 15:11  MyANN\
     目录           0  2015-11-22 16:29  MyANN\Debug\
     文件      183808  2015-11-22 16:29  MyANN\Debug\MyANN.exe
     文件      648960  2015-11-22 16:29  MyANN\Debug\MyANN.ilk
     文件     1158144  2015-11-22 16:29  MyANN\Debug\MyANN.pdb
     目录           0  2015-11-22 23:04  MyANN\MyANN\
     文件     1952768  2015-11-22 23:04  MyANN\MyANN.ncb
     文件         881  2015-11-21 21:28  MyANN\MyANN.sln
     文件       31744  2015-11-22 23:04  MyANN\MyANN.suo
     目录           0  2015-11-22 16:29  MyANN\MyANN\Debug\
     文件       12812  2015-11-22 16:29  MyANN\MyANN\Debug\BuildLog.htm
     文件          67  2015-11-22 16:29  MyANN\MyANN\Debug\mt.dep
     文件         663  2015-11-22 16:29  MyANN\MyANN\Debug\MyANN.exe.embed.manifest
     文件         728  2015-11-22 16:29  MyANN\MyANN\Debug\MyANN.exe.embed.manifest.res
     文件         621  2015-11-22 16:29  MyANN\MyANN\Debug\MyANN.exe.intermediate.manifest
     文件      319602  2015-11-22 16:29  MyANN\MyANN\Debug\MyANN.obj
     文件     3211264  2015-11-22 16:29  MyANN\MyANN\Debug\MyANN.pch
     文件      521460  2015-11-22 16:29  MyANN\MyANN\Debug\NeuralNetwork.obj
     文件        4092  2015-11-22 16:29  MyANN\MyANN\Debug\NNconnection.obj
     文件      337943  2015-11-22 16:29  MyANN\MyANN\Debug\NNlayer.obj
     文件       51608  2015-11-22 16:29  MyANN\MyANN\Debug\NNneural.obj
     文件       12393  2015-11-22 16:29  MyANN\MyANN\Debug\stdafx.obj
     文件      216064  2015-11-22 16:29  MyANN\MyANN\Debug\vc90.idb
     文件      249856  2015-11-22 16:29  MyANN\MyANN\Debug\vc90.pdb
     文件        2220  2015-11-22 23:04  MyANN\MyANN\MyANN.cpp
     文件        5012  2015-11-21 22:53  MyANN\MyANN\MyANN.vcproj
     文件        1403  2015-11-22 23:04  MyANN\MyANN\MyANN.vcproj.TAO.Administrator.user
     文件        4554  2015-11-22 16:29  MyANN\MyANN\NeuralNetwork.cpp
     文件         887  2015-11-22 14:01  MyANN\MyANN\NeuralNetwork.h
     文件         133  2015-11-21 22:53  MyANN\MyANN\NNconnection.cpp
     文件         355  2015-11-21 22:56  MyANN\MyANN\NNconnection.h
............此处省略24个文件信息

评论

共有 条评论