モデルハイパーパラメーターとモデルパラメーターの違いは何ですか?


28

モデルハイパーパラメーターやモデルパラメーターなどの用語は、事前に明確化することなくWeb上で交換可能に使用されていることに気付きました。これは間違いであり、説明が必要だと思います。機械学習モデル、SVM / NN / NBベースの分類器または画像認識器など、最初に思い浮かぶものを考えてみてください。

モデルのハイパーパラメーターパラメーターは何ですか?
例を挙げてください。


3
Andrew Ngは、パラメーターとハイパーパラメーターの違いを詳しく説明します。coursera.org/learn/neural-networks-deep-learning/lecture/TBvb5/...
Divyanshuシェカール

回答:


27

多くの場合、ハイパーパラメーターとパラメーターは同じ意味で使用されますが、違いがあります。推定器内で直接学習できない場合、何かを「ハイパーパラメーター」と呼びます。ただし、「パラメーター」はより一般的な用語です。「パラメーターをモデルに渡す」と言うとき、それは一般に、ハイパーパラメーターと、推定器に直接関係しないがモデルに必要な他のパラメーターとの組み合わせを意味します。

たとえば、sklearnでSVM分類器を構築するとします。

from sklearn import svm
X = [[0, 0], [1, 1]]
y = [0, 1]
clf = svm.SVC(C =0.01, kernel ='rbf', random_state=33)
clf.fit(X, y) 

上記のコードではSVMのインスタンスは、モデルのためのハイパーためのあなたの推定であり、この場合には、あるCkernel。しかし、モデルにはハイパーパラメーターではない別のパラメーターがありますrandom_state


この答えrandom_stateは、パラメータであることを意味します。これは誤解を招くものだと思います(他の回答を参照)。パラメーターはモデルによって学習されますが、ハイパーパラメーターは私たちによって指定されます。のようなrandom_state=33。ただし、にrandom_state最適な値がないため、ハイパーパラメーターでもありませんrandom_state。こちらのジェイソンブラウンリーの議論をご覧ください
The Red Pea

21

上記の答えに加えて。

モデルパラメーターは、分類器または他のmlモデルによってトレーニング中に学習されるトレーニングデータのプロパティです。たとえば、NLPタスクの場合:単語の頻度、文の長さ、文ごとの名詞または動詞の分布、単語ごとの特定の文字nグラムの数、語彙の多様性など。モデルパラメータは実験ごとに異なり、手元のデータとタスク。

一方、モデルハイパーパラメーターは、同様のモデルに共通しており、トレーニング中に学習することはできませんが、事前に設定されています。NNのハイパーパラメーターの典型的なセットには、非表示レイヤーの数とサイズ、重みの初期化スキーム、学習率とその減衰、ドロップアウトと勾配クリッピングしきい値などが含まれます。


7

ハイパーパラメーターは、モデルに提供するものです。たとえば、ニューラルネットワークの隠れノードとレイヤーの数、入力機能、学習率、アクティベーション関数などです。一方、パラメーターは、重みとバイアスのようなマシンによって学習されるものです。 。


5

機械学習では、パラメーターとハイパーパラメーターを持つモデルは次のようになります。M

YMH(Φ|D)

ここで、はパラメーターであり、Hはハイパーパラメーターです。Dはトレーニングデータ、Yは出力データ(分類タスクの場合はクラスラベル)です。ΦHDY

訓練中の目的は、パラメータの推定値を見つけることですΦ一部の損失関数の最適化L我々が指定されているが。モデルMと損失関数LHに基づいているため、結果のパラメーターΦもハイパーパラメーターHに依存します。Φ^LMLHΦH

ハイパーパラメーターは、トレーニング中は「学習」しませんが、値が不変であることを意味しません。通常、ハイパーパラメーターは固定されており、M HではなくモデルMについて単純に考えます。本明細書では、ハイパーパラメータもアプリオリパラメータと見なすことができる。HMMH

混乱の源はの使用に起因とハイパーパラメータの修正H、明らかに、に加えて、トレーニングルーチン中のパラメータΦを。トレーニング中にHを変更する動機はいくつかあります。例は、最適化ルーチンの速度および/または安定性を改善するために、トレーニング中に学習率を変更することです。MHHΦ^H

区別の重要なポイントは、結果、たとえばラベル予測、はハイパーパラメーターHではなくモデルパラメーターΦに基づいていることです。YpredΦH

ただし、区別には注意事項があり、その結果、線がぼやけます。たとえば、クラスタリングのタスク、特にガウス混合モデリング(GMM)を考えてみてください。ここで設定されるパラメータであり、ˉ μがセットされているN個のクラスタ手段とˉ σの設定されているNのため、標準偏差Nガウスカーネル。Φ={μ¯,σ¯}μ¯Nσ¯NN

ここでハイパーパラメータを直感的に認識できたかもしれません。クラスターの数です。そうH = { N }。通常、クラスターの検証は、データDの小さなサブサンプルを使用して、N apriori を決定するために使用されます。ただし、ガウス混合モデルの学習アルゴリズムを変更して、トレーニング中に何らかの基準に基づいてカーネル数Nを変更することもできます。このシナリオでは、ハイパーパラメータは、Nは、パラメータのセットの一部となるΦ = { ˉ μˉ σN }NH={N}NDNNΦ={μ¯,σ¯,N}

dDGMM(μ¯,σ¯)NNddμσN

ML


3

簡単に言えば、

モデルパラメータは、モデルが独自に学習するものです。たとえば、1)線形回帰モデルの独立変数の重みまたは係数。2)独立変数SVMの重みまたは係数。3)ディシジョンツリーの分割ポイント。

モデルのハイパーパラメーターは、モデルのパフォーマンスを最適化するために使用されます。たとえば、1)SVMのカーネルとスラック。2)KNNのKの値。3)決定木のツリーの深さ。


モデルの最適化とは必ずしも関係ありません。ハイパーパラメーターは、モデル構築プロセスの単なるパラメーターです。
ショーンオーウェン

0

モデルパラメーターはデータから自動的に推定され、モデルハイパーパラメーターは手動で設定され、モデルパラメーターの推定に役立つプロセスで使用されます。

モデルハイパーパラメーターは、機械学習の一部であり、手動で設定して調整する必要があるため、パラメーターと呼ばれることがよくあります。

基本的に、パラメータは「モデル」が予測などを行うために使用するものです。たとえば、線形回帰モデルの重み係数です。ハイパーパラメーターは、学習プロセスを支援するものです。たとえば、K平均のクラスター数、リッジ回帰の収縮率などです。最終的な予測には表示されませんが、学習ステップ後のパラメーターの外観に大きな影響を及ぼします。

参照:https : //machinelearningmastery.com/difference-between-a-parameter-and-a-hyperparameter/

弊社のサイトを使用することにより、あなたは弊社のクッキーポリシーおよびプライバシーポリシーを読み、理解したものとみなされます。
Licensed under cc by-sa 3.0 with attribution required.