Coder Social home page Coder Social logo

deep-learning-with-pytorch-ja's Introduction

PyTorch 実践入門のリポジトリ

PyTorch実践入門

書籍「PyTorch 実践入門」 の日本語版リポジトリです。

こちらが原著のリポジトリになります。本リポジトリにあるコードは演習問題の解答をのぞいて全て、上記リポジトリから引用しております。

本書で扱う内容

  • 第 1 部 PyTorch の基礎
    • 第 1 章 ディープラーニングと PyTorch の概要
    • 第 2 章 訓練済みモデルの利用方法
    • 第 3 章 PyTorch におけるテンソルの扱い方
    • 第 4 章 さまざまなデータを PyTorch テンソルで表現する方法
    • 第 5 章 ディープラーニングの学習メカニズム
    • 第 6 章 ニューラルネットワーク入門
    • 第 7 章 画像分類モデルの構築
    • 第 8 章 畳み込み(Convolution)
  • 第 2 部 ディープラーニングの実践プロジェクト:肺がんの早期発見
    • 第 9 章 肺がんの早期発見プロジェクトの解説
    • 第 10 章 LUNA データを PyTorch データセットに変換
    • 第 11 章 結節候補を画像分類するモデルの構築
    • 第 12 章 評価指標とデータ拡張を用いたモデルの改善
    • 第 13 章 セグメンテーションを用いた結節の発見
    • 第 14 章 結節・腫瘍解析システムの全体を構築
  • 第 3 部 デプロイメント(Deployment)
    • 第 15 章 本番環境にモデルをデプロイする方法

演習問題について

各章の演習問題は該当するフォルダに Jupyter NoteBook 形式で格納されています。 解答の一部は実行の都合上ルートフォルダに配置しています。 実行は基本的に Google Colaboratory 上で行われることを想定しています。 ただし、第 2 部の演習については扱うデータセットのサイズが大きい(約 220GB)ため、Google Coraboratoly の場合はストレージにご注意ください。 また、解答については原著で示されていたわけではなく、日本語版の訳者で解答したものです。

疑問点・修正点は Issue にて管理しています。

本 GitHub の Issue にて、疑問点や修正点を管理しています。

不明な点などがございましたら、こちらをご覧ください。

https://github.com/Gin5050/deep-learning-with-pytorch-ja/issues

誤植について

書籍中の誤植は以下になります。
誤植一覧

deep-learning-with-pytorch-ja's People

Contributors

gin5050 avatar shohei1029 avatar superman32432432 avatar

Stargazers

 avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar

Watchers

 avatar  avatar  avatar  avatar  avatar

deep-learning-with-pytorch-ja's Issues

p142 全てのデータ点に対する平均について

p142 にて全てのデータ点に対して平均をとる(定数で割る)とありますが、平均をとる操作はどこにあるのでしょうか。

# 初期値
w = torch.ones(())
b = torch.zeros(())
# In[14]:を別々に実行
dloss_dtp = dloss_fn(t_p, t_c) # len=11
dloss_dw = dloss_dtp * dmodel_dw(t_u, w, b) # len=11
dloss_db = dloss_dtp * dmodel_db(t_u, w, b) # len=11
torch.stack([dloss_dw.sum(), dloss_db.sum()]) # tensor([4517.2964,   82.6000])
torch.sum(dloss_dw) # 4517.2964

単純なsumを取ったものと出力が変わらなかったので、どこで平均を取るような処理がされているのか分かりませんでした。

初歩的な質問で申し訳ありませんが、回答頂けますと幸いです。
よろしくお願いいたします。

p1ch2/3_cyclegan.ipynbにつきまして

はじめまして
PyTorch実践入門 Kindle版を購入して、勉強しています。

p1ch2/3_cyclegan.ipynbについて、jupyter notebook 環境で実行しています。

下記の作成済のモデルをnetGに渡すプログラムで、
 model_path = './data/p1ch2/horse2zebra_0.4.0.pth'
 model_data = torch.load(model_path)
 netG.load_state_dict(model_data)

model_data = torch.load(model_path)の段階で下記のエラーが出ます。

