一个小型的CSV导出重量和偏差的微库。

wandb-summarizer的Python项目详细描述


W&B摘要生成器

一个简陋的非官方的microlibrary/命令行工具,用于在Weights and Biases运行范围内汇总数据,包括一个下载(导出)wandb数据作为csv文件的小工具。这与重量和偏差无关。


安装

这个包可以通过pip获得,需要python 3。只需运行以下命令(在虚拟环境中是可选的)。

$ pip install wandb_summarizer

用法

这个包可以通过命令行或从另一个python脚本使用。命令行工具的格式如下:

$ wandb-summarizer-to-csv [username/project name] [output loc] [optional verbose flag] [optional query parameters]

来自另一个python脚本的microlibrary的大多数使用都希望使用wandb_summarizer.download.get_results,它接受以下参数:

  • project_name(str):要下载的项目的名称。格式应为用户名/项目。
  • query_param(str):The mongo-like selector用于筛选运行。如果没有提供或没有提供,将下载所有运行。默认为无。
  • api(wandb.api):用于请求运行信息的api对象。如果未提供或未提供,则将使用默认值创建新的API访问对象。默认为无。
  • logger(logger.logger):用来报告调试信息的记录器。如果没有或没有提供,则不会记录任何消息。默认为无。

示例

通过命令行工具将所有运行从sampottinger/who-wrote-this下载到csv文件:

$ wandb-summarizer-to-csv sampottinger/who-wrote-this who_wrote_this.csv

通过命令行工具将select运行从sampottinger/who-wrote-this下载到csv文件,而无需调试日志:

$ wandb-summarizer-to-csv sampottinger/who-wrote-this who_wrote_this.csv f "{\"config.corpusCol\": \"description\"}"

在另一个python脚本中从sampottinger/who-wrote-this下载运行信息:

import wandb_summarizer.download

run_info = wandb_summarizer.download.get_results('sampottinger/who-wrote-this')
print(run_info[0]['url'])

目的

这个微库在weights和biases项目中的所有或多个运行中构建摘要数据集,报告每次运行结束时的统计数据,而不是这些运行中的随时间(跨时段)的统计数据。这可用于将输入和结果汇总为项目内各个实验的表格数据工件,支持迭代模型优化或模型选择。例如,尝试在神经网络中进行正则化的不同辍学率或l2惩罚的用户可能正在将这些率记录在权重和偏差的配置对象(wandb.config)中。Wandb在线界面可以在一个表格中显示这些运行,其中包含每个运行的最终结果,但您可能希望通过构建一个条形图来可视化该表格中的信息,该条形图显示不同辍学率下的最终验证/培训集F1分数。由于wandb中没有“export table to csv”选项,因此需要编写一个自定义脚本来通过python下载这些数据。这个microlibrary/命令行工具可以很容易地将这些结果下载到一个用于事后分析的平面表中,从而更容易生成如下结果:

L2 PenaltyFinal Validation AccuracyFinal Training Accuracy
0.00173%87%
0.0173%75%
0.156%55%

开发标准

所有顶级方法都应该进行单元测试,并具有Google style guide conformant docstrings。如有可能,请遵守Google Python Style Guide


测试

通过nosetests可以使用并运行自动化测试,就像这样:

$ nosetests
.........
----------------------------------------------------------------------
Ran 9 tests in 1.331s

OK

使用的开源库

这将在MIT License下的内部使用wandb client

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

推荐PyPI第三方库


热门话题
JavaPax考试:从非标准Maven存储库解析Karaf特性存储库(XML文件)   java Spring启动Bean创建异常   java中将ArrayList转换为数组的方法   Android Studio的java Unity插件。   java在CheckStyle中从方法计数中排除getter和setter   HibernateJava。sql。SQLSyntaxErrorException:表/视图“序列”不存在   与命令行程序Java vs C通信   java WebView膨胀异常   java在O(n)java8流中寻找两个列表的交集   java使用Gradle运行单元测试时,最大堆大小在哪里设置?   ssl加载java应用程序(CXF)内的jks文件   CI:Jenkins Git:Simple Java项目:希望在特定时间在脚本上发送消息   java根据位置更改数字   java按数值排序字符串数组   macos java版本“1.6.0_65”是否与java 6模棱两可?   Cassandra中的java时间戳