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(即使效果不好,但数据窗口生成、标准化、训练流程正确)
  • 能完成一个简单的回测,计算夏普比率和最大回撤,并识别出潜在的前视偏差

相关推荐
Flandern11112 小时前
Go程序员学习AI大模型项目实战02:给 AI 装上“大脑”:从配置解包到流式生成的深度拆解
人工智能·后端·python·学习·golang
穿条秋裤到处跑2 小时前
每日一道leetcode(2026.04.09):区间乘法查询后的异或 II
算法·leetcode
超级大只老咪2 小时前
一维度前缀和解题通用模板(java)
java·开发语言·算法
weixin_513449962 小时前
walk_these_ways项目学习记录第十篇(通过行为多样性 (MoB) 实现地形泛化)--从仿真到部署
人工智能·学习·算法
小欣加油2 小时前
leetcode 42 接雨水
c++·算法·leetcode·职场和发展
tankeven2 小时前
动态规划专题(14):石子合并问题(未完待续)
c++·算法·动态规划
EnglishJun2 小时前
ARM嵌入式学习(二十一)--- Platform总线结合dts、gpio子系统、中断和错误处理
arm开发·学习
CC城子2 小时前
EtherCAT的igh学习与研究(一)
学习·ethercat
xian_wwq3 小时前
【学习笔记】GB/T 20986-2023 详解,10 类网络安全事件分类
笔记·学习·web安全