すべてのプロダクト
Search
ドキュメントセンター

PolarDB:SVRアルゴリズム

最終更新日:Jun 12, 2024

このトピックでは、Support Vector Regression (SVR) アルゴリズムについて説明します。

背景情報

SVRはサポートベクターマシン (SVM) のアプリケーションブランチです。 SVRを使用して、集合内のすべてのデータ要素が最短距離を有する回帰平面を見つけることができる。

シナリオ

SVRは、主に値をフィッティングするために使用される回帰モデルであり、スパースなフィーチャと少数のフィーチャを含むシナリオで使用されます。

例えば、SVRモデルを使用して、都市の温度を予測することができる。 入力には、ある期間内の都市の平均気温、緑の範囲、湖の数、日付などの多くの特徴が含まれています。 ある期間内の都市の温度は、モデルを訓練するために使用することができる。

パラメーター

次の表に示すパラメーターの値は、モデルの作成に使用されるCREATE modelステートメントで指定されたmodel_parameterパラメーターの値と同じです。 ビジネス要件に基づいてパラメーターを設定できます。

パラメーター

説明

カーネル

カーネル関数。低次元データを高次元空間にマッピングするために使用されます。 有効な値:

  • rbf (デフォルト): ラジアル基底関数。 サンプルを高次元空間にマッピングするために使用できます。

  • linear: 線形カーネル関数。 それは線形分離で主に使用されます。 特徴空間は、入力空間と同じ次元を有する。 それはより少ないパラメータを必要とし、より高い速度を提供する。

  • poly: 多項式カーネル関数。 低次元の入力空間を高次元の特徴空間にマッピングするために使用できます。 より多くのパラメータが必要です。

  • シグモイド: 多層ニューラルネットワークの効果と同様の効果があります。

c

リラクゼーション係数のペナルティ係数。 これは0より大きい浮動小数点数であり、空のままにすることができる。 デフォルト値は 1 です。

説明

データ品質が低い場合は、このパラメーターの値を減らすことができます。

イプシロン

SVR損失関数のしきい値。 予測値と実際の値との差が閾値に等しい場合、サンプルの損失が計算される。 デフォルト値: 0.1

max_iter

反復の最大数。 有効な値: 正の整数と-1。 デフォルト値: -1。

説明

値を-1に設定した場合、反復回数に制限はありません。 反復は、値がイプシロン内に収束するまで続く。

モデルとオフライントレーニングタスクを作成します。

/* polar4ai * /
モデルを作成するsvr1 WITH
(model_class = 'svr' 、x_cols = 'dx1、dx2' 、y_cols='y' 、
 model_parameter=(kernel='rbf')) AS (SELECT * FROM db4ai.testdata1); 

モデルを評価します。

/* polar4ai * /
評価からdx1、dx2を選択 (モデルsvr1、SELECT * FROM db4ai.testdata1 LIMIT 10)
(x_cols = 'dx1,dx2',y_cols='y',metrics='r2_score'); 

予測にモデルを使用します。

/* polar4ai */SELECT dx1,dx2から
予測 (モデルsvr1、SELECT * FROM db4ai.testdata1 LIMIT 10)
WITH (x_cols = 'dx1,dx2'); 
説明

x_colsおよびy_colsのデータ型は、浮動小数点または整数である必要があります。