医療系AIエンジニアの技術メモ

ディープラーニング(主に画像系)の技術メモブログです

Robust Histopathology Image Analysis: to Label or to Synthesize?

スポンサーリンク


f:id:y_kurashina:20190921204008p:plain
Fig1. GANを用いた組織病理画像合成

論文URL

http://openaccess.thecvf.com/content_CVPR_2019/papers/Hou_Robust_Histopathology_Image_Analysis_To_Label_or_to_Synthesize_CVPR_2019_paper.pdf
2019年のCVPRで公開

ポイント

  • 組織病理画像を用いた細胞核セグメンテーション時のGANによるaugmentation手法の提案
    • 細胞核の検出は病理学で最も基本的なステップであるものの、様々な状態(癌の種類、細胞の状態、観察組織片の作成方法、画像化手法等)を網羅する教師データを作成するためには膨大な作業量を要する
      • 筆者らの実験では、1200万画素の50枚の画像のラベリングに病理医が120~230時間を要したとのこと
    • そこで、実データに加え合成データも使用し半教師有り学習を実施
      • 細胞核の特徴を考慮した簡易的な手法で生成した画像をGANで修正することで合成データを生成
        • 簡易的な手法を利用する理由の記述はないが、細胞核の特徴を考慮した初期画像を作成することで(簡易手法が適切であれば)、より真の症例に近い画像を得られる効果があるものと推測される
    • 真のデータ分布の推定を行い、推定分布で各サンプルのLossを重み付けした汎化損失(サンプルの偏りに影響を受けない損失)を使用してモデルを学習している

合成データ生成

  1. 正解マスクを生成 (Fig1.(1))
    • ランダムな形状・サイズ・数のポリゴンを生成
      • ポリゴンの形状等の特徴量の分布に生物学的な知見を反映することが本手法の肝だと思われるが、特に記述無し
  2. 簡易手法(GAN-free method)による初期合成画像生成 (Fig1.(2))
    • 実画像に対し大津の二値化法で細胞核領域を抽出
    • 細胞核領域を背景領域のテクスチャーで、正解マスク領域を細胞核領域のテクスチャーで塗りつぶす
      • 塗りつぶす手法についてはこちらを参照
  3. 初期合成画像をGANで修正 (Fig1.(3))
    • 初期合成画像に加え参照画像も入力して、合成画像を修正する
      • 参照画像には、初期画像と異なるタイプ(癌の種類等)の画像を指定できる
    • Discriminatorを騙すだけでなく、セグメンテーションモデルのLossを最大化するようにGeneratorを学習
      • 実現方法は異なるがモデルも騙そうとするアイデアはGAMOと同じ
      • 初期合成画像とGANによる修正画像の差のL1およびL2正規化項も使用している
      • セグメンテーションモデルのLossの最大化項の重みを他のLossより大きくしすぎると、初期合成画像と大きく異なる画像に変化してしまうことに注意を要する

f:id:y_kurashina:20190921214955p:plain
Fig2. 合成画像生成例

Fig2.(a) 初期合成画像

  • 1列目がランダムに生成した正解マスク
  • 1行目が入力実画像
  • 残りの画像が生成結果

Fig2.(b) GANによる修正後の合成画像

  • 1列目が初期合成画像
  • 1行目が参照画像
  • 残りの画像が修正後の合成画像

推定データ分布を考慮したLoss

  • 汎化損失L(\theta)は以下の式で求まる
    • L(\theta) = \sum _ {X,T} f _ \theta (\langle X,T \rangle) p(\langle X,T \rangle)
      • f _ \theta : セグメンテーションモデルのLoss関数
      • X : 入力画像
      • T : 正解マスク
      • p : X, Tの真の生成分布
    • 合成画像の生成分布g(\langle X,T \rangle)を用いると汎化損失は
      L(\theta) = \sum _ {X,T} f _ \theta (\langle X,T \rangle) \frac{p(\langle X,T \rangle)}{g(\langle X,T \rangle)} g(\langle X,T \rangle)
      となり、\frac{p(\langle X,T \rangle)}{g(\langle X,T \rangle)}を推定できれば汎化損失を計算できる。
    • ここで、ベイズの定理より以下の式が得られる。
      • Pr(X~p|X) = \frac{Pr(X|X~p) Pr(X~p)}{Pr(X|X~p) Pr(X~p) + Pr(X|X~g) Pr(X~g)}
        =\frac{p(X)}{p(X) + g(X)c}
        • Pr(X~p|X) : Xが与えられた場合に、そのXが真の分布から生成された確率
        • Pr(X|X~p) : 真の生成分布からXが生成された確率 (=p(X))
        • Pr(X|X~g) : 合成画像の生成分布からXが生成された確率 (=g(X))
        • c : 合成画像数と真の画像数の比 (=Pr(X~g)/Pr(X~p))
    • 続いて、p/gTに依存しないと仮定すると以下の式で計算できる。
      • \frac{p(\langle X,T \rangle)}{g(\langle X,T \rangle)} = \frac{p(X)}{g(X)} = c \cdot \frac{Pr(X~p|X)}{1-Pr(X~p|X)}
    • Pr(X~p|X)としてDiscriminatorが推定した確率を使用することで汎化損失を計算できる

スポンサーリンク