【RustyML入门】2.0. 经典机器学习
2. 经典机器学习在 RustyML 里凡是不属于神经网络的部分都归入经典机器学习线性模型、树、核方法、聚类和降维。这类算法训练快对数据量要求低产出的模型也能让你看懂、说清。先从它们入手。只有当问题确实需要一个深层网络时才转向第 3 章。本章的每个估计器estimator都位于rustyml::machine_learning之下共享同一份小约定。用new构造模型它会校验参数并返回Result。唯一的例外是LinearRegression::new它不会失败所以直接返回Self。用fit训练模型用predict做推理降维模型除外。降维变换器改用transform和fit_transform不用predict。把这套节奏学会一次本章的全部十四个模型都通用。动手之前先读第 1 章。先读使用ndarray准备数据因为每个模型吃进去的都是Array2f64特征矩阵。也读一下错误处理因为构造函数和fit/predict交还的都是 crate 自己的Result。第 4 章讲特征的编码与缩放。第 5 章讲你用来评判这些模型的准确率、轮廓系数和 R^2 分数。本章其余部分都是在下面这套骨架上做变化userustyml::machine_learning::LinearRegression;usendarray::array;fnmain(){// construct - fit - predict每个估计器都在重复这套节奏letmutmodelLinearRegression::new(true);letxarray![[1.0,2.0],[2.0,3.0],[3.0,4.0]];letyarray![6.0,9.0,12.0];model.fit(x,y).unwrap();letpredsmodel.predict(array![[4.0,5.0]]).unwrap();println!(prediction: {:?},preds);}各节自成一体需要哪个模型就直接翻到那一节。按顺序读会从最简单的估计器一路读到最复杂的那些。监督学习从带标签的样本中预测目标。线性回归拟合连续目标可选 L1/L2 正则化求解器可在梯度下降和闭式解之间选择。想把 fit/predict 这套流程学到手从它入手最合适。逻辑回归沿用同一套梯度机制来做二分类。K近邻跳过训练直接靠邻近度分类距离度量和加权方式都可挑选。决策树把特征空间切成一条条可读的 if/else 规则可选 ID3、C4.5、CART 三种算法之一并带剪枝。支持向量机一节覆盖两个模型核化的SVCSMO 求解器用于拟合弯曲的边界快速的LinearSVC用于宽而高维的数据。线性判别分析把每个类别建模为共享协方差的高斯分布同时完成分类与降维。聚类把无标签数据分组。KMeans用 k-means 初始化把点划入固定数量的簇。它速度快也是常见的默认选择。DBSCAN按密度找出任意形状的簇把离群点标为噪声。它事先不需要知道簇的数量。MeanShift同样能自行确定簇的数量办法是沿密度曲面往上爬。用聚类指标给这三种方法打分。降维在压缩特征的同时保住数据结构。主成分分析是去相关和压缩的默认线性方法。核主成分分析借助 RBF、多项式等核把它推广到非线性结构。t-SNE把高维数据嵌入 2 维或 3 维只为可视化服务。它学不出可复用的投影。它只提供fit_transform没有面向新样本的transform。异常检测自成一类。孤立森林通过随机切分来衡量每个点被孤立的难易程度无需任何标签就能标出离群点。

相关新闻

暗黑破坏神2存档编辑技术深度解析:从二进制结构到角色定制革命

暗黑破坏神2存档编辑技术深度解析:从二进制结构到角色定制革命

暗黑破坏神2存档编辑技术深度解析:从二进制结构到角色定制革命 【免费下载链接】diablo_edit Diablo II Character editor. 项目地址: https://gitcode.com/gh_mirrors/di/diablo_edit 在暗黑破坏神2的二十年游戏历程中,无数玩家为刷取完美装备投…

2026/10/17 3:32:18 阅读更多 →
终极指南:使用WarcraftHelper彻底解决魔兽争霸III闪退与兼容性问题

终极指南:使用WarcraftHelper彻底解决魔兽争霸III闪退与兼容性问题

终极指南:使用WarcraftHelper彻底解决魔兽争霸III闪退与兼容性问题 【免费下载链接】WarcraftHelper Warcraft III Helper , support 1.20e, 1.24e, 1.26a, 1.27a, 1.27b 项目地址: https://gitcode.com/gh_mirrors/wa/WarcraftHelper 魔兽争霸III作为经典即…

2026/10/18 18:14:48 阅读更多 →
【RustyML入门】2.8. DBSCAN

【RustyML入门】2.8. DBSCAN

2.8. DBSCAN DBSCAN(Density-Based Spatial Clustering of Applications with Noise)把落在稠密区域的点聚成簇,其余的点标记为噪声。和 KMeans 不同,DBSCAN 不需要你预先给出簇的数量。它能找出任意形状的簇,而不只是…

2026/10/17 1:17:11 阅读更多 →

最新新闻

变电站缺陷检测数据集全流程:从标注体检到YOLO训练部署

变电站缺陷检测数据集全流程:从标注体检到YOLO训练部署

简介:变电站设备缺陷图像数据集面向电力智能巡检与目标检测模型训练场景,收录8307张现场拍摄的jpg图像,覆盖避雷器破损、变压器渗油、开关柜异物、隔离开关锈蚀、互感器破损、接地线松动、绝缘子污闪、电缆沟盖板移位、小动物入侵、作业人员未…

2026/10/18 18:14:55 阅读更多 →
提示工程架构师:如何构建动态调整的情境感知提示系统

提示工程架构师:如何构建动态调整的情境感知提示系统

稍微整理一下语言和思路再重新输出。标题定的方向很好——“提示工程架构师”这个定位本身就说明,你不是来学怎么写一句咒语,而是来设计一套能应对复杂场景的提示系统。这篇文章我会尽量把动态调整和情境感知这两个核心概念拆透,把从理论到落…

2026/10/18 18:14:55 阅读更多 →
MySQL 第15章实战:变量、流程控制与游标在存储过程中的组合应用

MySQL 第15章实战:变量、流程控制与游标在存储过程中的组合应用

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

2026/10/18 18:14:55 阅读更多 →
Flutter鸿蒙跨平台迷宫实战:迁移踩坑与性能优化总结

Flutter鸿蒙跨平台迷宫实战:迁移踩坑与性能优化总结

鸿蒙设备生态起来之后,我一直在琢磨一件事:手里那份已经跑了几年的跨平台项目,到底怎么才能低代价地迁移过去,而不是从头再写一套界面。单纯的业务页面其实不难,难的是那种带算法、带图形、带复杂手势交互的小玩意儿。…

2026/10/18 18:14:55 阅读更多 →
WeKnora 源码部署实战:从零搭建可用的 RAG 知识库系统

WeKnora 源码部署实战:从零搭建可用的 RAG 知识库系统

简介:面向正在选型或准备本地部署腾讯开源WeKnora知识库的开发者、运维人员及RAG入门者,这份指南源码包以轻量HTML文档加配套配置文件的形式,给出了从环境准备、代码克隆、环境变量配置、服务启动到访问验证的完整参考路径,尤其适…

2026/10/18 18:14:55 阅读更多 →
智能体接入工程:大模型在金融交易中的安全可控实践

智能体接入工程:大模型在金融交易中的安全可控实践

实际上手之前我们都觉得,把大模型智能体接进金融交易流程,最难的应该是模型效果。结果等项目真正推下去才发现,模型本身的推理能力反而不是瓶颈,周围那圈工程才是真正决定生死的东西。这圈工程,在这个项目里我们内部叫…

2026/10/18 18:13:54 阅读更多 →

日新闻

基于GMM的语音识别系统原理与MATLAB实现详解

基于GMM的语音识别系统原理与MATLAB实现详解

说到基于高斯混合模型(GMM)的语音识别系统,很多人第一反应就是一堆数学公式,觉得门槛很高。但如果你真的在MATLAB里把它落地跑通,会发现核心其实就是三件事:把声音变成特征向量,用GMM给每个类别…

2026/10/18 0:00:55 阅读更多 →
数字图像处理入门:反白、灰度化、调色板修改与导出txt实践

数字图像处理入门:反白、灰度化、调色板修改与导出txt实践

数字图像处理这四个字听起来挺唬人,但落到具体操作上,无非就是让计算机按你的想法“摆弄”像素。我在一个模拟项目X里用了一套特别经典的基础处理流程:对图像做反白、改调色板、彩色转灰度,最后把像素数据导出成txt文件。单看每一…

2026/10/18 0:00:55 阅读更多 →
机器人大脑技术盘点:具身智能的感知、决策与数据闭环

机器人大脑技术盘点:具身智能的感知、决策与数据闭环

如果你的信息流最近也天天刷到“机器人大脑”这个词,你会发现一个很有意思的现象:每个人说的“大脑”根本不是同一个东西。有人指的是大语言模型,有人指的是运动控制系统,还有人指的是能理解物理世界的端到端模型。在2026年这个时…

2026/10/18 0:00:55 阅读更多 →

周新闻

基于GMM的语音识别系统原理与MATLAB实现详解

基于GMM的语音识别系统原理与MATLAB实现详解

说到基于高斯混合模型(GMM)的语音识别系统,很多人第一反应就是一堆数学公式,觉得门槛很高。但如果你真的在MATLAB里把它落地跑通,会发现核心其实就是三件事:把声音变成特征向量,用GMM给每个类别…

2026/10/18 0:00:55 阅读更多 →
数字图像处理入门:反白、灰度化、调色板修改与导出txt实践

数字图像处理入门:反白、灰度化、调色板修改与导出txt实践

数字图像处理这四个字听起来挺唬人,但落到具体操作上,无非就是让计算机按你的想法“摆弄”像素。我在一个模拟项目X里用了一套特别经典的基础处理流程:对图像做反白、改调色板、彩色转灰度,最后把像素数据导出成txt文件。单看每一…

2026/10/18 0:00:55 阅读更多 →
机器人大脑技术盘点:具身智能的感知、决策与数据闭环

机器人大脑技术盘点:具身智能的感知、决策与数据闭环

如果你的信息流最近也天天刷到“机器人大脑”这个词,你会发现一个很有意思的现象:每个人说的“大脑”根本不是同一个东西。有人指的是大语言模型,有人指的是运动控制系统,还有人指的是能理解物理世界的端到端模型。在2026年这个时…

2026/10/18 0:00:55 阅读更多 →

月新闻

我发现了一个新思路:用 Remotion + Claude Code 像写代码一样自动化生成短视频

我发现了一个新思路:用 Remotion + Claude Code 像写代码一样自动化生成短视频

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

2026/10/18 0:55:02 阅读更多 →
Windows下 Codex 中 Chrome 和 Computer Use 插件不可用问题排查及解决参考方式:TaoToken 统一 Key 配置与验证

Windows下 Codex 中 Chrome 和 Computer Use 插件不可用问题排查及解决参考方式:TaoToken 统一 Key 配置与验证

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

2026/10/17 17:22:31 阅读更多 →
黑夜航拍船只数据集训练YOLOV5模型全流程解析

黑夜航拍船只数据集训练YOLOV5模型全流程解析

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

2026/10/18 12:16:16 阅读更多 →