【おもみ】
重み(ウェイト) とは?
最終更新:
💡 入力の効き方を変える、学習で調整する数値
ニューラルネットワークなどで、入力をどれだけ、どちらの向きに出力へ反映するかを計算する数値パラメータ。学習では損失を減らすように重みなどを調整する。
📌 このページのポイント
重みってなに?AIの中に天秤でもあるの?
入力の効き方を変える数値だよ。例えば入力x₁、x₂に重みw₁、w₂を掛けて、w₁×x₁+w₂×x₂と足す。数値を調整するつまみのようなものだけれど、「猫の耳の重要度」のように、一つずつ簡単な意味が付くとは限らないんだ
重みは大きいほどいいの?
そうではないよ。正の重みは入力を足す向き、負の重みは引く向きに作用する。ゼロなら、その積はゼロになる。実際の影響は入力の値や他の重み、後の計算にもよるので、重みの大きさだけでは判断できないんだ
学習ではどう変えるの?
一例は、予測と目標から損失を計算し、誤差逆伝播で各数値の勾配を求める方法だよ。その勾配を使い、勾配降下法などで重みやバイアスを更新する。勾配を求めることと、数値を更新することは別の段階なんだ
全部のパラメータが重みなの?
バイアスなども含まれるよ。PyTorchのLinear層では、入力に掛ける重みと、結果に足すバイアスを区別している。最初の数値を用意する方法や学習方法、調整する数値の範囲もモデルによるので、学習すれば必ず最良の値になるとは言えないんだ
まとめ:ざっくりこれだけ覚えればOK!
「重み」って出てきたら「入力の効き方を変える、学習で調整する数値」と思えればだいたいOK!
📖 おまけ:英語の意味
「Weight」 = 重み・重み付けの係数
💬 入力をどれだけ反映するかという係数を、重みと呼ぶんだ。大きい値がそのまま人に分かる特徴の重要度を表すとは限らないよ