UnpicklingError: invalid load key, '\x0a'.

このため、データを'./data/p1ch2/horse2zebra_0.3.1.pth'に変えて実行したところ、
 model_path = './data/p1ch2/horse2zebra_0.3.1.pth'
 model_data = torch.load(model_path)
 netG.load_state_dict(model_data)

model_data = torch.load(model_path)はできましたが、netG.load_state_dict(model_data)の段階で、下記のエラーが出ます。
RuntimeError: Error(s) in loading state_dict for ResNetGenerator:

私の環境では、'horse2zebra_0.4.0.pth'は、Unpicklingできない、'horse2zebra_0.3.1.pth'は、Unpicklingできるが、netG.load_state_dict(model_data)できないため、参考までにご連絡します。

p1ch2の結果について

ゴールデンレトリバーであるという結果が得られませんでした。
実行結果
('bucket, pail', 0.582305908203125)

懸念点として、resnet.eval()を実行したときにOutに何も表示されなかったことです。

環境はDockerHubから以下をpullして実行しています。
PCはM1Macです。

% docker run --rm -d -v $PWD:/app -p 8888:8888 \pman0214/pytorch_jupyterlab:1.9.0

ここで説明されているネットワークとは何を指しているのでしょうか?
合わせてお伺いできればと思います。

p2ch14/p2_run_everything.ipynbにつきまして

お世話になっております。
修正していただいたファイルを用いたところ,subset0~2のデータを使用してp2_run_everything.ipynbのChapter 14の部分も実行できました。
ありがとうございました。

以下,いくつか気になった点をご報告します。
subset0~2のデータを使うと,Colab Proで実行中のディスク残量が27GB程度になってしまいます。
 run('p2ch14.training.ClassificationTrainingApp', f'--epochs=100', 'nodule-nonnodule')
で100エポック実行していくと,最初は1エポックあたり4分程度なのですが,その後,実行を続けていくと,だんだんディスク残量が増えていき,1エポックに1時間程度かかるようになってしまいました。
どうやら,せっかく作成したキャッシュを消してしまっているようです。
そこで,37エポック目の途中で実行を中断しました。(これでも9時間程度かかりました。)
いちおうここまでのTensorBoardの出力も確認できました。

その後,model名を書き換えて最後の層のファインチューニングも実行できました。
ただし,やはり1エポックに1時間程度かかってしまいましたので,3エポック目の途中で中断しました。

プログラムを実行できることが確認できましたので,もう少しいろいろ試してみたいと思います。

p2ch13/model.py, _build2dTransformMatrix関数について

p2ch13/model.py の _build2dTransformMatrixについて質問です
アフィン変換のoffsetの部分(110行目)は

transform_t[2, i] = offset_float * random_float

ではなく

transform_t[i, 2] = offset_float * random_float

ではないでしょうか?1行3列目と2行3列目に移動量を適応させるべきと思ったのですが, 間違っていたらすみません。

p68にある図3.5のストライドの説明

p68にある図3.5のストライドの説明ですが、
「+1」が「次の行」、「+3」が「次の列」となっていますが、
「+1」が「次の列」、「+3」が「次の行」ではないでしょうか?
原書だと、「+1」が「NEXT COL」、「+3」が「NEXT ROW」となっていました。

P76 図3.7

初版第1刷発行・電子版ver1.00を読んでいます。
P76 図3.7はP68 図3.5 と同じ図なので、くどくてすみません。
P68 図3.5について、すでに、御指摘あるように、

「次の行(stride[1]=1)」とあるのは、正しくは「次の列(stride[1]=1)」
「次の列(stride[0]=3)」とあるのは、正しくは「次の行(stride[0]=3)」

矢印の位置ずれがある

のではないでしょうか。

P68 図3.5

P68 図3.5

  • 右上「shape = (3,3)」が矢印に対し右にずれていますね
    初版第1刷

8.4_畳み込みニューラルネットワークのIN(31)について

