brew:python多分类器系统api
brew的Python项目详细描述
brew:多分类器系统api
该项目由dayvid victor和thyago 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()
依赖关系
- 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上的第一个版本。
推荐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()尚未实现