RapidMiner(ラピッドマイナー)はデータ可視化、データ加工、モデル作成、評価、運用まで一括サポートする機械学習プラットフォームです。KSKアナリティクスはRapidMinerの正規販売代理店です。

モデルの展開


モデルを展開することで、他の人やソフトウェアが利用できるようになります。この考えは、あなた(もしくは誰か!)が予測モデルを使用するプログラムを書くというものです。そのプログラムが、他の人も利用できるユーザーインタフェースをもっているなら、他の人も結果にアクセスできるでしょう。

どのプログラムかって? モデルを展開すると、HTTP(長いリスト!)を介してデータを送信できるソフトウェアアプリケーションなら、データをモデルに送信し、予測を生成することが可能です。 以下の例を見てください。代替として、プログラミング不要な単純な方法は、RapidMiner Go内から新規データセットへモデルを適用 することです。

以下のどちらかの方法でモデルの展開が可能です。

  1. すぐに。モデルを作成し終えた後、 結果の検証内から行います。もしくは、
  2. あとで。 ホーム > Manage recent analyses(最近の分析の管理)より最近の分析をクリックします。

行うには、モデルを一つ選択し、 Apply Model(モデルの適用)をクリックし、ドロップダウンメニューから Deploy Model(モデルの展開) を選択します。 Manage Deployment(展開の管理) ダイアログが現れれば、 Deploy Model(モデルの展開)をクリックします。

展開する各モデルにおうじて、RapidMiner GoはデプロイメントURLを提供しており、以下で詳細に述べられているように、データをそのURLへ送信できます。

  1. JSON形式でデータを入力
  2. RapidMiner Goに与えられたデプロイメントURLへデータを送信

展開されたモデルは ホーム > Manage deployed models(展開されたモデルの管理)の下にあります。モデルを停止するには、モデルを展開する手順とほぼ同様に、 Undeploy Model(モデルの停止)をクリックします。

JSON形式でデータを入力

一部の入力データに基づいて予測を行う場合は、データをJSON形式で送信する必要があります。JSON形式に慣れていなくとも、データを適切にフォーマットするのに役立つたくさんのオンラインツールがあります。CSV形式から開始する場合は、以下のツールが役に立つでしょう。

一つ目のツールを用いて、 モデルの展開 で述べている広告予算の三つの案をCSV形式から


TV,radio,newspaper
200,0,100
250,50,0
300,0,0

以下のように、JSON形式へ変換可能です。


[
  {
    "TV": 200,
    "radio": 0,
    "newspaper": 100
  },
  {
    "TV": 250,
    "radio": 50,
    "newspaper": 0
  },
  {
    "TV": 300,
    "radio": 0,
    "newspaper": 0
  }
]

この例での出力は、CSVファイルの三行のデータに応じて、JSON配列(鉤括弧内)の内部に三つのJSONオブジェクト(中括弧内)が含まれています。RapidMiner Goへの入力データ準備の最後のステップは、”data”キーワードを用いて、このJSON配列を別のJSONオブジェクトに埋め込むことです。


{ "data": [insert JSON array here] }

いわゆる圧縮形式では、RapidMiner GoへのJSON入力はこのようになります。


{"data":[{"TV":200,"radio":0,"newspaper":100},{"TV":250,"radio":50,"newspaper":0},{"TV":300,"radio":0,"newspaper":0}]}

RapidMiner Goによる、JSONでの結果の出力

データの 送信後、RapidMiner GoはJSON形式でも結果を返します。デプロイメントURLへ送信されたすべてのJSONオブジェクトは予測とともに返ってきます。以下では、さまざまなデータ送信方法について考えてみましょう。しかし、どの方法を選択しても、結果は”prediction(sales)”を含んでいます。


{
  "data":[
    {
      "newspaper":100.0,
      "TV":200.0,
      "prediction(sales)":10.9,
      "radio":0.0
    },
    {
      "newspaper":0.0,
      "TV":250.0,
      "prediction(sales)":25.4,
      "radio":50.0
    },
    {
      "newspaper":0.0,
      "TV":300.0,
      "prediction(sales)":10.9,
      "radio":0.0
    }
  ]
}

この出力を取得し、 JSONからCSVへ変換することができます。

デプロイメントURLへデータの送信

予測を生成するURLへデータを送信する方法はたくさんあります。あなた自身のデータとデプロイメントURLに置き換え、以下の例を試してみてください。

pythonを用いたデータ送信

requests ライブラリを使用します。


import requests

deployment_url = 'https://go.rapidminer.com/am/api/deployments/12d6513f-8a7b-44c3-b562-8867f59de95f'

my_input_data = {"data":[{"TV":200,"radio":0,"newspaper":100},{"TV":250,"radio":50,"newspaper":0},{"TV":300,"radio":0,"newspaper":0}]}

r = requests.post(deployment_url, json=my_input_data)

json_output = r.json()

print(json_output)

curlを用いたデータ送信

入力データをファイル(たとえば my_input_data.json)に置き、コマンドラインから送信可能です。


curl --request POST  \
     --header "Content-Type: application/json"  \
     --data @my_input_data.json \
     https://go.rapidminer.com/am/api/deployments/12d6513f-8a7b-44c3-b562-8867f59de95f


ブラウザエクステンションを用いたデータ送信

あなたの唯一のソフトウェアツールがブラウザであったとしても、たくさんのRESTクライアントブラウザエクステンションを用いて、RapidMiner Goへデータを送信可能です。例として、 Advanced REST client extension for Google Chromeを用いたものを紹介します。

  1.  Add to Chromeをクリックし、アプリを開きます。
  2. リクエストの Methodに、”POST”を選択し、 Request URLにRapidMiner GoのデプロイメントURLを挿入します。
  3.  Headersの下にある、 Header name に”Content-Type”を、 Header valueに”application/json”を選択します。
  4.  Bodyの下にある、 JSON formatへ入力データを挿入します。
  5.  Sendをクリックします。POSTが成功すると、ステータスコード”200 OK”がRapidMiner Goからの結果とともに返ってきます。


API認証に失敗しました メールまたはパスワードが正しくありません メールアドレスは必須です パスワードは必須です
キャンセル