Deep learning を使ったグラム染色画像の細菌同定システム

MikuHatsune2016-04-03

Deep learning を使って、グラム染色で見えている細菌がなんの菌なのかを判定しようという試み。
実際は半年以上前に手をつけていたけど、プレリなところで終わっていて、データ取りをするのにめんどくさかったのでもうやめたので誰かやってみたらいいんじゃない? 的な丸投げ。
 
そもそものモチベーションとして、グラム染色となんぞや、そしてそれで菌が同定できれば何がうれしいのか、という話であるが
感染症領域においては、ヒトに害をなす菌、というのは、多くは知られている。そして、感染症が疑われる場合において、菌を同定する最初のステップとして用いられる検査が、グラム染色である。
グラム染色は何をするかというと、細菌感染が疑われる部位において、例えば、咳をしていたら肺炎疑いで痰を取るとか、膿があったらその部位を直接取るとか、あとは適当に血液培養検査でもしておくか、いったときに、痰や膿や血(血は培養陽性になったらだけど)を特殊な染色液で染めて直接顕微超で見る検査である。
このとき、グラム染色陽性・陰性と、桿菌・球菌の2*2 の4パターンが報告される。

 
ある程度の菌は、どういう感染症を起こすか、ということでパターン化されていて、4パターンのどこに分類される、というのは、実はわかっている。しかし、ここで大きく問題となるのは、例えば、(1)グラム陰性桿菌であることがわかっている大腸菌緑膿菌、(2)グラム陽性球菌であることがわかっているMSSA とMRSA, である。
 
(1)
大腸菌はその名の通り、大腸というかうんこにいる。しかし、大腸菌が血液から検出されると、それは普通、大腸菌のせいで感染症を起こしている、といってよい。
さて、ここでグラム染色の結果がグラム陰性桿菌だったとしよう。グラム染色だけで菌は決まらないが、その他の臨床情報で、ある程度の可能性は絞れる。いま、大腸菌っぽいけど、もうひとつの菌株を考えないといけないとしよう。それが緑膿菌である。
緑膿菌は、ヒトには普通おらず、洗面台などの水回りによくいる。これがなぜ問題かというと、免疫抑制患者などにすぐ増えるし、入院期間が長いとすぐ増えるし、何より、緑膿菌の場合に考えないといけない抗菌薬が異なるからである。緑膿菌に効く抗生剤は、大腸菌にも効くので、何も考えず緑膿菌に効く抗生剤を使えばいいじゃん、という考えは正しいあるが、抗生剤は正しく使わないと、大腸菌しかいないときに緑膿菌にも効く抗生剤を無駄に使っていると、いざ緑膿菌が検出された時に緑膿菌に効かなくなるという、耐性化が起こる。このため、大腸菌しかいないならば、緑膿菌に効く抗生剤は温存したい、というのがモチベーションである。
 
さて、大腸菌緑膿菌がどれほど見分けがつかないか、やってみよう。


正解は反転
大腸菌|大腸菌|大腸菌|大腸菌|大腸菌
緑膿菌|緑膿菌|緑膿菌|緑膿菌|緑膿菌
熟練の検査技師が見れば、大腸菌のほうが太っちょで、緑膿菌は細長く、染色が淡い、とかなんとか。なるほど、わからん。
 
(2)
MSSA とMRSA はどちらもグラム陽性球菌である。これがなぜ問題かというと、これも抗生剤が異なるからである。
他にも、大腸菌と、大腸菌ESBL という多剤耐性菌もいるわけで、これも判別できるかやってみた。
 
Deep learning にはCaffe を用いた。
 
結果

菌株 正答率 F値 AUC
大腸菌 vs 緑膿菌 0.79 0.81 0.93
大腸菌 vs ESBL 0.61 0.70 0.70
MSSA vs MRSA 0.73 0.79 0.88


 
グラム陰性桿菌である大腸菌緑膿菌は、そもそもの菌株が違うので、それなりに判定できるっぽい。
一方、大腸菌とESBL は、同一菌株の遺伝子変異によるものなので、形態学的にはほとんど判別は無理っぽい。
MSSA とMRSA はけっこううまく判別できているが、血液培養での培養時間や、嫌気性・好気性ボトルの違いで菌体の大きさがなんか統一されていないっぽかったからよくわからん。
 
おまけ
本当ならば、大腸菌 vs 緑膿菌という二者択一ではなくて、臨床的に検出されうる菌と、いままでの知見にはなかった菌として判別されるべき未知の菌、という判定がされたらウレシイ。

 
結果:クソでした。
画質がスマホ撮影というのもあれだし、本来ならばはやりのsingle cell のごとく、一菌体が乗っている画像を解析したかったし、そのための画像処理もやれればよかったけど面倒だったし、実際は血液培養とか喀痰とか膿とかの画像をこれまたdeep karaoke みたいなノイズ除去、分離手法が使えればもっと精度あがるし実臨床に使えるかな、と思ったりしたけど、時間がなかったのでここまで。