PredictFromModel

指定されたテキストの埋め込みベクトルに対してトレーニングされた回帰モデルから予測値を返します。

構文 

PredictFromModel ( モデル名 ; v1 )

引数 

モデル名 - メモリにロードされているトレーニングされた回帰モデルの名前を指定するテキスト式。

v1 - 予測のための入力特徴量を含む任意のテキスト式、フィールド、またはオブジェクトフィールド。JSON 配列 (例: [1.2, 3.4, 5.6]) または埋め込みベクトルを含むバイナリオブジェクトデータとして指定します。

戻り値のデータタイプ 

数字

起点バージョン 

22.0

説明 

PredictFromModel は [回帰モデルを構成] スクリプトステップでトレーニングおよびロードされた回帰モデルを使用して数値予測を生成します。この関数は入力特徴量 (埋め込みベクトル) を受け取ってモデルのトレーニング中に得られたパターンに基づいて 1 つの数値予測を返します。

この関数を使用する前に必要な処理:

  1. [回帰モデルを構成] スクリプトステップを使用して回帰モデルをトレーニングします。

  2. モデルがメモリにロードされていることを確認します。明示的にアンロードされるか FileMaker セッションが終了するまでモデルはメモリ内に残ります

  3. モデルの作成に使用したトレーニングデータと同じ構造と次元の入力特徴量を指定します。

v1 引数は次の 2 つの形式で入力特徴量を受け入れます:

  • 数値の JSON 配列を含むテキスト (例: [1.2, 3.4, 5.6, 7.8])。人間が読むことができるこの形式はシンプルな用途に適しています。JSON 配列は AI モデルによって生成された埋め込みベクトルでも構成できます。

  • バイナリオブジェクトデータとして格納された埋め込みベクトル。通常この形式は大規模な処理でより優れたパフォーマンスを発揮し、AI モデルによって生成された埋め込みベクトルを操作する場合に向いています。

メモ 

  • v1 の入力特徴量はモデルの作成に使用されたトレーニングデータと次元の数および順序が同じになっている必要があります。

  • AI モデルを使用して v1 に使用する埋め込みベクトルを生成するには、[埋め込みを挿入] スクリプトステップ[対象レコードに埋め込みを挿入] スクリプトステップ、または GetEmbedding 関数を使用します。

  • 一般的に埋め込みベクトルにバイナリオブジェクトデータを使用すると、特に高次元の特徴ベクトルの場合に JSON 配列よりも優れたパフォーマンスが得られます。

  • モデル名は大文字と小文字が区別され、[回帰モデルを構成] スクリプトステップを使用してロードされたモデルの名前と正確に一致する必要があります。

  • モデルは明示的に削除されるまでメモリに残るため、複数の予測をリロードせずに効率的に実行できます。

  • 次の場合この関数は「?」を返します:

    • 指定されたモデル名が存在しないまたは現在メモリにロードされていない場合。

    • モデルのトレーニングデータと入力特徴量の次元または形式が一致しない場合。

例 1 

回帰モデルを構成」の例 1 でトレーニングされた住宅価格モデルを使用して簡単な予測を行う式です。入力特徴量は床面積 (フィート)、寝室数、および築年数です。

コピー
PredictFromModel ("住宅価格モデル" ; "[1600, 3, 20]")

1600 平方フィート、3 つの寝室、築年数 20 年に基づいて予測した住宅価格を返します。予想される戻り値は 256.96153846153845279 です (トレーニングデータで使用されるターゲット値と同じ価格単位)。

例 2

回帰モデルを構成」の例 2 でトレーニングされたモデルを使用して、レビューテキストに基づいて顧客の星の評価を予測します。スクリプトはユーザにレビューを入力するように求め ($reviewInput)、AI アカウントを設定してから、アカウントを使用して $reviewInput のテキスト埋め込みベクトルを取得します。次に、グローバルフィールド「レビュー::レビューモデル」に格納されている回帰モデルをロードして、ロードしたモデル「レビューモデル」とユーザレビューの埋め込みベクトル ($reviewEmbedding) を使用して予測した評価を表示します。完了すると、スクリプトによってモデルがメモリからアンロードされます。

コピー
カスタムダイアログを表示 ["レビューを入力してください"; $reviewInput]

AI アカウント設定 [アカウント名: "AI_Model_Server" ; モデルプロバイダ: カスタム ; エンドポイント: "https://myserver.example.com:8080/" ; SSL 証明書の検証 ; API キー: グローバル::API キー]

埋め込みを挿入 [アカウント名: "AI_Model_Server" ; 埋め込みモデル: "all-MiniLM-L12-v2" ; 入力: $reviewInput ; ターゲット: $reviewEmbedding]

回帰モデルを構成 [処理: モデルをロード ; モデル名: "レビューモデル" ; モデルのロード元: レビュー::レビューモデル]

カスタムダイアログを表示 ["予測される評価"; PredictFromModel ("レビューモデル" ; $reviewEmbedding)]

回帰モデルを構成 [処理: モデルをアンロード ; モデル名: "レビューモデル"]

肯定的なレビューの予測評価はトレーニングで使用されるターゲット値が 1 から 5 の範囲の場合、4.8700974666666665414 です。