# machine-learning **Repository Path**: null_081_3671/machine-learning ## Basic Information - **Project Name**: machine-learning - **Description**: 机器学习典型算法样例代码 - **Primary Language**: Unknown - **License**: Not specified - **Default Branch**: master - **Homepage**: None - **GVP Project**: No ## Statistics - **Stars**: 0 - **Forks**: 0 - **Created**: 2026-07-14 - **Last Updated**: 2026-07-15 ## Categories & Tags **Categories**: Uncategorized **Tags**: None ## README # 机器学习算法系统学习 通过 **由浅入深、理论结合示例** 的方式,系统掌握各类机器学习算法的定义、功能、用法及实际应用场景。 ## 环境 - Python 3.14.6 - 虚拟环境:`.venv` ```powershell .\.venv\Scripts\Activate.ps1 pip install -r requirements.txt ``` ## 目录结构 ``` machine-learning/ ├── stage01_foundation/ # 阶段1:基础工具 (4个文件) ├── stage02_classification/ # 阶段2:分类算法 (11个文件) ├── stage03_regression/ # 阶段3:回归算法 (8个文件) ├── stage04_unsupervised/ # 阶段4:无监督学习 (7个文件) ├── stage05_ensemble/ # 阶段5:集成学习 (4个文件) ├── stage06_deep_learning/ # 阶段6:深度学习 (6个文件) └── stage07_projects/ # 阶段7:综合实战 (4个文件) ``` ## 算法分类清单 ### 监督学习 - 分类算法 | 算法 | 英文名 | 用途 | 适用场景 | |------|--------|------|---------| | 逻辑回归 | Logistic Regression | 二分类/多分类,输出概率 | 信用评分、疾病诊断、用户转化预测 | | K近邻 | KNN | 基于距离的分类/回归 | 推荐系统、模式识别、异常检测 | | 朴素贝叶斯 | Naive Bayes | 基于贝叶斯定理的分类 | 文本分类、垃圾邮件过滤、情感分析 | | 决策树 | Decision Tree | 树形结构的分类/回归 | 规则提取、可解释性要求高的场景 | | 支持向量机 | SVM | 最大间隔分类器 | 图像识别、文本分类、高维小样本 | | 随机森林 | Random Forest | Bagging 集成树模型 | 通用分类、特征重要性评估 | | 梯度提升树 | GBDT | Boosting 集成树模型 | 结构化数据分类 | | XGBoost | XGBoost | 优化的梯度提升 | 竞赛级分类、特征重要性 | | LightGBM | LightGBM | 高效梯度提升 | 大规模数据、类别特征多的场景 | | CatBoost | CatBoost | 类别特征原生支持 | 类别特征多的分类 | | 多层感知机 | MLP | 神经网络分类器 | 复杂非线性分类 | ### 监督学习 - 回归算法 | 算法 | 英文名 | 用途 | 适用场景 | |------|--------|------|---------| | 线性回归 | Linear Regression | 连续值预测 | 房价预测、销量预测、趋势分析 | | 岭回归 | Ridge | L2 正则化 | 多重共线性数据、防过拟合 | | Lasso 回归 | Lasso | L1 正则化 + 特征选择 | 特征选择、稀疏模型 | | ElasticNet | ElasticNet | L1+L2 混合正则化 | 特征选择 + 防过拟合 | | 多项式回归 | Polynomial Regression | 非线性关系拟合 | 曲线拟合、趋势预测 | | 支持向量回归 | SVR | 最大间隔回归 | 高维回归、鲁棒回归 | | 决策树回归 | Decision Tree Regressor | 树形回归 | 非线性回归、可解释性 | | 随机森林回归 | Random Forest Regressor | 集成树回归 | 通用回归、特征重要性 | | GBDT 回归 | GBDT Regressor | Boosting 回归 | 结构化数据回归 | | XGBoost 回归 | XGBoost Regressor | 优化梯度提升回归 | 竞赛级回归 | ### 无监督学习 | 算法 | 英文名 | 分类 | 用途 | |------|--------|------|------| | K-Means | K-Means | 聚类 | 客户分群、图像压缩、文档聚类 | | DBSCAN | DBSCAN | 聚类 | 异常检测、任意形状聚类 | | 层次聚类 | Hierarchical Clustering | 聚类 | 生物学分类、层级结构 | | 高斯混合模型 | GMM | 聚类 | 软聚类、密度估计、生成模型 | | PCA | PCA | 降维 | 数据可视化、特征压缩、去噪 | | t-SNE | t-SNE | 降维 | 高维数据可视化 | | LDA | LDA | 降维 | 分类任务的降维、特征提取 | ### 集成学习 | 方法 | 英文名 | 用途 | |------|--------|------| | Bagging | Bagging | 并行集成,降低方差 | | Stacking | Stacking | 基学习器 + 元学习器 | | Voting | Voting | 硬投票/软投票融合 | | 超参数调优 | Hyperparameter Tuning | GridSearch、RandomSearch、Optuna | ### 深度学习 (PyTorch) | 算法 | 英文名 | 用途 | |------|--------|------| | 多层感知机 | MLP | 全连接神经网络 | | 卷积神经网络 | CNN | 图像分类 | | 循环神经网络 | RNN/LSTM | 序列建模 | | Transformer | Transformer | 注意力机制 | ## 学习路径 1. **阶段1** - 基础工具:NumPy、Pandas、Matplotlib、数据预处理 2. **阶段2** - 分类算法:从逻辑回归到 XGBoost,11 种分类器 3. **阶段3** - 回归算法:从线性回归到梯度提升回归 4. **阶段4** - 无监督学习:K-Means、DBSCAN、层次聚类、PCA、t-SNE 5. **阶段5** - 集成学习:Bagging、Stacking、Voting、超参数调优 6. **阶段6** - 深度学习:PyTorch 实现 MLP、CNN、RNN、Transformer 7. **阶段7** - 综合实战:泰坦尼克、房价预测、客户分群、情感分类 **总计:44 个可运行示例,覆盖 37 种算法/技术** ## 运行方式 每个文件独立可运行,按编号顺序执行: ```powershell python stage02_classification/01_logistic_regression.py ``` ## 核心库 - scikit-learn - 经典机器学习 - XGBoost / LightGBM / CatBoost - 梯度提升 - PyTorch - 深度学习 - Optuna - 超参数调优