バイナリ分類アルゴリズムの機械学習のロジスティック回帰の第7週

1. ロジスティック分類アルゴリズム

     ロジスティック回帰(LR)は、従来の機械学習における分類モデルです。シンプルで効率的なアルゴリズム、優れた解釈可能性、および容易な拡張の利点により、クリックスルー率の推定(CTR)および計算広告( CA)と推奨システム(RS)およびその他のタスク。ロジスティック回帰の名前は回帰ですが、実際には分類学習法です。主に2つの分類問題に使用され、ロジスティック関数(またはシグモイド関数)を使用します。独立変数の値の範囲は(-INF、INF)で、独立変数の値の範囲は(0,1)です。関数の形式は次のとおりです。

    シグモイド関数の定義ドメインは(-INF、+ INF)であり、値ドメインは(0、1)だからです。したがって、最も基本的なLR分類器は、2つの分類(クラス0、クラス1)ターゲットを分類するのに適しています。シグモイド関数は、以下に示すように、美しい「S」字型です。

 

    LR分類器の目的は、トレーニングデータの特徴から0/1分類モデルを学習することです。このモデルは、サンプル特徴の線形結合を独立変数として受け取り、ロジスティック関数を使用して独立変数を(0、1)にマッピングします。したがって、LRソルバー分類器は、重みのセットを解決された[シータ] 0はいはい名目変数は--dummyは、定数、多くの場合、別のX0 = 1.0実際のプロジェクトである。関係なく、定数項の、それが最善の予約されている意味を持たない)、およびロジスティック関数の代わりに予測関数を作成します。

       関数の値は、結果が1である確率を表します。これは、フィーチャがy = 1に属する確率です。したがって、入力x分類結果がカテゴリ1およびカテゴリ0である確率は次のとおりです。

       新しいフィーチャがどのクラスに属するかを決定する場合は、次の式に従ってz値を見つけます:  (x1、x2、...、xnは特定のサンプルデータの各フィーチャであり、次元はnです)。次に、それが0.5より大きい場合は、y = 1のカテゴリであるかどうかを調べます。それ以外の場合は、y = 0のカテゴリに属しています。(注:統計サンプルは均等に分布していると想定されているため、しきい値は0.5に設定されています)。LR分類器の重みはどのように取得できますか?これには、最尤推定MLEと最適化アルゴリズムの概念が必要です数学で最も一般的に使用される最適化アルゴリズムは、勾配上昇(下降)アルゴリズムです。ロジスティック回帰は複数の分類に使用でき、使用できますが、2つの分類がより一般的に使用され、説明が簡単です。したがって、実際に最も一般的に使用されるのは、バイナリ分類のロジスティック回帰です。LR分類子は、データタイプ(数値データと公称データ)に適用できます。その利点は、計算コストが高くなく、理解と実装が容易であることです。欠点は、適合が容易であり、分類精度が高くない可能性があることです。

第二に、損失関数を解くための勾配降下法

   ロジスティック回帰の損失関数は、ロジスティック回帰自体の係数の最尤推定から導き出され、最尤推定は、既知の結果から既知の結果によって結果につながるパラメーターを逆推論することです。最尤推定は、統計学における確率論の応用です。これは、観測データを与えられたモデルパラメーターを評価する方法を提供します。つまり、「モデルは固定され、パラメーターは不明です」。いくつかの実験を通じて、結果が観測されます。実験結果を使用して特定のパラメーター値を取得すると、サンプルの出現確率を最大化できます。これを最尤推定と呼びます。ロジスティック回帰は一種の教師あり学習です。これにはトレーニングラベルがあり、既知の結果があります。この既知の結果から、最大確率を取得できるパラメーターを導出できます。このパラメーターがある限り、モデルは、未知のデータを非常に正確に自然に予測できます。

ロジスティック回帰のモデルをクラス1の事後確率と見なすことができるようにすると、次のようになります。

                                 

  上記の2つの式は、一般的な形式に書き直すことができます。

 

 したがって、最尤推定に従って、次の結果が得られます。

  計算を簡単にするために、対数を取ると次のようになります。

  最大尤度が大きいほど、つまり、指定されたサンプル数mの場合は希望が小さいほど良いと思います。ロジスティック回帰の損失関数は次のとおりです。

 次に、上記の損失関数が最小値に到達するように、パラメーターのセットを見つける必要があります。この損失関数には標準の方程式解がないため、実際の最適化では、勾配降下法を使用して最適解を継続的に近似することがよくあります。

勾配降下法を使用すると、勾配が必要になり、各ベクトルの各パラメーターについて、対応する導関数が取得されます。

シグモイド関数を微分します(チェーン導出規則):

 次に、外層の対数関数を導出します。

 次に整理します。



次に、損失関数の前半の式 をto 導くことができます上記の結果により、次の結果が得られます。

 同様に、損失関数の後半は、上記と同様に微分できます。最終損失関数L(Θ)のΘへの導関数は次のとおりです。つまり、ロジスティック回帰損失関数は勾配降下法によってパラメーターを導出し、結果は次のようになります。

その中には、ロジスティック回帰モデルの予測値があります。

パラメータの導関数が得られた後、損失関数はすべての特徴次元で微分でき、ベクトル化された結果は次のようになります。

3、Pythonコードの実装

 

おすすめ

転載: www.cnblogs.com/mindy-snail/p/12675217.html