これは、予測機械学習モデルの開発における動径基底関数の基本的な直感、数学的考え方、および範囲を説明する入門記事です。
機械学習では、超平面ベースのアルゴリズムに基づく問題解決は、空間内のデータ ポイントの分布に大きく依存します。ただし、現実世界のデータが理論上の仮定に従うことはめったにないことは既知の事実です。
データ ポイントの自然な形状を、データの隠れたパターンを維持しながら理論的に推奨される分布に変換できる変換関数が多数あります。 Radial Basis は、多くの機械学習の教科書で説明されている有名な関数の 1 つです。この記事では、Radial 基底関数の基本的な直感、型、および使用法について学習します。
動径基底関数は、実数値の入力を取り、別の場所に配置された架空の固定点から空間に射影された入力値の間の距離に基づいて、実数値の出力を出力する数学関数です。
この関数は、サポート ベクター マシンや人工ニューラル ネットワークなど、多くの機械学習およびディープ ラーニング アルゴリズムで広く使用されています。
この数学関数の概念と使い方を理解しましょう。
リアルタイムで、SVM などのアルゴリズムを使用して複雑な機械学習の問題を解決するときはいつでも、すべてのデータ ポイントを架空の多次元空間に射影する必要があります。ここで、各特徴は次元になります。
学生が試験に合格するか不合格になるかを予測する分類問題があるとします。
独立変数として次の機能があります。
したがって、これらの 3 つの独立変数は、次のような空間の 3 次元になります。
データポイントが次のようになっていると考えてみましょう。
緑色は試験に合格した学生を表します
赤い色は試験に不合格だった学生を表します
ここで、SVM は、失敗した学生と合格した学生を区別するために、これらの 3 つの次元を移動する超平面を作成します。
したがって、技術的には、モデルは、超平面の片側にあるすべてのデータポイントが試験に合格した学生に属し、その逆もまた同様であることを理解しています。
この例では、2 つのカテゴリを区別するには線形で直線的な超平面で十分だったため、超平面を作成するのは簡単でした。しかし、リアルタイムの複雑なプロジェクトでは、これらの関係が多くのシナリオで破られる可能性があります。特に何百もの独立変数がある場合、最適な超平面を作成することが困難になるような、データ ポイント間の線形関係を取得する可能性はありません。
このようなシナリオでは、研究者は通常、各データ ポイントにラジアル基底関数を適用して、データ ポイント全体に線形超平面を渡して問題を簡単に解決できるようにします。
私たちのデータポイントが空間でこのように見えると考えてください-
クラスに従ってデータポイントをグループ化できるような線形超平面を使用できないことは明らかです。
RBF は、このようなシナリオで役立ちます。
一部の研究者は、通常、これらのデータ ポイントをはるかに高い次元で投影して、データ ポイント間の距離を拡大し、何らかの関数 (RBF またはその他の関数) を適用して超平面を構築できるようにします。ただし、データのパターンを理解するのは常に統計学者/研究者の決定であるため、高次元を構築する必要はありません。
次に、必要な場所に、このように空間内の架空の点をマークする必要があります。
その後、この仮想点に基づいて同心円をいくつか描く必要があります。
中心と円の境界に位置するデータ ポイントとの間の距離は、半径と呼ばれます。
半径を計算した後、実数値を返す数学関数 (RBF) 内にこの値を渡す必要があります。返される値は、以降の手順で使用される特定のデータ ポイントの変換された大きさになります。
動径基底関数には複数の種類があります。それぞれが異なる方法で入力値を変換します。それらのいくつかは-
どこ、
関数は時間に関して次のようになります。
どこ、
どこ、
これらの機能が空間で直感的に何をするのかを直感的に説明します。これらの関数によって実行される 2 つの異なるプロセスがあります。
拡張のプロセスは、視覚的には次のようになります。
圧縮のプロセスは、視覚的には次のようになります。
展開と圧縮の後、データ ポイントは次のように変換されます。
これで、次のようにデータ ポイントを分類できる線形超平面を簡単に作成できます。
場合によっては、RBF が 1 つの隠れ層を持つ人工ニューラル ネットワークと共に使用されることもあります。このようなタイプのネットワークでは、RBF が隠れ層の活性化関数として使用されます。隠れ層とは別に、いくつかのニューロンを含む入力層があり、それぞれが特徴変数を表し、出力層は隠れ層からの出力の加重和を持ち、ネットワーク出力を形成します。
このようなネットワークは RBF ネットワークと呼ばれます。
この記事では、機械学習で最も役立つ変換関数の 1 つについて説明しました。この複雑な概念を、AIML 学習スペースの初心者を対象に、多くの詳細な数学的計算なしで明快な方法で説明しようとしました。
この関数は、Python や R などのほとんどのデータ サイエンス指向のプログラミング言語で組み込みライブラリとして利用できます。したがって、理論的な直感を理解すれば、これを実装するのは簡単です。参考文献セクションにいくつかの高度な資料へのリンクを追加しました。興味があれば、複雑な計算を深く掘り下げることができます。