brew:python多分类器系统api

brew的Python项目详细描述


https://badge.fury.io/py/brew.pnghttps://travis-ci.org/viisar/brew.png?branch=masterCode Healthhttps://coveralls.io/repos/github/viisar/brew/badge.svg?branch=masterJoin the chat at https://gitter.im/viisar/brew

brew:多分类器系统api

该项目由dayvid victorthyago porpino于2014年启动
适用于伯南布哥联邦大学的多分类器系统课程。
这个项目的目的是提供一个简单的api,用于集成、堆叠,
混合、集成生成、集成修剪、动态分类器选择,
和动态集成选择。

功能

  • 概述:集合、堆叠和混合。
  • 集成分类器生成器:bagging,随机子空间,smote bagging,ics bagging,smote ics bagging。
  • 动态选择:整体局部精度(ola)、局部类精度(lca)、多分类器行为(mcb)、k-最近点消除(knora-e)、k-最近点联合(knora-u)、先验动态选择、后验动态选择、动态选择knn(dsknn)。
  • 合奏组合规则:多数票、最小值、最大值、平均值和中位数。
  • 集成多样性度量:熵度量e、kohavi-wolpert方差、q统计量、相关系数p、不一致度量、一致度量、双故障度量。
  • 整体修剪:通过个人贡献进行整体修剪(史诗)。

示例

importnumpyasnpimportmatplotlib.pyplotaspltimportmatplotlib.gridspecasgridspecimportitertoolsimportsklearnfromsklearn.linear_modelimportLogisticRegressionfromsklearn.svmimportSVCfromsklearn.ensembleimportRandomForestClassifierfrombrew.baseimportEnsemble,EnsembleClassifierfrombrew.stacking.stackerimportEnsembleStack,EnsembleStackClassifierfrombrew.combination.combinerimportCombinerfrommlxtend.dataimportiris_datafrommlxtend.evaluateimportplot_decision_regions# Initializing Classifiersclf1=LogisticRegression(random_state=0)clf2=RandomForestClassifier(random_state=0)clf3=SVC(random_state=0,probability=True)# Creating Ensembleensemble=Ensemble([clf1,clf2,clf3])eclf=EnsembleClassifier(ensemble=ensemble,combiner=Combiner('mean'))# Creating Stackinglayer_1=Ensemble([clf1,clf2,clf3])layer_2=Ensemble([sklearn.clone(clf1)])stack=EnsembleStack(cv=3)stack.add_layer(layer_1)stack.add_layer(layer_2)sclf=EnsembleStackClassifier(stack)clf_list=[clf1,clf2,clf3,eclf,sclf]lbl_list=['Logistic Regression','Random Forest','RBF kernel SVM','Ensemble','Stacking']# Loading some example dataX,y=iris_data()X=X[:,[0,2]]# Plotting Decision Regionsgs=gridspec.GridSpec(2,3)fig=plt.figure(figsize=(10,8))itt=itertools.product([0,1,2],repeat=2)forclf,lab,grdinzip(clf_list,lbl_list,itt):clf.fit(X,y)ax=plt.subplot(gs[grd[0],grd[1]])fig=plot_decision_regions(X=X,y=y,clf=clf,legend=2)plt.title(lab)plt.show()
decision regions plots

依赖关系

  • Python2.7+
  • scikit学习>;=0.15.2
  • numpy=1.6.1
  • scipy=0.9
  • matplotlib>;=0.99.1(仅示例)
  • mlxtend(仅限示例)

安装

使用pip

pip install brew

或者,如果您喜欢最新版本,请从此处获取:

pip install git+https://github.com/viisar/brew.git

重要参考资料

  • 组合模式分类器:方法与算法。约翰•威利父子公司,2014年。
  • 周志华。集成方法:基础和算法。CRC出版社,2012年。

文件

完整的文档位于http://brew.rtfd.org

历史

0.1.0(2014-11-12)

  • pypi上的第一个版本。

欢迎加入QQ群-->: 979659372 Python中文网_新手群

推荐PyPI第三方库


热门话题
java Hibernate会话/模板返回null   java Bluetooth无法连接到OBD2   smartGWT中的行分隔符的java等价物?   java如何删除可执行路径错误   java使用ICE Tar库对大文件进行Tar   java Spring Boot/JavaFX:添加一个仍然可以访问JPA的关机挂钩(ctrlc)   使用输入流读取java属性文件   如何在Java中迭代HashSet元素时覆盖该元素   内容类型中的javascript set charset=“utf8”   使用cassandra触发器的java   用户界面什么是适合我的GUI(JAVA)的update()方法   Java实例控制   java前置摄像头无法在不同设备上工作   java方法组织。postgresql。jdbc。连接。createClob()尚未实现