img20220927102543609711.png img20220927102543586127.png

みんなの画像機械学習


機械学習による画像解析を必要とする
すべての人のための
Macをつかった簡易機械学習法


  近年、生物学分野においても自動撮影機能つき顕微鏡が身近になり、自動で大量の画像が取得可能になってきています。反面、その解析は高価な解析システムまたは人手を要することが多く、大量の画像を低コストで自動解析するシステムが必要とされています。私たちは、無料または安価なアプリケーションを組み合わせて、身近にあるMacで機械学習を行い、分裂細胞を含む画像の分類や画像中の物体の検出および分類ができる方法を報告しました(Nagaki et al. 2021)。この方法を用いれば、細胞データなどに限定されることなく、個々の研究者が自身のもつ画像データーを元に機械学習したAIによる画像自動分類機または画像中の物体検出分類機が作成できます。学会等で、この方法を紹介すると、多くの研究者に「専門家に助けてもらったり、高価なシステムを使うまでのことではないが、画像の自動分類や画像中の物体の検出および分類ができるようになれば、研究の効率が上がるのだけど」といったニーズがあることがわかりましたので、本Webページにて、その方法を解説することにしました。

Machine learning is
Power for the people, by the people, of the people!

みんなの画像機械学習


機械学習による画像解析を必要とする
すべての人のための
Macをつかった簡易機械学習法


  近年、生物学分野においても自動撮影機能つき顕微鏡が身近になり、自動で大量の画像が取得可能になってきています。反面、その解析は高価な解析システムまたは人手を要することが多く、大量の画像を低コストで自動解析するシステムが必要とされています。私たちは、無料または安価なアプリケーションを組み合わせて、身近にあるMacで機械学習を行い、分裂細胞を含む画像の分類や画像中の物体の検出および分類ができる方法を報告しました(Nagaki et al. 2021)。この方法を用いれば、細胞データなどに限定されることなく、個々の研究者が自身のもつ画像データーを元に機械学習したAIによる画像自動分類機または画像中の物体検出分類機が作成できます。学会等で、この方法を紹介すると多くの研究者に「専門家に助けてもらったり、高価なシステムを使うまでのことではないが、画像の自動分類や画像中の物体の検出および分類ができるようになれば、研究の効率が上がるのだけど」といったニーズがあることがわかりましたので、本Webページにて、その方法を解説することにしました。
 

Machine learning is
Power for the people, by the people, of the people!

Movie

Create MLを使った画像分類

 

Create MLを使った画像中の物体検出

Table of Contents

Overview

概要説明

 
ここでは、Macを用いた画像の機械学習のプロトコルについて説明しています。
 
このプロトコルには、「学習」、「画像ファイルの分類 (Image classifier)」および「画像中の物体検出 (Object detector)」の方法が記されています。
 
これらの方法は5つのステップに分かれています。
1. 学習のためのアノテーション
2. 学習
3. 学習したAIによるアノテーション
4. ファイルの仕分け
5. 検出された物体のカウント
 
ステップ1および2は、Image classifierとObject detectorで異なります。
ステップ3は共通ですが、ステップ4はImage classifier用のオプション、ステップ5はObject detector用のオプションです。

Protocols

Applications

本解析で使用するアプリケーション

 
macOS (Catalina以降)
Create MLのグラフィカルインターフェース(GUI)バージョンを使用するためには、Catalina (macOS 10.15)以降のmacOSがインストールされたMacが必要です。MacOSごとに使用できるCreate MLのバージョンが異なります。
 

 MacOS 使用可能なXcodeバージョン Xcodeに含まれるCreateMLバージョン
Catalina (MacOS 10.15以降) 11.4-12.4? 1 (Xcode 11)または3 (Xcode 12)?
Big Sur (MacOS 11) 11.4-13.2 1 (Xcode 11)、3 (Xcode 12および13)
Monterey (MacOS 12) 11.4-14.2? 1 (Xcode 11)、3 (Xcode 12および13)、4 (Xcode 14)?
Ventura (MacOS 13) 11.4-14.3 1 (Xcode 11)、3 (Xcode 12および13)、4 (Xcode 14)

 


注:表中の下線部分は未検証です。Xcodeのバージョンと対応MacOSについては、https://developer.apple.com/jp/support/xcode/をご覧ください。
 
