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

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

?? consultr.c

?? 數據挖掘c4.5算法(vc語言版本)歡迎大家下載測試!!!!
?? C
字號:
/*************************************************************************/
/*								   	 */
/*	Classify items interactively using a set of rules		 */
/*	-------------------------------------------------		 */
/*								   	 */
/*************************************************************************/


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


		/*  External data  */

short		MaxAtt, MaxClass, MaxDiscrVal;

ItemNo		MaxItem;

Description	*Item;

DiscrValue	*MaxAttVal;

String		*ClassName,
		*AttName,
		**AttValName,
		FileName = "DF";

char		*SpecialStatus;

short		VERBOSITY = 0,
		TRACE     = 0;


Boolean		FirstTime = true;

PR		*Rule;

RuleNo		NRules = 0,
		*RuleIndex;
 
short		RuleSpace = 0;
 
ClassNo		DefaultClass;


	/*  The interview module uses a more complex description of an
	    case called a "Range Description" with lower and upper bounds.
	    For further information, see consult.c  */

typedef	struct ValRange *RangeDescRec;

struct ValRange
	{
	    Boolean Known, Asked;
	    float LowerBound, UpperBound, *Probability;
	};

RangeDescRec RangeDesc;

float Confidence;

#define	MINCF	0.50		/* minimum cf for useable rule */


/*************************************************************************/
/*								  	 */
/*  Find the best rule for the current case.			  	 */
/*  Note:  leave probability in Confidence				 */
/*								  	 */
/*************************************************************************/


RuleNo BestRule()
/*     -------- 	 */
{
    RuleNo r;
    float cf, RuleStrength();

    Confidence = 0.0;
    
    ForEach(r, 1, NRules)
    {
	cf = RuleStrength(Rule[r]);

	if ( cf > 0.3 )
	{
	    Confidence = cf;
	    return r;
	}
    }

    return 0;
}



/*************************************************************************/
/*								    	 */
/*  Given a rule, determine the strength with which we can conclude	 */
/*  that the current case belongs to the class specified by the RHS	 */
/*  of the rule								 */
/*								    	 */
/*************************************************************************/


float RuleStrength(Rule)
/*    ------------ 	 */
    PR Rule;
{
    short d;
    float RuleProb=1.0, ProbSatisfied();

    ForEach(d, 1, Rule.Size)
    {
	RuleProb *= ProbSatisfied(Rule.Lhs[d]);
	if ( RuleProb < MINCF )
	{
	    return 0.0;
	}
    }

    return ( (1 - Rule.Error) * RuleProb );
}



/*************************************************************************/
/*							   		 */
/*  Determine the probability of the current case description		 */
/*  satisfying the given condition					 */
/*							   		 */
/*************************************************************************/


float ProbSatisfied(c)
/*    ------------- 	 */
    Condition c;
{
    Attribute a;
    char v;
    float AddProb=0.0;
    Test t;
    DiscrValue i;

    t = c->CondTest;
    a = t->Tested;
    v = c->TestValue;

    CheckValue(a, Nil);

    if ( ! RangeDesc[a].Known )
    {
	return 0.0;
    }

    switch ( t->NodeType )
    {
	case BrDiscr:  /* test of discrete attribute */

	    return RangeDesc[a].Probability[v];

	case ThreshContin:  /* test of continuous attribute */

	    if ( RangeDesc[a].UpperBound <= t->Cut )
	    {
		return ( v == 1 ? 1.0 : 0.0 );
	    }
	    else
	    if ( RangeDesc[a].LowerBound > t->Cut )
	    {
		return ( v == 2 ? 1.0 : 0.0 );
	    }
	    else
	    if ( v == 1 )
	    {
		return (t->Cut - RangeDesc[a].LowerBound) /
		       (RangeDesc[a].UpperBound - RangeDesc[a].LowerBound);
	    }
	    else
	    {
		return (RangeDesc[a].UpperBound - t->Cut) /
		       (RangeDesc[a].UpperBound - RangeDesc[a].LowerBound);
	    }

	case BrSubset:  /* subset test on discrete attribute  */

	    ForEach(i, 1, MaxAttVal[a])
	    {
		if ( In(i, t->Subset[v]) )
		{
		    AddProb += RangeDesc[a].Probability[i];
		}
	    }
	    return AddProb;

    } 
    return 0.0;
}



/*************************************************************************/
/*								  	 */
/*		Process a single case				  	 */
/*								  	 */
/*************************************************************************/


    InterpretRuleset()
