カーネルとは何か、他の機能と区別するもの


13

カーネル関数に依存する多くの機械学習アルゴリズムがあるようです。SVMとNNの名前は2つですが。それでは、カーネル関数の定義と、それが有効であるための要件は何ですか?


5
NNがカーネル関数に依存しているとは言いません- 非線形性を実現するために伝達関数に依存していますが、これはカーネル関数と同じではありません
-tdc

回答:


11

S上のx、yの場合、特定の関数K(x、y)は内積として表現できます(通常は異なる空間で)。Kはしばしばカーネルまたはカーネル関数と呼ばれます。カーネルという言葉は数学全体でさまざまな方法で使用されますが、これは機械学習で最も一般的な使用法です。

カーネルトリックは、観測がVで意味のある線形構造を獲得することを期待して、マッピングを明示的に計算することなく、一般的なセットSから内積空間V(その自然ノルムを備えた)に観測をマッピングする方法ですこれは、効率(非常に高速で非常に高次元の空間でドット積を計算する)と実用性(線形MLアルゴリズムを非線形MLアルゴリズムに変換できる)の観点から重要です。

関数Kを有効なカーネルと見なすには、Mercerの条件を満たす必要があります。これは実用的な用語では、カーネルマトリックス(すべてのデータポイントのカーネル積を計算)が常に正の半正定であることを保証する必要があることを意味します。これにより、トレーニングの目的関数は、非常に重要な特性である凸状になります。


@carlosdcに感謝しますが、この老犬に新しいトリックを教えようとしているのではないかと思います。その多くは私の頭上にあります。マーサーの条件を読みましたが、現実の世界でのマーサーの意味は失われました。上記から、カーネルの積分は有限値に制約されなければならないと思います。その仮定は正しいですか?

1
カーネル行列がPSDの場合、目的が凸である部分は目的に依存します。これはSVMには当てはまりますが、ガウスプロセスでは、カーネルマトリックスは有効な共分散マトリックスであり、したがって可逆であるという点が重要です。
バイエルジ

2

ウィリアムズ、クリストファー・KI、およびカール・エドワード・ラスムッセン。「機械学習のためのガウス過程。」MIT Press 2、no。3(2006)。80ページ

カーネル=入力のペアマッピング二つの引数の関数X 'XRをバツバツバツバツR

また、カーネル=カーネル関数。

機械学習アルゴリズムで使用されるカーネルは、通常、正の半正であるなど、より多くのプロパティを満たしました。


2

技術的な説明はあまりしません。

まず、2つのベクトル間のドット積から始めます。これにより、ベクトルがどの程度「類似」しているかがわかります。ベクトルがデータセット内のポイントを表す場合、ドット積はそれらが類似しているかどうかを示します。

ただし、一部の(多くの)場合、ドット積は類似性の最良のメトリックではありません。例えば:

  • 低ドット積を持つポイントは、他のいくつかの理由で類似している可能性があります。
  • ポイントとして適切に表現されていないデータ項目がある場合があります。

したがって、ドット積を使用する代わりに、「カーネル」を使用します。これは、2つのポイントを取り、それらの類似性の尺度を提供する関数です。技術的にカーネルになるために関数が満たすべき技術的条件を100%確信しているわけではありませんが、これはアイデアです。

非常に良い点の1つは、ドメインについて知っているxyzの理由により、2つのポイントが同じであると言うことができるという意味で、ドメインの知識を問題に入れるのにカーネルが役立つことです。

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