版权说明:本文档由用户提供并上传,收益归属内容提供方,若内容存在侵权,请进行举报或认领
文档简介
机器学习线性分类模型的基础2020/12/3分类的线性模型第4-1课分类的线性模型逻辑回归()用网格搜索优化模型多类分类()类不平衡()多标签分类()2020/12/3分类的线性模型第5-2课逻辑回归()在线性回归中,我们讨论了简单线性回归,多元线性回归和多项式回归。这些模型是广义线性模型()的特例,这是一个灵活的框架,比普通线性回归需要更少的假设。在本课中,我们将讨论这些假设中的一些,因为它们与广义线性模型的另一种特殊情况有关,称为logistic回归2020/12/3分类的线性模型第5-3课。。。。?2020/12/3分类的线性模型第5-4课logistic回归二元分类在logistic回归中,响应变量描述了结果为阳性病例的概率。如果响应变量等于或超过判别阈值,则预测正类;否则,预测负类。使用logistic函数将响应变量建模为解释变量线性组合的函数2020/12/3分类的线性模型第5-5课成本函数成本函数,,,“。2020/12/3分类的线性模型第5-6课y={0,1},:2020/12/3分类的线性模型第5-7课求解过拟合的代价函数,。2020/12/3分类的线性模型第5-8课sklearn.linear_model.logisticregression类sklearn.linear_model.LogisticRegression(Penalty='L2',dual=false,tol=0.0001,c=1.0,fit_intercept=true,intercept_scaling=1,class_weight=none,random_state=none,solver='lbfgs',max_iter=100,multi_class='warn',verbose=0,warm_start=false,n_jobs=none)./lcqin111/article/details/83861476/2019-02-11/P/10597118.html2020/12/3分类的线性模型第5-9课分类的线性模型逻辑回归()用网格搜索优化模型多类分类()类不平衡()多标签分类()2020/12/3LinearModelforClassificationLesson5-10Tuningmodelswithgridsearch超参数是模型中未学习的参数。例如,我们的logistic回归SMS分类器的超参数包括正则化项的值和用于删除出现太频繁或不经常出现的单词的阈值。在scikitlearn中,超参数是通过构造函数设置的。在前面的示例中,我们没有为LogisticRegression()设置任何参数;我们使用了所有超参数的默认值。这些默认值通常是一个良好的开始,但它们可能无法生成最佳模型。网格搜索是选择产生最佳模型的超参数值的常用方法。网格搜索为每个应该调整的超参数获取一组可能的值,并评估一个在这些超参数集的笛卡尔积的每个元素上训练的模型。也就是说,网格搜索是一种详尽的搜索,它为开发人员提供的每个可能的超参数值组合训练和评估模型。2023/11/4LinearModelforClassificationLesson5-11TuningmodelswithgridsearchGridSearchCVclasssklearn.model_selection.GridSearchCV(estimator,param_grid,*,scoring=None,n_jobs=None,iid='deprecated',refit=True,cv=None,verbose=0,pre_dispatch='2*n_jobs',error_score=nan,return_train_score=False)RandomizedSearchCVclasssklearn.model_selection.RandomizedSearchCV(estimator,param_distributions,*,n_iter=10,scoring=None,n_jobs=None,iid='deprecated',refit=True,cv=None,verbose=0,pre_dispatch='2*n_jobs',random_state=None,error_score=nan,return_train_score=False)[source]2023/11/4LinearModelforClassificationLesson5-12TuningmodelswithgridsearchGridSearchCV2023/11/4LinearModelforClassificationLesson5-13pipeline=Pipeline([('vect',TfidfVectorizer(stop_words='english')),('clf',LogisticRegression())])parameters={'vect__max_df':(0.25,0.5,0.75),'vect__stop_words':('english',None),'vect__max_features':(2500,5000,10000,None),'vect__ngram_range':((1,1),(1,2)),'vect__use_idf':(True,False),'vect__norm':('l1','l2'),'clf__penalty':('l1','l2'),'clf__C':(0.01,0.1,1,10),}TuningmodelswithgridsearchGridSearchCV2023/11/4LinearModelforClassificationLesson5-14file_name=path.dirname(__file__)+\
"/../data/SMSSpamCollection.txt"X,y=[],[]withopen(file_name,'r',encoding='UTF-8')asfile:line=file.readline()whileline:d=line.split("\t")X.append(d[1])y.append(d[0])line=file.readline()
a={'ham':0,'spam':1}y=[a[s]forsiny]TuningmodelswithgridsearchGridSearchCV2023/11/4LinearModelforClassificationLesson5-15grid_search=GridSearchCV(pipeline,parameters,n_jobs=-1,\verbose=1,scoring='accuracy',cv=3)X_train,X_test,y_train,y_test=train_test_split(X,y)grid_search.fit(X_train,y_train)print('Bestscore:%0.3f'%grid_search.best_score_)print('Bestparametersset:')best_parameters=grid_search.best_estimator_.get_params()forparam_nameinsorted(parameters.keys()):print('\t%s:%r'%(param_name,best_parameters[param_name]))predictions=grid_search.predict(X_test)print('Accuracy:',accuracy_score(y_test,predictions))print('Precision:',precision_score(y_test,predictions))print('Recall:',recall_score(y_test,predictions))LinearModelforClassificationLogisticRegression(逻辑回归或者对数几率回归)TuningmodelswithgridsearchMulti-classclassification(多分类学习)Class-imbalance(类别不平衡)问题Multi-labelclassification(多标签分类)2023/11/4LinearModelforClassificationLesson5-16Multi-classclassificationThegoalofmulti-classclassificationistoassignaninstancetooneofthesetofclasses.scikit-learnusesone-vs.-all(one-vs.-the-rest)ormultinomial,tosupportmulti-classclassification.One-vs.-allclassificationusesonebinaryclassifierforeachofthepossibleclasses.Theclassthatispredictedwiththegreatestconfidenceisassignedtotheinstance.LogisticRegressionsupportsmulti-classclassificationusingtheone-versus-allstrategyoutofthebox.多类分类的目标是将一个实例分配给一组类。scikitlearn使用one-vs.-all(one-vs.-the-rest)或多项式来支持多类分类。One-vs.-all分类对每个可能的类使用一个二进制分类器。以最大可信度预测的类被分配给实例。LogisticRegression支持使用开箱即用的“一对所有”策略进行多类分类。2023/11/4LinearModelforClassificationLesson5-17拆分策略最经典的拆分策略有三种.“一对一”(Onevs.One,简称OvO)、“一对其余"(Onevs.Rest,简称OvR)和"多对多"(Manyvs.Many,简称MvM).OvO将这N个类别两两配对,从而产生N(N一1)/2个三分类任务,例如OvO将为区分类别Ci和Cj训练个分类器,该分类器把D中的Ci类样例作为正例,Cj类样例作为反例.在测试阶段,新样本将同时提交给所有分类器,于是我们将得到N(N-1)/2个分类结果,最终结果可通过投票产生:即把被预测得最多的类别作为最终分类结果.2023/11/4LinearModelforClassificationLesson5-18拆分策略最经典的拆分策略有三种.“一对一”(Onevs.One,简称OvO)、“一对其余"(Onevs.Rest,简称OvR)和"多对多"(Manyvs.Many,简称MvM).OvR则是每次将一个类的样例作为正例、所有其他类的样例作为反例来训练N个分类器.在测试时若仅有一个分类器预测为正类,则对应的类别标记作为最终分类结果.若有多个分类器预测为正类,则通常考虑各分类器的预测置信度,选择置信度最大的类别标记作为分类结果.2023/11/4LinearModelforClassificationLesson5-19拆分策略最经典的拆分策略有三种.“一对一”(Onevs.One,简称OvO)、“一对其余"(Onevs.Rest,简称OvR)和"多对多"(Manyvs.Many,简称MvM).MvM是每次将若干个类作为正类,若干个其他类作为反类.显然,OvO和OvR是MvM的特例.MvM的正、反类构造必须有特殊的设计,不能随意选取.一种最常用的MvM技术是“纠错输出码”(ErrorCorrectingOutputCodes,简称ECOC).ECOC是将编码的思想引入类别拆分,并尽可能在解码过程中具有容错性.2023/11/4LinearModelforClassificationLesson5-20sklearn.linear_model.LogisticRegressionclasssklearn.linear_model.LogisticRegression(penalty=’l2’,dual=False,tol=0.0001,C=1.0,fit_intercept=True,intercept_scaling=1,class_weight=None,random_state=None,solver=’
lbfgs’,max_iter=100,multi_class=’warn’,verbose=0,warm_start=False,n_jobs=None)multi_class:str,{‘ovr’,‘multinomial’,‘auto’},default:‘ovr’Iftheoptionchosenis‘ovr’,thenabinaryproblemisfitforeachlabel.For‘multinomial’thelossminimisedisthemultinomiallossfitacrosstheentireprobabilitydistribution,evenwhenthedataisbinary.‘multinomial’isunavailablewhensolver=’liblinear’.‘auto’selects‘ovr’ifthedataisbinary,orifsolver=’liblinear’,andotherwiseselects‘multinomial’.2023/11/4LinearModelforClassificationLesson5-212023/11/4LinearModelforClassificationLesson5-22sklearn.multiclass.OneVsRestClassifier(estimator,n_jobs=None)一对多(OvR)多类/多标签策略也称为一对所有,这种策略包括为每个类安装一个分类器。该策略还可用于多标签学习,其中分类器用于预测多个标签,例如,通过拟合二维矩阵,其中单元格[i,j]为1,如果样本i有标签j,则为0。https:///stable/modules/generated/sklearn.multiclass.OneVsRestClassifier.html#sklearn.multiclass.OneVsRestClassifier2023/11/4LinearModelforClassificationLesson5-23sklearn.multiclass.OneVsOneClassifier(estimator,n_jobs=None)一对一多类策略该策略包括为每个类对拟合一个分类器。在预测时刻,选出得票最多的班级。由于它需要适合n个类*(n个类-1)/2个分类器,因此这种方法通常比其他方法慢,因为它的O(n个类^2)复杂性。然而,这种方法可能有利于像核算法这样不能很好地利用n_样本进行缩放的算法。这是因为每个单独的学习问题只涉及数据的一小部分,而对于一个与其余的,完整的数据集被使用n_nu类次。https:///stable/modules/generated/sklearn.multiclass.OneVsOneClassifier.html#sklearn.multiclass.OneVsOneClassifier2023/11/4LinearModelforClassificationLesson5-24sklearn.multiclass.OutputCodeClassifier(纠错)输出码多类策略基于输出代码的策略是用二进制代码(0和1的数组)表示每个类。在拟合时,在码本中每比特一个二进制分类器被拟合。在预测时,使用分类器在类空间中投影新的点,并选择最接近点的类。这些策略的主要优点是,用户可以控制分类器的数量,用于压缩模型(0<code_size<1)或使模型对错误更加鲁棒(code_size>1)。有关详细信息,请参阅文档。https:///stable/modules/generated/sklearn.multiclass.OutputCodeClassifier.html#sklearn.multiclass.OutputCodeClassifier2023/11/4LinearModelforClassificationLesson5-25LinearModelforClassificationLogisticRegression(逻辑回归或者对数几率回归)Multi-classclassification(多分类学习)Class-imbalance(类别不平衡)问题Multi-labelclassification(多标签分类)2023/11/4LinearModelforClassificationLesson5-26class-imbalance(类别不平衡)问题类别不平衡(class-imbalance)就是指分类任务中不同类别的训练样例数目差别很大的情况.不失一般性,假定正类样例较少,反类样例较多.在现实的分类学习任务中,我们经常会遇到类别不平衡问题。第一类是直接对训练集里的反类样例进行“欠采样”(undersampling),即去除一些反例使得正、反例数日接近,然后再进行学习;第二类是对训练集里的正类样例进行“过采样"(oversampling),即增加一些正例使得正、反例数目接近,然后再进行学习;第三类则是直接基于原始训练集进行学习,但在用训练好的分类器进行预测时,将下式嵌入到其决策过程中,称为“阈值移动"(threshold-moving).2023/11/4LinearModelforClassificationLesson5-27在Scikitlearn中有一些不平衡校正技术,这些技术根据您使用的学习算法而有所不同。其中有些方法,如支持向量机或logistic回归,有类权参数。如果将此参数设置为“auto”时实例化SVC,它将根据每个类示例的频率的倒数按比例加权。不幸的是,没有一个预处理工具能达到这个目的。2023/11/4LinearModelforClassificationLesson5-28https:///scikit-learn-contrib/imbalanced-learnItcontainsmanyalgorithmsinthefollowingcategories,includingSMOTEUnder-samplingthemajorityclass(es).Over-samplingtheminorityclass.Combiningover-andunder-sampling.Createensemblebalancedsets.2023/11/4LinearModelforClassificationLesson5-29SyntheticMinorityOversamplingTechniqueSMOTE,即合成少数类过采样技术它是基于随机过采样算法的一种改进方案,由于随机过采样采取简单复制样本的策略来增加少数类样本,这样容易产生模型过拟合的问题,即使得模型学习到的信息过于特别(Specific)而不够泛化(General),SMOTE算法流程如下:对于少数类中每一个样本x,以欧氏距离为标准计算它到少数类样本集Smin中所有样本的距离,得到其k近邻。根据样本不平衡比例设置一个采样比例以确定采样倍率N,对于每一个少数类样本x,从其k近邻中随机选择若干个样本,假设选择的近邻为xn。对于每一个随机选出的近邻xn,分别与原样本按照如下的公式构建新的样本xnew=x+rand(0,1)∗|x−xn|2023/11/4LinearModelforClassificationLesson5-30LinearModelforClassificationLogisticRegression(逻辑回归或者对数几率回归)TuningmodelswithgridsearchMulti-classclassification(多分类学习)Class-imbalance(类别不平衡)问题Multi-labelclassification(多标签分类)2023/11/4LinearModelforClassificationLesson5-31Multi-labelclassificationandproblemtransformationProblemtransformationmethodsaretechniquesthatcasttheoriginalmulti-labelproblemasasetofsingle-labelclassificationproblems.ConverteachsetoflabelsencounteredinthetrainingdatatoasinglelabelTrainonebinaryclassifierforeachofthelabelsinthetrainingset2023/11/4LinearModelforClassificationLesson5-322023/11/4LinearModelforClassificationLesson5-33sklearn.multiclass.OneVsRestClassifier(estimator,n_jobs=None)One-vs-the-rest(OvR)multiclass/multilabelstrategyAlsoknownasone-vs-all,thisstrategyconsistsinfittingoneclassifierperclass.Thisstrategycanalsobeusedformultilabellearning,whereaclassifierisusedtopredictmultiplelabelsforinstance,byfittingona2-dmatrixinwhichcell[i,j]is1ifsampleihaslabeljand0otherwise.https:///stable/modules/generated/sklearn.multiclass.OneVsRestClas
温馨提示
- 1. 本站所有资源如无特殊说明,都需要本地电脑安装OFFICE2007和PDF阅读器。图纸软件为CAD,CAXA,PROE,UG,SolidWorks等.压缩文件请下载最新的WinRAR软件解压。
- 2. 本站的文档不包含任何第三方提供的附件图纸等,如果需要附件,请联系上传者。文件的所有权益归上传用户所有。
- 3. 本站RAR压缩包中若带图纸,网页内容里面会有图纸预览,若没有图纸预览就没有图纸。
- 4. 未经权益所有人同意不得将文件中的内容挪作商业或盈利用途。
- 5. 人人文库网仅提供信息存储空间,仅对用户上传内容的表现方式做保护处理,对用户上传分享的文档内容本身不做任何修改或编辑,并不能对任何下载内容负责。
- 6. 下载文件中如有侵权或不适当内容,请与我们联系,我们立即纠正。
- 7. 本站不保证下载资源的准确性、安全性和完整性, 同时也不承担用户因使用这些下载资源对自己和他人造成任何形式的伤害或损失。
最新文档
- 家具产品售后服务方案范本
- 个人商业计划书完整版5篇
- 美丽的小兴安岭课件
- 地理自然特征与农业一草原和荒漠新
- pep六年级下册课件
- 项目部安全管理人员安全培训试题附下载答案可打印
- 【互动宝宝资源中心】幼儿园主题教案:秋天主题活动设计
- 生产经营负责人安全培训试题附答案(典型题)
- 公司项目负责人安全培训试题及参考答案(综合卷)
- 厂里安全培训试题【模拟题】
- 技术通知单(新模版-0516)
- 冰箱温度登记表
- 必修二2.1充分发挥市场在资源配置中起决定性作用课件
- 英语听力技巧与应用(山东联盟)智慧树知到课后章节答案2023年下滨州学院
- 高级政工师职称面试题
- 项目经理培训教程
- 大唐之美通用模板
- 国开2023秋人文英语4形考任务5-8参考答案
- 永安财险广东省(不含深圳市)地方财政补贴海水网箱水产养殖风灾指数保险条款
- 众辰5400变频器说明书
- 数学家华罗庚的故事课件
评论
0/150
提交评论