five

ALPBench

收藏
arXiv2024-06-25 更新2024-06-28 收录
下载链接:
https://github.com/ValentinMargraf/ActiveLearningPipelines
下载链接
链接失效反馈
官方服务:
资源简介:
ALPBench是由慕尼黑路德维希大学MCML创建的一个综合性的主动学习基准数据集,包含86个真实世界的表格分类数据集,涵盖二分类和多分类问题。该数据集通过精心设计,确保了评估的可重复性,包括精确的数据集分割和算法超参数设置。创建过程中,数据集结合了多种学习算法和查询策略,旨在通过主动学习提高机器学习算法的效率和性能。ALPBench的应用领域广泛,特别适用于需要有限标注数据资源的场景,如医疗、金融和制造等行业,旨在通过优化数据点选择策略,提升模型在有限数据条件下的泛化能力。

ALPBench is a comprehensive active learning benchmark dataset developed by the MCML (Munich Center for Machine Learning) at Ludwig Maximilian University of Munich. It includes 86 real-world tabular classification datasets covering both binary classification and multi-class classification tasks. This dataset is meticulously designed to ensure evaluation reproducibility, including precise dataset splits and algorithm hyperparameter settings. During its creation, a diverse set of learning algorithms and query strategies have been integrated, aiming to improve the efficiency and performance of machine learning algorithms through active learning. ALPBench has a wide range of application scenarios, and is particularly suitable for use cases with limited labeled data resources such as healthcare, finance, and manufacturing industries. Its core objective is to enhance the generalization ability of models under limited data conditions by optimizing data point selection strategies.
提供机构:
慕尼黑路德维希大学MCML
创建时间:
2024-06-25
原始信息汇总

ALPBench: A Benchmark for Active Learning Pipelines on Tabular Data

ALPBench 是一个用于指定、执行和性能监控的 Python 包,专注于包含学习算法和查询策略的主动学习管道(ALP)在真实世界表格分类任务中的应用。该包内置了确保评估可重复性的措施,保存了确切的训练集划分和使用的算法的超参数设置。ALPBench 包含 86 个真实世界的表格分类数据集和 5 种主动学习设置,总共产生 430 个主动学习问题。此外,该基准允许轻松扩展,例如实现自己的学习算法和/或查询策略,并与现有方法进行比较。

安装

ALPBench 适用于 Python 3.10 及以上版本

bash

通过 pip 安装基本包:

pip install alpbench

或者通过 pip 安装完整包:

pip install alpbench[full]

或者从源代码安装:

git clone https://github.com/ValentinMargraf/ActiveLearningPipelines.git cd ActiveLearningPipelines conda create --name alpbench python=3.10 conda activate alpbench

安装用于使用的包(不包括 TabNet 和 TabPFN):

pip install -r requirements.txt

安装用于使用的包(包括 TabNet 和 TabPFN):

pip install -r requirements_full.txt

快速开始

您可以通过不同的方式使用 ALPBench。已经存在许多学习器和查询策略,可以通过它们的名称访问,如下面的最小示例所示。在 ALP.pipeline 模块中,您还可以实现自己的(新的)查询策略。

拟合一个主动学习管道

拟合一个 ALP 在 openmlid 为 31 的数据集上,使用随机森林和边缘采样。您可以在 examples/ 中找到类似的示例代码片段。

python from sklearn.metrics import accuracy_score from alpbench.benchmark.BenchmarkConnector import DataFileBenchmarkConnector from alpbench.evaluation.experimenter.DefaultSetup import ensure_default_setup from alpbench.pipeline.ALPEvaluator import ALPEvaluator

创建基准连接器并建立数据库连接

benchmark_connector = DataFileBenchmarkConnector()

加载一些默认设置和算法选择

ensure_default_setup(benchmark_connector)

evaluator = ALPEvaluator(benchmark_connector=benchmark_connector, setting_name="small", openml_id=31, query_strategy_name="margin", learner_name="rf_gini") alp = evaluator.fit()

拟合 / 预测并评估预测结果

X_test, y_test = evaluator.get_test_data() y_hat = alp.predict(X=X_test) print("最终测试准确率", accuracy_score(y_test, y_hat))

输出

最终测试准确率 0.7181818181818181

