【DataRobot】DataRobot AI Platformのトライアル申し込みから予測させるまで

# はじめに

こんにちは、[@yshr10ic](https://twitter.com/yshr_10ic)です。

[Qiita夏祭り](https://qiita.com/summer-festival)の「DataRobotテーマ」の投稿になります。
DataRobotのAIプラットフォームをトライアルできるようになったので、せっかくの機会なので、Qiitaにも記事を投稿してみようと思いました！

# DataRobotとは？

DataRobot社が提供するエンタープライズ向けにAIプラットフォームです。DataRobotはデータサイエンスの民主化を謳っており、AIを構築、デプロイ、メンテナンスするためのプロセス全体を自動化することができます。

DataRobot社には、[Kaggle](https://www.kaggle.com/)でNo.1になったことがある人やトップレベルのデータサイエンティストが多数在籍しているとのことで、そんな方たちのノウハウを自動で使えるプラットフォームとなっているようです。

そんなDataRobotのAIプラットフォームが本日（2020/07/01）からトライアルの提供を開始しました。せっかくの機会なので、試してみたいと思います！

[DataRobot、「DataRobot AI Platformトライアル」の国内提供を開始](https://prtimes.jp/main/html/rd/p/000000036.000030930.html)

# トライアル版の申し込み

DataRobot AI Platform トライアルは[ここ](https://www.datarobot.com/jp/lp/trial/)から申し込むことができます。

![image.png](https://qiita-image-store.s3.ap-northeast-1.amazonaws.com/0/530906/0e68082b-2f73-fd33-5a54-4756306ff593.png)

必要事項を記入して「送信」ボタンを押すと、登録したメールアドレス宛にメールが届くので、リンクをクリックしパスワードを設定します。
ログインすると以下のページに遷移します。黒を基調としており、かっこいいデザインですね！

<img width="1439" alt="DataRobot.png" src="https://qiita-image-store.s3.ap-northeast-1.amazonaws.com/0/530906/4afc3fd2-d157-c7e3-572b-cdf64684f112.png">

こちらが、トライアル版と有償版の使用できる機能の一覧となります。

![image.png](https://qiita-image-store.s3.ap-northeast-1.amazonaws.com/0/530906/ad88d0d2-4d63-e7d8-c8a2-03dd9e670a2e.png)

# 実際に予測させてみる

今回はDataRobot AI Platformに用意されているサンプルデータセットを用いて、予測させてみたいと思います。

トップページにある「夢の野球チームの予測」の「プロジェクトを作成」をクリックします。

<img width="1436" alt="DataRobot.png" src="https://qiita-image-store.s3.ap-northeast-1.amazonaws.com/0/530906/a452cb22-bec4-a1f7-34ef-648217f87399.png">

そうすると、データのアップロード、データの読み取り、探索的データ解析が行われます。

<img width="1435" alt="DataRobot.png" src="https://qiita-image-store.s3.ap-northeast-1.amazonaws.com/0/530906/92161bf1-5fb1-18f3-862d-ade1907294d3.png">

データの解析が終わると、以下のように何を予測するのかを聞かれます。

<img width="1435" alt="DataRobot.png" src="https://qiita-image-store.s3.ap-northeast-1.amazonaws.com/0/530906/8a4e9c71-7859-3939-fbd7-dc9af60e63fc.png">

「データ品質」の項目では、特徴量の数、データ行数、外れ値の有無などが確認できます。今回のデータは、98の特徴量、１４０６０のデータ数があるようです。

<img width="1193" alt="DataRobot.png" src="https://qiita-image-store.s3.ap-northeast-1.amazonaws.com/0/530906/80db13f7-77d4-4a4f-1843-9396079389ff.png">

その下では、各特徴量の基本的な統計量を確認することができます。
なお、データ品質の列に:warning:が入っている特徴量がありますが、こちらは今回のデータでいうと外れ値を含んでいる特徴量になります。体重の最小値、最大値を確認してみると（おそらく単位はポンドだとは思いますが）、最小値140ポンド（≒63.5kg）、最大値295ポンド（≒133.8kg）となっており、野球選手として133kgはさすがに重すぎるので、適切なチェックがされていると言えます。

体重のように明らかに外れ値だろうと分かる特徴量については良いですが、一見すると外れ値かどうか分かりにくい特徴量もデータセットには必ず含まれているため、自動的にデータの品質をチェックしてくれるは非常にありがたいですね。

<img width="1216" alt="DataRobot.png" src="https://qiita-image-store.s3.ap-northeast-1.amazonaws.com/0/530906/c8bbf61c-04a2-e243-8ba2-83887c61ca2f.png">

今回は「wOBA」を予測対象としたいと思います。ちなみにwOBAとはWeighted On-Base Averageの略で、打者の攻撃力を測る指標らしいです。（[Wikipedia](https://ja.wikipedia.org/wiki/WOBA)参照）

画面の一番上に戻り、「推奨されるターゲット」の「wOBA」をクリックします。

![68747470733a2f2f71696974612d696d6167652d73746f72652e73332e61702d6e6f727468656173742d312e616d617a6f6e6177732e636f6d2f302f3533303930362f38613465396337312d373835392d333933392d666264372d6463396166363065363366632e706e67__2870×1590_.png](https://qiita-image-store.s3.ap-northeast-1.amazonaws.com/0/530906/8d94035f-5088-dbe5-a6ff-740d9791accf.png)

そうすると、自動で「回帰」予測が選択され、開始ボタンが押せるようになりました。

<img width="1188" alt="DataRobot.png" src="https://qiita-image-store.s3.ap-northeast-1.amazonaws.com/0/530906/cdfc4cf5-219c-fe75-2e71-e93f27b8a4aa.png">

なお、高度なオプションを表示させると、いろいろな手法を試すことができるようです。

<img width="1177" alt="DataRobot.png" src="https://qiita-image-store.s3.ap-northeast-1.amazonaws.com/0/530906/e7f09ac9-0602-f16c-b75b-56db07b130b1.png">

<img width="1185" alt="DataRobot.png" src="https://qiita-image-store.s3.ap-northeast-1.amazonaws.com/0/530906/87937a32-f014-7548-c527-be2cb8e5e17d.png">

今回はデフォルトの設定のまま、開始ボタンをクリックします。

そうすると、モデリングが実行されます。以下のように、様々なモデルを用いて予測させていることが分かります。予測には、少々時間がかかりますので、コーヒーでも飲みながら気長に待ちましょう:coffee:

<img width="234" alt="DataRobot.png" src="https://qiita-image-store.s3.ap-northeast-1.amazonaws.com/0/530906/02bd5fde-2205-a58d-904e-043a635fabe2.png">

学習が完了しました！

<img width="236" alt="DataRobot.png" src="https://qiita-image-store.s3.ap-northeast-1.amazonaws.com/0/530906/84c268dd-86b2-90fe-c0fc-0531163fe601.png">

左上のモデルタブを押してみると、作成されたモデルの一覧を表示させることができます。今回は23のモデルが作成されたようです。交差検証でスコアが良かった順に並んでいるようですね。
また、下の方にスクロールしてみると、「検定」の評価値が低いモデルは交差検定を行っていないようなので、こういったところでモデリングの時間を短縮しているようです。

<img width="1436" alt="DataRobot.png" src="https://qiita-image-store.s3.ap-northeast-1.amazonaws.com/0/530906/899a8f2d-1638-52b1-7099-7fd38f84ad1c.png">

![DataRobot.png](https://qiita-image-store.s3.ap-northeast-1.amazonaws.com/0/530906/27612fd3-01a5-7b11-12bd-41297a37789f.png)

モデルをクリックしてみると、そのモデルがどのような構成なのか、どの特徴量がインパクトがあるのか、などを調べることができます。確認できる項目が多くあるので、これらを確認するのは少し大変そうだなという印象です。

![DataRobot.png](https://qiita-image-store.s3.ap-northeast-1.amazonaws.com/0/530906/e5eb7a61-aad7-48a0-369c-9fa434f1831b.png)

![DataRobot.png](https://qiita-image-store.s3.ap-northeast-1.amazonaws.com/0/530906/f2b98c56-d560-3a26-3542-3ac033b8e0be.png)

それでは、この一番上にあるモデルを用いて、予測をしてみたいと思います！

モデルを選択すると、「予測」タブがあるので、そちらをクリックします。今回は予測用のデータセットが用意されているので、そちらをダウンロード＆アップロードして予測したいと思います。

![DataRobot.png](https://qiita-image-store.s3.ap-northeast-1.amazonaws.com/0/530906/f9532eec-a301-08f3-e8f1-f4fa61fcb5f5.png)

アップロードができたら、「予測を計算」をクリックします。

![DataRobot.png](https://qiita-image-store.s3.ap-northeast-1.amazonaws.com/0/530906/2a73a16b-9052-1a40-60f1-e81179fde0c2.png)

予測用データセットは283行あり、１分もしないうちに予測が完了しました。予測結果をダウンロードして結果を確認してみたいと思います。

![DataRobot.png](https://qiita-image-store.s3.ap-northeast-1.amazonaws.com/0/530906/270793a9-c90c-3206-26e0-ac39d0dccb6d.png)

ちゃんと予測ができていました！CSVをアップロードしてボタンをクリックするだけで予測できるので簡単ですね！

![baseball_modeling_csv_Light_Gradient_Boosting_on_ElasticNet_Predictions___105__100_5efc601719376f002fc69b3b_f60fd405-8ea5-43a6-8fa6-b_baseball_scoring.png](https://qiita-image-store.s3.ap-northeast-1.amazonaws.com/0/530906/6b851ab4-4905-fdca-53c3-5de82f58becf.png)

# まとめ

いかがだったでしょうか？DataRobot AI Platformのトライアル申し込みからサンプルデータを用いたモデルの学習、予測を実施してみました。モデリングで使用できるオプションや、結果の確認項目など非常に多くあったのですべてを確認することはできませんでしたが、GUIでボタンをポチポチと押すだけでここまでできるは非常にすごいなーと思いました。

今回は、DataRobot AI Platformにあるサンプルデータを用いて学習〜予測を行ったので、今度は自身に馴染みのあるデータを使って試してみたいなと思いました。

今回の記事は以上となります。最後まで読んでいただき、ありがとうございました！
参考になった！という方はLGTMをしていただけると励みになりますので、よろしくお願いいたします！