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

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

?? svm.py

?? libsvm-2.84.rar
?? PY
字號:
import svmcfrom svmc import C_SVC, NU_SVC, ONE_CLASS, EPSILON_SVR, NU_SVRfrom svmc import LINEAR, POLY, RBF, SIGMOID, PRECOMPUTEDfrom math import exp, fabsdef _int_array(seq):	size = len(seq)	array = svmc.new_int(size)	i = 0	for item in seq:		svmc.int_setitem(array,i,item)		i = i + 1	return arraydef _double_array(seq):	size = len(seq)	array = svmc.new_double(size)	i = 0	for item in seq:		svmc.double_setitem(array,i,item)		i = i + 1	return arraydef _free_int_array(x):	if x != 'NULL' and x != None:		svmc.delete_int(x)def _free_double_array(x):	if x != 'NULL' and x != None:		svmc.delete_double(x)def _int_array_to_list(x,n):	return map(svmc.int_getitem,[x]*n,range(n))def _double_array_to_list(x,n):	return map(svmc.double_getitem,[x]*n,range(n))class svm_parameter:		# default values	default_parameters = {	'svm_type' : C_SVC,	'kernel_type' : RBF,	'degree' : 3,	'gamma' : 0,		# 1/k	'coef0' : 0,	'nu' : 0.5,	'cache_size' : 100,	'C' : 1,	'eps' : 1e-3,	'p' : 0.1,	'shrinking' : 1,	'nr_weight' : 0,	'weight_label' : [],	'weight' : [],	'probability' : 0	}	def __init__(self,**kw):		self.__dict__['param'] = svmc.new_svm_parameter()		for attr,val in self.default_parameters.items():			setattr(self,attr,val)		for attr,val in kw.items():			setattr(self,attr,val)	def __getattr__(self,attr):		get_func = getattr(svmc,'svm_parameter_%s_get' % (attr))		return get_func(self.param)	def __setattr__(self,attr,val):		if attr == 'weight_label':			self.__dict__['weight_label_len'] = len(val)			val = _int_array(val)			_free_int_array(self.weight_label)		elif attr == 'weight':			self.__dict__['weight_len'] = len(val)			val = _double_array(val)			_free_double_array(self.weight)		set_func = getattr(svmc,'svm_parameter_%s_set' % (attr))		set_func(self.param,val)	def __repr__(self):		ret = '<svm_parameter:'		for name in dir(svmc):			if name[:len('svm_parameter_')] == 'svm_parameter_' and name[-len('_set'):] == '_set':				attr = name[len('svm_parameter_'):-len('_set')]				if attr == 'weight_label':					ret = ret+' weight_label = %s,' % _int_array_to_list(self.weight_label,self.weight_label_len)				elif attr == 'weight':					ret = ret+' weight = %s,' % _double_array_to_list(self.weight,self.weight_len)				else:					ret = ret+' %s = %s,' % (attr,getattr(self,attr))		return ret+'>'	def __del__(self):		_free_int_array(self.weight_label)		_free_double_array(self.weight)		svmc.delete_svm_parameter(self.param)def _convert_to_svm_node_array(x):	""" convert a sequence or mapping to an svm_node array """	import operator	# Find non zero elements	iter_range = []	if type(x) == dict:		for k, v in x.iteritems():# all zeros kept due to the precomputed kernel; no good solution yet#			if v != 0:				iter_range.append( k )	elif operator.isSequenceType(x):		for j in range(len(x)):#			if x[j] != 0:				iter_range.append( j )	else:		raise TypeError,"data must be a mapping or a sequence"	iter_range.sort()	data = svmc.svm_node_array(len(iter_range)+1)	svmc.svm_node_array_set(data,len(iter_range),-1,0)	j = 0	for k in iter_range:		svmc.svm_node_array_set(data,j,k,x[k])		j = j + 1	return dataclass svm_problem:	def __init__(self,y,x):		assert len(y) == len(x)		self.prob = prob = svmc.new_svm_problem()		self.size = size = len(y)		self.y_array = y_array = svmc.new_double(size)		for i in range(size):			svmc.double_setitem(y_array,i,y[i])		self.x_matrix = x_matrix = svmc.svm_node_matrix(size)		self.data = []		self.maxlen = 0;		for i in range(size):			data = _convert_to_svm_node_array(x[i])			self.data.append(data);			svmc.svm_node_matrix_set(x_matrix,i,data)			if type(x[i]) == dict:				if (len(x[i]) > 0):					self.maxlen = max(self.maxlen,max(x[i].keys()))			else:				self.maxlen = max(self.maxlen,len(x[i]))		svmc.svm_problem_l_set(prob,size)		svmc.svm_problem_y_set(prob,y_array)		svmc.svm_problem_x_set(prob,x_matrix)	def __repr__(self):		return "<svm_problem: size = %s>" % (self.size)	def __del__(self):		svmc.delete_svm_problem(self.prob)		svmc.delete_double(self.y_array)		for i in range(self.size):			svmc.svm_node_array_destroy(self.data[i])		svmc.svm_node_matrix_destroy(self.x_matrix)class svm_model:	def __init__(self,arg1,arg2=None):		if arg2 == None:			# create model from file			filename = arg1			self.model = svmc.svm_load_model(filename)		else:			# create model from problem and parameter			prob,param = arg1,arg2			self.prob = prob			if param.gamma == 0:				param.gamma = 1.0/prob.maxlen			msg = svmc.svm_check_parameter(prob.prob,param.param)			if msg: raise ValueError, msg			self.model = svmc.svm_train(prob.prob,param.param)		#setup some classwide variables		self.nr_class = svmc.svm_get_nr_class(self.model)		self.svm_type = svmc.svm_get_svm_type(self.model)		#create labels(classes)		intarr = svmc.new_int(self.nr_class)		svmc.svm_get_labels(self.model,intarr)		self.labels = _int_array_to_list(intarr, self.nr_class)		svmc.delete_int(intarr)		#check if valid probability model		self.probability = svmc.svm_check_probability_model(self.model)	def predict(self,x):		data = _convert_to_svm_node_array(x)		ret = svmc.svm_predict(self.model,data)		svmc.svm_node_array_destroy(data)		return ret	def get_nr_class(self):		return self.nr_class	def get_labels(self):		if self.svm_type == NU_SVR or self.svm_type == EPSILON_SVR or self.svm_type == ONE_CLASS:			raise TypeError, "Unable to get label from a SVR/ONE_CLASS model"		return self.labels			def predict_values_raw(self,x):		#convert x into svm_node, allocate a double array for return		n = self.nr_class*(self.nr_class-1)//2		data = _convert_to_svm_node_array(x)		dblarr = svmc.new_double(n)		svmc.svm_predict_values(self.model, data, dblarr)		ret = _double_array_to_list(dblarr, n)		svmc.delete_double(dblarr)		svmc.svm_node_array_destroy(data)		return ret	def predict_values(self,x):		v=self.predict_values_raw(x)		if self.svm_type == NU_SVR or self.svm_type == EPSILON_SVR or self.svm_type == ONE_CLASS:			return v[0]		else: #self.svm_type == C_SVC or self.svm_type == NU_SVC			count = 0			d = {}			for i in range(len(self.labels)):				for j in range(i+1, len(self.labels)):					d[self.labels[i],self.labels[j]] = v[count]					d[self.labels[j],self.labels[i]] = -v[count]					count += 1			return  d	def predict_probability(self,x):		#c code will do nothing on wrong type, so we have to check ourself		if self.svm_type == NU_SVR or self.svm_type == EPSILON_SVR:			raise TypeError, "call get_svr_probability or get_svr_pdf for probability output of regression"		elif self.svm_type == ONE_CLASS:			raise TypeError, "probability not supported yet for one-class problem"		#only C_SVC,NU_SVC goes in		if not self.probability:			raise TypeError, "model does not support probabiliy estimates"		#convert x into svm_node, alloc a double array to receive probabilities		data = _convert_to_svm_node_array(x)		dblarr = svmc.new_double(self.nr_class)		pred = svmc.svm_predict_probability(self.model, data, dblarr)		pv = _double_array_to_list(dblarr, self.nr_class)		svmc.delete_double(dblarr)		svmc.svm_node_array_destroy(data)		p = {}		for i in range(len(self.labels)):			p[self.labels[i]] = pv[i]		return pred, p		def get_svr_probability(self):		#leave the Error checking to svm.cpp code		ret = svmc.svm_get_svr_probability(self.model)		if ret == 0:			raise TypeError, "not a regression model or probability information not available"		return ret	def get_svr_pdf(self):		#get_svr_probability will handle error checking		sigma = self.get_svr_probability()		return lambda z: exp(-fabs(z)/sigma)/(2*sigma)	def save(self,filename):		svmc.svm_save_model(filename,self.model)	def __del__(self):		svmc.svm_destroy_model(self.model)def cross_validation(prob, param, fold):	if param.gamma == 0:		param.gamma = 1.0/prob.maxlen	dblarr = svmc.new_double(prob.size)	svmc.svm_cross_validation(prob.prob, param.param, fold, dblarr)	ret = _double_array_to_list(dblarr, prob.size)	svmc.delete_double(dblarr)	return ret

