亚洲欧美第一页_禁久久精品乱码_粉嫩av一区二区三区免费野_久草精品视频

? 歡迎來到蟲蟲下載站! | ?? 資源下載 ?? 資源專輯 ?? 關于我們
? 蟲蟲下載站

?? st-thresh.c

?? 數據挖掘c4.5算法(vc語言版本)歡迎大家下載測試!!!!
?? C
字號:
/*************************************************************************/
/*									 */
/*	Soften thresholds for continuous attributes			 */
/*	-------------------------------------------			 */
/*									 */
/*************************************************************************/


#include "defns.i"
#include "types.i"
#include "extern.i"


Boolean *LHSErr,	/*  Does a misclassification occur with this value of an att  */
	*RHSErr;	/*  if the below or above threshold branches are taken  */

ItemNo	*ThreshErrs;	/*  ThreshErrs[i] is the no. of misclassifications if thresh is i  */

float	*CVals;		/*  All values of a continuous attribute  */


#define	Below(v,t)	(v <= t + 1E-6)


/*************************************************************************/
/*									 */
/*  Soften all thresholds for continuous attributes in tree T		 */
/*									 */
/*************************************************************************/


    SoftenThresh(T)
/*  ------------  */
    Tree T;
{
    CVals = (float *) calloc(MaxItem+1, sizeof(float));
    LHSErr = (Boolean *) calloc(MaxItem+1, sizeof(Boolean));
    RHSErr = (Boolean *) calloc(MaxItem+1, sizeof(Boolean));
    ThreshErrs = (ItemNo *) calloc(MaxItem+1, sizeof(ItemNo));

    InitialiseWeights();

    ScanTree(T, 0, MaxItem);

    free(ThreshErrs);
    free(RHSErr);
    free(LHSErr);
    free(CVals);
}



/*************************************************************************/
/*								  	 */
/*  Calculate upper and lower bounds for each test on a continuous	 */
/*  attribute in tree T, using data items from Fp to Lp			 */
/*								  	 */
/*************************************************************************/


    ScanTree(T, Fp, Lp)
/*  --------  */
    Tree T;
    ItemNo Fp, Lp;
{
    short v;
    float Val, Se, Limit, Lower, Upper, GreatestValueBelow();
    ItemNo i, Kp, Ep, LastI, Errors, BaseErrors;
    ClassNo CaseClass, Class1, Class2, Category();
    Boolean LeftThresh=false;
    Description CaseDesc;
    Attribute Att;
    void Swap();

    /*  Stop when get to a leaf  */

    if ( ! T->NodeType ) return;

    /*  Group the unknowns together  */

    Kp = Group(0, Fp, Lp, T);

    /*  Soften a threshold for a continuous attribute  */

    Att = T->Tested;

    if ( T->NodeType == ThreshContin )
    {
	printf("\nTest %s <> %g\n", AttName[Att], T->Cut);

	Quicksort(Kp+1, Lp, Att, Swap);

	ForEach(i, Kp+1, Lp)
	{
	    /*  See how this item would be classified if its
		value were on each side of the threshold  */

	    CaseDesc = Item[i];
	    CaseClass = Class(CaseDesc);
	    Val = CVal(CaseDesc, Att);
		
	    Class1 = Category(CaseDesc, T->Branch[1]);
	    Class2 = Category(CaseDesc, T->Branch[2]);

	    CVals[i] = Val;
	    LHSErr[i] = (Class1 != CaseClass ? 1 : 0);
	    RHSErr[i] = (Class2 != CaseClass ? 1 : 0);
	}

	/*  Set Errors to total errors if take above thresh branch,
	    and BaseErrors to errors if threshold has original value  */

	Errors = BaseErrors = 0;
	ForEach(i, Kp+1, Lp)
	{
	    Errors += RHSErr[i];

	    if ( Below(CVals[i], T->Cut) )
	    {
		BaseErrors += LHSErr[i];
	    }
	    else
	    {
		BaseErrors += RHSErr[i];
	    }
	}

	/*  Calculate standard deviation of the number of errors  */

	Se = sqrt( (BaseErrors+0.5) * (Lp-Kp-BaseErrors+0.5) / (Lp-Kp+1) );
	Limit = BaseErrors + Se;

	Verbosity(1)
	{
	    printf("\t\t\tBase errors %d, items %d, se=%.1f\n",
		   BaseErrors, Lp-Kp, Se);
	    printf("\n\tVal <=   Errors\t\t+Errors\n");
	    printf("\t         %6d\n", Errors);
	}

	/*  Set ThreshErrs[i] to the no. of errors if the threshold were i  */

	ForEach(i, Kp+1, Lp)
	{
	    ThreshErrs[i] = Errors = Errors + LHSErr[i] - RHSErr[i];

	    if ( i == Lp || CVals[i] != CVals[i+1] )
	    {
		Verbosity(1)
		    printf("\t%6g   %6d\t\t%7d\n",
			CVals[i], Errors, Errors - BaseErrors);
	    }
	}

	/*  Choose Lower and Upper so that if threshold were set to
	    either, the number of items misclassified would be one
	    standard deviation above BaseErrors  */

	LastI = Kp+1;
	Lower = Min(T->Cut, CVals[LastI]);
	Upper = Max(T->Cut, CVals[Lp]);
	while ( CVals[LastI+1] == CVals[LastI] ) LastI++;

	while ( LastI < Lp )
	{
	    i = LastI + 1;
	    while ( i < Lp && CVals[i+1] == CVals[i] ) i++;

	    if ( ! LeftThresh &&
		 ThreshErrs[LastI] > Limit &&
		 ThreshErrs[i] <= Limit &&
		 Below(CVals[i], T->Cut) )
	    {
		Lower = CVals[i] -
			(CVals[i] - CVals[LastI]) * (Limit - ThreshErrs[i]) /
			(ThreshErrs[LastI] - ThreshErrs[i]);
		LeftThresh = true;
	    }
	    else
	    if ( ThreshErrs[LastI] <= Limit &&
		 ThreshErrs[i] > Limit &&
		 ! Below(CVals[i], T->Cut) )
	    {
		Upper = CVals[LastI] +
			(CVals[i] - CVals[LastI]) * (Limit - ThreshErrs[LastI]) /
			(ThreshErrs[i] - ThreshErrs[LastI]);
		if ( Upper < T->Cut ) Upper = T->Cut;
	    }

	    LastI = i;
	}

	T->Lower = Lower;
	T->Upper = Upper;

	Verbosity(1) printf("\n");

	printf("\tLower = %g, Upper = %g\n", T->Lower, T->Upper);
    }

    /*  Recursively scan each branch  */

    ForEach(v, 1, T->Forks)
    {
	Ep = Group(v, Kp+1, Lp, T);

	if ( Kp < Ep )
	{
	    ScanTree(T->Branch[v], Kp+1, Ep);
	    Kp = Ep;
	}
    }
}

