Mathematica ではバージョン 12.0 から分子に関する関数が実装されており、 分子情報を扱うことができるようになっています。 今回は、化学構造式の光学認識 (Optical Chemical Structure Recognition) の性能を検証します。 OCSR については magattaca様のブログ が非常に参考になります。
Mathematica には「MoleculeRecognize」という関数が用意されています。 この関数を用いることで、画像から化学構造式を認識できます。
OCSR_Review at V1.0 にあるデータセットを用いてベンチマーク計算を行いました。
データセット | データ数 | 計算時間 (min) | 認識精度 (%) |
---|---|---|---|
USPTO | 5719 | 33.7 | 88.3 |
UOB | 5740 | 33.9 | 80.2 |
CLEF 2012 | 992 | 6.0 | 83.5 |
JPO | 450 | 5.2 | 66.4 |
認識できなかった分子には次のような傾向が見られました。
原因 | 元の画像 | 認識した分子 |
---|---|---|
官能基が認識できない or 未対応 | ||
元素記号が認識できない or 未対応 | ||
結合が読み取れない or 誤認識する | ||
分子以外の情報を誤認識する |
まあまあいけてるなと思いました。
次回はGUIを用意してインタラクティブなツールを作ってみます。