
こんにちは。HACARUSのデータサイエンティストとしてインターン中の田中です。普段は大学でコンピューターサイエンスを学んでいます。 今回は病理組織画像のセグメンテーション(領域の自動判別)について調べる機会があったので、その際に見つけた、弱教師あり学習でピクセルレベルのセグメンテーションを実現するHistoSegNetというディープラーニングモデルについてご紹介します。
弱教師あり学習というのは、不完全または不正確な教師データから学習を行う方法のことです[1]。特にセグメンテーションの例では、画像につけられたカテゴリラベルで学習を行い、画像の領域分割を行うことなどを言います。
画像領域のセグメンテーションを行うためにピクセル単位のラベルを用意するのは時間を要しますが、画像にカテゴリ情報を付与するだけの弱教師あり学習であればその負担は大幅に軽減されます。一方で、従来の弱教師あり学習モデルは汎化性能が低いという問題がありました。詳細は後述しますが、今回紹介するHistoSegNetでは、推論の過程を画像のパッチレベルとピクセルレベルの二段階に分け、独自の後処理を行いこの問題を解決しています。
HistoSegNetはあくまでも病理組織画像のセグメンテーションを行うモデルです。得られたセグメンテーションの結果を用いて着目組織の分類モデルを学習するなどすれば、病理組織検査の支援が可能になるなど分析の幅が広がります。
それでは、HistoSegNetの紹介に入っていきます!推論の過程が二段階に分かれているため、今回の記事では前半部分のパッチレベルの推論を担うHistoNetというモデルについて説明したいと思います。
目次
- 病理組織検査が抱える問題
- HistoSegNet
- パッチ分割
- HistoNet
- まとめ
- 参考文献
病理組織検査が抱える問題
病理組織検査で使用される画像は専門知識を持った病理医によって診断されています。しかしながら2020年現在では、日本国内の病理医の総数2000余人で年間約2500万件の病理組織診断、約30万件の術中迅速診断、約3000万件の細胞診の指導や診断、そして約1500件の病理解剖に対応しているのが現状です[2]。
大量の画像を少人数で精査するには大きな労力を要する為、誤診などの人的ミスの発生するリスクが高まります。病理組織検査の支援ができれは病理医の負担軽減、誤診などのリスク軽減に繋がります。この記事で紹介するHistoSegNetはそのような支援を実現する可能性のひとつです。
HistoSegNet
HistoSegNetはICCV(International Conference of Computer Vision) 2019で発表されたモデルで、以下の全6ステップからなります(図1)。
Step 1: 画像のパッチ分割。
Step 2: パッチ内に存在する組織の種類の絞り込み(この操作を行うモデルがHistoNet)。
Step 3: パッチの各ピクセルが所属するクラス(ここでは組織)の予測。
Step 4: パッチの重複部分や画像の背景等の予測値の調整(Inter-HTT Adjustments) Step 5: 視覚化のためのパッチの色付け。
Step 6: 色付けされたパッチから色付けされた元の画像の形への復元。

図1:HistoSegNetの概形(文献1、figure 2より引用)
HistoSegNetに画像を通すと、形態学的分類(Morphological segmentation)と機能的分類(Functional segmentation)の二種類の出力が得られます(図2)。形態学的分類の明るい赤の領域(ROI-3)は平滑筋、暗い赤(ROI-1)は疎性結合組織、機能的分類の濃い青は外分泌腺、他の薄い青は形態学的分類という様に分かれていることがわかります。
- 形態学的分類: 組織を構成する細胞の種類による分類。
例: 平滑筋、重層立方上皮、ニューロピルなど - 機能的分類: 組織の機能性による分類。
例:分泌腺、血管など

図2:HistoSegNetの入力と出力(文献1、figure 10より引用)。左:消化器系の病理組織画像(入力)。中央:形態学的分類(出力)。右:機能的分類(出力)。
また先述のとおり、HistoSegNetの汎化性能は従来の弱教師あり学習の手法と比べると高いことが示されています(表1)。

