21天机器学习核心算法学习计划(量化方向)

🗓️ 21天机器学习核心算法学习计划(量化方向)

每天4小时 ,总计3周(21天),每天分为:

  • 理论+推导(1.5小时)
  • 编程实战(2小时)
  • 复盘与笔记(0.5小时)

目标是:21天后,能够独立用主流机器学习算法构建量化预测模型,并理解每种算法在金融场景中的适用边界。


第一周:基础模型与线性方法

天数 学习内容 编程实战(金融数据)
Day1 ML基础概念、过拟合/欠拟合、训练/验证/测试集划分、评估指标(MSE/MAE/R²,准确率/精确率/召回率/F1/AUC) make_classification模拟数据,完整走一遍训练/测试切分→训练→预测→评估流程
Day2 线性回归原理(最小二乘、梯度下降、Ridge/Lasso正则化) yfinance获取股票数据,预测次日收益率(回归),对比有无正则化的效果
Day3 逻辑回归(Sigmoid、交叉熵损失、决策边界) 预测次日涨跌(二分类),构造技术指标特征(RSI、MACD),输出混淆矩阵和AUC
Day4 分类评估深入(ROC曲线、PR曲线、阈值选择) 绘制ROC曲线,找到最佳阈值(最大化F1或最小化业务成本)
Day5 KNN原理(距离度量、K值选择、维度灾难) 寻找历史相似K线组合(输入N日收益率序列,找到最相似的日期并观察后续走势)
Day6 决策树(ID3/CART、信息增益/基尼系数、剪枝参数) 用决策树预测涨跌,可视化树结构,观察不同max_depth下的过拟合
Day7 第一周复习与整合 用线性回归+逻辑回归+KNN+决策树对同一数据集预测,横向比较性能,写总结笔记

第二周:集成学习与SVM

天数 学习内容 编程实战(金融数据)
Day8 随机森林原理(Bagging、随机特征、OOB评估、特征重要性) 用随机森林预测涨跌,输出特征重要性条形图,删除低重要性特征后重训练
Day9 随机森林调参(n_estimators, max_depth, min_samples_split) TimeSeriesSplit进行时间序列交叉验证,网格搜索最优参数
Day10 集成学习进阶(Boosting: AdaBoost, GBDT) GradientBoostingClassifier预测涨跌,对比随机森林
Day11 XGBoost/LightGBM介绍(量化领域主流工具) 用XGBoost预测涨跌,调参(学习率、树深度、正则化),观察性能提升
Day12 SVM原理(最大间隔、软间隔C参数、核函数(线性/RBF)) 用SVM预测市场方向,对比线性核与RBF核,用GridSearch调优C和gamma
Day13 朴素贝叶斯(高斯/多项式/伯努利)及独立性假设 用高斯朴素贝叶斯快速构建"极端涨跌"预警模型(将收益率离散化为5档)
Day14 第二周复习与整合 用随机森林+XGBoost+SVM+朴素贝叶斯对比,写"不同算法在量化预测中的优劣总结"

第三周:无监督、神经网络与实战

天数 学习内容 编程实战(金融数据)
Day15 KMeans聚类(肘部法则、轮廓系数、初始化问题) 对沪深300成分股根据市盈率、市净率、ROE、换手率等因子聚类,分析每类股票的风格
Day16 PCA降维(最大方差投影、主成分可解释性) 对20个技术指标做PCA,观察累计方差,用前3个主成分训练随机森林,对比原始特征
Day17 神经网络入门(MLP、激活函数、反向传播、优化器) sklearn.MLPClassifier预测涨跌,尝试不同隐藏层大小
Day18 深度学习框架Keras入门(搭建、训练、回调) 用Keras搭建3层MLP,画出训练/验证loss曲线,加入Dropout和早停防过拟合
Day19 LSTM基础(处理序列数据、解决梯度消失) 用过去20天收盘价序列预测次日收盘价(LSTM),对比简单MLP
Day20 强化学习入门(Agent, Environment, Reward) gym搭建简化交易环境(状态:持仓+价格;动作:买/卖/持有),实现随机策略
Day21 综合实战:端到端量化策略 选择一个模型(随机森林/XGBoost/LSTM)预测次日涨跌→构建交易信号→回测(年化收益、夏普比率、最大回撤)→对比买入持有基准,撰写项目报告

📚 每日4小时高效执行指南

时间分配

时段 时长 内容
第一阶段 1.5小时 理论学习(视频/书籍)+ 公式推导(纸笔)
第二阶段 2小时 编程实战(金融数据,完整流程)
第三阶段 0.5小时 复盘笔记(写三个收获+一个待解决问题)

每日标准流程

  1. 理论学习(1.5h):看视频(1.5倍速)+ 读《Sklearn官方文档》对应章节 + 用纸笔推导关键公式
  2. 编程实战(2h):获取金融数据 → 特征构造 → 标准化 → 按时间切分 → 训练 → 评估 → 可视化
  3. 复盘(0.5h):在Notebook开头写总结(算法适用场景、调参心得、量化注意点)

编程环境

bash 复制代码
# 必装库
pip install numpy pandas matplotlib seaborn scikit-learn
pip install yfinance akshare  # 数据源
pip install xgboost lightgbm
pip install tensorflow keras
pip install gym  # 强化学习

✅ 21天结束后的能力自测

  • 能独立用sklearn完成逻辑回归、随机森林、XGBoost、SVM、KMeans、PCA的完整流程
  • 能解释"为什么金融数据要用时间序列交叉验证而不是随机K折"
  • 能构建至少3个技术指标特征,并用特征重要性筛选
  • 能训练一个LSTM(即使效果不好,但数据窗口生成、标准化、训练流程正确)
  • 能完成一个简单的回测,计算夏普比率和最大回撤,并识别出潜在的前视偏差

相关推荐
玛丽莲茼蒿3 小时前
Linux/Unix学习笔记(四)—— 进程管理
linux·学习·unix
richxu202510013 小时前
学完了江科大STM32,下一步该怎么学?
stm32·单片机·嵌入式硬件·学习
Pocker_Spades_A4 小时前
工业智能化的时序选型指南:当数据底座遇见机器学习
人工智能·机器学习
网络与设备以及操作系统学习使用者4 小时前
Linux与Windows核心差异深度解析
linux·运维·网络·windows·学习
AI算法沐枫4 小时前
机器学习到底是什么?
人工智能·python·深度学习·机器学习·数据挖掘·大模型·#ai
知识分享小能手5 小时前
Flask入门学习教程,从入门到精通,Flask智能租房——前期准备 知识点详解(5)
python·学习·flask
淳杰5 小时前
学习笔记 | playwright用法
笔记·学习
三品吉他手会点灯5 小时前
STM32F103 学习笔记-21-串口通信(第6节)-串口发送命令控制RGB灯
笔记·stm32·单片机·嵌入式硬件·学习
smj2302_796826526 小时前
解决leetcode第3943题递增后的数对数量
数据结构·python·算法·leetcode
W.Yentl6 小时前
西安交大最新综述!一文带你读懂大模型智能体及其组网与安全
安全·机器学习·智能体