[スポンサーリンク]

一般的な話題

ゼロから学ぶ機械学習【化学徒の機械学習】

[スポンサーリンク]

hodaです。機械学習に興味があります。
突然ですが読者の皆さんは第13回ケムステVシンポジウム「創薬化学最前線」をご覧になりましたか?私も第13回Vシンポを見ていました。見ていないよという人も、一部講演がYou Tubeで今からも見られます。第13回のVシンポでは、AI・機械学習関連の研究のご講演がありました。

この記事では機械学習の初歩的な知識から、化学において重要な構造式を機械がどのように読み込むかについてお話しようと思います。

機械学習とは

図1 機械学習関連の言葉の分類(強化学習は教師なし学習に分けていることもありますが、今回は教師あり学習にも教師なし学習にも含まれていないとして分類しました。人工知能はAI(Artificial Intelligence)で、機械学習はML(Machine Learning)と略されます。)

 

機械学習に関連するいくつかワードを拾ってきて分けてみました。聞いたことのある言葉も入っているでしょうか。人工知能(AI)や機械学習と言った言葉はよく使われていますが、くくっていくと図1のように分類されます。機械学習により、コンピュータが与えられたデータに潜まれたパターンを分析し、その学習したパターンを利用して新たなデータに対して結果を予想することが可能になります。

ラベルがあるかないか

機械学習において、結果を予測するためにデータを集め、そのデータを処理する方法として次の2つが挙げられます。

教師あり学習(Supervised learning)
教師なし学習(Unsupervised learning)

教師あり学習、教師なし学習にはそれぞれたくさん種類があります。教師あり学習は、ラベルを元にモデルを作り未知のデータに対しても正しい予測ができるようにする汎化能力の習得を目標としています1。一方教師なし学習は、データ自体の背後にある構造や特徴を解析することを目的としています2。ここでいうラベルは、答に対応すると考えてもそれほど問題ありません。教師あり学習だけを用いてもモデルを作成し、未知データに対して予測を行うことができます。しかし、教師あり学習の前に教師なし学習でデータを処理することにより、そのままのデータを使うよりも人間が説明しやすくなったり、場合によっては教師あり学習の精度が向上させたりすることができます。他にも強化学習(Reinforcement learning)や半教師あり学習(半教師付き学習とも言う)が存在します。

教師あり学習の種類

教師あり学習は「分類(Classification)」と「回帰(Regression)」の大きく2種類に分けられます。クラス(例えば0と1)に分ける場合は分類を、連続した値から(関数のように)予測する場合は回帰になります。

図2 分類のイメージ

図3 回帰のイメージ

分類のみに使うことができるアルゴリズムや、分類と回帰のどちらにも使うことができるアルゴリズムなど、各アルゴリズムに特徴があります。

・Random Forest
・AdaBoost
・Support Vector Machine (SVM)
・kNN(k近傍法)
・Neural Network
・Logistic Regression
・Liner Regression
など

教師なし学習の種類

クラスタリング(Clustering)や次元削減(Dimensionality reduction)などを行ったりします。

・PCA
・k-means
・t-SNE
など

機械学習の言語

プログラミング言語にはC/C++やJava、JavaScript、Swiftなどほかにもたくさんありますが、機械学習によく使われる言語は次の2つだと思います。

・Python
・R

特にPythonは比較的直感的なコードであるため、初心者にやさしい汎用型のプログラミング言語と言われています。汎用性があり、機械学習系のライブラリが豊富であるため機械学習などによく使われています。またR はデータ解析を得意としています。ちなみに筆者は執筆時点でPythonしかプログラミング言語を学んでいません。筆者がPythonを使っているのでここからはPythonの話ばかりになってしまうと思いますが、ご容赦ください。

化学で特に使うツール

