-
大小: 24.4MB文件類型: .zip金幣: 1下載: 0 次發(fā)布日期: 2023-06-22
- 語言: C/C++
- 標簽: 數(shù)據(jù)挖掘??聚類??
資源簡介
數(shù)據(jù)挖掘的代碼是用C++寫的,包含了三個算法 k-means ,CURE,DBSCAN,分別對三個數(shù)據(jù)集做處理,分別為小麥種子,股票數(shù)據(jù),糖尿病患者。另外還有其他兩個算法,代碼在cplusplus文件里面,但是沒有用于數(shù)據(jù)分析,有需要可以自己加。資料里面還包含了我的實驗報告,結合了weka進行預處理。另外還有可執(zhí)行文件,該目錄下的其他文件是預處理后的數(shù)據(jù),刪除后就不能執(zhí)行。
僅供參考。
代碼片段和文件信息
/***************************************************************************
Module?Name:
Continuous?Observation?Hidden?Markov?Model?with?Gaussian?Mixture
History:
2003/12/13 Fei?Wang
2013?luxiaoxun
***************************************************************************/
#include?
#include?
#include?
#include?
#include?
#include?“CHMM.h“
using?namespace?std;
CHMM::CHMM(int?stateNum?int?dimNum?int?mixNum)
{
m_stateNum?=?stateNum;
m_maxIterNum?=?100;
m_endError?=?0.001;
Allocate(stateNum?dimNum?mixNum);
for?(int?i?=?0;?i? {
//?The?initial?probabilities
m_stateInit[i]?=?1.0?/?m_stateNum;
//?The?transition?probabilities
for?(int?j?=?0;?j?<=?m_stateNum;?j++)
{
m_stateTran[i][j]?=?1.0?/?(m_stateNum?+?1);
}
}
}
CHMM::~CHMM()
{
Dispose();
}
void?CHMM::Allocate(int?state?int?dim?int?mix)
{
m_stateModel?=?new?GMM*[state];
m_stateInit?=?new?double[state];
m_stateTran?=?new?double*[state];
for?(int?i?=?0;?i? {
m_stateModel[i]?=?new?GMM(dim?mix);
m_stateTran[i]?=?new?double[state?+?1];?//?Add?a?final?state
}
}
void?CHMM::Dispose()
{
for?(int?i?=?0;?i? {
delete?m_stateModel[i];
delete[]?m_stateTran[i];
}
delete[]?m_stateModel;
delete[]?m_stateTran;
delete[]?m_stateInit;
}
void?CHMM::Zero()
{
for?(int?i?=?0;?i? {
//?The?initial?probabilities
m_stateInit[i]?=?0;
//?The?transition?probabilities
for?(int?j?=?0;?j? {
m_stateTran[i][j]?=?0;
}
}
}
void?CHMM::Norm()
{
double?count?=?0;
int?ij;
for?(?j?=?0;?j? {
count?+=?m_stateInit[j];
}
for?(?j?=?0;?j? {
m_stateInit[j]?/=?count;
}
for?(i?=?0;?i? {
count?=?0;
for?(?j?=?0;?j? {
count?+=?m_stateTran[i][j];
}
if?(count?>?0)
{
for?(?j?=?0;?j? {
m_stateTran[i][j]?/=?count;
}
}
}
}
double?CHMM::GetStateInit(int?i)
{
assert(i?>=?0?&&?i? return?m_stateInit[i];
}
double?CHMM::GetStateFinal(int?i)
{
assert(i?>=?0?&&?i? return?m_stateTran[i][m_stateNum];
}
double?CHMM::GetStateTrans(int?i?int?j)
{
assert(i?>=?0?&&?i?=?0?&&?j? return?m_stateTran[i][j];
}
GMM*?CHMM::GetStateModel(int?i)
{
assert(i?>=?0?&&?i? return?m_stateModel[i];
}
double?CHMM::GetProbability(std::vector&?seq)
{
vector?state;
return?Decode(seq?state);
}
//Viterbi?Decode
//vector?state:?save?the?best?state?seqence?to?generate?the?seq
double?CHMM::Decode(vector&?seq?vector&?state)
{
//?Viterbi
int?size?=?(int)seq.size();
double*?lastLogP?=?new?double[m_stateNum];
double*?currLogP?=?new?double[m_stateNum];
int**?path?=?new?int*[size
?屬性????????????大小?????日期????時間???名稱
-----------?---------??----------?-----??----
?????目錄???????????0??2018-11-25?19:38??cplusplus\
?????目錄???????????0??2018-11-25?19:37??cplusplus\KMeans-GMM-HMM\
?????目錄???????????0??2018-11-25?19:37??cplusplus\KMeans-GMM-HMM\.git\
?????文件??????????23??2018-11-25?19:37??cplusplus\KMeans-GMM-HMM\.git\HEAD
?????文件?????????310??2018-11-25?19:37??cplusplus\KMeans-GMM-HMM\.git\config
?????文件??????????73??2018-11-25?19:37??cplusplus\KMeans-GMM-HMM\.git\desc
?????目錄???????????0??2018-11-25?19:37??cplusplus\KMeans-GMM-HMM\.git\hooks\
?????文件?????????478??2018-11-25?19:37??cplusplus\KMeans-GMM-HMM\.git\hooks\applypatch-msg.sample
?????文件?????????896??2018-11-25?19:37??cplusplus\KMeans-GMM-HMM\.git\hooks\commit-msg.sample
?????文件?????????189??2018-11-25?19:37??cplusplus\KMeans-GMM-HMM\.git\hooks\post-update.sample
?????文件?????????424??2018-11-25?19:37??cplusplus\KMeans-GMM-HMM\.git\hooks\pre-applypatch.sample
?????文件????????1642??2018-11-25?19:37??cplusplus\KMeans-GMM-HMM\.git\hooks\pre-commit.sample
?????文件????????1348??2018-11-25?19:37??cplusplus\KMeans-GMM-HMM\.git\hooks\pre-push.sample
?????文件????????4951??2018-11-25?19:37??cplusplus\KMeans-GMM-HMM\.git\hooks\pre-reba
?????文件????????1239??2018-11-25?19:37??cplusplus\KMeans-GMM-HMM\.git\hooks\prepare-commit-msg.sample
?????文件????????3610??2018-11-25?19:37??cplusplus\KMeans-GMM-HMM\.git\hooks\update.sample
?????文件?????????810??2018-11-25?19:37??cplusplus\KMeans-GMM-HMM\.git\index
?????目錄???????????0??2018-11-25?19:37??cplusplus\KMeans-GMM-HMM\.git\info\
?????文件?????????240??2018-11-25?19:37??cplusplus\KMeans-GMM-HMM\.git\info\exclude
?????目錄???????????0??2018-11-25?19:37??cplusplus\KMeans-GMM-HMM\.git\logs\
?????文件?????????187??2018-11-25?19:37??cplusplus\KMeans-GMM-HMM\.git\logs\HEAD
?????目錄???????????0??2018-11-25?19:37??cplusplus\KMeans-GMM-HMM\.git\logs\refs\
?????目錄???????????0??2018-11-25?19:37??cplusplus\KMeans-GMM-HMM\.git\logs\refs\heads\
?????文件?????????187??2018-11-25?19:37??cplusplus\KMeans-GMM-HMM\.git\logs\refs\heads\master
?????目錄???????????0??2018-11-25?19:37??cplusplus\KMeans-GMM-HMM\.git\logs\refs\remotes\
?????目錄???????????0??2018-11-25?19:37??cplusplus\KMeans-GMM-HMM\.git\logs\refs\remotes\origin\
?????文件?????????187??2018-11-25?19:37??cplusplus\KMeans-GMM-HMM\.git\logs\refs\remotes\origin\HEAD
?????目錄???????????0??2018-11-25?19:37??cplusplus\KMeans-GMM-HMM\.git\ob
?????目錄???????????0??2018-11-25?19:37??cplusplus\KMeans-GMM-HMM\.git\ob
?????文件????????3075??2018-11-25?19:37??cplusplus\KMeans-GMM-HMM\.git\ob
?????目錄???????????0??2018-11-25?19:37??cplusplus\KMeans-GMM-HMM\.git\ob
............此處省略198個文件信息
評論
共有 條評論