用于置信度估计和新颖性检测的密度森林库

density_forest的Python项目详细描述


密度森林

该图书馆是在2018年春季学期的EPFL硕士项目中开发的。

github存储库:https://github.com/CyrilWendl/SIE-Master

使用DensityForest类:

拟合密度森林

假设你有你的训练数据和测试数据,在[N, D]维度中有N数据点:

fromdensity_forest.density_forestimportDensityForestclf_df=DensityForest(**params)# create new class instance, put hyperparameters hereclf_df.fit(X_train)# fit to a training setconf=clf_df.decision_function(X_test)# get confidence values for test setoutliers=clf_df.predict(X_test)# predict whether a point is an outlier (-1 for outliers 1, for inliers)

超参数记录在docstring中。要找到最佳超参数,请考虑下面的部分。

查找超参数

要找到最佳超参数,请使用helpers.cross_validator中的ParameterSearch,它允许cv和超参数搜索。

fromhelpers.cross_validatorimportParameterSearch# define hyperparameters to testtuned_params=[{'max_depth':[2,3,4],'n_trees':[10,20]}]# optionally add non-default arguments as single-element arraysdefault_params=[{'verbose':0,...}]# other default parameters # do parameter searchps=ParameterSearch(DensityForest,tuned_parameters,X_train,X_train_all,y_true_tr,f_scorer,n_iter=2,verbosity=0,n_jobs=1,default_params=default_params)ps.fit()# get model with the best parameters, as aboveclf_df=DensityForest(**ps.best_params,**default_params)# create new class instance with best hyperparameters...# continue as above

检查docstrings以获取ParameterSearch类的更详细文档。

文件结构

代码

所有用于密度林的库、用于语义分段和基线的辅助库。

density_forest/

决策树、随机林、密度树和密度林实施包

  • create_data.py:生成带标签和未带标签数据的函数
  • decision_tree.py:决策树节点的数据结构
  • decision_tree_create.py:生成决策树的函数
  • decision_tree_traverse.py:遍历决策树和预测标签的函数
  • density_forest.py:创建密度林的函数
  • density_tree.py:密度树节点的数据结构
  • density_tree_create.py:生成密度树的函数
  • density_tree_traverse.py:用于降低密度树并检索其群集参数的函数
  • helper.py:各种帮助函数
  • random_forests.py:创建随机林的函数

helpers/

用于语义分段的通用帮助程序库

  • data_augment.py:应用于图像和地面真相的自定义数据增强方法
  • data_loader.py:苏黎世数据集的pytorch数据加载器
  • helpers.py:用于导入、裁剪、填充图像和其他相关图像传输的函数
  • parameter_search.py:寻找密度森林、oc-svm和gmm最优超参数的函数(如上所述)
  • plots.py:用于标记和未标记二维和三维绘图的通用绘图机函数,用于T-SNE和PCA绘图

baselines/

置信估计基线的辅助函数msr、margin、熵和mc dropout

keras_helpers/

keras的助手函数

  • helpers.py:获取激活
  • callbacks.py:每个历元后要计算的回调
  • unet.py:苏黎世数据集网络培训的unet模型

可视化

density_forest/

基本决策树和密度树的可视化

  • Decision Forest.ipynb:随机生成的标记数据上的决策树和随机林
  • Density Forest.ipynb:随机生成的未标记数据上的密度树

主管:

  • 瓦赫宁根大学迪夫图亚教授
  • 瓦赫宁根大学迭戈·马科斯·冈萨雷斯
  • Fran_ois Golay教授,EPFL

西里尔·温德尔,2018年

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

推荐PyPI第三方库


热门话题
java如何删除列表中的重复项并将列表复制到另一个列表中   Java如何在非UI应用程序中检测tab键按下?   java无法在未调用Looper的线程内创建处理程序。警报对话框线程上的prepare()   java Jaxb将XML转换为ElementNSImpl类型,而不是正确的类型   基于java标记的过滤实现Firestore   我们可以使用Java和Eclipse使用YouTube分析Api吗?   JavaSpring注释在多个选项卡中同时打开多个视图   java Hibernate不使用JBOSS检索数据   矩阵如何从Apache Commons数学Java库中找到伪逆   对象Java打印“null”作为字符串引用!=使无效   java中的图形慢映射   java用户界面:操作栏和上下文操作栏,新趋势   java Infinispan,版本化操作返回不正确的结果   java调整保存在父JFrame中的JInternalFrame的大小,并且该父JFrame使用ComponentMover API注册   java如何防止会话属性在服务器上持久化?   java如何为SpringBoot 2创建自定义嵌入式servlet容器   使用Robolectric进行单元测试时,在片段类内调用getString()时发生java IllegalStateException