机器学习集市

autobazaar的Python项目详细描述


autobazaar麻省理工学院从数据到人工智能实验室的开源项目。

travispypi shield

Autobazar

  • 许可证:麻省理工学院
  • 文档:https://hdi-project.github.io/autobazaar/" rel="nofollow">https://hdi-project.github.io/autobazaar/
  • 主页:https://github.com/hdi-project/autobazaar rel="nofollow">https://github.com/hdi-project/autobazaar

概述

autobazar是一个automl系统,用于执行与 机器学习集市论文:利用ML生态系统实现有效系统 开发 通过麻省理工学院LIDS的人类数据交互(HDI)项目

它以python库的形式出现,可以直接在任何其他python中使用 项目,以及允许搜索管道以直接解决问题的cli 从命令行。

安装

要求

autobazaar已经在python 3.5、3.6和3.7上开发和测试

另外,虽然不是严格要求,但是 强烈建议使用virtualenv,以避免 干扰系统中安装的其他软件,该系统运行Autobazar

以下是使用python3.6为autobazar创建virtualenv所需的最少命令:

pip install virtualenv
virtualenv -p $(which python3.6) autobazaar-venv

之后,必须执行此命令才能激活virtualenv:

source autobazaar-venv/bin/activate

记住每次启动一个新控制台来处理autobazar时都要执行它!

使用PIP安装

创建并激活virtualenv之后,我们建议使用 pip以便安装自动总线:

pip install autobazaar

这将从pypi中拉取并安装最新的稳定版本。

从源安装

或者,激活virtualenv后,可以克隆存储库并从 通过在stable分支上运行make install进行源代码:

git clone git@github.com:HDI-Project/AutoBazaar.git
cd AutoBazaar
git checkout stable
make install

对于开发,您可以使用make install development来安装所有 测试和代码linting所需的依赖项。

数据格式

autobazaar使用的数据集是d3m模式格式 作为输入。

这个数据集模式,由麻省理工林肯实验室为DARPA的数据驱动发现开发 对于models程序,要求数据采用可读格式,如csv文件或 jpg图像,并与一些元数据规范一起在文件夹层次结构中设置 在json格式中,它包含关于包含的所有数据的信息,以及问题 我们正在努力解决的问题。

有关SC的更多详细信息hema以及如何格式化数据以符合它, 请查看模式文档

例如,您可以浏览此存储库中包含的一些数据集 演示目的:

此外,您还可以在 AWS中的D3M数据DAI S3存储桶

快速启动

在这个简短的教程中,我们将指导您完成一系列步骤,帮助您获得 从autobazaar开始,使用其cli命令abz

有关其用法和可用选项的详细信息,请执行abz--help 在您的命令行中。

<H2>1。准备数据

确保您的数据以上述内部说明的数据格式准备 以及文件系统中的未压缩文件夹,可由autobazaar直接访问。

为了检查您的数据集是否可用并且可以使用,您可以执行 命令行中的abz命令及其list子命令。 如果数据集位于不同的位置,而不是位于 当前工作目录,请不要忘记将-i参数添加到命令中,指示 包含数据集的文件夹的路径。

$ abz list -i /path/to/your/datasets/folder

输出应该是一个表,其中包含了内部所有数据集的详细信息 指定的目录:

             data_modality                task_type task_subtype             metric size_human  train_samples
dataset
185_baseball  single_table           classification  multi_class            f1Macro       148K           1073
196_autoMpg   single_table               regression   univariate   meanSquaredError        32K            298
30_personae           text           classification       binary                 f1       1,4M            116
32_wikiqa      multi_table           classification       binary                 f1       4,9M          23406
60_jester     single_table  collaborative_filtering               meanAbsoluteError        44M         880719

注意:如果您看到一个错误,指出未找到匹配的数据集,请查看 数据集格式,并确保已指示正确的路径。

在本快速入门的其余部分中,我们将使用 在数据文件夹中找到 包含在此存储库中。

<H2>2。启动搜索过程

一旦数据准备就绪,就可以使用abz搜索启动autobazar搜索过程。 命令。 为此,您需要再次提供包含数据集的路径,如下所示 以及要处理的数据集的名称。