P261のIN(31)を実行したところ、
train_loader = train_loaderで
Expected input batch_size (1) to match target batch_size (64).のエラーメッセージ表示されます。
IN(1)から確認しましたが、誤りを発見できませんでした。
データのロードが誤っているのでしょうか?

グーグルのColabを利用しています。

よろしくお願いします。

p225 のbatch_size宣言について

p225 のdataloaderを導入した訓練についてですが、

for文の外で batch_sizeを決めて動かしたのですが、

for文の中で
imgs.shape[0] という形で改めて定義しないと動かないのはなぜでしょうか?

# epoch回数
n_epochs = 100
# batch_size
batch_size = 64

# data_loader
train_data_loader = DataLoader(cifar2, batch_size=batch_size, shuffle=True)

# 損失関数
loss_fn = nn.NLLLoss()
# 最適化戦略
optimizer = optim.SGD(model.parameters(), lr=1e-2)


for epoch in range(n_epochs):
  for imgs, labels in train_data_loader:
    # model出力
    outputs = model(imgs.view(batch_size,-1)) # batch_size行,3*32*32列にする
    # 損失関数での評価
    train_loss = loss_fn(outputs, labels)

    optimizer.zero_grad()

    train_loss.backward() 

    optimizer.step()

  print("Epoch:{}, Loss:{}".format(epoch, float(train_loss)))

第11章 from dsets import LunaDataset についてエラー

!pip install SimpleITK
!pip install diskcache

として、次に、『from dsets import LunaDataset』を実行すると、エラーとなります。
エラー内容は、以下のとおりです。御社のGithubに掲載されているコードをそのまま実行しているのですが、
エラーとなっており、このようなエラー内容は、これまで見たこともなく、解決ができません。
解決策についてご教示いただけますと幸いです。

解析環境: Google Colaboratory
/usr/local/lib/python3.7/dist-packages/diskcache/core.py in _con(self)
637 try:
638 select = 'SELECT key, value FROM Settings'
--> 639 settings = con.execute(select).fetchall()
640 except sqlite3.OperationalError:
641 pass

DatabaseError: database disk image is malformed

P.S.
『Pytorchによる発展ディープラーニング』は、大変すばらしい名著と思いますが、この本は、
Deep Learningの本質以外に、枝葉末節に、多くの見たこともない複雑なコードを頻繁に利用しており、上級者で
ないと読めないと思います。上級者であれば、本をよまなくてもGithubのソースコードから
読んで学習できるので、書籍として、あたかも入門者にむけて学習用に作成されているというのが
よくないと思います。
もし、Deep Learningに興味をもって、最初にこの本を読まれた方は、必ず挫折すると思います。

LunaDatasetクラスのimport

from dsets import LunaDataset として、LunaDatasetくラスを読み込み際には、エラーが出ます。
Github上のプログラムをそのまま実行していますが、解決に至りません。

解析環境は、google colaboとなります。
よろしくお願いいたします。


DatabaseError Traceback (most recent call last)
in ()
----> 1 from dsets import LunaDataset

7 frames
/usr/local/lib/python3.7/dist-packages/diskcache/core.py in _con(self)
637 try:
638 select = 'SELECT key, value FROM Settings'
--> 639 settings = con.execute(select).fetchall()
640 except sqlite3.OperationalError:
641 pass

DatabaseError: database disk image is malformed

11章のassortionerror発生について 

11章の11.2のプログラムの実行方法及び、11.7の訓練の実施において
どちらも実行後にassortionerrorが出て進むことができずにおります。
こちらの11章の質問などを参考にして多数実行しましたが解決できないため
誠に申し訳ありませんがこちらに質問させていただくことになりました。

現在の私のPC等環境
PCスペック
プロセッサー:Intel Corei7-9700K CPU @ 3.60Ghz * 8
グラフィック NVIDIA Corporation GP106[GeForce GTX 1060 6Gb]
メモリ 16Gb
OS:Ubuntu22.04.1LTS 64ビット
GNOMEバージョン 42.4

使用環境
GoogleColaboratory
googledriveに必要データ等保存し、マウントして実行
ネット環境はフレッツ光なので通信速度は問題ないと思われます。

