当前位置: 首页 > news >正文

python打卡day37

@疏锦行

知识点回顾:

1.  过拟合的判断:测试集和训练集同步打印指标

2.  模型的保存和加载

a.  仅保存权重

b.  保存权重和模型

c.  保存全部信息checkpoint,还包含训练状态

3.  早停策略

作业:对信贷数据集训练后保存权重,加载权重后继续训练50轮,并采取早停策略

# 保存模型权重
torch.save(model.state_dict(), 'credit_model_weights.pth')# 加载模型权重
model.load_state_dict(torch.load('credit_model_weights.pth'))# 设置继续训练的轮数
additional_epochs = 50for epoch in range(additional_epochs):# 前向传播outputs = model(X_train_tensor)loss = criterion(outputs, y_train_tensor)# 反向传播和优化optimizer.zero_grad()loss.backward()optimizer.step()if (epoch + 1) % 10 == 0:print(f'Epoch [{epoch+1}/{additional_epochs}], Loss: {loss.item():.4f}')# 保存继续训练后的模型权重
torch.save(model.state_dict(), 'credit_model_weights_continued.pth')
# 早停策略参数
patience = 10  # 容忍验证集损失不下降的最大轮数
best_val_loss = float('inf')
counter = 0for epoch in range(num_epochs):# 训练代码model.train()outputs = model(X_train_tensor)train_loss = criterion(outputs, y_train_tensor)optimizer.zero_grad()train_loss.backward()optimizer.step()# 验证代码model.eval()with torch.no_grad():val_outputs = model(X_val_tensor)val_loss = criterion(val_outputs, y_val_tensor)print(f'Epoch [{epoch+1}/{num_epochs}], Train Loss: {train_loss.item():.4f}, Val Loss: {val_loss.item():.4f}')# 早停策略逻辑if val_loss < best_val_loss:best_val_loss = val_losscounter = 0# 保存最佳模型权重torch.save(model.state_dict(), 'best_credit_model_weights.pth')else:counter += 1if counter >= patience:print('Early stopping!')break

http://www.lryc.cn/news/573061.html

相关文章:

  • 智能体互联网新闻速递及深度分析【250620】
  • STM32[笔记]--开发环境的安装
  • 大数据Hadoop集群搭建
  • Linux (2)
  • Java常见八股-(6.算法+实施篇)
  • 知识蒸馏(Knowledge Distillation, KD)
  • gitea本地部署代码托管后仓库的新建与使用(配置好ssh密钥后仍然无法正常克隆仓库是什么原因)
  • 李宏毅 《生成式人工智能导论》| 第6讲-第8讲:大语言模型修炼史
  • 【大模型学习】项目练习:知乎文本生成器
  • IPv6 | 地址解析 / 地址管理 / 邻居发现协议(NDP)/ 无状态自动配置(SLAAC)
  • 简单的 ​Flask​ 后端应用
  • FPGA基础 -- Verilog 的属性(Attributes)
  • HTTP Server
  • 解决uni-app发布微信小程序主包大小限制为<2M的问题
  • C/C++ 高频八股文面试题1000题(一)
  • DB面试题
  • C++基础算法————并查集
  • Python中布尔值在函数中的巧妙运用
  • 【Python进阶系列】第9篇:聊聊 Python 中常用的第三方库
  • docker基础入门于应用的实践
  • 让Agent的应用价值增长
  • mysql 执行计划 explain命令 详解
  • Agent轻松通-P3:分析我们的Agent
  • 详解Redis的内存淘汰策略
  • HCIP-华为VRP系统基础
  • Linux——库文件生成和使用
  • 软件架构的发展历程——从早期的单体架构到如今的云原生与智能架构
  • 初学python的我开始Leetcode题10-2
  • RPC常见问题回答
  • 【Go语言基础】对齐边界与内存填充