项目简介
本项目聚焦于比较不同优化算法在大规模机器学习模型训练中的表现,主要针对RCV1数据集上的多标签文本主题分类问题,采用带二范数正则化函数的逻辑回归模型,对比了批量梯度下降(BGD)、小批量梯度下降(mini - batch GD)、随机梯度下降(SGD)和L - BFGS四种优化算法的收敛速率。
项目的主要特性和功能
- 优化算法实现:分别在
BGD.py
、mini_batch.py
、SGD.py
、LBFGS.py
中实现批量梯度下降、小批量梯度下降、随机梯度下降和L - BFGS优化算法。 - 数据集处理:借助
sklearn
库的fetch_rcv1
函数加载RCV1数据集,并进行特征提取和标签处理等预处理操作。 - 模型训练与评估:运用逻辑回归模型进行训练,记录并对比不同优化算法的收敛速率,同时提供模型测试功能以评估模型在测试集上的表现。
- 结果可视化:绘制不同优化算法的训练损失曲线,方便直观比较。
安装使用步骤
环境准备
- Python版本需为3.6及以上。
- 依赖库包括PyTorch、sklearn、numpy,matplotlib(可选,用于结果可视化)。
安装步骤
- 复制项目:
bash git clone [项目仓库地址] cd [项目目录]
- 安装依赖:
bash pip install -r requirements.txt
- 运行优化算法:例如运行批量梯度下降算法:
bash python src/BGD.py
其他算法类似,替换文件名即可。 - 查看参数:使用
-h
选项查看每个脚本的参数设置:bash python src/BGD.py -h
- 结果可视化(可选):运行相应的绘图脚本,例如:
bash python src/plot_loss.py
- 模型测试:运行测试脚本评估模型性能:
bash python src/test.py
下载地址
点击下载 【提取码: 4003】【解压密码: www.makuang.net】