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

📄 mssriicc.h

📁 一种聚类算法,名字是cocluster
💻 H
字号:
/*  MssrIIcc.h    Header file for MssrIIcc class    Copyright (c) 2005, 2006              by Hyuk Cho    Copyright (c) 2003, 2004    	      by Hyuk Cho, Yuqiang Guan, and Suvrit Sra                {hyukcho, yguan, suvrit}@cs.utexas.edu*/#if !defined(_MSSRIICC_H_)#define _MSSRIICC_H_#include <cmath>#include "Coclustering.h"class MssrIIcc : public Coclustering{  protected:        bool isNormalizedCompressed;    bool isNormalizedRowCentroid;    bool isNormalizedColCentroid;        double *rowQuality4Compressed, *colQuality4Compressed;    double *rowQuality4Centroid, *colQuality4Centroid;    double **rowCentroid, **colCentroid;	// used also for computing one-way objective    double **rowAR, **colAC;    double *rowAP, *colAP;    double squaredFNormA;       void normalizeCompressedMatrix();    void computeRowQuality4Compressed2WayUnnormalized();    void computeRowQuality4Compressed2WayNormalized();    double computeRowQuality4Compressed2WayUnnormalized(int rc);    double computeRowQuality4Compressed2WayNormalized(int rc);    double computeRowQuality4Compressed2WayUnnormalized(double *row2Way, int rowClusterSize);    double computeRowQuality4Compressed2WayNormalized(double *row2Way, int rowClusterSize);    void computeColQuality4Compressed2WayUnnormalized();    void computeColQuality4Compressed2WayNormalized();    double computeColQuality4Compressed2WayUnnormalized(int cc);    double computeColQuality4Compressed2WayNormalized(int cc);    double computeColQuality4Compressed2WayUnnormalized(double *col2Way, int colClusterSize);    double computeColQuality4Compressed2WayNormalized(double *col2Way, int colClusterSize);    double computeQuality4CompressedUnnormalized();    double computeQuality4CompressedNormalized();    void computeObjectiveFunction4Unnormalized();    void computeObjectiveFunction4Normalized();void computeObjectiveFunction4Normalized(double **Acompressed);void computeObjectiveFunction4Normalized(double **Acompressed, bool *isInversed);void computeObjectiveFunction4RowCluster();void computeObjectiveFunction4ColCluster();    double computeQuality4RowCentroidUnnormalized();    double computeQuality4RowCentroidNormalized();    double computeQuality4ColCentroidUnnormalized();    double computeQuality4ColCentroidNormalized();    void computeRowQuality4CentroidUnnormalized();    void computeRowQuality4CentroidNormalized();    double computeRowQuality4CentroidUnnormalized(int rc);    double computeRowQuality4CentroidNormalized(int rc);    double computeRowQuality4CentroidUnnormalized(double *row1Way, int rowClusterSize);    double computeRowQuality4CentroidNormalized(double *row1Way, int rowClusterSize);    void computeColQuality4CentroidUnnormalized();    void computeColQuality4CentroidNormalized();    double computeColQuality4CentroidUnnormalized(int cc);    double computeColQuality4CentroidNormalized(int cc);    double computeColQuality4CentroidUnnormalized(double *col1Way, int colClusterSize);    double computeColQuality4CentroidNormalized(double *col1Way, int colClusterSize);    double rowDistance(int r, int rc);    double rowDistance(int r, int rc, bool *isInversed);    double colDistance(int c, int cc);    double colDistance(int c, int cc, bool *isInversed);    void reassignRC();    void reassignRC(bool *isInversed);    void reassignCC();void reassignCC4Variation();    void reassignCC(bool *isInversed);    void reassignCC4Variation(bool *isInversed);        void recoverRowCL(int begin, int end, oneStep trace []);    void recoverRowCL(int begin, int end, oneStep trace [], bool *isInversed);    void recoverColCL(int begin, int end, oneStep trace []);    void recoverColCL(int begin, int end, oneStep trace [], bool *isInversed);    virtual void doBatchUpdate();void MssrIIcc::doBatchUpdate4VariationI();void MssrIIcc::doBatchUpdate4VariationII();void MssrIIcc::doBatchUpdate4VariationIII();void MssrIIcc::doBatchUpdate4VariationIV();//void MssrIIcc::doBatchUpdate4VariationV();    virtual void doBatchUpdate(bool *isInversed);void MssrIIcc::doBatchUpdate4VariationI(bool *isInversed);void MssrIIcc::doBatchUpdate4VariationII(bool *isInversed);void MssrIIcc::doBatchUpdate4VariationIII(bool *isInversed);void MssrIIcc::doBatchUpdate4VariationIV(bool *isInversed);//void MssrIIcc::doBatchUpdate4VariationV(bool *isInversed);    void doRowLocalSearch(oneStep trace [], int step);    void doRowLocalSearch(oneStep trace [], int step, bool *isInversed);    void doColLocalSearch(oneStep trace [], int step);    void doColLocalSearch(oneStep trace [], int step, bool *isInversed);    bool doRowLocalSearchChain();    bool doColLocalSearchChain();        void computeRowCentroid();    void computeRowCentroid(bool *isInversed);    void computeColCentroid();    void computeColCentroid(bool *isInversed);    void normalizeRowCentroid();    void normalizeColCentroid();    void computeRowAR();    void computeColAC();    void computeQuality4RowAR();    void computeQuality4ColAC();    void computeRowAP(int rowId);    void computeRowAP(int rowId, bool *isInversed);    void computeColAP(int colId);    void computeColAP(int colId, bool *isInversed);    virtual void doRowFarthestInitialization();    virtual void doColFarthestInitialization();    virtual void doRowRandomPerturbInitialization();    virtual void doColRandomPerturbInitialization();  public:    MssrIIcc(Matrix *inputMatrix_CCS, Matrix *inputMatrix_CRS, commandLineArgument myCLA);    ~MssrIIcc();    virtual void doInitialization();    virtual void doPingPong();};#endif //!defined(_MSSRIICC_H_)  

⌨️ 快捷键说明

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