$ abz search -i /path/to/your/datasets/folder name_of_your_dataset

这将评估默认管道,而无需对其执行额外的优化迭代。

为了开始实际的优化过程,您需要至少提供 以下附加选项:

  • -b,--budget:要执行的最大优化迭代次数。
  • -t,--超时:系统需要运行的最长时间,以秒为单位。
  • -c,--checkpoints:包含不同检查点的逗号分隔字符串,其中 到目前为止最好的管道必须根据测试数据集进行存储和评估。一定有 检查点时间之间没有空格。例如,每隔10分钟存储一次最好的管道 在30分钟后,您可以使用选项-c 60012001800

例如,要在30秒内搜索处理185_棒球数据集,请计算 到目前为止,最好的管道每10秒一次,但最多10次调整迭代,我们将 使用以下命令:

abz search 185_baseball -c10,20,30 -b10

有关可用选项的详细信息,请在 终端。

<H2>3。探索结果

一旦autobazar完成对E BEST PIPELINE,将打印一张表格 在stdout中,提供为每个数据集找到的最佳管道的摘要。 如果提供了多个检查点,则详细说明每个检查点中的最佳管道 也将包括在内。

输出将是一个与此类似的表:

                                          pipeline     score      rank  cv_score   metric data_modality       task_type task_subtype    elapsed  iterations  load_time  trivial_time  fit_time    cv_time error  step
dataset
185_baseball  fce28425-e45c-4620-9d3c-d329b8684bea  0.316961  0.682957  0.317043  f1Macro  single_table  classification  multi_class  10.024457         0.0   0.011041      0.026212       NaN        NaN  None  None
185_baseball  f7428924-79ee-439d-bc32-998a9efea619  0.675132  0.390927  0.609073  f1Macro  single_table  classification  multi_class  21.412262         1.0   0.011041      0.026212   9.99484        NaN  None  None
185_baseball  397780a5-6bf6-48c9-9a85-06b0d08c5a9d  0.675132  0.357361  0.642639  f1Macro  single_table  classification  multi_class  31.712946         2.0   0.011041      0.026212   9.99484  12.618179  None  None

或者,可以使用csv文件的名称传递-r选项,结果将 存储在那里:

pip install virtualenv
virtualenv -p $(which python3.6) autobazaar-venv
0

接下来是什么?

有关Autobazar及其所有可能性和功能的详细信息,请查看 项目文档站点

学分

Autobazar是一个开源项目,由以下团队从数据到麻省理工的人工智能实验室:

引用autobazar

如果您使用Autobazar进行研究,请考虑引用以下论文(https://arxiv.org/pdf/1905.08942.pdf):

pip install virtualenv
virtualenv -p $(which python3.6) autobazaar-venv
1

历史记录

0.1.0-2019年6月24日

首次发布。

这是用于生成结果的软件的稍微清理过的版本 在机器学习集市论文中解释

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

推荐PyPI第三方库


热门话题
java结合两个Date实例使用Joda创建datetime   带有POI和FileOutputStream的java Swing应用程序性能问题   Java中是否存在类似于Python的异常?   Java中有界通配符的泛型   使用字符和子字符串的java不同输出   在Java中获取LDAP模式   java自定义类在自身上生成ClassNotFoundException   java连接到从internet到通过LAN连接到internet的系统的serversocket   java如何通过maven在jaxws中使用jaxb插件?   java Kerberos如何获取主体或客户端名称?   java应用服务器中是否有JDBC的单点登录解决方案?   java是存储矩阵值以便以后访问的更好方法   Java等级计算器。开始这门课我需要一些帮助   未找到Android“libc++\u shared.so”中的java OpenCV实现   当我使用web配置部署描述符时使用java。xml。它显示了错误   java为什么我的ArrayList的add方法冲突,如何编辑我的自定义add方法   java创建一个以集合为键的映射?   java如何将用户输入到数字三角形中   为什么Java在读取LinkedHashMap时会自动从字符串转换为整数   类动态创建和读取java类