ここまでは機械学習全般の話で、化学に限ったものではありません。
ここからは化学で特に使うツールについてです。化学において構造式は人間にたくさんの情報を与えてくれます。構造式は人間からすると視覚的にわかりやすいですが、機械にとっては構造式からうまく情報を取り込むことは難しいです。そこで構造式を機械に読み込ませる形に変換するための変換ツールが登場します。構造式の変換ツールの例として、SMILES(スマイルズと読む)が挙げられます3。SMILESはSimplified Molecular Input Line Entry Systemの略です。この表記により構造式を文字や記号を用いて1行の文字列にして情報を取り込めるようにします。そして、プログラミングやソフトウェアなどによってSMILESから構造式の画像を出すことができます。SMILESにはいくつか種類があるようなので、ここではcanonical SMILES4の例を示したいと思います。
SMILESで化合物を読み込み、計算や機械学習を行えるような形で構造情報を表す方法として、例えばfingerprints(フィンガープリントと読む)があります。fingerprintsにもいくつか種類があります。構造式をfingerprintsへ変換するアルゴリズム5, 6, 7のひとつであるECFP アルゴリズムのおおまかな流れは以下のようになっています。

  1. 水素原子以外の原子それぞれについて原子番号などの特徴を元に整数の識別子を割り当てる。
  2. それぞれの原子の識別子を隣接する原子の識別子の存在を反映して、識別子のアップデートを繰り返し行う。このことにより、部分構造の情報を加味した識別子が得られる。
  3. 重複した識別子を削除する。

ECFPs はExtended-connectivity fingerprintsの略で、上記のアルゴリズムの後に残った識別子がECFP fingerprintsです。
ここでは筆者が使ったことがあるfingerprintsのひとつであるMorgan fingerprintsの例を図4に示しました。Morgan fingerprintsは構造情報が0と1を大量に並べるビット列で表されます(fingerprintsの種類によって記述子の数やビット列、整数の列か異なります8)。複雑な化学構造式がシンプルな数字の並びだけで表現できるとは驚きですね。

図4 SMILESとfingerprintsの例(Emodinのcanonical SMILESは参考文献4から)

SMILES、fingerprintsについての詳しい説明はケムステの過去記事にもまとめられているのでご参照ください (SDF って何?〜化合物の表記法〜)。

終わりに

今回はとにかく機械学習に関して思いつく限りの基礎用語を挙げてみました。リスト方式で紹介した教師あり学習、教師なし学習の種類はまだまだたくさんありますし、1つ1つもそれぞれ特徴があります。まだまだ十分な情報ではありませんが、今回はここまでにしたいと思います。

参考文献

[1] 杉山将 著, イラストで学ぶ 機械学習―最小二乗法による識別モデル学習を中心に, 2頁, 講談社, 2013

[2] 大曽根, 関, 米田 著, 現場で使える!Python機械学習入門, 136頁, 翔泳社, 2019

[3] 金子弘昌 著, 化学のためのPythonによるデータ解析・機械学習入門, 129頁, 134頁,オーム社, 2019

[4] Toluene (Compound), PubChem,

https://pubchem.ncbi.nlm.nih.gov/compound/Toluene#section=InChI-Key (最終閲覧日:2021年3月20日)

[5] Kensert, A.; Alvarsson, J.; Norinder, U.; Spjuth, O. Evaluating Parameters for Ligand-Based Modeling with Random Forest on Sparse Data Sets. J. Cheminform. 2018, 10 , 1–10. DOI: 10.1186/s13321-018-0304-9.

[6] Rogers, D.; Hahn, M. Extended-Connectivity Fingerprints. J. Chem. Inf. Model. 2010, 50, 742–754. DOI: 10.1021/ci100050t.

[7] A Practical Introduction to the Use of Molecular Fingerprints in Drug Discovery, https://towardsdatascience.com/a-practical-introduction-to-the-use-of-molecular-fingerprints-in-drug-discovery-7f15021be2b1 (最終閲覧日:2021年4月8日)

[8] Elton, D. C.; Boukouvalas, Z.; Butrico, M. S.; Fuge, M. D.; Chung, P. W. Applying Machine Learning Techniques to Predict the Properties of Energetic Materials. Sci. Rep. 2018, 8, 1–12. DOI: 10.1038/s41598-018-27344-x.

記事全体の参考

