bugfix> python > 投稿

混合データセット(カテゴリと数値の両方)にカーネルPCAを適用しようとしています。モデルを最適化したいのですが、ドキュメントを読んでも、fit_inverse_transformの主な目的とdual_coef_のパラメーターX_transform_fit_が理解できませんでした。目的と解釈方法を説明できる人はいますか?

回答 1 件
  • 一般的に、scikit-learn(kernelPCAを含む)のトランスフォーマーの目標は、機能の次元を変更することです。したがって、元のフィーチャに次元があると仮定するとd、トランスフォーマーはそれらをディメンションに変換できますk、 どこk <=d。 モデルを近似した後、次の2つの方法を使用できます。

    変換---元の機能を指定して、新しい機能に変換します(d -> k

    inverse_transform ---新しい機能を指定して、元の機能に変換します(k -> d

    kernelPCAの場合は、パラメーター fit_inverse_transform を使用して2番目のオプションを具体的に有効にする必要があります。  デフォルトでは False に設定されているため 。その理由は、inverse_transformメソッドを実行するには追加の計算が必要になるためです( dual_coef_ に保存されます) )。

    まだ疑問がある場合は、ここでソースコードを確認してください。

あなたの答え