機械学習を使った行動動画解析
機械学習、AIという言葉が色々な分野で当たり前となってきました。私も最近ではDeepLabCutというプログラムを使っての解析を始めています。プログラミングはMatlabなどを通して数値解析に使っていたのですが、画像解析などはやったことがありませんでした。なので、これを機にすこし勉強してみようと思いました。
今日紹介しようと思う論文は、idtracker.ai: tracking all individuals in small or large collectives of unmarked animalsです。
私がマウスの行動解析を始めたのは3年ほど前からです。つい最近までの実験方法は、白い床に黒いマウスを配置して散策行動させたビデオを解析していました。この解析ではマウスの位置を決定するのですが、その原理は、白い床と黒いマウスのコントラスト情報を基にしてマウスの輪郭を決定し、その重心をマウスの位置として出力するものです。このプログラムidTrackerは非常に簡単に扱えるので重宝したのですが、実験で使う上では気にしなけれいけない問題がいくつかありました。それは、マウスの重心しか出力できずマウスの姿勢などが評価できないという問題、物陰や不透明な物体の後ろに隠れた時の検出が甘くなるという問題、そして多数のマウスがいる場合にはマウスの番号(ID)が入れ替わったりしてしまうという問題です。
これらの問題を解決するために、ここ数ヶ月はDeepLabCutを使っていて、現在までのところ機嫌よく動いてくれています。でもよく考えると、私は画像解析や機械学習の基礎どころか基礎の基礎も知りません。ですので、今回は勉強も兼ねてこの論文を読むことにしました。
idTracker.aiは以前のidTrackerに畳み込みネットワークを組み込むことで、IDの入れ替わりを防いでいます。idTrackerにはなかった、この一手間を挟むことによって、10個体以上の追跡に対しても90%以上の精度が得られるようになっています。図(f)に書かれているように、idTracker.aiは150匹のゼブラフィッシュについて95%程度の正確性を持って追跡できていますが、idTrackerだと30匹を超えたくらいで85%の精度しかえられていません。
実際にfigure2ではゼブラフィッシュやショウジョウバエを用いた比較的個体数の多いグループの行動解析を実施しています。これによって、個体ごとのコンタクトを解析できるようになっているのは学ぶところがあります。
私はせいぜい3匹のマウスがフィールドにいる状況で実験をしているので、idTrackerで十分みたいです。また気になるところは、youtubeにアップされているidTracker.aiに関する動画では2匹しかいないにも関わらずマウスの番号が動画途中で入れ替わっています。これは、個体の画像認識を楕円(長軸と短軸がある形)として認識しているせいかもしれません。上から見て丸い形をしている個体の認識精度が重要なファクターになっているのか興味があります。
多くのマウスを1つのアリーナに入れて相互関係を解析していくような社会行動解析では利用価値があるのかもしれません。個人的には、Three Chamber testだけでは社会性は評価しても自信がないので、新しい社会行動評価タスクを開発する必要性も感じる今日この頃です。私の個人的な感想ですが、DeepLabCutは鼻など体の部位が別々にラベルできるので、コンタクトをより詳細に解析できるメリットがある気がします。
紹介するテーマを選ぶ指標として、記事への評価を参考にしようと思っています。もし気に入ったら評価してもらえると嬉しいです。