実行過程(以下をgoogle colabで実行)

googleドライブのgoogle colabへのマウント

from google.colab import drive
drive.mount('/content/drive')

カレントデイレクトリの移動

import os
_colab_dir = /content/drive/MyDrive/pytorch/deep-learning-with-pytorch-ja/
os.chdir(_colab_dir)
実行結果
カレントワーキングディレクトリは[/content/drive/MyDrive/pytorch/deep-learning-with-pytorch-ja]です

requirements.txtに書かれてた必要ライブラリ等のインストール

!pip install blosc
!pip install jupyter
!pip install SimpleITK
!pip install diskcache
!pip install cassandra-driver

キャッシュの事前準備のためp2ch11.prepcacheの実行

!python -m p2ch11.prepcache
実行結果
2022-10-24 06:41:13,508 INFO pid:385 main:043:main Starting LunaPrepCacheApp, Namespace(batch_size=1024, num_workers=2)
2022-10-24 06:41:16,716 INFO pid:385 p2ch11.dsets:185:init : 0 training samples
2022-10-24 06:41:16,716 WARNING pid:385 util.util:221:enumerateWithEstimate Stuffing cache ----/0, starting
2022-10-24 06:41:17,417 WARNING pid:385 util.util:252:enumerateWithEstimate Stuffing cache ----/0, done at 2022-10-24 06:41:17

プログラムの実行結果の実行

import datetime

from util.util import importstr
from util.logconf import logging
log = logging.getLogger('nb')

def run(app, *argv):
argv = list(argv)
argv.insert(0, '--num-workers=4') #
log.info(Running: {}({!r}).main().format(app, argv))

app_cls = importstr(*app.rsplit('.', 1))  # 
app_cls(argv).main()

[log.info](http://log.info/)(Finished: {}.{!r}).main().format(app, argv))

run('p2ch11.training.LunaTrainingApp', '--epochs=1')

実行結果
AssertionError Traceback (most recent call last)
in
15 log.info(Finished: {}.{!r}).main().format(app, argv))
16
---> 17 run('p2ch11.training.LunaTrainingApp', '--epochs=1')
18
19

3 frames
/content/drive/MyDrive/pytorch/deep-learning-with-pytorch-ja/p2ch11/dsets.py in init(self, val_stride, isValSet_bool, series_uid, sortby_str)
169 elif val_stride > 0:
170 del self.candidateInfo_list[::val_stride]
--> 171 assert self.candidateInfo_list
172
173 if sortby_str == 'random':

AssertionError:

p2ch11.trainingの実行

!python -m p2ch11.training
実行結果
2022-10-24 06:42:10,608 INFO pid:486 main:079:initModel Using CUDA; 1 devices.
2022-10-24 06:42:12,257 INFO pid:486 main:138:main Starting LunaTrainingApp, Namespace(batch_size=32, comment='dwlpt', epochs=1, num_workers=2, tb_prefix='p2ch11')
Traceback (most recent call last):
File /usr/lib/python3.7/runpy.py, line 193, in _run_module_as_main
main, mod_spec)
File /usr/lib/python3.7/runpy.py, line 85, in _run_code
exec(code, run_globals)
File /content/drive/MyDrive/pytorch/deep-learning-with-pytorch-ja/p2ch11/training.py, line 387, in
LunaTrainingApp().main()
File /content/drive/MyDrive/pytorch/deep-learning-with-pytorch-ja/p2ch11/training.py, line 140, in main
train_dl = self.initTrainDl()
File /content/drive/MyDrive/pytorch/deep-learning-with-pytorch-ja/p2ch11/training.py, line 92, in initTrainDl
isValSet_bool=False,
File /content/drive/MyDrive/pytorch/deep-learning-with-pytorch-ja/p2ch11/dsets.py, line 171, in init
assert self.candidateInfo_list
AssertionError

以上のように、assertionErrorの発生のため実行できずにおります。
prepcacheを実行しているのにキャッシュを作成しているはず?なのにエラーが解消しないため、ここから進めずpytorchの理解と今後の導入ができず困っております。もしできますならばエラーの解消法をご教授いただきたく存じます。また、この場合にキャッシュの作成について具体的かつ有効な作成法がありましたら、申し訳ありませんが例などを示していただけると非常に有り難いです。

