No description
This repository has been archived on 2026-10-09. You can view files and clone it, but you cannot make any changes to its state, such as pushing and creating new issues, pull requests or comments.
Find a file
todd 5598da554d 初始提交:跨平台机器学习工作台(.NET 10 + Avalonia)
Hongzuiyu 是一个基于 Avalonia UI 的 .NET 10 桌面应用,通过拖拽式流程
设计器(KnowledgeFlow)串联数据加载、预处理、建模、评估与可视化,
内置分类 / 聚类 / 滤波 / 异常检测等经典算法库。

- UI:Avalonia 11.2(Fluent 主题),支持 Windows / macOS / Linux
- 图表:ScottPlot.Avalonia 5
- 机器学习:Accord.NET 3.8、LibSVMsharp 1.2
- 数值计算:Math.NET Numerics 5
- 日志:log4net 2
- 依赖全部由 NuGet 管理,版本统一在 Directory.Build.props 维护
- Samples/ 内置决策树、聚类、回归、PCA、频谱分析示例数据集
2026-10-09 19:20:16 +08:00
Hongzuiyu 初始提交:跨平台机器学习工作台(.NET 10 + Avalonia) 2026-10-09 19:20:16 +08:00
Hongzuiyu.AnomalyDetection 初始提交:跨平台机器学习工作台(.NET 10 + Avalonia) 2026-10-09 19:20:16 +08:00
Hongzuiyu.AnomalyDetection.GUI 初始提交:跨平台机器学习工作台(.NET 10 + Avalonia) 2026-10-09 19:20:16 +08:00
Hongzuiyu.Classifiers 初始提交:跨平台机器学习工作台(.NET 10 + Avalonia) 2026-10-09 19:20:16 +08:00
Hongzuiyu.Classifiers.GUI 初始提交:跨平台机器学习工作台(.NET 10 + Avalonia) 2026-10-09 19:20:16 +08:00
Hongzuiyu.Clusterers 初始提交:跨平台机器学习工作台(.NET 10 + Avalonia) 2026-10-09 19:20:16 +08:00
Hongzuiyu.Clusterers.GUI 初始提交:跨平台机器学习工作台(.NET 10 + Avalonia) 2026-10-09 19:20:16 +08:00
Hongzuiyu.Core 初始提交:跨平台机器学习工作台(.NET 10 + Avalonia) 2026-10-09 19:20:16 +08:00
Hongzuiyu.Core.GUI 初始提交:跨平台机器学习工作台(.NET 10 + Avalonia) 2026-10-09 19:20:16 +08:00
Hongzuiyu.Filters 初始提交:跨平台机器学习工作台(.NET 10 + Avalonia) 2026-10-09 19:20:16 +08:00
Hongzuiyu.Filters.GUI 初始提交:跨平台机器学习工作台(.NET 10 + Avalonia) 2026-10-09 19:20:16 +08:00
Hongzuiyu.KnowledgeFlow 初始提交:跨平台机器学习工作台(.NET 10 + Avalonia) 2026-10-09 19:20:16 +08:00
Hongzuiyu.KnowledgeFlow.GUI 初始提交:跨平台机器学习工作台(.NET 10 + Avalonia) 2026-10-09 19:20:16 +08:00
Samples 初始提交:跨平台机器学习工作台(.NET 10 + Avalonia) 2026-10-09 19:20:16 +08:00
.gitignore 初始提交:跨平台机器学习工作台(.NET 10 + Avalonia) 2026-10-09 19:20:16 +08:00
Directory.Build.props 初始提交:跨平台机器学习工作台(.NET 10 + Avalonia) 2026-10-09 19:20:16 +08:00
Hongzuiyu.sln 初始提交:跨平台机器学习工作台(.NET 10 + Avalonia) 2026-10-09 19:20:16 +08:00
nuget.config 初始提交:跨平台机器学习工作台(.NET 10 + Avalonia) 2026-10-09 19:20:16 +08:00
README.md 初始提交:跨平台机器学习工作台(.NET 10 + Avalonia) 2026-10-09 19:20:16 +08:00

Hongzuiyu — 跨平台机器学习工作台

