第一节课:深度学习基础与二手车价格预测
主题:
- 深度学习简介
- 二手车价格预测项目
深度学习基础:
- 神经网络概念:设计函数模拟,拟合目标函数(例如:Y=WX+BY=WX+B)。
- 超参数配置(Config):包括训练轮数(epoch)、批量大小(batch size)等。
- 硬件选择:使用GPU加速训练,若无GPU则使用CPU。
数据处理:
- 使用pandas库进行数据处理。
- 引入One Hot编码处理分类数据。
- 归一化处理,例如特征缩放。
神经网络训练:
- 初始化:权重和偏置的初始化。
- 梯度下降:逐步调整权重,寻找损失函数的最小值。
- 学习率:控制权重更新步长,常用值如 8×10−38×10−3。
损失函数:衡量预测值与真实值差距的函数,如均方误差(MSE)。
训练过程:
- 使用训练集更新网络参数。
- 验证集用于选择超参数。
- 测试集评估模型性能。
网络结构:
- 线性层(Linear Layer):输入和输出通过权重矩阵转换。
- 激活函数(Activation Function):引入非线性,如ReLU。
代码实践:
- 展示简单的神经网络实现。
- 提供代码,供学生练习和实验。
第二节课:二手车交易价格预测项目深入
数据处理:
- 数据解包:使用Python的
zipfile
库解压数据集。 - 数据清洗:处理缺失值、异常值,例如将'-'替换为-1。
- 特征选择:区分连续数据和离散数据,进行适当处理。
One Hot编码:
- 将离散数据转换为模型易于处理的形式。
- 处理空值和特殊字符。
特征缩放:
- 对连续数据进行归一化处理,如减去最小值后除以范围。
模型训练与评估:
- 数据分割:划分训练集和测试集。
- 模型选择:使用随机森林回归和线性回归模型进行比较。
- 性能评估:使用均方误差(MSE)评估模型。
自定义神经网络:
- 网络结构设计:包括多个线性层和激活层。
- 初始化方法:使用Xavier初始化权重。
- 训练技巧:使用GPU加速,设置随机种子保证结果可复现。
训练与测试:
- 使用动画显示训练和测试过程中的损失变化。
- 调整学习率和迭代次数优化模型。
结果提交:
- 将预测结果从GPU转移到CPU。
- 转换为DataFrame格式,准备提交。
课堂总结:
- 提供了完整的项目流程,从数据处理到模型训练和评估。
- 强调了实验的重要性,鼓励学生自行调整参数和方法。