[スポンサーリンク]

一般的な話題

果たして作ったモデルはどのくらいよいのだろうか【化学徒の機械学習】

[スポンサーリンク]

hodaです。「ゼロから学ぶ機械学習」からだいぶ時間がたってしまいましたが、今回の記事では前回取り上げることのできなかったモデルの精度評価について取り上げたいと思います。今回は機械学習のうちの教師あり学習の話です。(教師あり学習???という方は前回の記事をご覧ください。)

『モデル』とは?

なんとなく『モデル』という言葉を使ってきましたが、ここでモデルとは何を指すのか確認したいと思います。

モデルと各変数との関係1

関数y = f(x)のように入力データxを関数に入れて出力yを得る、この関数y = f(x)に当たるものがモデルになります2。xに入る数字は数字1つというよりは行列みたいなイメージです。yが離散的である場合は出力変数を『ラベル』と呼ぶこともあります3

性能指標

性能指標はモデルを評価する際に使います。分類と回帰のときで使われる指標は異なります。

分類のとき

分類では複数のクラスへ正しく分類することを目的としています。出力yが離散であるときに用います。
犬と猫の分類や、特定の機能を持つか持たないか(activeとinactive)など、2つのクラスに分けることが多いでしょう。まずは2つのクラスに分類するモデルの評価基準について記したいと思います。

予測はポジティブで、実際もポジティブに分類されることを真陽性(True Positive)、
予測はポジティブで、実際はネガティブ分類されることを偽陽性(False Positive)、
予測はネガティブで、実際はポジティブに分類されることを偽陰性(False Negative)、
予測はネガティブで、実際もネガティブに分類されることを真陰性(True Negative)

の4つに分けることができます4

これは混同行列(Confusion matrix)と呼ばれます。

混同行列はモデルの性能評価に優れていますが、他のモデルと比較となると単純には比較しづらいです。そこで性能を具体的な数値として出力してくれる4つの指標を今回紹介します。

正解率 (Accuracy)…これが高いほど、クラスを正しく分類できていることを表します4

分類の性能指標はクラスが正しく分類されているかを表す正解率(Accuracy)を用いることもありますが、正解率だけ確認してモデルの精度を判断することはおすすめしません。

例えば犬と猫の写真100枚を見分けようとしようとして、100枚中92枚が犬の写真だった場合の正解率(Accuracy)を考えましょう。この場合100枚すべてを犬と予測したモデルでも正解率は92 %になります。高い正解率から良いモデルのように感じるかもしれませんが、一般的に同じ出力しかしないモデルは良いモデルとは言いがたいです。上記の例のように用意したデータセットのクラスに元々偏りがあることは少なくないため、モデルの性能評価は正解率以外からも判断する必要があります。

適合率 (Precision)…予測結果のうちの正解した割合を表します5

再現率 (Recall)…正解した予測結果が実際の正解のうちの割合を表します5

F値 (F1, F-measure)…複数の呼び方があります。適合率と再現率にはトレードオフの関係があるので、適合率と再現率のバランスの良さを見る指標です。これが高いと適合率と再現率に大きな偏りがなく高いことを表します。

 

ここでは詳しく紹介しませんが、他にもROC曲線やAUCなどの評価指標があります。

回帰のとき

回帰では、実測値と同じ数値に近くなるような出力yを目指します。出力yが連続であるときに用います。

平均二乗誤差 (Root Mean Square Error, RMSE)…誤差なので、小さいほどよいです。

平均絶対誤差(Mean Absolute Error, MAE)…RMSEと同様に誤差なので、小さいほど良いです。

決定係数(R2) …Excelでも近似曲線を設定すれば出てくる指標です。データが対象となる曲線からどの程度離れているかを表します。1に近いほど良い性能を、0に近いほどその性能は良くないことを示します。

回帰の性能指標評価では主にRMSE(平均二乗誤差)が使われ、外れ値が多い場合などはMAE(平均絶対誤差)が良いとされています6。これはRMSEの場合、1点だけでも大きな外れ値が存在すると誤差を二乗しているために全体の評価が著しく下がってしまうためです7