基于 Avalonia UI 的 .NET 10 桌面应用:通过拖拽式流程设计器(KnowledgeFlow)串联数据加载 → 预处理 → 建模 → 评估 → 可视化的完整机器学习工作流,内置经典算法库(分类 / 聚类 / 滤波 / 异常检测)。

支持 Windows / macOS / Linux 三平台运行。

快速开始

环境要求:.NET 10 SDK

# 还原依赖并编译
dotnet build Hongzuiyu.sln

# 启动主程序
dotnet run --project Hongzuiyu

发布为独立平台应用:

dotnet publish Hongzuiyu/Hongzuiyu.csproj -c Release -r win-x64   --self-contained false
dotnet publish Hongzuiyu/Hongzuiyu.csproj -c Release -r osx-arm64 --self-contained false
dotnet publish Hongzuiyu/Hongzuiyu.csproj -c Release -r linux-x64 --self-contained false

功能一览

流程设计器(KnowledgeFlow)

从左侧工具箱将步骤节点拖入画板,右键节点进行配置 / 连线 / 删除,连线时自动校验上下游数据类型(数据表、训练集、模型等),流程可保存为 XML 并再次加载,支持异步执行与运行日志实时展示。

内置算法

模块 算法
分类(Classifiers) 核支持向量机(KSVM)、决策树(Entropy / Gini)、Logistic 回归
聚类(Clusterers) K-Means、DBSCAN、FCM 模糊 C 均值、SOM 自组织映射
滤波 / 预处理(Filters) 主成分分析(PCA)、傅里叶变换、小波变换、ARMA 平滑、卡尔曼滤波、多项式拟合、归一化、特征选择、统计特征提取、伪周期分段、关键点线性拟合等
异常检测(AnomalyDetection) One-Class SVM、Isolation Forest、KD-Tree 离群检测
数据转换(Core.Converters) CSV 加载 / 保存(支持表头识别、分隔符配置、类型推断)

可视化

折线图、散点图(含 Pearson 相关系数)、聚类结果着色图、统计分布直方图与正态拟合曲线(ScottPlot 渲染),决策树结构图(可导出 PNG)。

技术栈

层 技术 版本
运行时 .NET 10.0
UI 框架 Avalonia(Fluent 主题) 11.2
图表 ScottPlot.Avalonia 5.0
机器学习 Accord.NET 3.8
SVM LibSVMsharp 1.2
数值计算 Math.NET Numerics 5.0
日志 log4net 2.0

所有第三方依赖均通过 NuGet 还原(源配置见 nuget.config),版本统一在 Directory.Build.props 中维护,仓库内不包含任何二进制依赖。

项目结构

Hongzuiyu/                     主程序:入口、主窗口、流程画板
Hongzuiyu.Core/                数据表模型(Datasheet)、CSV 转换器、模型基类、日志
Hongzuiyu.Classifiers/         分类算法库
Hongzuiyu.Clusterers/          聚类算法库
Hongzuiyu.Filters/             滤波 / 特征处理算法库
Hongzuiyu.AnomalyDetection/    异常检测算法库
Hongzuiyu.KnowledgeFlow/       流程引擎(Step/Flow,纯逻辑无 UI 依赖)
Hongzuiyu.Core.GUI/            通用 GUI 组件:参数自动生成窗口、绘图窗口、消息框
Hongzuiyu.*.GUI/               各算法模块的 Avalonia 配置 / 可视化界面
Samples/                       示例数据集(决策树、聚类、回归、PCA、频谱分析)

依赖方向:算法库 → Core、*.GUI → Core.GUI + 对应算法库、主程序 → 全部。

示例数据

Samples/ 目录提供了可直接加载的样例:鸢尾花型分类数据(决策树离散/连续量)、k 聚类、Logistic 回归、主元分析、太阳黑子频谱分析等,配合流程设计器可快速体验完整建模流程。

许可证

源代码以 LGPL 开放;Hongzuiyu.Filters/ARMA/Polynomial.cs 参考自 Math.NET Iridium(LGPL),该文件同样遵循 LGPL 条款。第三方 NuGet 依赖以其各自许可证为准。