このトピックでは、PolarDB for AIで機能管理を適用できるシナリオについて説明します。 このトピックでは、フィーチャーを作成、更新、削除し、フィーチャーのステータスとフィーチャー一覧を表示する方法についても説明します。
シナリオ
ほとんどの場合、生データを使用してAIモデルを構築することは困難です。 生データがモデルに入力される前に、生データは前処理または事前計算される。 生および前処理されたデータは、特徴として使用される。
例えば、データセットが、サイズ、寝室の数、地理的位置、および建設年などの家に関連する複数のアイテムを含む場合、各アイテムは特徴と考えることができる。
機能の選択と準備は、効果的なAIモデルを構築するために不可欠です。 理想的な特徴は、モデルの性能を大幅に改善することができるが、無関係または冗長な特徴は、モデルの学習プロセスに悪影響を及ぼし、モデル性能を低下させ得る。
特徴工学は、最も関連性のある特徴を選択すること、生データを機械学習アルゴリズムに適したフォーマットに変換すること、および生データから導出される新しい特徴を作成することなどの、特徴に関連する操作を含む。
機能は、次のシナリオで一般的に使用されます。
分類
メール分類: スパムメールを識別する機能として単語やフレーズを使用します。
画像認識: ピクセル値、色、テクスチャ、形状などの特徴を使用して画像を分類します。
顧客解約予測: 取引履歴、エンゲージメントレベル、購入頻度など、顧客に関連する機能を使用して、プラットフォームでの顧客の維持率を予測します。
回帰
住宅価格予測: 住宅の場所、サイズ、年齢、アメニティなどの機能を使用して、将来の価格を予測します。
株価予測: 過去の価格、取引量、経済指標などの機能を使用して、将来の株価を予測します。
クラスタリング
マーケットセグメンテーション: 顧客の購入履歴や好み、人口統計情報などの機能を使用して顧客をグループ化します。
ソーシャルネットワーク分析: ソーシャルアクティビティデータやユーザーの接続性などの機能を使用して、ソーシャルネットワーク内のグループを発見します。
おすすめ
映画の推奨: ユーザーが視聴した映画や、映画のレーティング、タイプ、俳優などの機能を使用して、映画を推奨します。
商品推奨: ユーザーの購入履歴や閲覧行動、商品属性などの機能を使用して商品を推奨します。
時系列分析
天気予報: 過去の気象条件、日付、太陽条件などの機能を使用して、将来の気象条件を予測します。
財務予測: 会社の財務諸表や市場動向などの機能を使用して、会社の財務状況を予測します。
異常検出
クレジットカードの不正検出: トランザクションの時間、場所、金額などの機能を使用して、異常なトランザクションを識別します。
ネットワークセキュリティ: ネットワークトラフィックデータ、接続タイプ、トラフィックサイズなどの機能を使用して、ネットワーク攻撃を検出します。
自然言語処理 (NLP)
感情分析: 単語、フレーズ、文構造などの機能を使用して、テキストの感情的な傾向を分析します。
機械翻訳: 単語、文法構造、コンテキストなどの機能を使用して、機械翻訳を支援します。
コンピュータビジョン
顔認識: 顔のキーポイント、輪郭、テクスチャなどの特徴を使用して個人を識別します。
オブジェクト検出: オブジェクトの形状、サイズ、色などの特徴を使用して、画像内のオブジェクトを検出します。
機能はすべての分野で広く使用されています。 機能の選択とエンジニアリングは、モデル構築プロセスの重要なステップです。 それらはモデルのパフォーマンスに直接影響します。
フィーチャーの作成
フィーチャは非同期で作成されます。 機能が作成されているかどうかは、そのステータスを照会して確認できます。
構文
データベース内のデータを使用してフィーチャを作成します。
CREATE FEATURE feature_name WITH (feature_class= '',parameters=()) AS (SELECT select_expr[, select_expr] ... table_referenceから)
既存のフィーチャーを使用してフィーチャーを作成します。
CREATE FEATURE feature_name WITH (feature_class = '',parameters=()) USING FEATURE feature_reference
Parameters
パラメーター | 説明 |
feature_name | フィーチャーの名前。 |
feature_class | フィーチャーのタイプ。 有効な値:
|
parameters | フィーチャーを作成するためのカスタムパラメーター。 |
select_expr | フィーチャーの作成に使用される列の名前。 |
table_reference | フィーチャーの作成に使用される列を含むテーブルの名前。 |
feature_reference | 既存のフィーチャーの名前。 |
例
データベース内のデータを使用してフィーチャを作成します。
/* polar4ai */create feature test_graph_1 with (feature_class='graph') as (select ip, user_id from small_sample limit 30)
サンプル結果:
クエリOK、影響を受ける0行 (0.79秒)
既存のフィーチャーを使用してフィーチャーを作成します。
/* polar4ai */create feature test_subgraph_1 with (feature_class='connected_subgraph') using feature test_graph_1
サンプル結果:
クエリOK、影響を受ける0行 (0.79秒)
機能を更新するUpdate a feature
特徴は非同期的に更新される。 ステータスを照会することで、機能が更新されたかどうかを確認できます。
構文
UPDATE FEATURE feature_name WITH (feature_class = ''、parameters=()) AS (SELECT select_expr [, select_expr] ... table_referenceから)
Parameters
パラメーター | 説明 |
feature_name | フィーチャーの名前。 |
feature_class | フィーチャーのタイプ。 値をgraphに設定します。 |
parameters | フィーチャーを作成するためのカスタムパラメーター。 |
select_expr | 機能の更新に使用される列の名前。 説明
|
table_reference | 機能の更新に使用される列を含むテーブルの名前。 |
例
test_subgraph_1
機能の列を、small_sample
テーブルのip
列とuser_id
列に変更します。
/* polar4ai */update feature test_graph_1 with (feature_class='graph') as (select ip, user_id from small_sample limit 30)
サンプル結果:
クエリOK、影響を受ける0行 (0.79秒)
機能ステータスの表示
フィーチャの現在のステータスを表示します。 ほとんどの場合、フィーチャーを作成または更新した後に、フィーチャーが作成または更新されたかどうかを確認できます。 フィーチャは、次のいずれかの状態にある可能性があります。
INIT: 機能が初期化されます。
準備: フィーチャのデータは準備中です。
準備済み: フィーチャのデータが準備されます。
COMPUTING: 特徴は計算中です。
COMPUTED: 特徴が計算される。
RESTORING: フィーチャの結果が保存されています。
RESTORED: フィーチャの結果が保存されます。
FINISHED: 機能のコンピューティングが成功しました。
FAILED: 機能のコンピューティングに失敗しました。
構文
SHOW FEATURE feature_name
Parameters
パラメーター | 説明 |
feature_name | フィーチャーの名前。 |
例
test_subgraph_1
機能のステータスを表示します。
/* polar4ai * /ショー機能test_subgraph_1;
サンプル結果:
+ ----------- + ------------------------------------------------------------------------------------------------------------------------------- +
| CSGStatus | featurePath |
+ ----------- + ------------------------------------------------------------------------------------------------------------------------------- +
| FINISHED | http://db4ai-collie-cn-hangzhou-dataset.oss-cn-hangzhou.aliyuncs.com/xxxx.txt?OSSAccessKeyId=xxxx&Expires=xxxx&Signature=xxxx |
+ ----------- + ------------------------------------------------------------------------------------------------------------------------------- +
featurePath
の有効期間は100分です。 featurePath
のExpires
パラメーターを使用して、リンクが有効かどうかを確認できます。 有効期間内にリンクにアクセスする必要があります。
機能リストを表示する
現在のクラスターのすべての機能を表示できます。
構文
ショーの特徴
例
/* polar4ai * /ショー機能;
サンプル結果:
+ -------------------- + ----------------- + ---------------- +
| feature_class | feature_name | feature_status |
+ -------------------- + ----------------- + ---------------- +
| connected_subgraph | test_subgraph_1 | 削除済み |
| グラフ | test_graph_1 | 終了 |
+ -------------------- + ----------------- + ---------------- +
セットの2列 (0.32秒)
機能を削除する
既存の機能を削除できます。
構文
ドロップ機能機能_名
Parameters
パラメーター | 説明 |
feature_name | フィーチャーの名前。 |
例
既存の機能test_subgraph_1
を削除します。
/* polar4ai * /ドロップ機能test_subgraph_1
次の結果は、この機能が削除されたことを示します。
クエリOK、影響を受ける0行 (0.69秒)