news 2026/10/2 6:54:20

HyperAgents实验结果可视化完整指南:5个脚本快速绘制进度曲线与archive演化图

作者头像

张小明

前端开发工程师

1.2k 24
文章封面图
HyperAgents实验结果可视化完整指南:5个脚本快速绘制进度曲线与archive演化图

HyperAgents实验结果可视化完整指南:5个脚本快速绘制进度曲线与archive演化图

【免费下载链接】HyperAgentsSelf-referential self-improving agents that can optimize for any computable task项目地址: https://gitcode.com/gh_mirrors/hy/HyperAgents

HyperAgents 是一个自指自我改进的智能体系统,其analysis模块提供了一套开箱即用的实验结果可视化工具:一条命令就能画出训练进度曲线、多方法对比图、显著性检验报告,以及把整个 agent 演化历史渲染成"家谱树"的 archive 演化图。本文面向新手,手把手讲清 analysis/ 目录下 5 个绘图脚本的用法、输出文件与关键参数,帮助你在跑完实验后快速产出论文级图表。

一分钟了解 analysis 模块

HyperAgents 的运行入口是 generate_loop.py,每次实验会在outputs/下生成一个带时间戳的运行目录(如outputs/generate_20251217_160752_316659),核心数据存放在其中的archive.jsonl(记录每一代 agent 及其父代关系)。analysis模块的所有脚本都围绕这份数据做绘图:

脚本作用典型输出
analysis/plot_progress.py单实验进度曲线(最佳 agent / 存档平均 / 最佳谱系)progress_plot_*.png+progress_info_*.txt
analysis/visualize_archive.py把 agent 演化树渲染成按分数着色的图archive_graph_*.png
analysis/plot_comparison.py多实验、多方法随迭代次数的对比曲线analysis/outputs/comparison_*.png
analysis/plot_testevals.py最终测试成绩柱状图(含基线横线)analysis/outputs/testeval_*_barplot.png
analysis/analysis_utils.py共享工具:bootstrap 置信区间、成对显著性检验significance_*.txt报告

图:HyperAgents 支持的 balrog 多游戏域中 NetHack(NLE)环境使用的瓦片图集,来自 domains/balrog/environments/nle/。可视化脚本分析的数据正是来自这些任务环境的评测分数。

💡 所有脚本依赖 utils/gl_utils.py 中的load_archive_data、get_saved_score、get_parent_genid等函数读取存档与分数,以及 utils/domain_utils.py 判断各域支持的 split(train/val)与评分类型(agent/ensemble/max)。

绘制进度曲线:plot_progress.py 一键上手

想快速回答"我的实验跑得怎么样",用 analysis/plot_progress.py。它会遍历archive.jsonl中的每一代,画出三条曲线:

  • Best Agent:截至当前迭代的最优分数(累计最大值);
  • Average of Archive:存档中所有有效 agent 的分数均值;
  • Lineage to Final Best Agent:从初始节点沿父代链回溯到最终最佳 agent 的演化谱系。

用法示例(单域 / 多域聚合):

# 单域:在 paper_review 域上画 train split 的进度图 python analysis/plot_progress.py --domains paper_review --path ./outputs/generate_20251217_160752_316659 # 多域:把多个域的分数取平均后聚合绘制,并额外保存 SVG python analysis/plot_progress.py --domains paper_review genesis_go2walking \ --path ./outputs/generate_xxx --svg

参数小贴士:

  • --domains:传一个域走单域模式;传多个域自动切换为"together"聚合模式(任一域分数缺失则记为无效);
  • --color:可选blue/green/orange三套配色;
  • --check_ensemble:若域支持集成评测,会自动补画ensemble与max类型曲线。

输出文件保存在运行目录内:progress_plot_{域}_{split}_{类型}.png,并附带一份progress_info_*.txt,里面记录了总迭代数、每代最佳分数和最佳谱系的 genid 及补丁文件,方便交叉核对。

可视化 agent 演化树:visualize_archive.py 实战

想看"agent 是怎么一代代进化出来的",用 analysis/visualize_archive.py。它把每个 genid 当作节点、父子关系当作边,构建有向图后用 graphviz 布局,并按分数着色(橙→黄→绿渐变),分数最高的节点会画成菱形标记 🎯。

# 单域演化图 python analysis/visualize_archive.py --domains paper_review --path ./outputs/generate_xxx # 多域聚合 + 显示 valid_parent 边框(红/绿)+ 保存 SVG python analysis/visualize_archive.py --domains paper_review genesis_go2walking \ --path ./outputs/generate_xxx --together --plot_borders --svg

常用参数:

  • --trunc_its N:只画前 N 个节点,图太大时快速"减负";
  • --together:多域分数取平均,画在一张图上;
  • --plot_borders:根据元数据里的valid_parent给节点画红/绿边框,方便定位异常谱系。

