@NagaYu

Are you sure you want to delete the question?

Leaving a resolved question undeleted may help others!

物体検出で何のエラーかわからないです

解決したいこと

Pytorchで物体検出を作ってます。エラーが起きないのですが学習できていない状態で何が原因がわからない状態です。

発生している問題・エラー

/Users/nagaoyuuta/opt/anaconda3/lib/python3.9/site-packages/torch/nn/functional.py:780: UserWarning: Note that order of the arguments: ceil_mode and return_indices will changeto match the args list in nn.MaxPool2d in a future release.
  warnings.warn("Note that order of the arguments: ceil_mode and return_indices will change"

epoch: 0 iteration: 0 loss: 66.70726178733568

該当するソースコード

model.train()
for epoch in range(num_epoch):
    loss_hist.reset()
    
    for i, (images, targets, ImageIDs) in enumerate(train_loader):

        images = list(image.to(device) for image in images)
        targets = [{k: v.to(device) for k, v in t.items()} for t in targets]

        loss_dict = model(images, targets)
        
        losses = sum(loss for loss in loss_dict.values())
        loss_value = losses.item()
        
        loss_hist.send(loss_value)
        
        optimizer.zero_grad()
        losses.backward()
        optimizer.step()

        if i%100 == 0:  # 100回ごとに経過を表示
            print("epoch:", epoch,  "iteration:", i,  "loss:", losses.item())
0 likes

1Answer

学習できていない状態

という状態の判断基準は何をもとに特定されましたか?
 あまりにも情報不足すぎて解答が難しいです.せめて,コード全文なりモデルの図なり学習曲線なりを示していただけると幸いです1
 ちなみに,「学習できていない状態」と言っていることの意味が,「ログがこれ以上表示されない」という意味でしたら,とにかくもっと待ってみる必要があると思います.「100回ごとに表示」とされていますが,画像のサイズやネットワークのサイズによってはたったの100回でも膨大な時間がかかります.CPUやGPUの稼働率を監視してプログラムがちゃんと動いているかどうかを見た上で判断してください.

  1. 普通,「学習できていない状態」というのは「未学習」の状態を指します.なのでデータに対するモデルや,学習曲線を示してほしいと思いました.

0Like

Your answer might help someone💌