关于 symmetry-discovery-questionnaire
用于识别哪些变换应保持模型输出不变,或使输出按规律变化的探索技能。它引导机器学习从业者分析数据类型、坐标系、物理约束和输出行为,并整理对称性候选。
主要功能
- 01分类领域与数据类型
- 02分析坐标系选择
- 03测试候选变换
- 04考虑物理约束
- 05记录不变性与等变性
适用场景
- 01为图像模型选择对称性
- 02评估点云数据的变换
- 03判断图节点顺序是否重要
- 04检查输入变换后的输出行为
安装
复制下面的命令,在终端中运行。
npx skills add https:/ / github.com/ lyndonkl/ claude --skill symmetry-discovery-questionnaire安装后在 Claude Code 中输入/symmetry-discovery-questionnaire确认已加载。
包含的文件
除 SKILL.md 外,安装时一起下载的参考资料和脚本。
resources/domain-examples.mdmethodology.mdresources/evaluators/rubric_symmetry_discovery.json详细介绍
对称性发现问卷
工作流
复制此清单并跟踪进度:
Symmetry Discovery Progress:
- [ ] Step 1: Classify your domain and data type
- [ ] Step 2: Analyze coordinate system choices
- [ ] Step 3: Test candidate transformations
- [ ] Step 4: Analyze physical constraints
- [ ] Step 5: Determine output behavior under transformations
- [ ] Step 6: Document symmetry candidates
步骤 1:对领域和数据类型进行分类
询问用户其主要数据类型。使用此表识别可能的对称性,并引导后续问题。图像(2D 网格)→ 可能具有平移、旋转、反射对称性。3D 数据(点云、网格)→ 可能具有 SE(3)、E(3) 对称性。分子 → E(3) + 置换 + 点群。图(网络)→ 置换。集合 → 置换。时间序列 → 时间平移、周期性。表格数据 → 很少具有对称性。物理系统 → 守恒定律意味着对称性。各领域的详细示例请参阅领域示例。
步骤 2:分析坐标系的选择
引导用户回答坐标分析问题:是否存在首选原点?(否 → 平移不变性)。是否存在首选方向?(否 → 旋转不变性)。是否存在首选手性?(否 → 反射不变性)。是否存在首选尺度?(否 → 尺度不变性)。元素顺序是否有意义?(否 → 置换不变性)。记录每个答案及其理由。
步骤 3:测试候选变换
针对每个候选变换 T,询问:“如果我对输入应用 T,输出是否应该改变?”如果否 → 对 T 不变。如果是且变化可预测 → 对 T 等变。如果是且变化不可预测 → 不存在对称性。使用领域变换测试中的特定领域清单。系统地测试所有相关变换。有关此测试方法的详细说明,请参阅方法论。
步骤 4:分析物理约束
询问守恒定律和物理对称性。诺特定理:每个守恒定律都意味着一种对称性。能量守恒 → 时间平移对称性。动量守恒 → 空间平移对称性。角动量守恒 → 旋转对称性。询问:是否存在物理守恒定律?系统是否与外部参考系隔离?是否存在规范自由度?
步骤 5:确定变换下的输出行为
关键问题:输入发生变换时,输出应如何变换?分类标签 → 保持不变(不变性)。边界框 → 随物体移动(等变性)。力向量 → 随系统旋转(等变性)。标量属性 → 保持不变(不变性)。分割掩码 → 随图像变换(等变性)。这决定了你需要不变架构还是等变架构。
步骤 6:记录候选对称性
使用输出模板创建摘要。列出已识别的对称性及其置信度。注明需要实证验证的不确定情况。识别非对称性(确实会产生影响的变换)。建议后续验证和形式化步骤。此输出的质量标准见 质量评估标准。
领域变换测试
图像对称性
| 变换 | 测试问题 | 如果否 → |
|---|---|---|
| 平移 | 物体位置会影响标签吗? | 平移不变性 |
| 旋转(90°) | 旋转后的图像会有相同的标签吗? | C4 对称性 |
| 旋转(任意角度) | 任意旋转都能保持标签不变吗? | SO(2) 对称性 |
| 水平翻转 | 镜像图像会有相同的标签吗? | 反射 |
| 缩放 | 放大后的图像会有相同的标签吗? | 尺度不变性 |
3D 数据对称性
| 变换 | 测试问题 | 如果否 → |
|---|---|---|
| 3D 平移 | 绝对位置会产生影响吗? | 平移不变性 |
| 3D 旋转 | 方向会产生影响吗? | SO(3) 或 SE(3) |
| 反射 | 手性会产生影响吗? | O(3) 或 E(3) |
| 点置换 | 点的顺序会产生影响吗? | 置换不变性 |
图对称性
| 变换 | 测试问题 | 如果答案为否 → |
|---|---|---|
| 节点重新标记 | 节点 ID 是否重要,还是只有连接关系重要? | 置换不变性 |
分子对称性
| 变换 | 测试问题 | 如果答案为否 → |
|---|---|---|
| 旋转 | 属性是否与朝向无关? | SO(3) |
| 平移 | 属性是否与位置无关? | 平移 |
| 反射 | 两种对映异构体是否等价? | 纳入反射 |
| 原子置换 | 相同原子的行为是否相同? | 置换 |
时间对称性
| 变换 | 测试问题 | 如果答案为否 → |
|---|---|---|
| 时间平移 | 模式是否可以在任意时刻出现? | 时间平移 |
| 时间反演 | 正向是否与反向相同? | 时间反演 |
| 周期性 | 模式是否以周期 T 重复? | 循环对称性 |
快速参考
5 个关键问题:
- 是否存在首选坐标系?(原点、朝向、尺度)
- 元素顺序是否重要?
- 哪些变换不会改变标签?
- 适用哪些物理约束?
- 输入变换时,输出应如何变换?
常见对称性 → 群映射:
- 旋转(2D,离散)→ 循环群 Cₙ
- 旋转 + 反射(2D)→ 二面体群 Dₙ
- 旋转(2D,连续)→ SO(2)
- 旋转(3D)→ SO(3)
- 旋转 + 平移(3D)→ SE(3)
- 完整欧几里得变换(3D)→ E(3)
- 置换 → 对称群 Sₙ
输出模板
SYMMETRY CANDIDATE SUMMARY
==========================
Domain: [Data type]
Task: [Classification/Regression/Detection/etc.]
IDENTIFIED SYMMETRIES:
1. [Transformation]: [Invariance/Equivariance]
- Evidence: [Why you believe this]
- Confidence: [High/Medium/Low]
2. [Transformation]: [Invariance/Equivariance]
- Evidence: [Why you believe this]
- Confidence: [High/Medium/Low]
UNCERTAIN SYMMETRIES (need validation):
- [Transformation]: [Reason for uncertainty]
NON-SYMMETRIES (transformations that DO matter):
- [Transformation]: [Why it matters]
NEXT STEPS:
- Empirically validate uncertain symmetry candidates
- Map confirmed symmetries to mathematical groups
- Design architecture based on validated group structure