[9] 神崎洋治 著, 図解入門 最新人工知能がよ~くわかる本, 秀和システム, 2016

[10] 下田倫大 監訳, scikit-learnとTensorFlowによる実践機械学習, オライリー・ジャパン, 2018

[11] 中田秀基 訳, Pythonではじめる機械学習, オライリー・ジャパン, 2017

[12] Kebin P. Murphy, Machin Learning A Probabilistic Perspective, 2頁, 12頁, The MIT Press, 2012

Topの画像は写真ACから利用しています

関連書籍

関連リンク

AI・機械学習関連

・SDFって何?~化合物の表記法~

・超合金粉末の製造方法の改善に機械学習が施試行される

・AIによる創薬に新たな可能性 その研究と最新技術に迫る ~米・Insitro社 / 英・ケンブリッジ大学の研究から~

・AIで世界最高精度のNMR化学シフト予測を達成

・日本で発展する化学向けAIと量子コンピューターテクノロジー

 

hoda

投稿者の記事一覧

Python好きな学部生です。勉強しながら執筆します。

関連記事

  1. 有機合成化学協会誌2020年9月号:キラルナフタレン多量体・PN…
  2. 芳香族カルボン酸をHAT触媒に応用する
  3. 化学Webギャラリー@Flickr 【Part 3】
  4. ヘテロ環ビルディングブロックキャンペーン
  5. 化学英語論文/レポート執筆に役立つPCツール・決定版
  6. 層状複水酸化物のナノ粒子化と触媒応用
  7. 5分でできる!Excelでグラフを綺麗に書くコツ
  8. 【書籍】理系のための口頭発表術

コメント、感想はこちらへ

注目情報

ピックアップ記事

  1. 中村栄一 Eiichi Nakamura
  2. ニュースの理由・武田、米で6年ぶり大型新薬
  3. クラブトリー触媒 Crabtree’s Catalyst
  4. フェネストレンの新規合成法
  5. 10-メチルアクリジニウム触媒を用いたBaeyer-Villiger酸化反応
  6. MSI.TOKYO「MULTUM-FAB」:TLC感覚でFAB-MS測定を!(1)
  7. 炭素-炭素結合を組み替えて多環式芳香族化合物を不斉合成する
  8. 製薬各社 2010年度 第3四半期決算を発表
  9. リガンド指向性化学を用いたGABAA受容体の新規創薬探索法の開発
  10. 分子模型を比べてみた

関連商品

ケムステYoutube

ケムステSlack

注目情報

注目情報

最新記事

第142回―「『理想の有機合成』を目指した反応開発と合成研究」山口潤一郎 教授

第142回の化学者インタビューは日本から、皆さんご存じ、山口潤一郎教授の登場です。名古屋大学理学部化…

【書籍】ゼロからの最速理解 プラスチック材料化学

今月発売された『ゼロからの最速理解 プラスチック材料化学』(佐々木 健夫 著,コロナ社)という書籍を…

重水は甘い!?

同位体はある元素、すなわち同一の原子番号をもつ原子核において、中性子数の異なる核種のことをいいますね…

人物でよみとく化学

概要化学の歴史をつくった約50人を収録。高校・大学の化学の勉強に役立つ16テーマをあつかい、…

金属ナトリウム分散体(SD Super Fine ™)

概要金属ナトリウム分散体(SD Super Fine ™)は、金属ナトリウムの微粒…

アクセラレーションプログラム 「BRAVE 2021 Spring」 参加チームのエントリー受付中!(5/10〆切)

Beyond Next Ventures株式会社(本社:東京都中央区、代表取締役社⻑:伊藤毅、以下「…

赤キャベツから新しい青色天然着色料を発見 -青色1号に代わる美しく安定なアントシアニン色素-

青の食品着色料として広く使われる化学合成の「青色1号」とほぼ同じ色で、長期保存時の安定性に優れた天然…

砂塚 敏明 Toshiaki Sunazuka

砂塚 敏明 (すなづか としあき)は、日本の有機化学者である。学校法人北里研究所 理事、北里大学大村…

Chem-Station Twitter

PAGE TOP