?? 快捷鍵說明

復制代碼 Ctrl + C
搜索代碼 Ctrl + F
全屏模式 F11
切換主題 Ctrl + Shift + D
顯示快捷鍵 ?
增大字號 Ctrl + =
減小字號 Ctrl + -
亚洲欧美第一页_禁久久精品乱码_粉嫩av一区二区三区免费野_久草精品视频
亚洲一区二区三区四区在线| 美脚の诱脚舐め脚责91 | 一区2区3区在线看| 色婷婷亚洲综合| 天天综合网 天天综合色| 日本高清视频一区二区| 中文字幕一区二区三| 蓝色福利精品导航| 91精品国产一区二区三区蜜臀 | 日韩欧美不卡在线观看视频| 男女男精品视频网| 久久综合九色综合97_久久久| 久久99精品视频| 国产精品麻豆久久久| 日韩一区二区在线看| av一区二区三区| 日本免费新一区视频| 中文字幕亚洲一区二区av在线| 欧美一级理论性理论a| 99久久久久久99| 人人狠狠综合久久亚洲| 最新热久久免费视频| 欧美一区二区在线看| 成人毛片视频在线观看| 成人欧美一区二区三区视频网页 | 久久中文娱乐网| 色综合久久久网| 国产精品538一区二区在线| 一区二区三区日韩| 国产午夜亚洲精品羞羞网站| 欧美日韩精品免费| 91久久久免费一区二区| 99久久亚洲一区二区三区青草| 日本视频一区二区| 美腿丝袜亚洲三区| 热久久久久久久| 免费观看在线色综合| 亚洲乱码日产精品bd| 久久噜噜亚洲综合| 国产精品久久一卡二卡| 中文一区二区完整视频在线观看| 国产精品人人做人人爽人人添 | jlzzjlzz亚洲女人18| 日本韩国欧美三级| 欧美日本高清视频在线观看| 亚洲第一久久影院| 欧美日韩精品欧美日韩精品一综合| 国产福利91精品一区二区三区| 日韩av中文字幕一区二区| 美女视频黄久久| 97精品久久久久中文字幕| 在线观看网站黄不卡| 欧美伦理影视网| 中文字幕制服丝袜一区二区三区| 17c精品麻豆一区二区免费| 夜夜揉揉日日人人青青一国产精品 | 欧美日韩在线播放一区| 精品视频一区三区九区| 欧美一区二区久久| 亚洲午夜久久久久久久久久久| 麻豆中文一区二区| 色婷婷综合久久久中文字幕| 久久久久久99久久久精品网站| 一区二区中文视频| 韩国av一区二区三区在线观看| 99久久国产综合精品女不卡| 在线成人小视频| 椎名由奈av一区二区三区| 亚洲第一主播视频| 成人一级黄色片| 久久久噜噜噜久久中文字幕色伊伊 | 亚洲麻豆国产自偷在线| 奇米精品一区二区三区在线观看| 成人福利在线看| 欧美一级午夜免费电影| 亚洲国产人成综合网站| 欧美日韩一区二区三区四区 | 国产精品第一页第二页第三页| 蜜桃视频一区二区| 欧美日韩午夜影院| 久久国产精品区| 国产欧美一区二区精品仙草咪| 久久国产精品72免费观看| 在线综合亚洲欧美在线视频| 免费精品视频在线| 久久久久免费观看| 国产精品538一区二区在线| 国产精品女主播av| 99久久精品情趣| 亚洲欧美激情插| 日本丰满少妇一区二区三区| 精品日韩一区二区三区| 国产成人av电影在线观看| 国产精品久久夜| 91麻豆精品国产91久久久久 | 欧美这里有精品| 亚洲国产wwwccc36天堂| 欧美成人一区二区三区片免费 | 日韩欧美激情一区| 99久久夜色精品国产网站| 久久99精品久久久久婷婷| 亚洲综合清纯丝袜自拍| 精品国产电影一区二区| 91麻豆国产香蕉久久精品| 蜜桃视频在线观看一区二区| 日韩美女视频一区| 日韩一级片网站| 一本一道综合狠狠老| 国产精品资源网站| 日韩高清不卡一区二区三区| 亚洲综合在线电影| 国产精品久久久久久久久免费樱桃| 337p亚洲精品色噜噜| 91啪九色porn原创视频在线观看| 蜜桃视频在线一区| 麻豆91精品视频| 日产国产高清一区二区三区| 亚洲精品日日夜夜| 成人欧美一区二区三区1314| 国产精品乱人伦一区二区| 精品国产乱码久久久久久1区2区 | 亚洲伊人伊色伊影伊综合网| 日韩欧美专区在线| 欧美一区二区三区免费大片| 一本高清dvd不卡在线观看| 国产91精品入口| 成人动漫视频在线| hitomi一区二区三区精品| 99久久精品情趣| 欧美私人免费视频| 精品国一区二区三区| 国产亚洲精品超碰| 国产精品国产a级| 亚洲国产精品尤物yw在线观看| 日韩电影免费在线| 国产在线视频一区二区三区| 成人性生交大片| 91视视频在线观看入口直接观看www | 91污在线观看| 精品国产露脸精彩对白| 视频一区二区三区中文字幕| 国产成人午夜电影网| 91在线精品一区二区| 欧美丰满高潮xxxx喷水动漫| 日韩午夜中文字幕| 国产精品污www在线观看| 一色屋精品亚洲香蕉网站| 日韩国产一区二| 成人av在线网| 欧美电影免费提供在线观看| 欧美亚洲免费在线一区| 麻豆精品视频在线观看视频| 成人激情图片网| 久久久www免费人成精品| 亚欧色一区w666天堂| 91影院在线免费观看| 久久久噜噜噜久久中文字幕色伊伊 | 色综合久久天天| 亚洲视频你懂的| aaa亚洲精品| 亚洲综合免费观看高清完整版 | 亚洲精品久久久久久国产精华液| 看电视剧不卡顿的网站| 精品少妇一区二区三区在线视频| 视频一区二区三区在线| 欧美电影免费观看高清完整版在线观看| 亚洲视频免费观看| 91国偷自产一区二区开放时间| 亚洲免费大片在线观看| 欧美在线观看禁18| 日韩精品欧美精品| 久久久久高清精品| 成人app网站| 亚洲国产sm捆绑调教视频| 91精品国产aⅴ一区二区| 国产麻豆一精品一av一免费| 国产精品国产三级国产专播品爱网| 成人性生交大片免费| 亚洲3atv精品一区二区三区| 欧美mv日韩mv国产网站| 9i在线看片成人免费| 首页国产欧美久久| 国产精品美女久久久久久| 欧美久久久久久久久久| 国产a久久麻豆| 日本最新不卡在线| 亚洲成av人影院在线观看网| 精品蜜桃在线看| 欧美日韩午夜影院| 97se亚洲国产综合自在线不卡 | 欧美午夜片在线看| 国产mv日韩mv欧美| 欧美在线观看视频一区二区| 欧美日韩免费电影| 国产欧美va欧美不卡在线| 亚洲丝袜精品丝袜在线| 日韩精品欧美成人高清一区二区| 欧美成人在线直播| 国产精品入口麻豆原神| 偷拍亚洲欧洲综合|