Skip to main content

A tool to manage experiment

Project description

Happy Experiments in Python (HEPY)

中文介绍

HE是一个针对命令行实验的管理工具。主要对实验中的三个部分进行管理:

  1. 实验代码版本管理。对每个实验(Experiment),HE会维护一个代码版本,用户可以随时切换到过去的代码版本进行实验。 对于需要频繁修改代码的实验而言,HE可以节省实验者大量的精力,同时提高了实验的可复现性。

  2. 实验(超)参数管理。每个实验只有一份代码,但是可能包含多个试验(Trial)。 每个试验的命令行参数不同,命令行参数决定了这次试验的实验参数。HE在每次试验的开始,会记录这次试验的超参数。

  3. 实验结果的管理。HE可以将实验结果自动保存到对应的实验文件夹下。也支持在实验结果中的评价指标进行正则匹配。

使用教程

注意事项

由于代码版本管理时会复制代码目录下的文件,用户首先需要:

  1. 创建.heignore文件,这个文件的语法和.gitignore相似。在进行代码版本管理时,会忽略.heignore中匹配的文件。
  2. 确保所有相对路径的数据文件夹都是软连接。否则复制数据文件夹会消耗大量的资源。
正式的教程
  1. 进入代码目录下
  2. 初始化
he init

在代码目录下会出现文件夹he_workspace。

  1. 运行一个试验
he run --exp ${experiment_name} -- ${script}

${experiment_name}是你给这个实验取的名字, ${script}是运行这个实验的脚本。 比如运行

he run --exp test -- ls -l

会得到下列输出

Create new experiment: test

Running script: ls -l
total 44
....

Finish experiment: test

在he_workspace文件夹下出现了一个新的文件夹test。 test/code中包含了当前时刻的代码。test/0.txt包含了第一次试验的结果。

  • 如果不指定实验名称,默认会采用当前的时间作为实验名称。
  • 如果指定的实验名称与此前的重复,则会使用过去实验时刻的代码

如果要运行多个试验,则在${script_file}中的每行写一个试验命令,并运行

he run --exp ${experiment_name} --script ${script_file}
  1. 展示实验结果
he show ${experiment_names}

Project details


Download files

Download the file for your platform. If you're not sure which to choose, learn more about installing packages.

Source Distribution

hepy-0.0.1.tar.gz (7.1 kB view details)

Uploaded Source

Built Distribution

hepy-0.0.1-py3-none-any.whl (8.7 kB view details)

Uploaded Python 3

File details

Details for the file hepy-0.0.1.tar.gz.

File metadata

  • Download URL: hepy-0.0.1.tar.gz
  • Upload date:
  • Size: 7.1 kB
  • Tags: Source
  • Uploaded using Trusted Publishing? No
  • Uploaded via: twine/3.1.1 pkginfo/1.5.0.1 requests/2.23.0 setuptools/46.1.3 requests-toolbelt/0.9.1 tqdm/4.43.0 CPython/3.6.10

File hashes

Hashes for hepy-0.0.1.tar.gz
Algorithm Hash digest
SHA256 225df96de271ce67d269d91d32bf08e795de178718190b1a1fd104b73ccd6bb4
MD5 b4aec0fba1efcf28348b7759e2965ece
BLAKE2b-256 69ba948e3a430fe9651c7994ce72f3ab90b39b129dcc6d0e557666f123dd8e38

See more details on using hashes here.

File details

Details for the file hepy-0.0.1-py3-none-any.whl.

File metadata

  • Download URL: hepy-0.0.1-py3-none-any.whl
  • Upload date:
  • Size: 8.7 kB
  • Tags: Python 3
  • Uploaded using Trusted Publishing? No
  • Uploaded via: twine/3.1.1 pkginfo/1.5.0.1 requests/2.23.0 setuptools/46.1.3 requests-toolbelt/0.9.1 tqdm/4.43.0 CPython/3.6.10

File hashes

Hashes for hepy-0.0.1-py3-none-any.whl
Algorithm Hash digest
SHA256 d5886db326b23b412d6063642447b4f483b3b4cb073356f3c61935ac480b47cb
MD5 3206c2d38fc8656f1f2ef21797ac6b1a
BLAKE2b-256 b6c409a2f2b1ea81f86a360fef4cac2c84b352e388a5eb8ca2596b411421c343

See more details on using hashes here.

Supported by

AWS AWS Cloud computing and Security Sponsor Datadog Datadog Monitoring Fastly Fastly CDN Google Google Download Analytics Microsoft Microsoft PSF Sponsor Pingdom Pingdom Monitoring Sentry Sentry Error logging StatusPage StatusPage Status page