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

一、问题描述

如下图,笔者最近做一个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组合键,补全显示即可。(按两次会中止程序)。正确运行截图:

相关推荐
IT大白鼠1 小时前
彭大帅的AI运维助手——怎么给AI写运维SOP:提示词设计实战
运维·人工智能·彭大帅
xsd202411186 小时前
3D双目相机 vs 面阵激光雷达:机器人的“眼睛“到底怎么选?
人工智能
2601_965619698 小时前
把开源项目Changelog自动做成更新视频,AI工作流
人工智能·开源·音视频
Json____8 小时前
PHP 突发严重安全漏洞,AI 开始改变网络安全的攻防方式
人工智能·web安全·php·it学习·wwwoop.com
fxss8 小时前
我用AI给娃写了个拼音闯关大冒险
人工智能
驭渊的小故事10 小时前
Spring AI Alibaba 实战:从maven依赖治理到声明式工具调用
java·人工智能·spring
北京中科新远科技10 小时前
高速光链路健康检查实战:DOM、FEC、误码与压力回归
人工智能·数据挖掘·回归
火山引擎和TA的超级拍档们10 小时前
超级拍档・光影新生|火山引擎 AIGC 主题峰会回顾
人工智能
冬奇Lab10 小时前
一天一个开源项目(第245篇):Raven —— ‘Harness 的 Harness‘,把 Claude Code、Codex 等智能体编排起来并让它递归自我改进
人工智能·开源·资讯