?? 快捷鍵說明

復制代碼 Ctrl + C
搜索代碼 Ctrl + F
全屏模式 F11
切換主題 Ctrl + Shift + D
顯示快捷鍵 ?
增大字號 Ctrl + =
減小字號 Ctrl + -
亚洲欧美第一页_禁久久精品乱码_粉嫩av一区二区三区免费野_久草精品视频
午夜精品久久久久久| 欧美日韩精品是欧美日韩精品| 午夜精品久久久久久久| 日韩美女视频一区| 中文字幕一区二| 国产精品嫩草影院av蜜臀| 久久久精品日韩欧美| 国产日韩精品一区二区三区| 亚洲国产岛国毛片在线| 国产精品夫妻自拍| 一区二区三区在线不卡| 亚洲自拍与偷拍| 日本aⅴ免费视频一区二区三区| 五月婷婷综合在线| 看电视剧不卡顿的网站| 国产一区二区精品在线观看| 成人一级片在线观看| 91啪九色porn原创视频在线观看| 91久久线看在观草草青青| 欧美视频中文字幕| 91精品欧美久久久久久动漫| 精品处破学生在线二十三| 国产午夜精品美女毛片视频| 亚洲人成在线观看一区二区| 五月激情六月综合| 国产中文一区二区三区| 99国产麻豆精品| 91精品国产综合久久久久久| 国产亚洲欧美日韩日本| 一区二区三区不卡在线观看| 热久久免费视频| 成人精品国产免费网站| 欧美日韩不卡在线| 久久精品人人做人人爽人人| 亚洲精选一二三| 韩国v欧美v亚洲v日本v| 色成人在线视频| 久久色在线观看| 一区二区三区日本| 粉嫩绯色av一区二区在线观看| 欧美伊人久久久久久久久影院| 2020国产精品| 午夜久久久久久久久久一区二区| 国产不卡视频一区| 欧美日韩一区二区在线观看视频| 精品国产一区二区三区av性色| 亚洲同性同志一二三专区| 九色|91porny| 欧美在线free| 欧美国产禁国产网站cc| 男男gaygay亚洲| 日本韩国欧美三级| 国产精品欧美综合在线| 久久99日本精品| 在线观看www91| 亚洲欧洲国产专区| 成人综合婷婷国产精品久久蜜臀| 日韩一区和二区| 日欧美一区二区| 欧美日韩免费不卡视频一区二区三区| 国产精品视频看| 狠狠色丁香婷综合久久| 日韩一级大片在线| 日韩av电影天堂| 欧美三级日本三级少妇99| 亚洲欧美另类久久久精品2019| 粉嫩嫩av羞羞动漫久久久| 久久伊99综合婷婷久久伊| 日本欧美在线观看| 欧美老年两性高潮| 亚洲午夜免费视频| 欧美三级资源在线| 日韩精品色哟哟| 91精品国产aⅴ一区二区| 性欧美大战久久久久久久久| 欧美日韩免费一区二区三区| 亚洲国产人成综合网站| 欧美日韩精品免费观看视频| 亚洲成av人影院| 制服丝袜亚洲精品中文字幕| 日本亚洲一区二区| 日韩丝袜美女视频| 九九久久精品视频| 中文字幕 久热精品 视频在线 | 婷婷亚洲久悠悠色悠在线播放| 色偷偷88欧美精品久久久| 亚洲欧美色图小说| 欧美综合亚洲图片综合区| 香港成人在线视频| 欧美mv和日韩mv的网站| 国内精品在线播放| 亚洲国产经典视频| 欧美亚洲综合一区| 美女网站色91| 中文字幕一区二区三区不卡在线 | 韩国女主播一区| 国产亚洲精品中文字幕| 99久久婷婷国产综合精品电影| 一二三四社区欧美黄| 91精品国产综合久久蜜臀| 国产一区激情在线| 亚洲色图欧美在线| 欧美猛男男办公室激情| 国产成人在线免费观看| 亚洲综合色成人| 欧美第一区第二区| 91啪亚洲精品| 久久精品国产一区二区三区免费看 | 9久草视频在线视频精品| 亚洲国产成人精品视频| 久久久精品日韩欧美| 欧美性大战久久久| 国产一区 二区| 亚洲国产一二三| 国产人久久人人人人爽| 色94色欧美sute亚洲线路一ni | 欧美亚洲国产一区在线观看网站| 欧美aⅴ一区二区三区视频| 一区在线观看视频| 精品国产乱子伦一区| 一本高清dvd不卡在线观看| 久久99热国产| 日韩和欧美一区二区三区| 亚洲欧洲精品一区二区精品久久久| 日韩一区二区三区视频在线| 色婷婷激情综合| 国产成人精品免费看| 奇米亚洲午夜久久精品| 亚洲精品久久久久久国产精华液| xnxx国产精品| 日韩一区二区三区av| 欧美亚一区二区| 不卡视频在线看| 国产成都精品91一区二区三| 国内精品视频666| 免费视频最近日韩| 三级精品在线观看| 一区二区在线观看免费视频播放| 国产欧美精品国产国产专区| 日韩一区二区电影在线| 在线电影一区二区三区| 欧美三级视频在线| 欧美日韩精品一区二区三区| 欧洲国产伦久久久久久久| 91极品视觉盛宴| 色综合久久综合网97色综合| 成人va在线观看| 成人av网站在线| 成人激情免费电影网址| av电影在线观看完整版一区二区| 国产精品888| 成人在线综合网| 成人国产在线观看| 成人免费黄色在线| 成人免费黄色在线| 色婷婷综合激情| 欧美在线视频不卡| 欧美精品电影在线播放| 欧美一级生活片| 久久日一线二线三线suv| 久久综合给合久久狠狠狠97色69| 精品盗摄一区二区三区| 中文av一区二区| 中文字幕在线一区| 亚洲综合久久久久| 亚洲一区国产视频| 免费人成黄页网站在线一区二区| 美女精品一区二区| 国产91对白在线观看九色| 99精品国产热久久91蜜凸| 欧美日韩免费电影| 久久久精品影视| 亚洲欧美日韩一区| 日韩电影一区二区三区| 国产酒店精品激情| a亚洲天堂av| 91精品国产麻豆| 国产精品污网站| 五月激情六月综合| 懂色av一区二区在线播放| 一本大道av一区二区在线播放| 欧美日韩高清一区二区| 久久女同互慰一区二区三区| 一区二区三区在线视频免费| 蜜桃一区二区三区在线| 盗摄精品av一区二区三区| 欧美三级韩国三级日本三斤| 精品国产百合女同互慰| 亚洲精品视频一区二区| 蜜臀久久久久久久| 91亚洲精品乱码久久久久久蜜桃| 欧美日韩国产一区| 中文字幕乱码亚洲精品一区 | 欧美一区二区三区免费在线看 | 日本中文字幕不卡| 成人性生交大片免费看视频在线| 欧美日韩黄视频| 亚洲欧洲色图综合| 美国毛片一区二区| 91捆绑美女网站|