尧图建网站 尧图建网站 YAOTU WEB BUILD 免费咨询
ARTICLE DETAIL

资讯详情

深耕网站建设与建站编程的一线实战洞察。

VedAstro 婚配 ML 管道揭秘:最近质心分类器如何训练 15k 名人数据

VedAstro 婚配 ML 管道揭秘:最近质心分类器如何训练 15k 名人数据 【免费下载链接】VedAstroA non-profit, open source project to make Vedic Astrology easily available to all.项目地址https://gitcode.com/gh_mirrors/ve/VedAstro点击查看免费下载VedAstro 是一个非营利开源项目目标是让吠陀占星Vedic Astrology变得人人可用。其中最有意思的工程之一就是它的婚配 ML 管道用 Llama 3 大模型从 15k 名名人档案中提取婚姻结局再用一个不到 200 行的最近质心分类器Nearest Centroid Classifier基于 8 维的 GunaKuta分数向量预测一段婚姻的走向是幸福、挣扎还是破裂。整个过程都在 C# / .NET 里完成部分计算通过 ILGPU 走 CUDA 加速。一条数据流水线从名人档案到训练集整个管道分为三步源码集中在 MatchMLPipeline/ 目录。1. 用 LLM 给 15k 名人贴标签原始素材是 HuggingFace/PersonList-15k.csv包含约 1.5 万条名人的姓名与出生时间。管道调用 Meta Llama 3 70B 的 API把每个名人的姓名和出生年份丢给模型要求它只输出一个固定结构的 JSON婚姻类型Arranged / Love / Pragmatic、配偶、婚期、离婚日期以及最关键的结局标签 outcomeHappiness / Struggle / Dissolution还附带一个 dataCredibilitylow/medium/high可信度字段。这条逻辑在 DatasetFactory.cs 的GetRawMarriagesFromPersonProfileLLM_LLAMA3方法中通过Parallel.ForEach以 25 的并发度遍历全部档案失败记录直接跳过、继续跑FAIL...Moving on ️。2. 合成婚配训练数据集拿到 LLM 结果后管道把每条婚姻与双方的 Guna 分数8 维向量满分 8×8拼接写入训练表。成品就是 HuggingFace/MarriageTrainingDataset.csv共约 690 条样本每行长这样字段含义PartitionKey婚姻类型前缀 ID如Arranged-06514dbdb9Outcome标签Happiness / Struggle / DissolutionMalePersonId/FemalePersonId双方名人 ID如MaurizioGucci1948Embeddings8 维 Guna 分数向量如[3.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0]KutaScore综合匹配分数0~100每条记录还带子女数、离婚原因等辅助 JSON以及 dataCredibility 可信度方便后续清洗时按质量过滤。3. 训练最近质心分类器训练入口在 MatchMLPipeline/Program.cs。流程非常直接从训练表加载 X8 维分数向量与 Y结局标签MatMinMaxValuesMatNormalizeUsing做min-max 归一化保证每个维度都落在 0~1量纲不同的分数不会互相干扰创建 4 类的NearestCentroidClassifier调用Train算出每个类的质心类内样本均值用Accuracy、ConfusionMatrix评估把质心向量保存到 Azure Table导出即 HuggingFace/NCCModels.csv。最近质心分类器到底在算什么分类器本体是 MatchMLPipeline/NearestCentroidClassifier.cs核心逻辑一目了然训练TrainL14-L63对每个类把所有样本的每维分数求平均得到质心。整个训练就是算了几组均值——这就是它简单到极致的地方没有迭代、没有超参数调优。预测PredictL67-L83把新人对的 8 维分数向量算到每个质心的欧氏距离EucDistanceL130-L137距离最近的质心对应的类就是预测结果。伪概率PredictProbsL87-L105取每个距离的倒数再归一化得到一组越近越大的伪概率可以解释为模型对各类的倾向程度。这种分类器适合小样本 类别大致呈簇状分布的场景。690 条高质量标注样本用它训练反而比上重型模型更不容易过拟合——这正是项目选择它的原因。ILGPU / CUDA 在哪里加速项目通过 ILGPU 保留了MathKernel示例用IntrinsicMath写一个同时支持 float/double 的 1D 核函数Context.CreateDefault()会自动发现机器上所有可用的加速器CUDA、OpenCL、CPU再用LoadAutoGroupedStreamKernel编译、Allocate1Ddouble分配设备显存、启动线程后GetAsArray1D()同步取回结果。这个模式的意义在于同一份 C# 计算代码有 NVIDIA 显卡就走 CUDA没有就自动回落到 CPU不需要为 GPU 单独写一套算法。批量计算 15k 人的行星分数、嵌入向量相似度这类每行独立、可向量化的任务正好是 GPU 的主场。模型如何被调用训练完的质心不会只躺在本地。API 侧的 MatchAPI.cs 在生成婚配报告时会把这对新人的 Guna 向量丢给库里的同一套工具Library/Logic/Calculate/NearestCentroidClassification.cs负责矩阵/向量加载与 min-max 归一化库中还有一个同名 NearestCentroidClassification.cs 的静态工具类与 MatchMLPipeline/NearestCentroidClassifier.cs 保持同一套数学实现保证训练端和推理端行为一致。预测结果最终会进入MatchReport与传统的 Guna 分数、行星配置分析一起构成用户看到的完整婚配报告。给想要动手的开发者如果你想在自己的占星项目里复刻这套小数据 简单分类器的方案可以参考这条路径数据侧用 LLM 做批量结构化标注DatasetFactory.cs 的 prompt 模板可直接借鉴务必带上可信度字段算法侧数据量 几千条时先试最近质心几十行代码就能拿到基线工程侧模型参数质心向量导出成 CSV 或用 Table 存储推理端只依赖一个均值向量 欧氏距离部署成本几乎为零。VedAstro 把这套流程完整开源从 15k 名人原始数据HuggingFace/PersonList-15k.csv、LLM 标注中间结果HuggingFace/MarriageInfoDataset.csv到最终模型HuggingFace/NCCModels.csv一应俱全是研究占星 机器学习落地方式的一份难得的完整样本。赞分享【免费下载链接】VedAstroA non-profit, open source project to make Vedic Astrology easily available to all.项目地址https://gitcode.com/gh_mirrors/ve/VedAstro点击查看免费下载相关推荐VedAstro开放数据集指南如何获取15000名名人的出生与婚姻数据做ML研究VedAstro开放数据集指南如何获取15000名名人的出生与婚姻数据做ML研究 VedAstro 是一个非营利开源项目它把占星学的计算逻辑、数据与研究成果15K指令样本的幕后Dolly训练数据集的质量控制标准15K指令样本的幕后Dolly训练数据集的质量控制标准 你还在为LLM大型语言模型训练数据质量发愁吗指令样本重复、标注混乱、格式不统一三大痛点是否让你的人工智能大模型微调分布式训练揭秘Relax全异步训练TransferQueue流式数据通道如何实现训练推理零等待揭秘Relax全异步训练TransferQueue流式数据通道如何实现训练推理零等待 Relax 是由小红书 AI Infra 团队开源的高性能强化学习后训练上一篇ModLens 配置完全指南API Key 轮换、多网关切换与关闭 thinking 的调优技巧下一篇yichen-skills 统一搜索架构解析12 个平台路由如何规范化可审查候选创作声明:本文部分内容由AI辅助生成(AIGC),仅供参考
返回列表