Skip to content

LGBO的数据处理与 oracle/evaluator 实现 #1

Description

@lwl1751

您好,感谢您公开 SAIBO 代码。

我正在复现论文:

Unleashing LLMs in Bayesian Optimization: Preference-Guided Framework for Scientific Discovery

目前,公开代码中的 LGBO 核心流程可以正常运行,但我们在复现 HPLC、Cross-barrel 和 Concrete 三个数据集上的实验时,得到的 GPBO 和 LGBO 优化轨迹及最终结果均与论文报告结果存在明显差异。

为了排除 LLM 模型和输出差异的影响,我们进一步使用不调用 LLM 的 GPBO 基线进行排查。目前在仓库中暂未找到 Figure 3 所使用的完整实验 runner、数据预处理代码以及 oracle/evaluator 实现。

我们按照论文描述实现了连续 kNN-IDW oracle:

k=12, p=2, eps=1e-12

以下百分比采用我们的本地定义:

100 × best-so-far / 去重均值 oracle 的最大值

在连续 kNN-IDW evaluator 下,GPBO 的最终平均结果为:

数据集 连续 kNN-IDW
HPLC 67.23%
Cross-barrel 85.87%
Concrete 77.58%

该结果与 Figure 3 中的优化轨迹和终点存在较大差异。

作为对照,在 GP、采集函数、预算和随机种子均保持不变的情况下,我们将每轮 acquisition 限制在原始数据表中尚未评估的输入上,结果变为:

数据集 仅从尚未评估的表内输入中选点
HPLC 88.45%
Cross-barrel 95.37%
Concrete 96.75%

该对照表明,复现结果对数据处理方式以及 oracle/evaluator 的具体实现非常敏感,这可能同时影响 GPBO 和 LGBO 的结果。

请问是否方便提供生成 Figure 3 结果时使用的:

  1. 完整实验 runner 和配置文件;
  2. HPLC、Cross-barrel 和 Concrete 的数据加载与预处理代码;
  3. 连续 oracle 的构建与查询代码,包括:
    • kNN 距离是在原始坐标还是归一化坐标中计算;
    • 搜索边界及边界外查询的处理方式;
    • 相同输入对应不同输出时的处理方式;
    • exact-match 和重复查询的处理规则;

非常感谢!

Metadata

Metadata

Assignees

No one assigned

    Labels

    No labels
    No labels

    Type

    No type

    Fields

    No fields configured for issues without a type.

    Projects

    No projects

    Milestone

    No milestone

    Relationships

    None yet

    Development

    No branches or pull requests

    Issue actions