多クラス分類の場合

さきほどの分類の性能指標では2クラスに分類するときの話でした。少し考えると、分類するときはいつも2クラスなわけではないはずです。
2クラス以上に分類する多クラス分類(Multiclass Classification)ではどのような評価指標を用いれば良いのでしょうか。

多クラス分類の場合はクラス全体の平均の取り方がマイクロ平均マクロ平均の2種類あります8, 9

マイクロ平均Micro-average)…すべてのクラスの結果を重みづけなくフラットに評価します。クラスを超えて全体のパフォーマンスを知ることができます8

マクロ平均Macro-average)…特定のクラスのデータが少ないなどクラスごとにデータの偏りがある場合にデータの偏りによる影響を考慮したいときに用いると良いでしょう8

混同行列です。それぞれのクラスの真陽性、偽陽性をTP1、FP1というように表しています。TP1は実際も予測もクラス1に分類されているもの、FP1は予測ではクラス1だが実際はクラス1ではないものを表しています。

適合率のマイクロ平均から行きたいと思います。
混同行列から適合率のマイクロ平均は式で表すと以下のようになります。

次は適合率のマクロ平均を考えたいと思います。
各クラスに対して適合率を考えるため3つの混同行列を作り、それぞれの適合率を考えます。
例えば、クラス1に注目して、クラス1かクラス1ではないかというよう分類します。

他のクラスに足しても同様に計算します。

それぞれの適合率から適合率のマクロ平均の式は以下のようになります。

さらに拡張することにより、より多くのクラスを含む多クラス分類においても評価を行うことができます10

終わりに

今回取り上げたモデルの性能指標は化学系・材料系における機械学習だけでなく、機械学習全般に当てはまる話でした。モデルの性能評価にどのような指標が使われているのか注目してみると面白いかもしれません。

参考文献

全体の参考も含む

  1. 金子弘昌 著, Pythonで気軽に化学・化学工学, p. 147, 丸善出版, 2021
  2. 大曽根圭輔, 関喜史, 米田武 著, 現場で使える!Python機械学習入門, pp. 138-142, 翔泳社, 2019
  3. 大曽根圭輔, 関喜史, 米田武 著, 現場で使える!Python機械学習入門, p. 130, 翔泳社, 2019
  4. 金子弘昌 著, 化学のためのPythonによるデータ解析・機械学習入門, pp. 81-82, オーム社, 2019
  5. 島田達郎, 越水直人, 早川敦士, 山田育矢 著, Pythonによるはじめての機械学習プログラミング, p. 159, 技術評論社, 2019
  6. 下田倫大 監訳, scikit-learnとTensorFlowによる実践機械学習, pp. 37–39, オライリージャパン, 2018
  7. 堅田洋資, 菊田遥平, 谷田和章, 森本哲也 著, フリーライブラリで学ぶ機械学習入門, pp.37-38, 秀和システム, 2017
  8. 有賀康顕, 中山心太, 西林孝 著, 仕事で始める機械学習, pp. 65–75, オライリージャパン, 2018
  9. 中田秀基 訳, Pythonではじめる機械学習, pp. 292-295, オライリージャパン, 2017
  10. 福島真太朗 監訳, [第3版]Python機械学習プログラミング達人データサイエンティストによる理論と実践, p. 191, インプレス, 2020

式など全体の参考

11. 金子弘昌 著, 化学のためのPythonによるデータ解析・機械学習入門, pp. 55-57, オーム社, 2019

12. 下田倫大 監訳, scikit-learnとTensorFlowによる実践機械学習, pp. 86-89, オライリージャパン, 2018

関連リンク

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

化学のためのPythonによるデータ解析・機械学習入門(書籍レビュー)

関連書籍

化学のための Pythonによるデータ解析・機械学習入門

化学のための Pythonによるデータ解析・機械学習入門

弘昌, 金子
¥4,752(as of 02/23 09:17)
Amazon product information
scikit-learnとTensorFlowによる実践機械学習

scikit-learnとTensorFlowによる実践機械学習

