[关闭]
@wujiaju 2020-12-22T08:45:13.000000Z 字数 1433 阅读 1866

实验2: 逻辑回归和支持向量机

机器学习 实验


实验目的

  1. 对比理解梯度下降和批量随机梯度下降的区别与联系。
  2. 对比理解逻辑回归和线性分类的区别与联系。
  3. 进一步理解SVM的原理并在较大数据上实践。

数据集

实验使用的是LIBSVM Data的中的a9a数据,包含32561 / 16281(testing)个样本,每个样本有123/123 (testing)个属性。请自行下载训练集和验证集。在读取数据时可能会出现维度不对的问题,是因为数据最后列全为零而被忽略,可以在下载的数据集文件后面自行添加后再读取,也可在读取数据集时指定n_features=123来解决。

实验环境

python3,至少包含下列python包:sklearnnumpyjupytermatplotlib
建议直接安装anaconda3,其已经内置了以上python包。

实验形式

个人独立完成

实验步骤

逻辑回归与批量随机梯度下降

  1. 读取实验训练集和验证集。
  2. 逻辑回归模型参数初始化(可以考虑全零初始化,随机初始化或者正态分布初始化)。
  3. 选择Loss函数及对其求导,过程详见课件ppt。
  4. 自行确定batch_size大小,随机取出部分样本,求得部分样本对Loss函数的梯度 。
  5. 使用批量随机梯度下降优化方法更新参数模型,鼓励额外尝试Adam优化方法。
  6. 选择合适的阈值,将验证集中计算结果大于阈值的标记为正类,反之为负类。在验证集上测试并得到Loss函数值
  7. 重复步骤4-6若干次,画出 随迭代次数的变化图

线性分类与批量随机梯度下降

  1. 读取实验训练集和验证集。
  2. 支持向量机模型参数初始化(可以考虑全零初始化,随机初始化或者正态分布初始化)。
  3. 选择Loss函数并对其求导,过程详见课件ppt。
  4. 自行确定batch_size大小,随机取出部分样本,求得部分样本对Loss函数的梯度 。
  5. 使用批量随机梯度下降优化方法更新参数模型,鼓励额外尝试Adam优化方法。
  6. 选择合适的阈值,将验证集中计算结果大于阈值的标记为正类,反之为负类。在验证集上测试并得到Loss函数值
  7. 重复步骤4-6若干次,画出 随迭代次数的变化图

整理两次实验结果,形成图表,并完成实验报告(实验报告模板将包含在此处


实验代码及报告提交方式

提交内容

提交时间

评分标准

评分项 占比 说明
出勤 40% 特殊情况可向学院请假,请假条交给助教
代码有效 30% 代码是否正确
实验报告 30% 是否认真按照实验模板填写

注意事项


有任何的意见或者建议都可以直接向助教反映。

添加新批注
在作者公开此批注前,只有你和作者可见。
回复批注