Microsoft Azure の Machine Learning で作ったモデルをWeb API化する

  • このエントリーをはてなブックマークに追加

前回に引き続き、Microsoft Azure の Machine Learning の紹介をしたいと思います。

前回作ったモデルは下記の通りです。
2015:01:31_blog.001

今回はこれを利用して、過去の馬の入賞率とその馬に乗る騎手の入賞率を投げると、レースで勝つ確率を返してくれるAPIを作成します。

 

1. Publish Inputの設定

「Score Model」アイテムのの「Dataset」ソースを右クリックして、「Set as Publish Input」に設定します。
2015:01:31_blog.002

 

2. Publish Outputの設定

「Score Model」アイテムのの「Scored Dataset」ソースを右クリックして、「Set as Publish Output」に設定します。
2015:01:31_blog.003

 

3. WebAPI化

実行後は、下部メニューの「Publish Web Service」がクリックできるようになりますので、クリックします。
2015:01:31_blog.005

 

4. クライアント設定

2015:01:31_blog.006
このページでリクエスト時に使うAPI Keyを取得できますので、メモしておきましょう。
「API help page」のリンクをクリックすると、自分が作成したWeb APIのAPI仕様を確認することができます。

下記はPythonでのPOST例です。ほとんどサンプルコードと同じですが。
過去の馬の入賞率が0.5、その馬に乗る騎手の入賞率が0.5である場合にそのレースで勝つ確率を予測するケースです。

実行結果 :

[“0.5″,”0.5″,”0″,”0.285396218299866”]

レスポンス仕様

UmaNyusyoRatio Numeric
KisyuNyusyoRatio Numeric
Scored Labels Numeric
Scored Probabilities Numeric


過去の馬の入賞率が0.5、その馬に乗る騎手の入賞率が0.5である場合、勝つ確率は28.53%ほどであることが分かりました。
非常に簡単に使えそうです!

  • このエントリーをはてなブックマークに追加