【深度学习】【模型训练】输出轮数卡住不动【解决方案】

一、问题描述

如下图,笔者最近做一个Python深度学习项目时,输出迭代轮数时卡住:

如上图中所示,设置每10轮输出一次损失,相关参考代码如下:

python 复制代码
# run style transfer
max_iter = 200  # 最大迭代次数
show_iter = 10  # 打印间隔
python 复制代码
while n_iter[0] <= max_iter:

    def closure():
        optimizer.zero_grad()

        out = extract_layers(loss_layers, opt_img, model=vgg)
        layer_losses = [weights[a] * loss_fns[a](A, targets[a]) for a, A in enumerate(out)]
        loss = sum(layer_losses)
        loss.backward()
        n_iter[0] += 1
        # print loss
        if n_iter[0] % show_iter == (show_iter - 1):
            # show_iter = 10    9
            # 9, 19, 29, 39, 49
            print('Iteration: %d, loss: %f' % (n_iter[0] + 1, loss.data))

        return losswhile n_iter[0] <= max_iter:

    def closure():
        optimizer.zero_grad()

        out = extract_layers(loss_layers, opt_img, model=vgg)
        layer_losses = [weights[a] * loss_fns[a](A, targets[a]) for a, A in enumerate(out)]
        loss = sum(layer_losses)
        loss.backward()
        n_iter[0] += 1
        # print loss
        if n_iter[0] % show_iter == (show_iter - 1):
            # show_iter = 10    9
            # 9, 19, 29, 39, 49
            print('Iteration: %d, loss: %f' % (n_iter[0] + 1, loss.data))

        return loss

(代码参考书目:《Pytorch深度学习》,【印度】Vishnu Subramanian 著,王海玲 刘江峰 译,人民邮电出版社,北京,2019年4月)

二、解决方案

原本以为是代码运行过程中出现了问题,其实是Windows Powershell终端自身显示的问题。此时,按一次(注意仅一次Ctrl+C组合键,补全显示即可。(按两次会中止程序)。正确运行截图:

相关推荐
魔术师Grace6 小时前
从传统企业架构到 OPC 模式,AI 到底改变了什么?
人工智能·程序员
沪漂阿龙6 小时前
LangGraph 持久化完全指南:从零搭建永不丢失状态的 AI Agent 系统
人工智能·流程图
杨浦老苏6 小时前
大模型安全接入网关LinkAI
人工智能·docker·ai·群晖·隐私保护
档案宝档案管理6 小时前
权限分级管控,全程可追溯,筑牢会计档案安全防线
运维·网络·人工智能
Chat_zhanggong3456 小时前
主推RK3567J作用有哪些?
人工智能·嵌入式硬件
qq_411262426 小时前
四博 AI 机械臂台灯智能音箱方案:让台灯具备视觉、语音、动作和学习陪伴能力
人工智能·语音识别
AI+程序员在路上7 小时前
VS Code 完全使用指南:下载、安装、核心功能与 内置AI 编程助手实战
开发语言·人工智能·windows·开源
coderyi7 小时前
Agent协作简析
人工智能
霍小毛7 小时前
破局工业数据孤岛!数字孪生+AI智慧设备资产管理平台,重构智能运维新范式
人工智能·重构
AI人工智能+7 小时前
基于深度学习的银行回单识别技术,成为连接物理票据与数字财务系统的桥梁
深度学习·计算机视觉·ocr·银行回单识别