/*  ---------------- 	 */
{ 
    char Reply;
    Attribute a;
    RuleNo r;

    /*  Initialise  */

    ForEach(a, 0, MaxAtt)
    {
	RangeDesc[a].Asked = false;
    }

    if ( FirstTime )
    {
	FirstTime = false;
	printf("\n");
    }
    else
    {
	printf("\n-------------------------------------------\n\n");
    }

    /*  Find the first rule that fires on the item  */

    if ( r = BestRule() )
    {
	printf("\nDecision:\n");
	printf("\t%s", ClassName[Rule[r].Rhs]);

	if ( Confidence < 1.0 )
	{
	    printf("  CF = %.2f", Confidence);
	}

	printf("\n");
    }
    else
    {
	printf("\nDecision:\n");
	printf("\t%s (default class)\n", ClassName[DefaultClass]);
    }

    /*  Prompt for what to do next  */

    while ( true )
    {
	printf("\nRetry, new case or quit [r,n,q]: ");
	Reply = getchar();
	SkipLine(Reply);
	switch ( Reply )
	{
	  case 'r':  return;
	  case 'n':  Clear(); return;
	  case 'q':  exit(0);
	  default:   printf("Please enter 'r', 'n' or 'q'");
	}
    }
}
    


/*************************************************************************/
/*								  	 */
/*  Main routine for classifying items using a set of rules	  	 */
/*								  	 */
/*************************************************************************/

    main(Argc, Argv)
/*  ---- 	 */
    int Argc;
    char *Argv[];
{
    int o;
    extern char *optarg;
    extern int optind;
    Attribute a;
    RuleNo r;

    PrintHeader("production rule interpreter");

    /*  Process options  */

    while ( (o = getopt(Argc, Argv, "tvf:")) != EOF )
    {
	switch (o)
	{
	    case 't':	TRACE = 1;
			break;
	    case 'v':	VERBOSITY = 1;
			break;
	    case 'f':	FileName = optarg;
			break;
	    case '?':	printf("unrecognised option\n");
			exit(1);
	}
    }

    /*  Initialise  */

    GetNames();
    GetRules();

    if ( TRACE )
    {
	ForEach(r, 1, NRules)
	{
	    PrintRule(r);
	}
	printf("\nDefault class: %s\n", ClassName[DefaultClass]);
    }

    /*  Allocate value ranges  */

    RangeDesc = (struct ValRange *) calloc(MaxAtt+1, sizeof(struct ValRange));

    ForEach(a, 0, MaxAtt)
    {
	if ( MaxAttVal[a] )
	{
	    RangeDesc[a].Probability =
		(float *) calloc(MaxAttVal[a]+1, sizeof(float));
	}
    }

    /*  Consult  */

    Clear();
    while ( true )
    {
	InterpretRuleset();
    }
}

?? 快捷鍵說明

