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

📄 bpnet.h

📁 不用任何更改即可运行的神经网络程序 包括矩阵类和神经网络类和主函数
💻 H
字号:
#ifndef					_michael_BpNet_
#define					_michael_BpNet_

#include "matrix.h"

class CBpNet
{


// Implementation
public:
	CMatrix scope(CMatrix mData);
	long lEpochs;
	double dblMse;
	double* dblError;
	
	double randab(double a,double b);
	void stop();
	void learn();
	CMatrix simulate(CMatrix mData);
	void Create(CMatrix mInputData,CMatrix mTarget,int numSample=10,int iInput=3,int iHidden=10,int iOutput=3);


public:
	int iHidden;//隐层神经元个数
	int iInput;//输入个数
	int iOutput;//输出个数
	int numSample;//n组训练样本
	int optimalIndex;//最优的组
protected:
	
	CMatrix mInput;//单个样本输入数据
	CMatrix mSampleInput;//全体样本输入数据
	CMatrix mSampleTarget;//全体目标数据
    CMatrix* mHidden;//计算得到的隐层数据
	CMatrix* mOutput;//计算输出
	CMatrix* mWeighti;//输入-隐层权重
	CMatrix* mWeighto;//隐层-输出权重
	CMatrix* mChangei;//输入-隐层权重变化
	CMatrix* mChangeo;//隐层-输出权重变化
public:
	CMatrix mInputNormFactor;//正规化因子,iInputx2
	CMatrix mTargetNormFactor;//输出正规化因子,iOutputx2
protected:
	CMatrix mThresholdi;//阙值
	CMatrix mThresholdo;
	CMatrix* mOutputDeltas;//误差
	CMatrix* mHiddenDeltas;
protected:
	int generation;
	bool m_IsStop;
	double dblMomentumFactor;
	double* dblLearnRate1;
	double* dblLearnRate2;
	void backward(int iSample,int sample);
	void forward(int iSample,int sample);
	void normalize();//将输入输出样本数据正规化处理

private:
	double* dblErr;
};

#endif

⌨️ 快捷键说明

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