Create ML in Xcode(無料)
Create MLは、アップル社がソフトウエア開発者向けに無料配布している機械学習のためのアプリケーションです。Create MLは、Xcodeの一部として提供されており、App storeからダウンロード可能です。最新のXcodeは、App storeアプリケーションからダウンロードできます。古いバージョンのXcodeは、App store (https://developer.apple.com/download/more/)からダウンロード可能です(Apple DeveloperにID登録する必要がありますが、Xcodeは無料でダウンロードできます)。本プロトコルでは、基本的にChromosome Research (Nagaki et al. 2021)で報告したCreate ML ver 1の使用法について解説し、ver 3で異なる部分について追加説明しています(ver 3とver4は基本的に同じ操作で、何が違うのか分かりません)。
 
RectLabel Pro(1週間無料、$2.99/month or $19.99/one-time)
RectLabel (https://rectlabel.com)は、Create MLで使用するアノテーションファイルを作成するのに便利なアプリケーションです。RectLabelは、Create MLによって生成されたモデルを使ったAIによるアノテーションにも使用できます。RectLabelは、App storeからダウンロード可能です。
 
CutSort(無料)
CutSort (https://github.com/tomoyukif/CutSort)は、RectLabelによって付加されたアノテーションに基づいて、フォルダ内の画像を仕分けするアプリケーションです。

Machine Spec

解析で使用するMac等のスペック

 
既存のモデルの利用
本サイトに掲載してあるものも含めCreate_MLで作られたCoreMLモデルなら、Mojave (macOS 10.14)以降がインストールされたいずれのMacでも快適に使用することができます(モデルを作るのにはそれなりの処理能力が必要ですが、使うのにはわずかな処理能力しか必要としません)。
 
Image classifier
Image classifierは、処理が軽いため、Create MLを含むXcodeがインストール可能なMacであればどんなMacでも利用可能です。
 
Object detector
Object detectorは、処理が重いため、独立したGPUをもつMacで学習させることをお勧めします。独立したGPUをもたないMacでも学習可能ですが、学習時間が長時間になります。また、独立したGPUをもたないMacでもeGPU(外付けGPU)を使うことにより、GPUを使った高速な解析が可能となります(ただし、使えるGPUは限られています)。残念ながらeGPUはM1等のM系プロセッサ搭載のMacでは使用することができず、M系プロセッサを用いた学習速度はアップルの主張に反して既存の高性能GPUより遅いです。
 
Object detector ver 1
Object detector ver 1は、設定項目も少なく、GPUを可能な限り酷使するので、処理能力とともに熱処理能力も学習に影響してきます。Object detector ver 3の高負荷(大きなGrid size値)設定に比べると計算量は少ないのですが、GPUを遠慮なく使ってくるのでGPUの使用率が上がりやすく、GPUの使用率が50%を超えると熱暴走との戦いとなります。この場合は、室温を下げ扇風機でバンバン風を当てるしか、できることは残されていません。
 
Object detector ver 3(および4)
Object detector ver 3(および4)は、設定項目にあるGrid sizeを変更することで、処理の重さが変化します。Grid sizeは、検定時に画像を何分割して検定するかに関する値ですが、この値を大きくするとより多くの処理能力が必要となります。デフォルトでは13 x 13に設定されていますが、画像に占める割合が小さな物体を検出する場合は、その物体が同一グリッドに複数含まれないようにGrid sizeの値を大きくする必要があります。反対に、処理が重すぎる場合、この数値を小さくすることにより、処理を軽くすることができます。目的に合わせた最小限の値にすることにより、処理の軽減、学習時間の短縮が可能となります。
 
CPU
GPUを用いた学習の場合、MacBook Airの様な非力なモデルでもCPUの使用量は上限に達することはほとんどありませんが、同じeGPUを用いてもMacごとに学習時間が変わるのでCPUの学習に与える影響がないわけではなさそうです。
 
MacのRAM
学習中のRAM使用量をみていると20-70 GBの範疇(多くの場合は32 GB以下)に収まっているように見えます。ですので、32 GB以上のRAMを搭載しているMacが理想です(最近のモデルはRAMが小さめで、増設できないモデルが多いのが悩みどころ)。RAM容量が少なく、データーがあふれた場合はスワップによって対応され、これが学習時間に影響するようです。RAMが8 GBの場合はGrid sizeの値を19 x 19以上、16 GBの場合はGrid sizeの値を27 x 27以上に設定すると学習開始時にエラーが出ます。RAMが72 GB以上(未確認だが、おそらく32 GBあれば大丈夫?)あればver 3のGrid sizeの上限値30 x 30が選択可能です(ただし、後述のGPUの性能によっては、そちらが律速になって選べないことがあります)。
 
GPU
GPUを用いた学習の場合、ほぼGPUの能力でできることが決まってきます。ビットコインバブルがはじけた影響で、2022年に入って、だいぶグラフィックボードの価格も落ち着いてきましたので、お安い「650 W以上対応のeGPU box」やグラフィックボードを見つけたら、機械学習用に購入するのもアリかもしれません。購入の参考のために、こちらの環境で試した例を挙げておきます。
 
Radeon RX 590
このGPUでは、Grid sizeを25 x 25以上に設定すると学習開始時にエラーが出ました。このGPUはCatalinaでも使用可能なのでObject detector ver 1の解析にも使用可能です。
 
Radeon RX 6600 XT
このGPUでは、Grid sizeを29 x 29以上に設定すると学習開始時にエラーが出ました。さらに、上限付近で使用すると学習中に発熱に起因すると思われるエラーが出ます。26 x 26以下で使用するとエラーが出にくくなります。このGPUにはMonterey以上が必要なのでObject detector ver 1の解析には使用できません。
 
Radeon RX 6800 XT
このGPUでは、Grid sizeを30 x 30まで設定可能で、ver 3の性能をフルに活用することができます。さらに、このクラスのGPUになると熱対策もしっかり取られており、発熱に起因すると思われるエラーは起きません。このGPUにはBig Sur以上が必要なのでObject detector ver 1の解析には使用できません。

Reference

参考文献

このページで紹介したCreate ML ver 1を用いた画像分類法で、分裂細胞や四分子を検出および分類した論文です。
 
Kiyotaka Nagaki, Tomoyuki Furuta, Naoki Yamaji, Daichi Kuniyoshi, Megumi Ishihara, Yuji Kishima, Minoru Murata, Atsushi Hoshino and Hirotomo Takatsuka. Effectiveness of Create ML in microscopy image classifications: A simple and inexpensive deep learning pipeline for non-data scientists. Chromosome Research in press, 2021. DOI:https://doi.org/10.1007/s10577-021-09676-z

Models

モデル

シェアされているモデルです。
ダウンロードして、自動検出等に、ご利用ください。
 
さらに、みなさんの作成したモデルもご提供いただければ、順次こちらからダウンロードできる様にします。
Machine learning is
Power for the people, by the people, of the people!

 
1. 細胞、染色体、四分子の顕微鏡画像の検出モデル
報告された論文
Kiyotaka Nagaki, Tomoyuki Furuta, Naoki Yamaji, Daichi Kuniyoshi, Megumi Ishihara, Yuji Kishima, Minoru Murata, Atsushi Hoshino and Hirotomo Takatsuka. Effectiveness of Create ML in microscopy image classifications: A simple and inexpensive deep learning pipeline for non-data scientists. Chromosome Research in press, 2021. DOI:https://doi.org/10.1007/s10577-021-09676-z
 
Mix-60_IC.mlmodel
12種由来の分裂細胞を含む画像(Chromosomes: 各5枚)と4種由来の分裂細胞を含まない画像(Others: 各15枚)を元に、オプションなしで生成したImage classifier用のモデル。
 
Mix-60_IC+op.mlmodel
12種由来の分裂細胞を含む画像(Chromosomes: 各5枚)と4種由来の分裂細胞を含まない画像(Others: 各15枚)を元に、オプションありで生成したImage classifier用のモデル。
 
Mix-60_OD.mlmodel
12種由来の分裂細胞を含む画像(Chromosomes: 各5枚)と4種由来の分裂細胞を含まない画像(Others: 各15枚)を元に生成したObject detector用のモデル。
 
Mix-120_IC.mlmodel
12種由来の分裂細胞を含む画像(Chromosomes: 各10枚)と4種由来の分裂細胞を含まない画像(Others: 各30枚)を元に、オプションなしで生成したImage classifier用のモデル。
 
Mix-120_IC+op.mlmodel
12種由来の分裂細胞を含む画像(Chromosomes: 各10枚)と4種由来の分裂細胞を含まない画像(Others: 各30枚)を元に、オプションありで生成したImage classifier用のモデル。
 
Mix-120_OD.mlmodel
12種由来の分裂細胞を含む画像(Chromosomes: 各10枚)と4種由来の分裂細胞を含まない画像(Others: 各30枚)を元に生成したObject detector用のモデル。
 
Mix-767_IC.mlmodel
12種由来の分裂細胞を含む画像(Chromosomes: 全767枚)と4種由来の分裂細胞を含まない画像(Others: 全232枚)を元に、オプションなしで生成したImage classifier用のモデル。
 
Mix-767_IC+op.mlmodel
12種由来の分裂細胞を含む画像(Chromosomes: 全767枚)と4種由来の分裂細胞を含まない画像(Others: 全232枚)を元に、オプションありで生成したImage classifier用のモデル。
 
Mix-767_OD.mlmodel
12種由来の分裂細胞を含む画像(Chromosomes: 全767枚)と4種由来の分裂細胞を含まない画像(Others: 全232枚)を元に生成したObject detector用のモデル。
 
Nt-120_IC.mlmodel
タバコの分裂細胞を含む画像(Chromosomes: 全120枚)と4種由来の分裂細胞を含まない画像(Others: 各30枚)を元に、オプションなしで生成したImage classifier用のモデル。
 
Nt-120_IC+op.mlmodel
タバコの分裂細胞を含む画像(Chromosomes: 全120枚)と4種由来の分裂細胞を含まない画像(Others: 各30枚)を元に、オプションありで生成したImage classifier用のモデル。
 
Nt-120_OD.mlmodel
タバコの分裂細胞を含む画像(Chromosomes: 全120枚)と4種由来の分裂細胞を含まない画像(Others: 各30枚)を元に生成したObject detector用のモデル。
 
BY-2-120_IC.mlmodel
BY-2の分裂細胞を含む画像(Chromosomes: 全120枚)と4種由来の分裂細胞を含まない画像(Others: 各30枚)を元に、オプションなしで生成したImage classifier用のモデル。
 
BY-2-120_IC+op.mlmodel
BY-2の分裂細胞を含む画像(Chromosomes: 全120枚)と4種由来の分裂細胞を含まない画像(Others: 各30枚)を元に、オプションありで生成したImage classifier用のモデル。
 
BY-2-120_OD.mlmodel
BY-2の分裂細胞を含む画像(Chromosomes: 全120枚)と4種由来の分裂細胞を含まない画像(Others: 各30枚)を元に生成したObject detector用のモデル。
 
Ha-120_IC.mlmodel
ヒマワリの分裂細胞を含む画像(Chromosomes: 全120枚)と4種由来の分裂細胞を含まない画像(Others: 各30枚)を元に、オプションなしで生成したImage classifier用のモデル。
 
Ha-120_IC+op.mlmodel
ヒマワリの分裂細胞を含む画像(Chromosomes: 全120枚)と4種由来の分裂細胞を含まない画像(Others: 各30枚)を元に、オプションありで生成したImage classifier用のモデル。
 
Ha-120_OD.mlmodel
ヒマワリの分裂細胞を含む画像(Chromosomes: 全120枚)と4種由来の分裂細胞を含まない画像(Others: 各30枚)を元に生成したObject detector用のモデル。
 
OD_Mix-767+Keyence-150.mlmodel
12種由来の分裂細胞を含む画像(Chromosomes: 全767枚)と4種由来の分裂細胞を含まない画像(Others: 全232枚)にKeyence顕微鏡で撮影した分裂細胞を含む画像150枚を加えたデータを元に生成したObject detector用のモデル。
 
Confocal.mlmodel
ニンニクの根の共焦点顕微鏡画像中のinterphase(873個)、prophase(202個)、 metaphase(119個)、anaphase(41個)、telophase(109個)を元に生成したObject detector用のモデル。
 
Tetrads.mlmodel
イネ の四分子画像292個を元に生成したObject detector用のモデル。

Annotated Images for Learning

学習用アノテーション済み画像ファイル

モデル生成に使った学習用アノテーション済み画像ファイルです。
圧縮ファイルを解凍して生成されたフォルダをそのままCreate MLで読み込めますので、システムの動作確認や練習にご利用ください。
 
また、これらの画像に違うアノテーションをつければ、転移学習用にも使用可能です。
 
加えて、これらの画像にご自身で用意した画像を付け加えて学習することにより、少量の画像をご自身で用意するだけで、ご自身で用意した画像だけで学習するよりも高精度のモデルを作ることも可能です。
 
さらに、みなさんの作成した学習用アノテーション済み画像データもご提供いただければ、順次こちらからダウンロードできる様にします。
Machine learning is
Power for the people, by the people, of the people!

 
1. 細胞、染色体、四分子の顕微鏡画像
これらの画像が使用された論文
Kiyotaka Nagaki, Tomoyuki Furuta, Naoki Yamaji, Daichi Kuniyoshi, Megumi Ishihara, Yuji Kishima, Minoru Murata, Atsushi Hoshino and Hirotomo Takatsuka. Effectiveness of Create ML in microscopy image classifications: A simple and inexpensive deep learning pipeline for non-data scientists. Chromosome Research in press, 2021. DOI:https://doi.org/10.1007/s10577-021-09676-z
 
IC_Mix-60.zip
Image classifier用の12種由来の分裂細胞を含む画像(Chromosomes: 各5枚)と4種由来の分裂細胞を含まない画像(Others: 各15枚)。
  
OD_Mix-60.zip
Object detector用の12種由来の分裂細胞を含む画像(Chromosomes: 各5枚)と4種由来の分裂細胞を含まない画像(Others: 各15枚)とjasonファイル。
 
IC_Mix-120.zip
Image classifier用の12種由来の分裂細胞を含む画像(Chromosomes: 各10枚)と4種由来の分裂細胞を含まない画像(Others: 各30枚)。
 
OD_Mix-120.zip
Object detector用の12種由来の分裂細胞を含む画像(Chromosomes: 各10枚)と4種由来の分裂細胞を含まない画像(Others: 各30枚)とjasonファイル。
 
IC_Mix-767.zip
Image classifier用の12種由来の分裂細胞を含む画像(Chromosomes: 全767枚)と4種由来の分裂細胞を含まない画像(Others: 全232枚)。
 
OD_Mix-767.zip
Object detector用の12種由来の分裂細胞を含む画像(Chromosomes: 全767枚)と4種由来の分裂細胞を含まない画像(Others: 全232枚)とjsonファイル。
 
IC_Nt-120.zip
Image classifier用のタバコの分裂細胞を含む画像(Chromosomes: 全120枚)と4種由来の分裂細胞を含まない画像(Others: 各30枚)。
 
OD_Nt-120.zip
Object detector用のタバコの分裂細胞を含む画像(Chromosomes: 全120枚)と4種由来の分裂細胞を含まない画像(Others: 各30枚)とjsonファイル。
 
IC_BY-2.zip
Image classifier用のBY-2の分裂細胞を含む画像(Chromosomes: 全120枚)と4種由来の分裂細胞を含まない画像(Others: 各30枚)。
 
OD_BY-2.zip
Object detector用のBY-2の分裂細胞を含む画像(Chromosomes: 全120枚)と4種由来の分裂細胞を含まない画像(Others: 各30枚)とjsonファイル。
 
IC_Ha-120.zip
Image classifier用のヒマワリの分裂細胞を含む画像(Chromosomes: 全120枚)と4種由来の分裂細胞を含まない画像(Others: 各30枚)。
 
OD_Ha-120.zip
Object detector用のヒマワリの分裂細胞を含む画像(Chromosomes: 全120枚)と4種由来の分裂細胞を含まない画像(Others: 各30枚)とjsonファイル。
 
OD_Mix-767+Keyence-150.zip
Object detector用の12種由来の分裂細胞を含む画像(Chromosomes: 全767枚)と4種由来の分裂細胞を含まない画像(Others: 全232枚)にKeyence顕微鏡で撮影した分裂細胞を含む画像150枚を加えたデータとjsonファイル。
 
Confocal.zip
Object detector用のニンニクの根の共焦点顕微鏡画像中のinterphase(873個)、prophase(202個)、 metaphase(119個)、anaphase(41個)、telophase(109個)とjsonファイル。
 
Tetrads.zip
Object detector用のイネ の四分子画像292個とjsonファイル。

PDF

このマニュアルのPDF版は、こちらからダウンロードできます。

Contact

この方法およびWebページに関するお問い合わせは、岡山大学 資源植物科学研究所 長岐清孝(nagaki@(@以下はokayama-u.ac.jp を付けてください。))までお願いします。