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

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

?? batchclassification.cpp

?? 粗慥集成算法集合 ,并有詳細的文檔資料和測試數據處
?? CPP
字號:
//-------------------------------------------------------------------
// Author........: Aleksander 豩rn
// Date..........:
// Description...:
// Revisions.....:
//===================================================================

#include <stdafx.h> // Precompiled headers.
#include <copyright.h>

#include <kernel/structures/batchclassification.h>

#include <kernel/utilities/iokit.h>
#include <kernel/utilities/creator.h>

//-------------------------------------------------------------------
// Methods for class BatchClassification.
//===================================================================

//-------------------------------------------------------------------
// Constructors/destructor.
//===================================================================

//-------------------------------------------------------------------
// Method........: Copy constructor
// Author........: Aleksander 豩rn
// Date..........:
// Description...:
// Comments......:
// Revisions.....:
//===================================================================

BatchClassification::BatchClassification(const BatchClassification &in) : AnnotatedStructure(in) {
	attribute_              = in.attribute_;
	matrix_                 = in.matrix_;
	roc_class_              = in.roc_class_;
	roc_area_               = in.roc_area_;
	roc_stderr_             = in.roc_stderr_;
	roc_threshold_nw_       = in.roc_threshold_nw_;
	roc_threshold_accuracy_ = in.roc_threshold_accuracy_;
	roc_targets_            = in.roc_targets_;
	roc_outputs_            = in.roc_outputs_;
}

//-------------------------------------------------------------------
// Method........: Constructor
// Author........: Aleksander 豩rn
// Date..........:
// Description...:
// Comments......:
// Revisions.....:
//===================================================================

BatchClassification::BatchClassification() {
	attribute_              = Undefined::Integer();
	roc_class_              = Undefined::Integer();
	roc_area_               = Undefined::Float();
	roc_stderr_             = Undefined::Float();
	roc_threshold_nw_       = Undefined::Float();
	roc_threshold_accuracy_ = Undefined::Float();
}

//-------------------------------------------------------------------
// Method........: Destructor
// Author........: Aleksander 豩rn
// Date..........:
// Description...:
// Comments......:
// Revisions.....:
//===================================================================

BatchClassification::~BatchClassification() {
}

//-------------------------------------------------------------------
// Methods inherited from Identifier.
//===================================================================

IMPLEMENTIDMETHODS(BatchClassification, BATCHCLASSIFICATION, AnnotatedStructure)

//-------------------------------------------------------------------
// Methods inherited from Persistent.
//===================================================================

//-------------------------------------------------------------------
// Method........: Load
// Author........: Aleksander 豩rn
// Date..........:
// Description...:
// Comments......: A temporary hack to ensure backwards compatibility.
//                 Rewrite method after some time has passed.
//
//                 ROC target/output details are currently non-persistent.
// Revisions.....:
//===================================================================

bool
BatchClassification::Load(ifstream &stream) {

	if (!AnnotatedStructure::Load(stream))
		return false;

	bool has_extra_data;

	// Load confusion matrix.
	if (!matrix_.Load(stream, has_extra_data, attribute_, roc_class_, roc_area_, roc_stderr_, roc_threshold_nw_, roc_threshold_accuracy_))
		return false;

	// Load extra data, if not already done.
	if (!has_extra_data) {
		if (!IOKit::Load(stream, attribute_))
			return false;
		if (!IOKit::Load(stream, roc_class_))
			return false;
		if (!IOKit::Load(stream, roc_area_))
			return false;
		if (!IOKit::Load(stream, roc_stderr_))
			return false;
		if (!IOKit::Load(stream, roc_threshold_nw_))
			return false;
		if (!IOKit::Load(stream, roc_threshold_accuracy_))
			return false;
	}

	return true;

}

//-------------------------------------------------------------------
// Method........: Save
// Author........: Aleksander 豩rn
// Date..........:
// Description...:
// Comments......: ROC target/output details are currently non-persistent.
// Revisions.....:
//===================================================================

bool
BatchClassification::Save(ofstream &stream) const {

	// Save stuff higher up.
	if (!AnnotatedStructure::Save(stream))
		return false;

	// Save confusion matrix.
	if (!matrix_.Save(stream))
		return false;

	// Save attribute index.
	if (!IOKit::Save(stream, attribute_))
		return false;

	// Save ROC stuff.
	if (!IOKit::Save(stream, roc_class_))
		return false;
	if (!IOKit::Save(stream, roc_area_))
		return false;
	if (!IOKit::Save(stream, roc_stderr_))
		return false;
	if (!IOKit::Save(stream, roc_threshold_nw_))
		return false;
	if (!IOKit::Save(stream, roc_threshold_accuracy_))
		return false;

	if (!IOKit::Save(stream, '\n'))
		return false;

	return true;

}

//-------------------------------------------------------------------
// Methods inherited from Structure.
//===================================================================

//-------------------------------------------------------------------
// Method........: Duplicate
// Author........: Aleksander 豩rn
// Date..........:
// Description...:
// Comments......:
// Revisions.....:
//===================================================================

