[スポンサーリンク]

一般的な話題

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

[スポンサーリンク]

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 12/13 15:57)
Amazon product information
scikit-learnとTensorFlowによる実践機械学習

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

Aurelien Geron, 下田倫大, 長尾高弘
¥3,799(as of 12/13 17:16)
Amazon product information
仕事ではじめる機械学習

仕事ではじめる機械学習

有賀康顕, 中山心太, 西林孝
¥2,599(as of 12/13 18:48)
Amazon product information

hoda

投稿者の記事一覧

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

関連記事

  1. 第10回 野依フォーラム若手育成塾
  2. 光触媒水分解材料の水分解反応の活性・不活性点を可視化する新たな分…
  3. タンパク質の非特異吸着を抑制する高分子微粒子の合成と応用
  4. 化学作業着あれこれ
  5. 低い電位で多電子移動を引き起こす「ドミノレドックス反応」とは!?…
  6. パラトーシスを誘導する新規化合物トリプチセンーペプチドハイブリッ…
  7. 【書籍】りょうしりきがく for babies
  8. 柔軟な姿勢が成功を引き寄せた50代技術者の初転職。現職と同等の待…

注目情報

ピックアップ記事

  1. マテリアルズ・インフォマティクス適用のためのテーマ検討の進め方とは?
  2. 食中毒と衛生管理の重要性ーChemical Times特集より
  3. 超高圧合成、添加剤が選択的物質合成の決め手に -電池材料等への応用に期待-
  4. 大量合成も可能なシビれる1,2-ジアミン合成法
  5. 光熱変換材料を使った自己修復ポリマーの車体コーティングへの活用
  6. 住友チタニウム、スポンジチタン生産能力を3割増強
  7. 製薬各社 2010年度決算
  8. 個性あふれるTOC大集合!
  9. ウィリアム L ジョーゲンセン William L. Jorgensen
  10. 化学者たちのネームゲーム―名付け親たちの語るドラマ

関連商品

ケムステYoutube

ケムステSlack

月別アーカイブ

2021年6月
 123456
78910111213
14151617181920
21222324252627
282930  

注目情報

最新記事

7th Compound Challengeが開催されます!【エントリー〆切:2026年03月02日】 集え、”腕に覚えあり”の合成化学者!!

メルク株式会社より全世界の合成化学者と競い合うイベント、7th Compound Challenge…

乙卯研究所【急募】 有機合成化学分野(研究テーマは自由)の研究員募集

乙卯研究所とは乙卯研究所は、1915年の設立以来、広く薬学の研究を行うことを主要事業とし、その研…

大森 建 Ken OHMORI

大森 建(おおもり けん, 1969年 02月 12日–)は、日本の有機合成化学者。東京科学大学(I…

西川俊夫 Toshio NISHIKAWA

西川俊夫(にしかわ としお、1962年6月1日-)は、日本の有機化学者である。名古屋大学大学院生命農…

市川聡 Satoshi ICHIKAWA

市川 聡(Satoshi Ichikawa, 1971年9月28日-)は、日本の有機化学者・創薬化学…

非侵襲で使えるpH計で水溶液中のpHを測ってみた!

今回は、知っているようで知らない、なんとなく分かっているようで実は測定が難しい pH計(pHセンサー…

有馬温泉で鉄イオン水溶液について学んできた【化学者が行く温泉巡りの旅】

有馬温泉の金泉は、塩化物濃度と鉄濃度が日本の温泉の中で最も高い温泉で、黄褐色を呈する温泉です。この記…

HPLCをPATツールに変換!オンラインHPLCシステム:DirectInject-LC

これまでの自動サンプリング技術多くの製薬・化学メーカーはその生産性向上のため、有…

MEDCHEM NEWS 34-4 号「新しいモダリティとして注目を浴びる分解創薬」

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

圧力に依存して還元反応が進行!~シクロファン構造を活用した新機能~

第686回のスポットライトリサーチは、北海道大学大学院理学研究院化学部門 有機化学第一研究室(鈴木孝…

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

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

PAGE TOP