広島大学で社会基盤(土木)を専攻している3年生です。
現在は1年間休学して建設系のIT企業でインターンをしています。
今回はSemantic SegmentationのPSPNetで脳のMRI画像のデータセットを学習させ可視化まで行いました。
#今回学習に使ったデータセットについて
kaggeで公開されている脳のMRIデータセット(https://www.kaggle.com/mateuszbuda/lgg-mri-segmentation) を使用しました。
PSPNetで脳の腫瘍を検出します。
#PSPNet(Pyramid Scene Parsing Network)とは
PSPNetはセマンティックセグメンテーションのモデルの一つです。
簡単にモデルの概要を説明すると
これらの処理が推論処理で行われます。
![pspnet_model_image.png](https://qiita-image-store.s3.ap-northeast-1.amazonaws.com/0/677912/bda4a44f-c233-6229-337d-d3f1ffd89276.png)今回の概要説明では不十分だと感じる方も多いと思います。
詳しいモデルの内容はこちら(https://arxiv.org/pdf/1612.01105v2.pdf) と「つくりながら学ぶ!PyTorchによる発展ディープラーニング」 (https://www.amazon.co.jp/%E3%81%A4%E3%81%8F%E3%82%8A%E3%81%AA%E3%81%8C%E3%82%89%E5%AD%A6%E3%81%B6%EF%BC%81PyTorch%E3%81%AB%E3%82%88%E3%82%8B%E7%99%BA%E5%B1%95%E3%83%87%E3%82%A3%E3%83%BC%E3%83%97%E3%83%A9%E3%83%BC%E3%83%8B%E3%83%B3%E3%82%B0-%E5%B0%8F%E5%B7%9D-%E9%9B%84%E5%A4%AA%E9%83%8E-ebook/dp/B07VPDVNKW) が大変参考になりました。
実装について
実装も「つくりながら学ぶ!PyTorchによる発展ディープラーニング」を参考にしました。
自分が実装したコードのgithubリンクがこちらです。
(https://github.com/Akito-Fujihara/MRI-Brain-PSPNet475-model)
jupyter notebookとpyファイルを載せています。
データセット、weightファイルなどはダウンロードして以下の構成にしてください。
MRI-Brain-PSPNet475-model/
┣ kaggle_3m(kaggleからダウンロードしたデータセット※https://www.kaggle.com/mateuszbuda/lgg-mri-segmentation)
┣ log_output.csv(学習のlossを記録)
┣ PSPNet_test.ipynb(推論・可視化)
┣ PSPNet_train.ipynb(学習)
┣ result_image(推論結果を可視化した画像を保存するファイル)
┣ utils
┃ ┣ init.py(このファイルが存在するディレクトリをパッケージとなる。)
┃ ┣ data_augumentation.py(前処理)
┃ ┣ dataloader.py(pytorchのdataloaderを作成)
┃ ┣ pspnet.py(モデル)
┃ ┗pspnet475_show.py(可視化)
┗weights(weightファイルを保存)
┗pspnet50_ADE20K.pth(https://drive.google.com/file/d/12eN6SpnawYuQmD1k9VgVW3QSgPR6hICc/view からダウンロード)
学習・推論結果と考察
可視化した画像のは水色が教師データ、黄色が推論結果です。
結果から画像の濃淡が少ないものの結果が特に悪いことがわかりました。(当たり前ですが、、、)
(https://paperswithcode.com/paper/torchio-a-python-library-for-efficient など)前処理についてもいろいろ調べてみたいと思います。
また、(https://www.slideshare.net/mitmul/unofficial-pyramid-scene-parsing-network-cvpr-2017) にも書かれていますがcrop size, batch size(colabだと変えられないかも、、), などパラメータが重要らしいので変えてみるのも面白いのではないかと思います。(https://www.st-hakky-blog.com/entry/2017/11/16/161805 参考までに)