Structure *
BatchClassification::Duplicate() const {
	return new BatchClassification(*this);
}

//-------------------------------------------------------------------
// Method........: Clear
// Author........: Aleksander 豩rn
// Date..........:
// Description...:
// Comments......:
// Revisions.....:
//===================================================================

void
BatchClassification::Clear() {

	// Clear local stuff.
	matrix_.Clear();
	attribute_              = Undefined::Integer();
	roc_class_              = Undefined::Integer();
	roc_area_               = Undefined::Float();
	roc_stderr_             = Undefined::Float();
	roc_threshold_nw_       = Undefined::Float();
	roc_threshold_accuracy_ = Undefined::Float();

	roc_targets_.erase(roc_targets_.begin(), roc_targets_.end());
	roc_outputs_.erase(roc_outputs_.begin(), roc_outputs_.end());

	// Do stuff higher up.
	AnnotatedStructure::Clear();

}

//-------------------------------------------------------------------
// Operators.
//===================================================================

//-------------------------------------------------------------------
// Operator......: =
// Author........: Aleksander 豩rn
// Date..........:
// Description...: Assignment operator.
// Comments......:
// Revisions.....:
//===================================================================

BatchClassification &
BatchClassification::operator=(const BatchClassification &in) {

	// Protect against self-assignment.
	if (this == &in)
		return *this;

	attribute_              = in.attribute_;
	matrix_                 = in.matrix_;
	roc_class_              = in.roc_class_;
	roc_area_               = in.roc_area_;
	roc_stderr_             = in.roc_stderr_;
	roc_threshold_nw_       = in.roc_threshold_nw_;
	roc_threshold_accuracy_ = in.roc_threshold_accuracy_;
	roc_targets_            = in.roc_targets_;
	roc_outputs_            = in.roc_outputs_;

	// This should really be done on a higher, more general level...
	if (in.IsAnnotated())
		SetAnnotation(dynamic_cast(Annotation *, in.GetAnnotation()->Duplicate()));
	else
		SetAnnotation(NULL);

  return *this;

}

//-------------------------------------------------------------------
// Operator......: ==
// Author........: Aleksander 豩rn
// Date..........:
// Description...:
// Comments......:
// Revisions.....:
//===================================================================

bool
BatchClassification::operator==(const BatchClassification &in) const {

  // Are the two matrices physically equal?
  if (&in == this)
    return true;

	// Unequal attribute index?
	if (attribute_ != in.attribute_)
		return false;

	// Unequal confusion matrices?
	if (matrix_ != in.matrix_)
		return false;

	// Unequal ROC stuff?
	Message::Debug("Comparison of ROC information not implemented yet.");

  return true;

}

//-------------------------------------------------------------------
// Operator......: !=
// Author........: Aleksander 豩rn
// Date..........:
// Description...:
// Comments......:
// Revisions.....:
//===================================================================

bool
BatchClassification::operator!=(const BatchClassification &in) const {
  return !(*this == in);
}


?? 快捷鍵說明

