CUI上で”train.py”と打つだけ!classificationモデル作成用ライブラリ”ModeLIB”を公開します

Yutaka_kun
LSC PSD
Published in
4 min readApr 3, 2020

GitHubにて開発者向け機械学習コード公開を公開します

いつもLSC-PSDのご愛読ありがとうございます。

”開発者がストレスなく機械学習ができるように”

”誰でもお手軽に機械学習に触れられるように”

という思いから、コード使いやすく整えてGitHubにアップしました。
「”フォルダに画像を配置してpythonファイルをを動かす”」だけで画像を分類(classification)できるモデルが作れるようになっています。
今後、物体認識(object detection)モデルなど随時追加していく予定です。

「動かしやすい」「初心者でもわかりやすい」と思った方はGitHubにて
★のクリックをお願いしま︎す。
(メンバーの励みになります! 目指せ★×30)

LSC-PSD GitHub (lsc-psd/modelib-classification)

以下、使い方を説明していきます。

まずは上のリンクからリポジトリをクローンして下さい。
「clone or download」→「Download ZIP」→zipファイルを解凍
すればクローンできるはずです。

訓練(training)

動かし方はkerasもpytorchも基本的には同じです。
試しにkerasを使用してモデルをトレーニングしてみます。

トレーニングさせたい画像をinputのtrainとvalの中にそれぞれ配置します。犬猫の画像の場合は下の図のように配置します(犬猫の画像は無料でkaggleというサイトからダウンロードできます)。

次にconfig.iniファイルで初期値の設定をします。好きなように適宜書き換えてください(もちろんそのままでもトレーニング可能です)

例)MobileNetV3 からResNet50にモデルを変更したい場合

model_name = MobileNetV3

model_name = ResNet50

と書き換えるだけで簡単にモデルの変更が可能です。わざわざpythonファイルの中身を書き換える必要はありません。使用できるモデルは
keras
・VGG16、VGG19
・InceptionV3
・ResNet18, ResNet34, ResNet50, ResNet101, ResNet152
・ResNeXt50
・DenseNet121
・MobileNetV3
pytorch
・VGG16
・InceptionV3
・ResNet50
・DenseNet121
・Xception
・ResNeXt50
・MobileNetV3

注:モデル名の大文字小文字を間違えると正しくモデルを認識でできません

初期設定が終わったらコマンドライン上でkerasのディレクトリに移動し

python train.py

と打つだけです。
画像を認識してモデルをトレーニングしてくれます。

訓練したモデルはcheckpointsフォルダの中に保存されます。

テスト(test)

訓練したモデルを使用して画像を分類してみます。
画像をinputの中のtestフォルダに入れます(kerasは複数可)。
checkpointsフォルダのなかにあるtraining時に作成したモデルを一つ選択し、model_weightsフォルダのなかに移動させて下さい(pytorchの場合はcheckpointsフォルダが参照されます)。
あとは先ほどと同じ要領で

python test.py

と入力すれば推測結果がcsvファイルとして出力されます。

説明は以上になります。
では皆様、快適な開発ライフを‼︎

--

--

Yutaka_kun
LSC PSD
Editor for

Microbiology technician,Machine learning engineer(beginner)