输出为运行目录下的archive_graph_{域}_{split}_{类型}.png(300 dpi,可加--svg导出矢量版)。

多方法横向对比:plot_comparison.py 与显著性检验

论文级对比图由 analysis/plot_comparison.py 生成。它的工作流是:

  1. 读取 plot_comparison.py 中domains_paths_data里配置的若干组实验路径(如DGM、DGM-HA、DGM-HA w/o self-improve等);
  2. 对每条运行曲线做插值并对齐到统一网格;
  3. 用 analysis/analysis_utils.py 中的compute_bootstrap_ci计算中位数与 95% bootstrap 置信区间(也可关闭 bootstrap 改用均值±标准差);
  4. 用save_significance_tests输出成对 t 检验 / Wilcoxon / Mann-Whitney 显著性报告到analysis/outputs/significance_*.txt。

修改实验路径后直接运行即可:

python analysis/plot_comparison.py

产物包括analysis/outputs/comparison_{组名}_{域}.png以及analysis/outputs/pdfs/下的 PDF/SVG 透明底版本,可直接插入论文。方法配色由METHODS_TO_COLORS统一管理,保证多图之间颜色一致。

最终成绩柱状图:plot_testevals.py 快速产出

实验收尾时,用 analysis/plot_testevals.py 把每个方法的最终测试分数画成柱状图,并把SFT、Representative Baseline、Default Reward Function等静态基线画成黑色虚线横条作参照。支持--top_n控制每个运行取前几名 agent 的成绩,同样会顺带生成testevals_significance_*.txt显著性报告。

# 每个方法只取每轮最佳 1 个 agent 的成绩 python analysis/plot_testevals.py --top_n 1

📌 数据目前直接写在该脚本的data列表里,复现自己的实验时替换/追加对应分数即可;各域的 y 轴上限由DOMAIN_YLIM控制。

常见输出文件速查与 FAQ

  • 图在哪?单实验图(进度图、演化树)写在--path指定的运行目录内;多实验对比图统一落在analysis/outputs/;
  • 某条曲线缺失?通常是archive.jsonl中该代 agent 在对应域编译/运行失败,分数为None会被排除在均值外;
  • 显著性报告怎么读?报告中p < 0.05 / 0.01 / 0.001分别标注******;bootstrap 模式下自动选用非参数检验(Wilcoxon / Mann-Whitney),均值模式下选用配对/独立 t 检验;
  • 想做迁移实验的选点分析?可参考 analysis/transfer_utils.py,它按max_score/growth等策略为迁移实验挑选候选节点,并生成对应的评测命令。

跑完generate_loop.py后,按"进度曲线 → 演化树 → 对比图 → 柱状图"的顺序使用analysis模块,你就能用 4 条命令完成从单实验体检到论文级图表的完整可视化流程。更多项目背景与安装说明见 README.md。

【免费下载链接】HyperAgentsSelf-referential self-improving agents that can optimize for any computable task项目地址: https://gitcode.com/gh_mirrors/hy/HyperAgents

创作声明:本文部分内容由AI辅助生成(AIGC),仅供参考

版权声明: 本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若内容造成侵权/违法违规/事实不符,请联系邮箱:809451989@qq.com进行投诉反馈,一经查实,立即删除!
网站建设 2026/10/2 6:54:18

病毒寄生、自指崩溃与经验实体绑定:大语言模型“波话连篇”的逻辑根源、学术分赃机制与价值AI重构

论符号宿命、认知置换与学术特权分赃&#xff1a;大语言模型中的 “波普尔病毒” 现象、自指双重死局与物理因果绑定的重构摘要当前全球大语言模型&#xff08;LLMs&#xff09;的迭代狂热正处于技术神话与资本叙事的交汇巅峰。然而&#xff0c;基于下一词预测&#xff08;Next…

作者头像 李华
网站建设 2026/10/2 6:51:35

AI开发实战:OpenClaw小龙虾图形化界面安装,读取腾讯文档写周报

/* MD / 富文本中的 .toc(含博客园搬家等嵌套结构);.toc-box 在侧栏,不受影响 */#content_views .toc,/* 编辑器常在目录前后插入空 p(:empty 仍占 20px),一并去掉避免顶空隙 */#content_views.markdown_views > p:empty:has(+ .toc),#content_views.markdown_views …

作者头像 李华
网站建设 2026/10/2 6:50:06

OpenClaw Skills 配置到 TaoToken:统一 Key 与 API 通道的接入指南

/* MD / 富文本中的 .toc(含博客园搬家等嵌套结构);.toc-box 在侧栏,不受影响 */#content_views .toc,/* 编辑器常在目录前后插入空 p(:empty 仍占 20px),一并去掉避免顶空隙 */#content_views.markdown_views > p:empty:has(+ .toc),#content_views.markdown_views …

作者头像 李华