復制代碼 Ctrl + C
搜索代碼 Ctrl + F
全屏模式 F11
切換主題 Ctrl + Shift + D
顯示快捷鍵 ?
增大字號 Ctrl + =
減小字號 Ctrl + -
亚洲欧美第一页_禁久久精品乱码_粉嫩av一区二区三区免费野_久草精品视频
国产精品毛片久久久久久久| 亚洲欧洲日产国码二区| 久久免费午夜影院| 国产精品亲子伦对白| 亚洲精品美腿丝袜| 日韩电影网1区2区| 成人爽a毛片一区二区免费| av福利精品导航| 91丨porny丨蝌蚪视频| 欧美一区二区三区在线观看 | 久99久精品视频免费观看| 亚洲国产日韩综合久久精品| 国产一二精品视频| 91国产免费看| 国产亚洲成av人在线观看导航| 一区二区三区在线影院| 韩国毛片一区二区三区| 在线观看日产精品| 久久久国产综合精品女国产盗摄| 中文字幕av一区二区三区 | 91看片淫黄大片一级| 欧美美女网站色| 国产精品亲子伦对白| 亚洲国产精品久久不卡毛片 | 日韩在线观看一区二区| 成人精品gif动图一区| 中文字幕av资源一区| 国产成人午夜99999| 国产视频一区在线播放| 国产精品1区2区3区| 国产日韩综合av| 成人三级伦理片| 国产精品福利一区| 国产91精品一区二区| 国产精品久久午夜| 91免费看`日韩一区二区| 亚洲女同女同女同女同女同69| 99视频精品在线| 人人爽香蕉精品| 精品不卡在线视频| 国产精品91一区二区| 欧美高清在线一区| 色天天综合久久久久综合片| 亚洲高清久久久| 欧美一区二区三区免费在线看 | 99国产精品久久久| 亚洲视频 欧洲视频| 欧美三级三级三级| 久久精品久久精品| 国产精品天美传媒| 欧美图区在线视频| 久久99精品国产麻豆不卡| 久久尤物电影视频在线观看| 成人精品视频.| 亚洲国产日韩一级| 精品国产欧美一区二区| eeuss影院一区二区三区| 亚洲午夜私人影院| 久久女同性恋中文字幕| 色素色在线综合| 免费日本视频一区| 国产精品久久久久久妇女6080| 欧美这里有精品| 久久国产乱子精品免费女| 欧美国产乱子伦| 欧美日韩黄色一区二区| 粉嫩13p一区二区三区| 亚洲伊人色欲综合网| 精品成人免费观看| 色欲综合视频天天天| 美女诱惑一区二区| 一区二区三区四区精品在线视频| 日韩欧美亚洲一区二区| 91美女在线视频| 国产一区久久久| 亚洲图片自拍偷拍| 国产亚洲精品福利| 91精品国产综合久久蜜臀| www.av亚洲| 国产精品91一区二区| 视频在线观看国产精品| 亚洲色大成网站www久久九九| 日韩美女久久久| 欧美成人vr18sexvr| 日本韩国视频一区二区| 国产成人午夜视频| 美美哒免费高清在线观看视频一区二区 | 亚洲gay无套男同| 国产精品免费观看视频| 日韩女优av电影在线观看| 欧洲一区在线观看| av电影在线观看不卡| 国产精品18久久久久久久久久久久| 亚洲国产成人精品视频| 成人免费在线视频| 国产日韩欧美精品综合| 精品国产第一区二区三区观看体验| 精品视频123区在线观看| 91尤物视频在线观看| 国产一区 二区| 国产综合久久久久久鬼色| 婷婷国产v国产偷v亚洲高清| 亚洲欧美日韩国产中文在线| 欧美国产日韩在线观看| 久久亚洲一级片| 欧美精品一区在线观看| 日韩欧美你懂的| 欧美精品一二三| 欧美日韩一区二区在线观看视频| 91亚洲精品乱码久久久久久蜜桃| 成人免费毛片嘿嘿连载视频| 国精产品一区一区三区mba视频| 青青青伊人色综合久久| 日韩国产成人精品| 日韩成人精品在线观看| 国内一区二区在线| 精品夜夜嗨av一区二区三区| 韩日欧美一区二区三区| 免费三级欧美电影| 激情欧美一区二区三区在线观看| 免费一级欧美片在线观看| 另类小说图片综合网| 奇米影视在线99精品| 日本不卡123| 精品一区二区三区免费| 国产成人久久精品77777最新版本| 国产一区二区久久| 国产成人亚洲精品青草天美| 成人18视频日本| 欧美影视一区在线| 337p亚洲精品色噜噜噜| 精品国产区一区| 国产精品国产三级国产三级人妇 | 欧美bbbbb| 国产精品亚洲一区二区三区妖精 | 1000精品久久久久久久久| 一区二区三区.www| 丝袜a∨在线一区二区三区不卡| 日韩高清国产一区在线| 国内国产精品久久| av午夜一区麻豆| 9191国产精品| 久久综合精品国产一区二区三区| 国产视频一区二区三区在线观看| 国产精品丝袜在线| 亚洲人被黑人高潮完整版| 日韩精品欧美精品| 国产丶欧美丶日本不卡视频| 欧美写真视频网站| 精品日产卡一卡二卡麻豆| 亚洲欧洲综合另类在线| 麻豆91在线播放免费| 91视频com| xfplay精品久久| 亚洲麻豆国产自偷在线| 看国产成人h片视频| 91亚洲国产成人精品一区二区三| 欧美亚洲丝袜传媒另类| 久久精子c满五个校花| 亚洲成国产人片在线观看| 国产一区在线观看视频| 欧美色精品在线视频| 国产精品天美传媒| 日韩精品一二三区| 91污片在线观看| 精品欧美一区二区在线观看| 亚洲精品日韩综合观看成人91| 国产精品资源在线看| 91精品国产色综合久久久蜜香臀| 亚洲精品一二三四区| 国产 欧美在线| 欧美一级午夜免费电影| 一区二区国产视频| 成人黄色小视频| 日韩欧美美女一区二区三区| 亚洲成av人片在www色猫咪| av成人免费在线观看| 久久品道一品道久久精品| 日韩国产欧美在线观看| 欧洲亚洲国产日韩| 亚洲丝袜制服诱惑| 波多野结衣的一区二区三区| 精品国产乱码久久| 美女www一区二区| 欧美一区二区在线免费播放 | 欧美亚洲综合在线| 18涩涩午夜精品.www| 成人av网站在线观看免费| 久久久久久久性| 国产伦精品一区二区三区在线观看| 日韩视频一区二区在线观看| 天天亚洲美女在线视频| 欧美日韩激情一区二区| 亚洲狠狠爱一区二区三区| 欧美综合在线视频| 亚洲愉拍自拍另类高清精品| 在线观看日韩av先锋影音电影院| 亚洲人快播电影网| 欧美在线免费观看视频| 亚洲第一电影网|