表1:他の手法との精度比較(文献1、figure 11より引用)。morphは形態的分類の結果、funcは機能的分類の結果を示す。
未知の画像に対する精度比較では、SEC(Seed, Expand and Constrain)やDSRG(Deep Seeded Region Growing)とmIoU(mean IoU)を比較すると、HistoSegNetは形態的分類と機能的分類の両方でおよそ0.1ほど上回っています(1が最良)。
つまり、HistoSegNetは病理組織画像内の診断に関連性のある箇所をこれらのモデルより高い精度でハイライトできます。病理診断時の診断個所の探索を自動化することで、病理組織診断時の負担の軽減等が期待できますね。
では、HistoSegNetの概観が掴めたところで、行なわれている処理を順番に見ていきましょう。
Step 1: 画像のパッチ分割
Step 1の前処理の部分がパッチ分割です。HistoSegNetの学習に使用した病理組織画像のサイズは平均で約14000px x 14000pxと、通常深層学習に使用するような画像(今回は224px x 224px)と比較すると巨大である事が分かります[4]。
このサイズの画像を学習にそのまま使用すると、モデルのパラメーター数が膨大になり、メモリが不足してしまいます。そこで、いくつかの小さいサイズの画像(パッチ)に分割して学習に使用します。
パッチへの分割は隣り合うパッチと25%の重複が存在するように行います(図4左)。パッチの一部を重複させるのはboundary artifactの発生を抑えるためです。
boundary artifactとは画像の復元を行う際に画像の境界部分(今回の場合は画像の分割線)で発生する画像の劣化の事を指します。図4の右の画像は復元の際にboundary artifactの発生した例です[5]。

図4:パッチの分割(左、文献1のfigure 1を改変)とboundary artifact(右、文献4のfigure 1cより引用)
Step 2: パッチ内に存在する組織の種類の絞り込み(HistoNet)。
Step 2にはHistoNetというモデルが用いられます。HistoNetのアーキテクチャーはVGG16という画像分類によく用いられるモデルに似ています(図5)。VGG16は動物の分類から、肺CTに基づいたCOVID-19の罹患予測など、幅広い分類タスクに使用されています[6]。

図5:HistoNet(上)とVGG16(下)(文献1、figure 3より引用)
HistoNetは与えられたパッチが、51種類の組織の中のどれを含んでいるのかを二値で予測します。存在すると予測すれば1、それ以外は0です。 この中から更に31種類に絞り込み、それを最終的なパッチ内に存在する組織と予測します。実際にサンプルの病理組織画像を入力として与えて実験してみた例を以下に示します(図6)。

図6:左:テスト用のパッチ(入力)。中央:パッチに対するGround Truth(ラベル)。右:パッチに対するモデルの予測結果。
図6の中央のグラフ(ground truth)と図6の右のグラフ(予測結果)が一致している事が分かります。因みに、グラフ内で1と分類されている組織はラベルを参照すると、単層扁平上皮や密性結合組織、平滑筋などが含まれています。
この絞り込みを行う事によって、後続の処理でパッチ内に存在する可能性の高い組織のみに着目できるため、セグメンテーションの精度を高める事が出来ます。
まとめ
いかがでしたでしょうか?
31種類ものラベルから、画像パッチに含まれているラベルをピクセルレベルで分類するのは難しそうですが、HistoNetによる絞り込みで7種類まで絞り込んでしまえば、この後行われるピクセルレベルの分類がより簡単になるのは想像に難くないと思います。
以上をまとめると、重要な点は以下の二点になります。
- 画像の前処理として、巨大な病理組織画像をパッチに分割して扱いやすくした
- 後続のセグメンテーションの精度を高めるために、画像パッチ内に含まれる組織の候補をHistoNetを用いて絞り込んだ
ディープラーニングモデルはブラックボックスである反面、 病理医が気がつけない特徴に気が付いてくれる可能性があります。この技術によるフィードバックは単にプロセスの自動化にとどまらず、病理診断の新しい可能性を拓いてくれるかもしれません。
病理組織画像解析のプロセスを自動化したい、病理組織検査の新しい可能性をAIの技術を使用して開拓したい等ございましたら、 是非HACARUSまでお問い合わせください。
このような医療系データの分析をしたいという仲間も大歓迎です!(採用情報はこちら)
次回はHistoSegNetの後半部分であるピクセルレベルでの予測をするGrad-CAM(Step 3)、そして色付け/復元を行う後処理について紹介します(Step 4-6)。
それでは次回をお楽しみに!