Help us understand the problem. What is going on with this article?

目的関数、コスト関数、誤差関数、損失関数いろいろあるけど、なにが違うのかを検討

More than 1 year has passed since last update.

おつかれさまです、かきうち(@kakistuter)です。
機械学習勉強でよーわからん単語、ややこしかった〇〇関数に関して調べました。

前置き

例えば駅からの距離部屋の広さ築年数から家賃を予測する機械学習を実装する流れは、

  1. 大量の駅からの距離部屋の広さ築年数家賃のデータを集める
  2. 大量のデータから、法則(家賃の計算式)を導く

です。
しかしながら、導かれる計算式の結果家賃にはが存在します。
(すべて計算式で1円たりとも違わずに表現できるはずがない)

このが小さくなるように、計算式を考えていくことが機械学習の研究者たちのやるべきことでもあるのです。

このを関数(なんらかの数式)で表現したものを目的関数といったり、コスト関数といったり、誤差関数といったり、損失関数といったりします。

目的関数、コスト関数、誤差関数、損失関数、なにがどう違うのか?

これは様々な議論がなされている。

https://www.quora.com/What-is-the-difference-between-a-cost-function-and-a-loss-function-in-machine-learning
https://stats.stackexchange.com/questions/179026/objective-function-cost-function-loss-function-are-they-the-same-thing

全部英語だったのでGoogle翻訳で私なりに理解した結果、以下のようになった。

損失関数 + 正則化項 = コスト関数

損失関数正則化項をプラスしたものがコスト関数です。
※補足ですが、正則化とは過学習を防ぐための調整です。

損失関数 = 誤差関数

損失関数誤差関数と同義です。

目的関数 ⊃ コスト関数、誤差関数、損失関数

目的関数が最も大きな枠組みです。
つまり、コスト関数誤差関数損失関数も、目的関数です。

を小さくすべき目的があれば、小さくすべきですが、場合によっては最大化させないといけない時もあります。

つまり、機械学習において、この関数を最小化させればモデルが導き出せる!とかこの関数を最大化させればモデルが導き出せる!といったなかで、この関数に当たるものが目的関数なのです。

その他

目的関数、コスト関数、誤差関数、損失関数の英語

  • 目的関数 objective function
  • コスト関数 cost function
  • 誤差関数 error function
  • 損失関数 loss function

但し書

ただ、意見が分かれているので、各参考文献や教科書など、数式を見て判断るのがよさそうです。

まあ、私レベルであれば全部なんとなく一緒とおもっていても大丈夫そうです!

kakiuchis
京都の大学と大学院で光合成の基礎研究→中国のパン屋で見習いパン職人→インドネシアの工場で小さな備品調達→IT人材サービス会社で苦手な営業担当→RubyとAIのプログラミングスクールでちょっとだけ教材作成お手伝い。
https://www.techpit.jp/p/python_-cloudfunding
itpm-gk
頑張るエンジニアを応援する会社です。まだまだ発展途上です!
https://www.itpm-gk.com/
Why not register and get more from Qiita?
  1. We will deliver articles that match you
    By following users and tags, you can catch up information on technical fields that you are interested in as a whole
  2. you can read useful information later efficiently
    By "stocking" the articles you like, you can search right away
Comments
No comments
Sign up for free and join this conversation.
If you already have a Qiita account
Why do not you register as a user and use Qiita more conveniently?
You need to log in to use this function. Qiita can be used more conveniently after logging in.
You seem to be reading articles frequently this month. Qiita can be used more conveniently after logging in.
  1. We will deliver articles that match you
    By following users and tags, you can catch up information on technical fields that you are interested in as a whole
  2. you can read useful information later efficiently
    By "stocking" the articles you like, you can search right away
ユーザーは見つかりませんでした