📄 taginference.h
字号:
#ifndef __TAGINFERENCE_H__
#define __TAGINFERENCE_H__
#include "Common.h"
#define psi(x) digamma(x)
#define LOG_E_1 1.3132616875
#define LOG_E_K 1.38629436
class CTagInference
{
public:
CTagInference();
~CTagInference();
void Evaluate();
private:
void Load();
private:
double *alpha, **beta, **eta, *gamma, **q, *nt, *ap;
int nclass;
int nlex;
int ntag;
int emmax;
double epsilon;
std::vector<std::string> m_vec_word;
std::vector<std::string> m_vec_tag;
private:
double EM(document &d, double *gamma, double **q, double *nt, double *ap, const double *alpha, const double **beta, int L, int K, int emmax, double epsilon);
double Likelihood(document &d, const double *alpha, const double **beta, double *gamma, double** phi, int L, int K);
double digamma(double x);
double lgamma(double x);
double **dmatrix(int rows, int cols);
void free_dmatrix(double **matrix, int rows);
double Analyze(int idx);
double AnalyzeY(int idx, ofstream& out, bool truelabel);
static bool Comp( rank_t &e1, rank_t &e2 );
};
#endif
⌨️ 快捷键说明
复制代码
Ctrl + C
搜索代码
Ctrl + F
全屏模式
F11
切换主题
Ctrl + Shift + D
显示快捷键
?
增大字号
Ctrl + =
减小字号
Ctrl + -