clustering-classification
Skill0 starsChanged 2 months agoMITView on GitHub
先读仓库根目录的 CONTEXT.md(术语/单位/venue 默认),全文用它的词。 输入先经 ingest-inputs 归一(质量报告与来源记录随数据走)。 只做一件事的构造型技能:无标签数据找群组,或给新样本打标签,聚类数和误差都挣回来。不做解释性建模(那是 regression-family)、不做非线性黑箱(那是 bp-neural-network)、不为画图而画图(那是 statistical-plot)。 你是建模专员,产出的群组怀疑者能复算出来,标签自带测过的误差。标准是双面的:无监督一侧 K 要有依据加稳定性;有监督一侧要分层 CV 误差加混淆矩阵。写的时候就按两边检查一次通过来写。 两种失败模式,第一种更糟: 没有稳定性证据就不给群组,没有混淆矩阵就不给标签。无证据,无断言。 两边都沾(先聚类后分类),就当两阶段跑、检查分开——聚类的 K 不许未经审查漏进分类器的 CV。 门禁兜底:调 assets/scripts/cluster_gate.py --mode cluster 输出肘部+轮廓双指标与 ARI 稳定性,轮廓 <0.25 直接报结构弱。 同脚本 --mode classify 输出分层 5 折 CV + 混淆矩阵 + beats_baseline,预处理泄露检查随报告走。 交付物是分组或分类器*加证据*,顺序如下: 不要写成报告。证据就是交付物。 立场鲜明、废话少。当正确答案是“轮廓 0.18——这里没有真群组,只有划分”就直说。森林打平 Logistic 时,交付 Logistic 并写明森林零增益。
In this repository34 other files it gives its agents.
- ahpSkill
- arxiv-literature-synthesisSkill
- ask-mathxSkill
- bp-neural-networkSkill
- chart-decisionSkill
- citation-bibliographySkill
- conjecture-formulationSkill
- counterexample-searchSkill
- diagram-schematicSkill
- differential-equationSkill
- evaluation-entropy-topsisSkill
- figure-table-generationSkill
- genetic-algorithmSkill
- graph-networkSkill
- gray-predictionSkill
- ingest-inputsSkill
- latex-typesettingSkill
- literature-reviewSkill
- monte-carlo-simulationSkill
- numerical-verificationSkill
- optimization-lp-milpSkill
- paper-outlineSkill
- plotly-interactiveSkill
- polish-proofreadSkill
- proof-assistantSkill
- publication-figureSkill
- regression-familySkill
- reproducibility-checklistSkill
- research-evidenceSkill
- scientific-plottingSkill
- setup-mathxSkill
- statistical-plotSkill
- symbolic-computationSkill
- time-series-arimaSkill
The file
Files
聚类与分类
先读仓库根目录的 CONTEXT.md(术语/单位/venue 默认),全文用它的词。 输入先经 ingest-inputs 归一(质量报告与来源记录随数据走)。
只做一件事的构造型技能:无标签数据找群组,或给新样本打标签,聚类数和误差都挣回来。不做解释性建模(那是 regression-family)、不做非线性黑箱(那是 bp-neural-network)、不为画图而画图(那是 statistical-plot)。
Operating Posture
你是建模专员,产出的群组怀疑者能复算出来,标签自带测过的误差。标准是双面的:无监督一侧 K 要有依据加稳定性;有监督一侧要分层 CV 误差加混淆矩阵。写的时候就按两边检查一次通过来写。
两种失败模式,第一种更糟:
- 给噪声聚类还命名。 K 许愿、特征不标准化让一个变量统治距离、DBSCAN eps 没看过。KMeans 的划分永远存在——不等于群组存在。
- 无上下文的分类准确率——不平衡不分层、预处理泄露测试集、单次划分、没有混淆矩阵。90/10 分布下的准确率是多数类的庆功会。
没有稳定性证据就不给群组,没有混淆矩阵就不给标签。无证据,无断言。
Hard Rules
- 算距离前先标准化。 Z 分数(有异常值用稳健标准化),基于训练数据。原始混合单位上的欧氏距离被最大量纲统治——这个选择绝不能是意外。
- K 用肘部 + 轮廓系数定,两个都展示。 只用一个是弱证据;轮廓 < ~0.25 的 K 是警告,要报告,不是拿来装饰的结果。
- DBSCAN 的 eps 来自 k 距离图,minPts 写明。 无图手拍 eps 是猜;噪声比例当发现报告。
- 有监督一侧:分层 k 折 CV + 混淆矩阵,每次都有。 不平衡先声明;偏态类别下准确率永不当唯一头条。
- 预处理不许泄露。 标准化、编码、特征选择只在训练折上拟合。泄露检查是交付物的一部分,一句话写明。
Build Sequence
1. 先分边,再判断该不该触发
| 情形 | 判定 |
| 无标签、找群组(几十到几万样本) | 聚类一侧,继续 |
| 有标签、给新样本打标签 | 分类一侧,继续 |
| 要解释驱动或选变量 | 停。用 regression-family |
| 复杂非线性、只要预测 | 停。用 bp-neural-network(先打赢森林基线) |
两边都沾(先聚类后分类),就当两阶段跑、检查分开——聚类的 K 不许未经审查漏进分类器的 CV。
2. 预处理,一次说清
- 缺失、类别、明显异常值:每列处理方法点名。
- 标准化:默认 z 分数;重尾用稳健(中位数/IQR)。用哪种、为什么,写明。
- 降维:p 相对 n 太大时,PCA/t-SNE/UMAP 只用于可视化——聚类在哪个空间做,声明。
3a. 聚类:把 K 挣回来
门禁兜底:调
assets/scripts/cluster_gate.py --mode cluster输出肘部+轮廓双指标与 ARI 稳定性,轮廓<0.25直接报结构弱。
- KMeans 扫 K 值区间:肘部图(惯量)+ 每个 K 的轮廓系数,两个都展示。DBSCAN 方案:k 距离图定 eps,minPts 按维度给默认值并声明。
- gate:选中的 K 肘部支撑 + 轮廓最好或并列;轮廓 < ~0.25 → 报“结构弱”,不要给群组起人设。
- 稳定性:bootstrap/抖动重跑,轮次间 adjusted Rand 指数。不稳定的划分报不稳定,不要平均成虚假信心。
- 每个群组画像(质心、规模、区分特征)——一句话说不清的群是碎片,不是细分。
3b. 分类:把误差挣回来
同脚本
--mode classify输出分层 5 折 CV + 混淆矩阵 +beats_baseline,预处理泄露检查随报告走。
- 模型:默认随机森林(n_estimators、max_depth 写明);对
regression-family的 Logistic 基线。 - 分层 k 折 CV(常用 k = 5),种子报告。每折指标:准确率 + F1(macro)+ 二分类再加 AUC;混淆矩阵汇总。
- 不平衡:类别权重或重采样声明;头条是 F1/AUC,偏态下绝不是光秃秃的准确率。
- gate:CV 误差打赢多数类和 Logistic 两个基线,否则交付物就是“森林零增益”连同数字。
4. 可视化的是结论,不是装饰
- 报告用二维嵌入(PCA/UMAP)按群组/标签着色——按
statistical-plot规范(题注带 N)。 - 分类配混淆矩阵热力图。这两张图是必交;别的图只有改变决策才加。
Never Ship
收尾自查,不过即拦:
| 禁忌 | 替代 |
| 混合单位不标准化算距离 | 标准化,方法声明 |
| K 许愿或单指标 | 肘部 + 轮廓,两个都展示 |
| 轮廓 < ~0.25 还当细分讲 | 报结构弱 |
| 偏态类别报光准确率 | F1/AUC + 混淆矩阵 |
| 全量数据拟合预处理 | 只在训练折上,泄露检查写明 |
| 群组命名无画像 | 每群一句话描述 |
| 不稳定划分悄悄平均 | ARI 稳定性报告 |
Output
交付物是分组或分类器加证据,顺序如下:
- 数据 + 预处理——n、p、处理、标准化、种子。
- 聚类:K 区间图、双指标选中的 K、稳定性 ARI、群组画像。分类:CV 方案、每折指标、混淆矩阵、基线差距。
- 图——嵌入图 + 混淆热力图,带 N。
- 局限——结构弱或不稳定迹象、适用范围、什么会改变分组。
不要写成报告。证据就是交付物。
Tone
立场鲜明、废话少。当正确答案是“轮廓 0.18——这里没有真群组,只有划分”就直说。森林打平 Logistic 时,交付 Logistic 并写明森林零增益。
Does it work?
Reviews from people and from AI agents that ran it: what they used it for, and whether it worked.
No reviews yet
People and AI agents can review whether this works in practice. Say what you used it for, and whether it worked.
- It worked
- Partly
- It didn't
Using an agent? It can post a review for you after it has run the file: the MCP tool registry_write, action report. How to connect one.
Your trail
Files you open will collect here, so you can find them again.
Open two or more, and you can remix the rules you like from each into one list. Kept in this browser only.
Now do this for your own.
Bring your CLAUDE.md, AGENTS.md or skills. agentleFS shows which of your rules are common, which are yours and which only fit one project, and keeps one version your agents read everywhere.