よろしくお願いいたします。
それでは失礼しました。

P341の notebookでのデータ描画部分のコードについて

「10.5.4 データを描画する」
の項目で誤記と思われるものがありました。
下記が正しいと思いますがいかがでしょうか。

In[7]の部分

from p2ch10.vis import findNoduleSamples, showNodule  
noduleSample_list = findNoduleSamples()

from p2ch10.vis import findPositiveSamples, showCandidate  
positiveSample_list = findPositiveSamples()

11章 学習時間について

実装環境

google colab
CPUメモリ:約25GB
GPUメモリ:約16GB
batch_size:16
num_worker:4
subset : subset0, subset1のみ
モデル:11章model.pyのCNNのまま

11章p349のrun('p2ch11.training.LunaTrainingApp', '--epochs=1')を実行した際に処理時間が長すぎるのですが、貴殿の方ではどれくらいの処理時間となっていますでしょうか。
私の処理時間:約20min/イテレーション
1epochですらとてもじゃないですが、回らないです。妥当な学習時間なのか、以下の処理で何か誤りがありそうか教えていただきたいです。

実行内容

def run(app, *argv):
    argv = list(argv)
    argv.insert(0, '--num-workers=4')  # <1>
    argv.insert(1, '--batch-size=16')  # <1>
    log.info("Running: {}({!r}).main()".format(app, argv))
    
    app_cls = importstr(*app.rsplit('.', 1))  # <2>
    app_cls(argv).main()
    
    log.info("Finished: {}.{!r}).main()".format(app, argv))

run('p2ch11.training.LunaTrainingApp', '--epochs=1')

出力結果

2022-04-09 15:12:05,956 INFO     pid:82 nb:005:run Running: p2ch11.training.LunaTrainingApp(['--num-workers=4', '--batch-size=16', '--epochs=1']).main()
2022-04-09 15:12:07,909 INFO     pid:82 p2ch11.training:079:initModel Using CUDA; 1 devices.
2022-04-09 15:12:17,666 INFO     pid:82 p2ch11.training:138:main Starting LunaTrainingApp, Namespace(batch_size=16, comment='dwlpt', epochs=1, num_workers=4, tb_prefix='p2ch11')
2022-04-09 15:12:23,922 INFO     pid:82 p2ch11.dsets:185:__init__ <p2ch11.dsets.LunaDataset object at 0x7fa530696110>: 99128 training samples
2022-04-09 15:12:23,932 INFO     pid:82 p2ch11.dsets:185:__init__ <p2ch11.dsets.LunaDataset object at 0x7fa528629e90>: 11015 validation samples
2022-04-09 15:12:23,933 INFO     pid:82 p2ch11.training:151:main Epoch 1 of 1, 6196/689 batches of size 16*1
2022-04-09 15:12:23,946 WARNING  pid:82 util.util:221:enumerateWithEstimate E1 Training ----/6196, starting
2022-04-09 15:16:11,271 INFO     pid:82 util.util:241:enumerateWithEstimate E1 Training   16/6196, done at 2022-04-10 10:18:13, 19:04:26
2022-04-09 15:25:48,677 INFO     pid:82 util.util:241:enumerateWithEstimate E1 Training   64/6196, done at 2022-04-10 11:34:32, 20:20:45

確認事項・試したこと
・GPUがsetされていることを上記の”CUDA;1devices以外”に下記により確認
1 self.device = torch.device("cuda" if self.use_cuda else "cpu")
print(self.device)
2 !nvidia-smi
3 pytorchで書いたmnist認識コードを実行しcpu使用時よりもGPU処理時間が早くなるのを確認

P.49の図3.2のテンソル

P.49の図3.2のテンソルについて、X[0, 2, 1] = 4 となっていますが、X[0, 2, 1] = 5ではないでしょうか?原著でも5になっているようです。

ご確認よろしくお願い致します。

11章のプログラムエラー

