使用trixi管理您的机器学习实验-模块化、可复制、高级

trixi-slim的Python项目详细描述


DOIPyPI versionBuild StatusDocumentation StatusDownloadsGitHub

最后在你的机器学习实验中加入一些结构。 {STR 1 } $TIXI (培训和回顾性实验基础设施)是帮助您以可重复的方式配置、记录和可视化实验的工具。

贡献

我们永远感激你的贡献,即使是小小的贡献我们是博士生,这只是一个附带项目,所以总有一些需要改进的地方。

最好的方法是在github上创建pull请求。分叉存储库,直接开发或创建一个特性分支,无论您最喜欢哪个。然后转到github上的“pull requests”,选择“new pull request”和“compare across forks”。选择我们的发展作为基础,你的工作作为领导/比较

我们目前不支持完整的Github工作流,因为我们必须将工作存储库镜像到Github,但不用担心,我们可以导出pull请求并应用它们,以便您的贡献仍然显示在Github上:)

功能

^ {STR 1 } $ Traci 由三部分组成:

  • 日志api
    以您喜欢的方式将任何数据记录到任何后端。

  • 实验基础设施
    标准化您的实验,让框架做所有不方便的事情,然后简单地开始,继续, 改变和优化你所有的实验。

  • 实验浏览器
    比较、合并并目视检查实验结果

给出了实现图here

日志API

日志api为将结果记录到不同的后端提供了一种标准化的方法。 日志api支持 (除其他外):

  • 文本
  • 绘图(条形图、折线图、散点图、饼图…)
  • 图像(单个,网格)

并提供不同的后端,例如:

以及用于记录实验的experiment-logger,它使用文件记录器自动创建结构化目录,并允许 存储配置、结果、绘图、dict、数组、图像等,这样您的实验在磁盘上总是具有相同的结构。

下面是一些示例:

visdom-logger
  • 文件:
file-logger
  • 电报:
telegram-logger

实验基础设施

Experiment Infrastructure提供了配置、运行、存储和评估结果的统一方法。 它为您提供了一个实验界面,您可以为其实现培训、验证和测试。 此外,它还自动为您提供对日志api的简单访问,并存储您的配置以及 结果便于评估和复制有一个抽象的Experiment类和一个具有许多便利特性的PytorchExperiment

exp-trainexp-test

有关详细信息,请访问Documentation

实验浏览器

(我们目前正在从头开始重新制作,希望有重大改进:)

实验浏览器提供了实验的完整概述以及所有配置参数和结果。 它还允许组合和/或比较不同的实验,为您提供一个交互式比较,突出显示配置中的差异和所有图像的详细视图, 图,每个实验的结果和日志,还有现场图等等。 trixi browser

安装

安装^ {STR 1 } $TXIX:

pip install trixi
<>或总是获得最新版本,您可以通过Git直接安装^ {STR 1 } $TIXI >:

git clone https://github.com/MIC-DKFZ/trixi.git
cd trixi
pip install -e .

文档站

文档可以在这里找到:trixi.rtfd.io

也可以使用sphinx构建自己的文档。

狮身人面像设置

安装Sphinx(由于Readthedocs出现问题,目前已修复为1.7.0):
pip install sphinx==1.7.0

生成HTML:
path/to/PROJECT/doc$ make html

index.html将位于:
path/to/PROJECT/doc/_build/html/index.html

注释

  • Reunun{{CD4}}每次更新现有模块(这将自动调用狮身人面像APIDOC)
  • 不要忘记缩进或空行
  • 没有类或函数的代码不会使用apidoc自动捕获

示例文档

我们使用谷歌风格的文档字符串:

def show_image(self, image, name, file_format=".png", **kwargs):
    """
    This function shows an image.

    Args:
        image(np.ndarray): image to be shown
        name(str): image title
    """

示例

可在此处找到以下示例:

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

推荐PyPI第三方库


热门话题
如何使用java向dropup html/css添加项目   如何从java中的向量向量打印   Java Maven库项目模板   java使用atmosphere api还是直接使用grizzly?   java JComponent仅部分显示   如何将动态值传递给自定义注释,以从Java数据进行映射。性质   java破解已实现方法的返回类型的最佳方法?   java Netbeans在JFrame Gui布局中覆盖图像   spring java仅向登录用户显示注销按钮   java如何对com进行身份验证。谷歌。云bigquery。带有服务帐户的BigQuery`   java禁止空字符串参数和抛出RuntimeException以阻止方法继续的利弊   java分析项目中的所有JAR以获取版本和许可证信息   Java,数据库为什么要分配一个新对象,而我们可以直接将它放入数据库