?? bpnet.h
字號:
#if !defined(AFX_BPNET_H__7ACF7725_EE66_11D6_AAF0_00E04F29491B__INCLUDED_)
#define AFX_BPNET_H__7ACF7725_EE66_11D6_AAF0_00E04F29491B__INCLUDED_
#if _MSC_VER > 1000
#pragma once
#endif // _MSC_VER > 1000
// BpNet.h : header file
//
/////////////////////////////////////////////////////////////////////////////
// CBpNet window
#include<matlib.h>
class CBpNet : public CObject
{
// Construction
public:
CBpNet();
// Attributes
public:
// Operations
public:
// Overrides
// ClassWizard generated virtual function overrides
//{{AFX_VIRTUAL(CBpNet)
//}}AFX_VIRTUAL
// Implementation
public:
void Serialize( CArchive& ar );
void display(Mm data);
Mm scope(Mm mData);
long lEpochs;
double dblMse;
double dblError;
double randab(double a,double b);
void stop();
void learn();
bool SaveBpNet(CString &strNetName);
void LoadBpNet(CString &strNetName);
Mm simulate(Mm mData);
void Create(Mm mInputData,Mm mTarget,int iInput,int iHidden,int iOutput);
virtual ~CBpNet();
// Generated message map functions
protected:
//{{AFX_MSG(CBpNet)
// NOTE - the ClassWizard will add and remove member functions here.
//}}AFX_MSG
DECLARE_SERIAL(CBpNet)
public:
bool m_isOK;
void LoadPattern(Mm mIn,Mm mOut);
int iHidden;//隱層神經元個數
int iInput;//輸入個數
int iOutput;//輸出個數
protected:
Mm mInput;//單個樣本輸入數據
Mm mSampleInput;//全體樣本輸入數據
Mm mSampleTarget;//全體目標數據
Mm mHidden;//計算得到的隱層數據
Mm mOutput;//計算輸出
Mm mWeighti;//輸入-隱層權重
Mm mWeighto;//隱層-輸出權重
Mm mChangei;//輸入-隱層權重變化
Mm mChangeo;//隱層-輸出權重變化
public:
Mm mInputNormFactor;//正規化因子,iInputx2
Mm mTargetNormFactor;//輸出正規化因子,iOutputx2
protected:
Mm mThresholdi;//闕值
Mm mThresholdo;
Mm mOutputDeltas;//誤差
Mm mHiddenDeltas;
protected:
bool m_IsStop;
double dblMomentumFactor;
double dblLearnRate1;
double dblLearnRate2;
void backward(int iSample);
void forward(int iSample);
void normalize();//將輸入輸出樣本數據正規化處理
private:
double dblErr;
};
/////////////////////////////////////////////////////////////////////////////
//{{AFX_INSERT_LOCATION}}
// Microsoft Visual C++ will insert additional declarations immediately before the previous line.
#endif // !defined(AFX_BPNET_H__7ACF7725_EE66_11D6_AAF0_00E04F29491B__INCLUDED_)
?? 快捷鍵說明
復制代碼
Ctrl + C
搜索代碼
Ctrl + F
全屏模式
F11
切換主題
Ctrl + Shift + D
顯示快捷鍵
?
增大字號
Ctrl + =
減小字號
Ctrl + -