搜集汇总
数据集介绍
main_image_url
构建方式
ALPBench数据集的构建方式旨在为表格式数据上的主动学习流水线提供一个基准。它包含了86个真实世界的表格式分类数据集和5个主动学习设置,共计430个主动学习问题。这些数据集和设置被设计用来模拟不同大小的初始标记数据点、迭代预算以及迭代次数,以便于评估不同查询策略和学习算法的性能。ALPBench的构建考虑了多种查询策略和学习算法的组合,以及它们在流水线中的协同作用。
特点
ALPBench数据集的特点在于其全面性和实用性。它提供了广泛的表格式数据集,涵盖了多类和二类分类任务,并且支持5种不同的主动学习设置。这使得研究者可以针对不同的数据规模、预算和迭代次数进行实验。此外,ALPBench内置了确保实验可重复性的措施,例如保存数据集分割和算法超参数设置的精确信息。这使得研究人员可以在未来的研究中重现实验结果,并进行比较。
使用方法
使用ALPBench数据集的方法是通过其提供的Python包来指定、执行和监控主动学习流水线的性能。该包具有模块化设计,允许用户轻松地组合不同的查询策略和学习算法,并应用于不同的数据集和实验设置。ALPBench还提供了日志记录功能,以便于观察主动学习过程,并记录标记统计信息和学习者性能。此外,ALPBench还提供了交叉产品实验网格和方便的扩展机制,使得大规模的实验研究变得简单易行。
背景与挑战
背景概述
在众多领域,如医疗、金融、保险和制造业等,表格数据是最常用的数据类型之一。然而,在监督机器学习任务中,数据必须首先被标记,而这一过程既费时又昂贵,通常由领域专家完成。为了解决在数据标记预算有限的情况下如何提高学习算法效率和性能的问题,主动学习(AL)领域应运而生。主动学习旨在通过选择最有信息量的数据点进行标记,从而提高学习算法的效率和性能。尽管在主动学习领域已经提出了许多查询策略,但社区仍然缺乏标准化的基准来比较不同查询策略的性能。为了填补这一空白,ALPBench被提出,这是一个用于表格数据分类任务的主动学习管道基准,它包括86个现实世界的表格分类数据集和5个主动学习设置,总共产生了430个主动学习问题。
当前挑战
尽管ALPBench为主动学习管道提供了一个全面且易于使用的基准,但仍然存在一些挑战。首先,如何选择最合适的查询策略和机器学习算法的组合仍然是一个挑战。其次,在构建主动学习管道时,如何确保实验的可重复性也是一个需要解决的问题。此外,现有的主动学习评价往往局限于特定的学习算法或数据集,这使得比较不同查询策略的性能变得困难。最后,现有的学习算法往往不能很好地代表最新的方法,例如梯度提升决策树(GBDT)集成和深度学习架构,这些方法在表格数据上已被证明非常有效,但并未包括在这些研究中。
常用场景
经典使用场景
ALPBench是一个针对表格数据分类任务的主动学习流水线基准,它为研究者提供了一个平台,用于组合不同的学习算法和查询策略,并将它们应用于主动学习流水线中。该数据集最经典的使用场景是,当仅有预算有限的标记数据可用时,研究者可以使用ALPBench来评估不同查询策略的性能,并找到最适合特定学习算法和问题的查询策略。例如,研究者可以评估不同的查询策略,如基于信息、基于表示或混合策略,以确定哪种策略能够在有限的预算下提供最佳的分类性能。
衍生相关工作
ALPBench的提出和应用,衍生了许多相关的经典工作。例如,一些研究者基于ALPBench进行了更深入的研究,探索了不同查询策略和学习算法之间的相互作用,以及它们在不同数据集和设置下的性能。此外,一些研究者还基于ALPBench开发了新的查询策略和学习算法,以进一步提高主动学习流水线的性能。这些经典工作不仅丰富了主动学习领域的研究内容,还为实际应用提供了更有效的解决方案。
数据集最近研究
最新研究方向
ALPBench 的提出填补了现有主动学习评估框架的空白,特别是在主动学习流程中,如何结合不同的查询策略和学习算法进行评估方面。该数据集的最新研究方向集中在探究如何通过结合不同的学习算法和查询策略来构建高效的主动学习流程,并评估这些流程在不同数据集和设置下的性能。此外,研究还关注如何确保评估的可重复性,以及如何通过开源的实现来促进主动学习流程的进一步研究和应用。
相关研究论文
  • 1
    ALPBench: A Benchmark for Active Learning Pipelines on Tabular Data慕尼黑路德维希大学MCML · 2024年
以上内容由遇见数据集搜集并总结生成
5,000+
优质数据集
54 个
任务类型
进入经典数据集
二维码
社区交流群

面向社区/商业的数据集话题

二维码
科研交流群

面向高校/科研机构的开源数据集话题

数据驱动未来

携手共赢发展

商业合作