復制代碼 Ctrl + C
搜索代碼 Ctrl + F
全屏模式 F11
切換主題 Ctrl + Shift + D
顯示快捷鍵 ?
增大字號 Ctrl + =
減小字號 Ctrl + -
亚洲欧美第一页_禁久久精品乱码_粉嫩av一区二区三区免费野_久草精品视频
激情综合五月婷婷| 日韩国产欧美在线观看| 日韩久久精品一区| 欧美精品v国产精品v日韩精品 | 欧美三级电影网站| 91久久精品网| 欧美日韩激情在线| 欧美美女一区二区三区| 欧美一区二视频| 精品国产123| 久久久午夜电影| 国产欧美日韩另类一区| 亚洲视频免费看| 亚洲精品免费视频| 午夜久久电影网| 久色婷婷小香蕉久久| 国产一区二区三区久久久| 国产精品自拍网站| 99re热视频精品| 欧美视频精品在线| 日韩精品一区二区三区在线观看| 日韩美女一区二区三区四区| 久久久久亚洲蜜桃| 亚洲欧洲日韩av| 亚洲电影中文字幕在线观看| 麻豆国产欧美日韩综合精品二区| 狠狠网亚洲精品| 91免费国产在线| 欧美精品v日韩精品v韩国精品v| 日韩免费电影一区| 亚洲色图.com| 美脚の诱脚舐め脚责91| 国产成人鲁色资源国产91色综 | 欧洲av一区二区嗯嗯嗯啊| 777a∨成人精品桃花网| 久久久久久久性| 亚洲成人先锋电影| 成人一区二区三区中文字幕| 欧美三区在线视频| 久久精品人人做| 午夜一区二区三区视频| 韩国av一区二区三区在线观看| 97久久超碰国产精品| 欧美成人女星排行榜| 一区二区三区四区乱视频| 激情综合色丁香一区二区| 色哟哟欧美精品| 国产三级三级三级精品8ⅰ区| 亚洲国产aⅴ成人精品无吗| 国产成人一级电影| 欧美精品视频www在线观看| 国产精品情趣视频| 韩国成人精品a∨在线观看| 欧美体内she精高潮| 亚洲欧美一区二区在线观看| 久久www免费人成看片高清| 在线视频综合导航| 国产精品久久免费看| 麻豆精品国产91久久久久久| 欧美无砖专区一中文字| 欧美国产日韩精品免费观看| 日韩电影在线一区二区三区| 在线欧美日韩国产| 国产精品拍天天在线| 国产精品一二三四五| 欧美mv日韩mv亚洲| 秋霞午夜av一区二区三区| 欧美在线观看视频一区二区| 《视频一区视频二区| 丁香婷婷综合激情五月色| 久久精品亚洲精品国产欧美kt∨ | 国产无一区二区| 久久99精品一区二区三区 | 国产成人亚洲综合a∨婷婷| 在线综合亚洲欧美在线视频| 亚洲最新视频在线观看| 91视频精品在这里| 亚洲人成小说网站色在线| 波多野结衣中文字幕一区| 久久精品网站免费观看| 国产一区二区调教| 国产亚洲成年网址在线观看| 国产激情视频一区二区在线观看 | 日韩午夜在线观看视频| 日韩国产一区二| 欧美电视剧在线看免费| 美国精品在线观看| 久久伊99综合婷婷久久伊| 国产一区二区在线观看免费| 国产精品色眯眯| 91香蕉国产在线观看软件| 亚洲综合男人的天堂| 欧美色综合网站| 久久99精品久久久久久动态图| 精品免费日韩av| 成熟亚洲日本毛茸茸凸凹| 亚洲欧美日韩中文字幕一区二区三区| 91国偷自产一区二区三区成为亚洲经典| 亚洲色图第一区| 日韩一级大片在线| 风间由美中文字幕在线看视频国产欧美 | 石原莉奈一区二区三区在线观看 | 国产亚洲精品精华液| 99久久久国产精品免费蜜臀| 亚洲乱码国产乱码精品精小说| 9191精品国产综合久久久久久 | 亚洲三级理论片| 91精品国产一区二区人妖| 国产成人综合亚洲91猫咪| 亚洲欧美色综合| 精品久久久久一区| 91成人网在线| 国产一区不卡在线| 亚洲一区欧美一区| 欧美激情一二三区| 欧美另类一区二区三区| 国产成人在线影院| 日韩激情在线观看| 亚洲少妇30p| 久久久99免费| 91精品国产一区二区三区蜜臀| 成人性视频免费网站| 蜜臀av性久久久久蜜臀aⅴ四虎| 中文天堂在线一区| 欧美xfplay| 欧美日韩高清不卡| 在线亚洲+欧美+日本专区| 大桥未久av一区二区三区中文| 日本不卡1234视频| 夜色激情一区二区| 一区视频在线播放| 久久久99久久| 久久亚洲影视婷婷| 欧美一区二区三区男人的天堂| 色悠悠亚洲一区二区| 国产成人啪午夜精品网站男同| 亚洲成av人片一区二区三区| 亚洲天天做日日做天天谢日日欢 | 亚洲一卡二卡三卡四卡| 国产精品久久午夜| 欧美激情一区二区三区蜜桃视频 | 亚洲视频每日更新| 国产欧美一区二区三区鸳鸯浴| 欧美一级二级三级乱码| 欧美午夜电影一区| 欧美性色黄大片| 色婷婷av一区| 91福利视频网站| 91在线国产观看| 色婷婷久久久久swag精品| 91理论电影在线观看| 99久久久国产精品免费蜜臀| 99精品欧美一区二区蜜桃免费 | 婷婷国产v国产偷v亚洲高清| 亚洲精品亚洲人成人网在线播放| 亚洲三级久久久| 亚洲综合丁香婷婷六月香| 亚洲午夜一区二区| 亚洲va欧美va人人爽| 亚洲国产精品久久一线不卡| 夜夜精品浪潮av一区二区三区| 亚洲一区在线观看视频| 日韩电影免费在线| 韩国欧美国产1区| 国产精品69毛片高清亚洲| www.亚洲国产| 日本韩国一区二区三区视频| 欧美日韩在线播放三区| 制服.丝袜.亚洲.中文.综合| 精品久久久久久久久久久久包黑料 | 久久麻豆一区二区| 国产精品国产馆在线真实露脸| 中文成人综合网| 亚洲在线一区二区三区| 久久国产婷婷国产香蕉| 国产精品一区二区在线看| eeuss鲁片一区二区三区 | 欧美激情一区二区三区不卡| 亚洲免费观看高清在线观看| 午夜影视日本亚洲欧洲精品| 激情综合一区二区三区| av在线播放成人| 91精品国产aⅴ一区二区| 久久久久久免费网| 亚洲一区免费在线观看| 国产一区二区视频在线| 91香蕉视频mp4| 精品日本一线二线三线不卡| 亚洲丝袜美腿综合| 蜜桃精品在线观看| 色综合一个色综合亚洲| 日韩欧美国产麻豆| 又紧又大又爽精品一区二区| 久久国产生活片100| 色综合中文综合网| 91超碰这里只有精品国产| 国产欧美1区2区3区| 日韩精品福利网| 91成人网在线| 日本一区二区高清|