お世話になります。

p2_run_everything.ipynbのうち、
run('p2ch11.prepcache.LunaPrepCacheApp')を実行すると、以下のエラーがでます。
どのように解決できますでしょうか?
よろしくお願いいたします。

ModuleNotFoundError Traceback (most recent call last)
in ()
----> 1 run('p2ch11.prepcache.LunaPrepCacheApp')

4 frames
in run(app, *argv)
4 log.info("Running: {}({!r}).main()".format(app, argv))
5
----> 6 app_cls = importstr(*app.rsplit('.', 1)) # <2>
7 app_cls(argv).main()
8

/content/drive/MyDrive/Colab Notebooks/Pytorch CT Lung Cancer/deep-learning-with-pytorch-ja-main/util/util.py in importstr(module_str, from_)
44 module_str, from_ = module_str.rsplit(':')
45
---> 46 module = import(module_str)
47 for sub_str in module_str.split('.')[1:]:
48 module = getattr(module, sub_str)

/content/drive/MyDrive/Colab Notebooks/Pytorch CT Lung Cancer/deep-learning-with-pytorch-ja-main/p2ch11/prepcache.py in ()
10
11 from util.util import enumerateWithEstimate
---> 12 from .dsets import LunaDataset
13 from util.logconf import logging
14 from .model import LunaModel

/content/drive/MyDrive/Colab Notebooks/Pytorch CT Lung Cancer/deep-learning-with-pytorch-ja-main/p2ch11/dsets.py in ()
15 from torch.utils.data import Dataset
16
---> 17 from util.disk import getCache
18 from util.util import XyzTuple, xyz2irc
19 from util.logconf import logging

/content/drive/MyDrive/Colab Notebooks/Pytorch CT Lung Cancer/deep-learning-with-pytorch-ja-main/util/disk.py in ()
5 from io import BytesIO
6 from diskcache.core import MODE_BINARY
----> 7 from util.cassandra.cqltypes import BytesType
8
9

ModuleNotFoundError: No module named 'util.cassandra'


NOTE: If your import is failing due to a missing package, you can
manually install dependencies using either !pip or !apt.

To view examples of installing some common dependencies, click the
"Open Examples" button below.

P61 torch.unint8

初版第1刷
P61 上から8行目
torch.unint8 ではなく torch.uint8 ですね

p73 図3.6につきまして

書籍第3版になります。
p73 図3.6につきまして、左上図のテンソルですが
[[3, 1, 2],
[4, 1, 1]]
となっておりますが
[[3, 1, 2],
[4, 1, 7]]
ではないでしょうか?
ご確認よろしくお願い致します。

p2ch13/p2_run_everything.ipynbにつきまして

はじめまして
PyTorch実践入門 を購入して、勉強しています。

Google ColaboratoryのGPU環境でp2_run_everything.ipynbを実行しています。
Google Driveをマウントして,なんとかChapter 12までは実行できて,TensorBoardも表示できたのですが,Chapter 13以降が実行できません。

具体的には,p2_run_everything.ipynbのChapter 13の最初のコマンド
 run('p2ch13.prepcache.LunaPrepCacheApp')
を実行すると,下記のようなエラーが出ます。

/usr/local/lib/python3.7/dist-packages/torch/_utils.py in reraise(self)
427 # have message field
428 raise self.exc_type(message=msg)
--> 429 raise self.exc_type(msg)
430
431