Aurélien Géron
¥3,799(as of 02/23 14:28)
Amazon product information
仕事ではじめる機械学習

仕事ではじめる機械学習

有賀 康顕, 中山 心太, 西林 孝
¥2,200(as of 02/22 20:57)
Amazon product information

hoda

投稿者の記事一覧

大学院生です。ケモインフォマティクス→触媒

関連記事

  1. 荷電π電子系の近接積層に起因した電子・光物性の制御
  2. 有機合成化学協会誌2019年9月号:炭素–水素結合ケイ素化・脱フ…
  3. 電池で空を飛ぶ
  4. シビれる(T T)アジリジン合成
  5. 死刑囚によるVXガスに関する論文が掲載される
  6. ケムステV年末ライブ2023開催報告! 〜今年の分子 and 人…
  7. 不安定化合物ヒドロシランをうまくつくる方法
  8. ERATO伊丹分子ナノカーボンプロジェクト始動!

注目情報

ピックアップ記事

  1. 祝100周年!ー同位体ー
  2. AIと融合するバイオテクノロジー|越境と共創がもたらす革新的シングルセル解析
  3. ヘイオース・パリッシュ・エダー・ザウアー・ウィーチャート反応 Hajos-Parrish-Eder-Sauer-Wiechert Reaction
  4. Reaxys Ph.D Prize2019ファイナリスト発表!
  5. 福住 俊一 Shunichi Fukuzumi
  6. 2016年4月の注目化学書籍
  7. 第49回ケムステVシンポ「触媒との掛け算で拡張・多様化する化学」を開催します!
  8. iPhoneやiPadで化学!「デジタル化学辞典」
  9. 高脂血症治療薬の開発に着手 三和化学研究所
  10. ライオン、男性の体臭の原因物質「アンドロステノン」の解明とその抑制成分の開発に成功

関連商品

ケムステYoutube

ケムステSlack

月別アーカイブ

2021年6月
 123456
78910111213
14151617181920
21222324252627
282930  

注目情報

最新記事

MEDCHEM NEWS 34-1 号「創薬を支える計測・検出技術の最前線」

日本薬学会 医薬化学部会の部会誌 MEDCHEM NEWS より、新たにオープン…

医薬品設計における三次元性指標(Fsp³)の再評価

近年、医薬品開発において候補分子の三次元構造が注目されてきました。特に、2009年に発表された論文「…

AI分子生成の導入と基本手法の紹介

本記事では、AIや情報技術を用いた分子生成技術の有機分子設計における有用性や代表的手法について解説し…

第53回ケムステVシンポ「化学×イノベーション -女性研究者が拓く未来-」を開催します!

第53回ケムステVシンポの会告です!今回のVシンポは、若手女性研究者のコミュニティと起業支援…

Nature誌が発表!!2025年注目の7つの技術!!

こんにちは,熊葛です.毎年この時期にはNature誌で,その年注目の7つの技術について取り上げられま…

塩野義製薬:COVID-19治療薬”Ensitrelvir”の超特急製造開発秘話

新型コロナウイルス感染症は2023年5月に5類移行となり、昨年はこれまでの生活が…

コバルト触媒による多様な低分子骨格の構築を実現 –医薬品合成などへの応用に期待–

第 642回のスポットライトリサーチは、武蔵野大学薬学部薬化学研究室・講師の 重…

ヘム鉄を配位するシステイン残基を持たないシトクロムP450!?中には21番目のアミノ酸として知られるセレノシステインへと変異されているP450も発見!

こんにちは,熊葛です.今回は,一般的なP450で保存されているヘム鉄を配位するシステイン残基に,異な…

有機化学とタンパク質工学の知恵を駆使して、カリウムイオンが細胞内で赤く煌めくようにする

第 641 回のスポットライトリサーチは、東京大学大学院理学系研究科化学専攻 生…

CO2 の排出はどのように削減できるか?【その1: CO2 の排出源について】

大気中の二酸化炭素を減らす取り組みとして、二酸化炭素回収·貯留 (CCS; Carbon dioxi…

実験器具・用品を試してみたシリーズ

スポットライトリサーチムービー