[关闭]
@liushiya 2018-10-14T02:50:36.000000Z 字数 1361 阅读 4683

逻辑回归和支持向量机

机器学习 实验


You can click here to get the English version.

实验目的

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

数据集

实验使用的是LIBSVM Data的中的a9a数据,包含32561 / 16281(testing)个样本,每个样本有123/123 (testing)个属性。请自行下载训练集和验证集。

实验环境

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

实验时间及地点

2018-10-14 上午8:50-12:15 B7-138(谭明奎老师) B7-238(吴庆耀老师)

提交截止时间

2018-10-28 上午12:00

实验形式

个人独立完成

实验步骤

本次实验代码及画图均在jupyter上完成。

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

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

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

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

整理两次实验结果并完成实验报告(实验报告模板将包含在示例仓库中)。

评分标准

评分项 占比 说明
出勤 40% 特殊情况可向学院请假
代码有效 20% 代码有效是指代码中是否存在语法错误
实验报告 30% 是否认真按照实验模板填写
代码规范 10% 主要考核代码变量命名是否规范

提交方式

提交流程

  1. 访问222.201.187.50:7001
  2. 点击对应的提交入口
  3. 填写自己的姓名、学号,上传pdf格式的报告和zip格式的代码压缩包

注意事项


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

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