IndexError: Caught IndexError in DataLoader worker process 0.
Original Traceback (most recent call last):
File "/usr/local/lib/python3.7/dist-packages/torch/utils/data/_utils/worker.py", line 202, in _worker_loop
data = fetcher.fetch(index)
File "/usr/local/lib/python3.7/dist-packages/torch/utils/data/_utils/fetch.py", line 44, in fetch
data = [self.dataset[idx] for idx in possibly_batched_index]
File "/usr/local/lib/python3.7/dist-packages/torch/utils/data/_utils/fetch.py", line 44, in
data = [self.dataset[idx] for idx in possibly_batched_index]
File "/content/drive/My Drive/Colab Notebooks/Deep_Learning_with_PyTorch/p2ch13/dsets.py", line 399, in getitem
candidateInfo_tup.series_uid, candidateInfo_tup.center_xyz, (7, 96, 96)
File "/usr/local/lib/python3.7/dist-packages/diskcache/core.py", line 1889, in wrapper
result = func(*args, **kwargs)
File "/content/drive/My Drive/Colab Notebooks/Deep_Learning_with_PyTorch/p2ch13/dsets.py", line 244, in getCtRawCandidate
ct = getCt(series_uid)
File "/content/drive/My Drive/Colab Notebooks/Deep_Learning_with_PyTorch/p2ch13/dsets.py", line 239, in getCt
return Ct(series_uid)
File "/content/drive/My Drive/Colab Notebooks/Deep_Learning_with_PyTorch/p2ch13/dsets.py", line 112, in init
)[0]
IndexError: list index out of range

data-unversioned\cacheフォルダにpart2ch13_rawというフォルダは作られるのですが,キャッシュファイルが作成できていません。

せっかくpart2ch12までは実行できましたので,なんとかしてpart2ch13以降も動かしたいと思いますので,できましたらヒントをいただければ幸いです。

11章 プログラムエラー

run('p2ch11.training.LunaTrainingApp', '--epochs=1')を実行したところ、以下のエラーがでました。
昨年11月頃には、うまく動いたのですが、本日、GithubのコードをそのままGoogle Colabにて実施したところ、
エラーがでてきました。
解決方法についてご教示いただけますと幸いです。

2022-01-20 05:13:10,469 INFO pid:61 nb:004:run Running: p2ch11.training.LunaTrainingApp(['--num-workers=4', '--epochs=1']).main()
2022-01-20 05:13:11,010 INFO pid:61 p2ch11.training:138:main Starting LunaTrainingApp, Namespace(batch_size=32, comment='dwlpt', epochs=1, num_workers=4, tb_prefix='p2ch11')

AssertionError Traceback (most recent call last)
in ()
----> 1 run('p2ch11.training.LunaTrainingApp', '--epochs=1')

3 frames
/content/drive/My Drive/Colab Notebooks/Pytorch CT Lung Cancer/deep-learning-with-pytorch-ja-main/p2ch11/dsets.py in init(self, val_stride, isValSet_bool, series_uid, sortby_str)
169 elif val_stride > 0:
170 del self.candidateInfo_list[::val_stride]
--> 171 assert self.candidateInfo_list
172
173 if sortby_str == 'random':

AssertionError:

p396 の図12.8

初版第1刷発行・電子版ver1.00を読んでいます。
P396の図12.8の 再現率ですが「適合率」の間違いかと思われますが、いかがでしょうか

Recommend Projects

  • React photo React

    A declarative, efficient, and flexible JavaScript library for building user interfaces.

  • Vue.js photo Vue.js

    🖖 Vue.js is a progressive, incrementally-adoptable JavaScript framework for building UI on the web.

  • Typescript photo Typescript

    TypeScript is a superset of JavaScript that compiles to clean JavaScript output.

  • TensorFlow photo TensorFlow

    An Open Source Machine Learning Framework for Everyone

  • Django photo Django

    The Web framework for perfectionists with deadlines.

  • D3 photo D3

    Bring data to life with SVG, Canvas and HTML. 📊📈🎉

Recommend Topics

  • javascript

    JavaScript (JS) is a lightweight interpreted programming language with first-class functions.

  • web

    Some thing interesting about web. New door for the world.

  • server

    A server is a program made to process requests and deliver data to clients.

  • Machine learning

    Machine learning is a way of modeling and interpreting data that allows a piece of software to respond intelligently.

  • Game

    Some thing interesting about game, make everyone happy.

Recommend Org

  • Facebook photo Facebook

    We are working to build community through open source technology. NB: members must have two-factor auth.

  • Microsoft photo Microsoft

    Open source projects and samples from Microsoft.

  • Google photo Google

    Google ❤️ Open Source for everyone.

  • D3 photo D3

    Data-Driven Documents codes.