⭐ 欢迎来到虫虫下载站! | 📦 资源下载 📁 资源专辑 ℹ️ 关于我们
⭐ 虫虫下载站

📄 annbp.h

📁 annbp_BP神经网络原代码,经过一些算法改动,希望大家多多支持.
💻 H
字号:
// Annbp.h: interface for the Annbp class.
//
//////////////////////////////////////////////////////////////////////

#if !defined(AFX_ANNBP_H__8EA70705_17C6_4DD8_ADDD_333A51F7571F__INCLUDED_)
#define AFX_ANNBP_H__8EA70705_17C6_4DD8_ADDD_333A51F7571F__INCLUDED_

#if _MSC_VER > 1000
#pragma once
#endif // _MSC_VER > 1000
#include "afxtempl.h"

class Annbp:public CObject
{
	DECLARE_SERIAL(Annbp);
public:
	//成员变量
	int InputNum;//输入单元数
	int OutputNum;//输出单元数
	int HideCoverNum;//隐层数
	int HideNum[5];//HideNum[0] 为第一隐层单元数目,and so on
	int OutputFunctionType;//0---sigmoid函数;1---线性阈值函数;2---线性多分段函数;3---线性01分段函数;
	double HideStep;//Hide cover study step
	double OutputStep;//output cover study step
	double a;//动量项系数
	double StudyTol;
	double Tol;//输出端平方误差均值
	UINT StudyTimes;
	double rateOfTolChg;//误差变化率(学习终止条件)
	UINT maxStudyTimes;//最大学习次数(学习终止条件)
	double FuncSlope;//激发函数的斜率(系数之一)
	CString Name;
	CString TrainingSet;
	int TrainingSetNum;
	CString TestSet;//测试集
	CString TestOutFile;//测试结果
	int TestSetNum;
	BOOL IsTrained;

	CArray<int,int> CoverNodeNum;//各层单元数
	CArray<CArray<double,double>,CArray<double,double>&> x;//样本输入值
    CArray<CArray<double,double>,CArray<double,double>&> t;//测试样本输入值
	CArray<CArray<double,double>,CArray<double,double>&> o;//样本期望输出值
	CArray<CArray<double,double>,CArray<double,double>&> p;//测试样本期望输出值
	CArray<int,int> SamNo;//样本编号数组
	CArray<CArray<CArray<double,double>,CArray<double,double>&>,CArray<CArray<double,double>,CArray<double,double>&>&> w;//连接权重
	CArray<CArray<CArray<double,double>,CArray<double,double>&>,CArray<CArray<double,double>,CArray<double,double>&>&> dw0;//上次连接权的调整量
	//double OutputMax;
	//double OutputMin;

	//成员函数
	void SetCoverNodeNum();
	int MaxCovNod();
	void WeightSize();
	void InitWeight();
	BOOL ReadSample();
	void RandSamNo();
	BOOL Study();
	double Test();
	BOOL ReadTest();

	void DrawStru();
	void DrawLine(int x1,int y1,int x2,int y2,int type);
	void DrawCell(int x,int y,int r,int type);



	//趋势分析,导出DEM数据文件(ASCII)
	double ExportDem();
	
	Annbp();
	virtual ~Annbp();
	virtual void Serialize(CArchive& ar);
};

#endif // !defined(AFX_ANNBP_H__8EA70705_17C6_4DD8_ADDD_333A51F7571F__INCLUDED_)

⌨️ 快捷键说明

复制代码 Ctrl + C
搜索代码 Ctrl + F
全屏模式 F11
切换主题 Ctrl + Shift + D
显示快捷键 ?
增大字号 Ctrl + =
减小字号 Ctrl + -