f(x, y) とf(x; y) って何が違うの?

こんにちは。ゆうせいです。

数学や機械学習を学んでいると、似たような記号がたくさん出てきて頭が混乱してしまいますよね。特に、関数のカッコの中にあるカンマやセミコロンの使い分けは、パッと見では違いが分かりにくいものです。

f(x, y) f(x; y) って何が違うの?」

そんな疑問を抱いているあなたのために、今回はこの「数学の文法」をスッキリ整理して解説します。これが分かると、数式が何を伝えようとしているのか、その「意図」が読めるようになりますよ!

カンマとセミコロンの決定的な違い

結論からお伝えしましょう。この二つの違いは、登場人物たちの「役割分担」にあります。

  • F(x, y) x y は対等なライバル(変数)
  • f(x; y) x が主役で、 y は舞台装置(パラメータ)

セミコロンは、いわば「ここから先は裏方さんですよ」という区切り線なのです。

1. カンマでつながる F(x, y) の世界

これは普通の 2変数関数 です。例えば、 F(x, y) = x^{2} + y^{2} という式を想像してみてください。

ここでは、 x も自由に動くし、 y も自由に動きます。どちらかが偉いということはなく、両方が「変数」として対等に扱われます。グラフにすると、縦・横・高さがある3次元のボコボコした曲面のようなイメージになります。

2. セミコロンで区切る f(x; y) の世界

一方で、セミコロンが出てくると話が変わります。 f(x; y) = x^{2} + y^{2} と書かれた場合、数学的なメッセージはこうなります。

「今は x を動かして考えたいんだ。 y はとりあえず決まった値(定数)として固定しておくよ」

つまり、 x は主役の「変数」ですが、セミコロンの後ろにある y は「パラメータ(媒介変数)」と呼ばれます。例えるなら、 x はゲームのプレイヤーで、 y はゲームの難易度設定のようなものです。設定( y )を固定した状態で、プレイヤー( x )がどう動くかを見ているわけですね。

機械学習でよく見る典型例:尤度と確率

この使い分けが最も威力を発揮するのが機械学習の世界です。特に混乱しやすい3つのパターンを整理してみましょう。

確率分布 p(x; θ)

これは「 \theta という設定が決まっているときに、データ x がどれくらい発生しやすいか」を表します。

  • x : 実際に観測される値(変数)
  • \theta : 分布の形を決める設定(パラメータ)

例えば、正規分布なら \theta の中身は平均や分散になります。「平均が 50 と決まっているテストで、 80点 を取る確率は?」と考えるときは、この書き方をします。

尤度(ゆうど) L(θ; X)

「尤度」という言葉は日常では使いませんが、一言で言えば「もっともらしさ」のことです。先ほどの確率分布と式自体は同じなのですが、主役が入れ替わります。

  • X : すでに手元にあるデータ(固定)
  • \theta : 探したい設定(変数)

「データ X がこれだけ出たんだから、設定 \theta はこれが一番正解に近いんじゃない?」と、設定の方を動かして探る関数です。だから、セミコロンの前には主役である \theta が来ます。

条件付き確率 p(y | x) との違い

ここで「縦棒( | )とは何が違うの?」と思った方もいるかもしれません。

  • p(y | x) x というイベントが「起きた」という条件の下での y の確率

セミコロンは「関数の役割」を示すための記号ですが、縦棒は「条件」を示す論理的な記号です。機械学習では「原因 x から結果 y を予測する」ときに p(y | x) をよく使います。

なぜ尤度は積分しても 1 にならないのか?

最後に、少し踏み込んだお話をしましょう。確率は全部足す(積分する)と 1 100 %)になりますが、尤度はそうなりません。なぜでしょうか?

それは、尤度が「分布」ではなく、ただの「スコア」だからです。

種類式の形何を動かす?積分した結果
確率p(x; \theta) データ x 1 になる
尤度L(\theta; X) 設定 \theta 1 になるとは限らない

確率は「起こりうるすべてのケース」を足し合わせるので 1 になります。しかし、尤度は「設定 \theta をいろいろ変えてみたときの点数」を並べているだけです。

コイン投げで「表が出る確率 \theta 」を予想するとき、 \theta 0.1, 0.2, 0.3 \dots と変えてスコアを計算しても、その合計が 1 になる理由はありませんよね。あくまで「どの \theta が一番高いスコアを出すか」を見ているだけなのです。

まとめと今後の学習指針

いかがでしたか?セミコロン一つに、これほど深い「主役と脇役」のドラマが隠されていたのですね。

今回のポイントを復習しましょう。

  • カンマは「みんな動く」対等な関係。
  • セミコロンは「前が主役、後ろは固定」の合図。
  • 機械学習では「最適化したいもの(動かしたいもの)」を前に書く。

今後は、新しい数式に出会ったとき、まず「セミコロンはどこにあるかな?」と探してみてください。それだけで、その数式が何を主役として扱っているのかが瞬時に見抜けるようになります。

次は、この知識を使って「最大尤度推定(最尤推定)」の具体的な計算にチャレンジしてみるのがおすすめです。主役である \theta をどうやって動かして、最高のスコアを見つけるのか。その仕組みがもっと面白く感じられるはずですよ!

セイ・コンサルティング・グループでは新人エンジニア研修のアシスタント講師を募集しています。

投稿者プロフィール

山崎講師
山崎講師代表取締役
セイ・コンサルティング・グループ株式会社代表取締役。
岐阜県出身。
2000年創業、2004年会社設立。
IT企業向け人材育成研修歴業界歴20年以上。
すべての無駄を省いた費用対効果の高い「筋肉質」な研修を提供します!
この記事に間違い等ありましたらぜひお知らせください。

学生時代は趣味と実益を兼ねてリゾートバイトにいそしむ。長野県白馬村に始まり、志賀高原でのスキーインストラクター、沖縄石垣島、北海道トマム。高じてオーストラリアのゴールドコーストでツアーガイドなど。現在は野菜作りにはまっている。