Top Banner
46

Paxata - storage.googleapis.com · 1. DataRobotとPaxataによるAI民主化のアプローチ 2. Paxataとは? 3. そのデータ、予測モデリングに適した形になってますか?

Dec 30, 2019

Download

Documents

dariahiddleston
Welcome message from author
This document is posted to help you gain knowledge. Please leave a comment to let me know what you think about it! Share it to your friends and learn new things together.
Transcript
Page 1: Paxata - storage.googleapis.com · 1. DataRobotとPaxataによるAI民主化のアプローチ 2. Paxataとは? 3. そのデータ、予測モデリングに適した形になってますか?
Page 2: Paxata - storage.googleapis.com · 1. DataRobotとPaxataによるAI民主化のアプローチ 2. Paxataとは? 3. そのデータ、予測モデリングに適した形になってますか?

Confidential. ©2019 DataRobot, Inc. – All rights reserved

DataRobotとPaxataによる前処理と機械学習

Page 3: Paxata - storage.googleapis.com · 1. DataRobotとPaxataによるAI民主化のアプローチ 2. Paxataとは? 3. そのデータ、予測モデリングに適した形になってますか?

Agenda

Confidential. ©2019 DataRobot, Inc. – All rights reserved

1. DataRobotとPaxataによるAI民主化のアプローチ2. Paxataとは?3. そのデータ、予測モデリングに適した形になってますか?

a. アクションに沿ったターゲット変数の形式にするb. 適切な範囲のデータを用いる

4. 予測モデリング可能な形にデータの前処理を行うa. Paxataによるデータの前処理

i. ターゲット変数の加工ii. 適切な範囲のデータを抽出

5. データをより予測に適した形に前処理するa. 文字列と複雑に複合した数値部分を取り出す

6. 予測に有用な追加テーブルを簡単に結合する7. まとめ

Page 4: Paxata - storage.googleapis.com · 1. DataRobotとPaxataによるAI民主化のアプローチ 2. Paxataとは? 3. そのデータ、予測モデリングに適した形になってますか?

Confidential. ©2018 DataRobot, Inc. – All rights reserved

データサイエンティストに必要とされるスキル

DataScientist

数学&統計

ドメイン知識

データサイエンス

プログラミングスキル

● 業務知識● データへの理解● 行動可能な情報を抽出するコーディング技術● データを操作するためのコーディング技術● データ探索するためのコーディング技術● データ収集のコーディング技術● モデルを構築するためのコーディング技術● モデルを実装するためのコーディング技術● 基礎統計● アルゴリズムの仕組みの理解● 実践的な知識と経験● 予測結果と現実値との乖離理由を説明する知識

前提条件

Page 5: Paxata - storage.googleapis.com · 1. DataRobotとPaxataによるAI民主化のアプローチ 2. Paxataとは? 3. そのデータ、予測モデリングに適した形になってますか?

Confidential. ©2018 DataRobot, Inc. – All rights reserved

データ・サイエンスができる人材を増やすには

現在

5

AIの民主化

データサイエンティスト

ビジネス・アナリストデータ・アナリスト

ビジネスユーザー

データサイエンティスト

シチズン・データ・サイエンティスト

ビジネスユーザー

シチズン・データ・サイエンティストの指導、育成、支援、監査

Page 6: Paxata - storage.googleapis.com · 1. DataRobotとPaxataによるAI民主化のアプローチ 2. Paxataとは? 3. そのデータ、予測モデリングに適した形になってますか?

Confidential. ©2018 DataRobot, Inc. – All rights reserved

機械学習の自動化

シチズン・データサイエンティスト(CDS)

モデル解釈

課題設定

事業実装データ準備 モデル生成

データ準備やモデル生成に費やす時間を、課題解決そのものに注力できる

データ準備

課題設定

モデル解釈

モデル生成

事業実装

従来型のデータ・サイエンス

Citizen DSによるデータ・サイエンス × DataRobot, Paxata

Page 7: Paxata - storage.googleapis.com · 1. DataRobotとPaxataによるAI民主化のアプローチ 2. Paxataとは? 3. そのデータ、予測モデリングに適した形になってますか?

Confidential. ©2019 DataRobot, Inc. – All rights reserved

Paxataとは?

Paxata(パクサタ)は、ビジネスデータに知見を持つ現場のユーザーが自分のほしいデータをセ

ルフサービスで準備できる環境を提供します。

Page 8: Paxata - storage.googleapis.com · 1. DataRobotとPaxataによるAI民主化のアプローチ 2. Paxataとは? 3. そのデータ、予測モデリングに適した形になってますか?

Confidential. ©2019 DataRobot, Inc. – All rights reserved

Paxataとは?

DataRobotとPaxataなら、データをすばやく活用し、何度も打ち手を実行できる!

Page 9: Paxata - storage.googleapis.com · 1. DataRobotとPaxataによるAI民主化のアプローチ 2. Paxataとは? 3. そのデータ、予測モデリングに適した形になってますか?

Confidential. ©2019 DataRobot, Inc. – All rights reserved

本ワークショップの構成

生の業務データ(原石)

直接利用できる形になっているとは限らない(大抵はなっていない)

① 特徴量とターゲットを機械学習に適した形に変換する 前処理済みデータ

② 複数テーブルを予測単位にマッチした形でマージする

Page 10: Paxata - storage.googleapis.com · 1. DataRobotとPaxataによるAI民主化のアプローチ 2. Paxataとは? 3. そのデータ、予測モデリングに適した形になってますか?

Confidential. ©2019 DataRobot, Inc. – All rights reserved

[ハンズオン] ローン貸し倒れ予測をやってみよう!

● 過去のローンデータから貸し倒れ(誰に貸したらお金を返してくれるか、返してくれないか)の予測モデルを作ってみよう。

● まずは、connpassからダウンロードした train.csvを開いて見てみよう。

Page 11: Paxata - storage.googleapis.com · 1. DataRobotとPaxataによるAI民主化のアプローチ 2. Paxataとは? 3. そのデータ、予測モデリングに適した形になってますか?

Confidential. ©2019 DataRobot, Inc. – All rights reserved

DataRobotにアップロードしてみよう

Page 12: Paxata - storage.googleapis.com · 1. DataRobotとPaxataによるAI民主化のアプローチ 2. Paxataとは? 3. そのデータ、予測モデリングに適した形になってますか?

Confidential. ©2019 DataRobot, Inc. – All rights reserved

DataRobotにアップロードしてみよう

マウスオーバーして、「ターゲットとして使う」をクリックする

Page 13: Paxata - storage.googleapis.com · 1. DataRobotとPaxataによるAI民主化のアプローチ 2. Paxataとは? 3. そのデータ、予測モデリングに適した形になってますか?

Confidential. ©2019 DataRobot, Inc. – All rights reserved

開始ボタンを押して予測モデリングをやってみよう

① モデリングモードを「クイック」にする

② 開始ボタンをクリックする

Page 14: Paxata - storage.googleapis.com · 1. DataRobotとPaxataによるAI民主化のアプローチ 2. Paxataとは? 3. そのデータ、予測モデリングに適した形になってますか?

Confidential. ©2019 DataRobot, Inc. – All rights reserved

実際に予測を行ってみよう

① 予測をクリックする

② test.xlsxをドラッグ&ドロップする

Page 15: Paxata - storage.googleapis.com · 1. DataRobotとPaxataによるAI民主化のアプローチ 2. Paxataとは? 3. そのデータ、予測モデリングに適した形になってますか?

Confidential. ©2019 DataRobot, Inc. – All rights reserved

実際に予測を行ってみよう (cont.)

予測を計算→ダウンロードをクリック

Page 16: Paxata - storage.googleapis.com · 1. DataRobotとPaxataによるAI民主化のアプローチ 2. Paxataとは? 3. そのデータ、予測モデリングに適した形になってますか?

Confidential. ©2019 DataRobot, Inc. – All rights reserved

予測結果を確認してみよう

● この予測結果の出力を見て、おかしな点・困った点に気づいたでしょうか?

Page 17: Paxata - storage.googleapis.com · 1. DataRobotとPaxataによるAI民主化のアプローチ 2. Paxataとは? 3. そのデータ、予測モデリングに適した形になってますか?

Confidential. ©2019 DataRobot, Inc. – All rights reserved

予測結果を確認してみよう

1. 多値分類になっており、ローンの各ステータスをとる確率が返ってきてる。   → で、これを元に何ができるんでしたっけ?

2. 全てのレコードでCurrentになる確率が最も高いと返ってきている。 → Curerntは貸し倒れるかどうかの結果が出ていない「現行ローン」という意味。  なぜ、こんな事になってしまったのでしょうか?

Page 18: Paxata - storage.googleapis.com · 1. DataRobotとPaxataによるAI民主化のアプローチ 2. Paxataとは? 3. そのデータ、予測モデリングに適した形になってますか?

Confidential. ©2019 DataRobot, Inc. – All rights reserved

問題点①: 予測タスクがアクションに繋がらない

● ローンの状態は貸し倒れたかどうかの Yes/Noではなく、様々なステータスが記録されている。● これらの多値分類を行うことはできるが、それではアクション(貸し出し審査)につなげにくい。

○ ここで欲しいのは貸付可否の指標であり、「貸し倒れの確率」が該当する。

Page 19: Paxata - storage.googleapis.com · 1. DataRobotとPaxataによるAI民主化のアプローチ 2. Paxataとは? 3. そのデータ、予測モデリングに適した形になってますか?

Confidential. ©2019 DataRobot, Inc. – All rights reserved

問題点②: データの範囲が適切でない

● 新しすぎるローンデータはまだほとんどローンの状態が ”Current”になっている。○ 貸し倒れ or notの決着がついていないため( LendingClubのローン期間は3~5年程度)。○ 予測したい最新のローン申請に対する予測は当然 ”Current”になってしまう。

まだ貸したばかりのローン!

Page 20: Paxata - storage.googleapis.com · 1. DataRobotとPaxataによるAI民主化のアプローチ 2. Paxataとは? 3. そのデータ、予測モデリングに適した形になってますか?

Confidential. ©2019 DataRobot, Inc. – All rights reserved

では、どのようにデータを修正すれば良いのだろう?

● 予測がアクション(貸付審査)に繋がるように、ここでは以下のように二値化する。

予測ターゲットの作成

正常なローン(False): Fully Paid(全額返済) , Current(現行)問題のあるローン(True):  Charged Off(不良債権) , Default(未納), In Grace Period(猶予期間

中), Late (16-30 days)(遅延支払(16~30 日)), Late (31-120 days)(遅延支払(31~120日))

新しすぎるローンの削除

● 貸付たばかりのローンは結果がまだ出ていないため、データから除いておく。● LendingClubのローン期間は3年 or 5年。ここでは2015年までのデータでモデリングすることにする。

一般に、実務データは予測モデリングに対して Readyとは限らない。予測に対してどのようなアクションをとるのかを念頭に置いてデータセットを設計する。その中で業務知識が必要になる場面もある。

Page 21: Paxata - storage.googleapis.com · 1. DataRobotとPaxataによるAI民主化のアプローチ 2. Paxataとは? 3. そのデータ、予測モデリングに適した形になってますか?

Confidential. ©2019 DataRobot, Inc. – All rights reserved

Paxataでデータの前処理をやってみよう(学習データ)

値を選択し、変換したい値を入力するだけ!

変更処理の結果はリアルタイムに確認可能!

Page 22: Paxata - storage.googleapis.com · 1. DataRobotとPaxataによるAI民主化のアプローチ 2. Paxataとは? 3. そのデータ、予測モデリングに適した形になってますか?

Confidential. ©2019 DataRobot, Inc. – All rights reserved

Paxataでデータの前処理をやってみよう(学習データ)

貸付日より簡単に「年」と「月」を抽出!2015年より新しい年のデータもクリックの操作で削除可能!

Page 23: Paxata - storage.googleapis.com · 1. DataRobotとPaxataによるAI民主化のアプローチ 2. Paxataとは? 3. そのデータ、予測モデリングに適した形になってますか?

Confidential. ©2019 DataRobot, Inc. – All rights reserved

Paxataでデータの前処理をやってみよう(テストデータ)

画面上の操作でデータソースを切替えるだけで他のデータにも同じ処理を適用可能!

Page 24: Paxata - storage.googleapis.com · 1. DataRobotとPaxataによるAI民主化のアプローチ 2. Paxataとは? 3. そのデータ、予測モデリングに適した形になってますか?

Confidential. ©2019 DataRobot, Inc. – All rights reserved

修正したデータをDataRobotにアップロードしてみよう

Page 25: Paxata - storage.googleapis.com · 1. DataRobotとPaxataによるAI民主化のアプローチ 2. Paxataとは? 3. そのデータ、予測モデリングに適した形になってますか?

Confidential. ©2019 DataRobot, Inc. – All rights reserved

予測ターゲットを指定しよう

マウスオーバーして、「ターゲットとして使う」をクリックする

Page 26: Paxata - storage.googleapis.com · 1. DataRobotとPaxataによるAI民主化のアプローチ 2. Paxataとは? 3. そのデータ、予測モデリングに適した形になってますか?

Confidential. ©2019 DataRobot, Inc. – All rights reserved

開始ボタンをクリックして、モデリングを開始しよう

① モデリングモードを「クイック」にする

② 開始ボタンをクリックする

Page 27: Paxata - storage.googleapis.com · 1. DataRobotとPaxataによるAI民主化のアプローチ 2. Paxataとは? 3. そのデータ、予測モデリングに適した形になってますか?

Confidential. ©2019 DataRobot, Inc. – All rights reserved

できたモデルを確認してみよう

① 指標を「AUC」に設定する

② 二値分類課題に落とし込むことができた。

「特徴量のインパクト」や「特徴量ごとの作用」を見てどのような特徴量が予測に効いているのか、どのような依存性のカーブを描いているのかを理解しよう。

Page 28: Paxata - storage.googleapis.com · 1. DataRobotとPaxataによるAI民主化のアプローチ 2. Paxataとは? 3. そのデータ、予測モデリングに適した形になってますか?

Confidential. ©2019 DataRobot, Inc. – All rights reserved

しかし、まだ改善の余地は大きい・・・

● 勤続年数が「10+ years」「< 1year」など、数値型として読み取れておらず、カテゴリになっている。● 精度面で懸念があるだけでなく、傾向が読み取りにくいなど、解釈もしにくくなってしまっている。

Page 29: Paxata - storage.googleapis.com · 1. DataRobotとPaxataによるAI民主化のアプローチ 2. Paxataとは? 3. そのデータ、予測モデリングに適した形になってますか?

Confidential. ©2019 DataRobot, Inc. – All rights reserved

通常の場合は、コーディングを伴う前処理が必要になる

● 例えば、df_train['勤続年数 '] = df_train['勤続年数 '].apply(lambda x: re.sub('\D', '', x))のような処理をすることになるが、不慣れな人には難しい場合もある。

Page 30: Paxata - storage.googleapis.com · 1. DataRobotとPaxataによるAI民主化のアプローチ 2. Paxataとは? 3. そのデータ、予測モデリングに適した形になってますか?

Confidential. ©2019 DataRobot, Inc. – All rights reserved

指定した文字列を削除!

before

データセットをより予測モデリングに適した形に加工する

after

「検索」には以下を指定 year years  +  <  n/a (半角スペース)

Page 31: Paxata - storage.googleapis.com · 1. DataRobotとPaxataによるAI民主化のアプローチ 2. Paxataとは? 3. そのデータ、予測モデリングに適した形になってますか?

Confidential. ©2019 DataRobot, Inc. – All rights reserved

DataRobotにアップロードしてみよう

Page 32: Paxata - storage.googleapis.com · 1. DataRobotとPaxataによるAI民主化のアプローチ 2. Paxataとは? 3. そのデータ、予測モデリングに適した形になってますか?

Confidential. ©2019 DataRobot, Inc. – All rights reserved

開始ボタンをクリックして、モデリングを開始しよう

① モデリングモードを「クイック」にする

② 開始ボタンをクリックする

Page 33: Paxata - storage.googleapis.com · 1. DataRobotとPaxataによるAI民主化のアプローチ 2. Paxataとは? 3. そのデータ、予測モデリングに適した形になってますか?

Confidential. ©2019 DataRobot, Inc. – All rights reserved

精度とインサイトを確認してみよう

● 勤続年数の前処理によって、モデルの精度が向上していることがわかる

前処理後

前処理前

Page 34: Paxata - storage.googleapis.com · 1. DataRobotとPaxataによるAI民主化のアプローチ 2. Paxataとは? 3. そのデータ、予測モデリングに適した形になってますか?

Confidential. ©2019 DataRobot, Inc. – All rights reserved

精度とインサイトを確認してみよう

● 勤続年数が数値として扱われて、傾向がより把握しやすくなった○ 勤続年数1年以下はリスクが高い。10年以上になるとリスクが下がる。○ でも、一番危ないのは欠損(空欄)の人。欠損であることにも意味がある!

Page 35: Paxata - storage.googleapis.com · 1. DataRobotとPaxataによるAI民主化のアプローチ 2. Paxataとは? 3. そのデータ、予測モデリングに適した形になってますか?

Confidential. ©2019 DataRobot, Inc. – All rights reserved

改めて未知データに対する予測を行ってみよう

予測を計算→ダウンロードをクリック

Page 36: Paxata - storage.googleapis.com · 1. DataRobotとPaxataによるAI民主化のアプローチ 2. Paxataとは? 3. そのデータ、予測モデリングに適した形になってますか?

Confidential. ©2019 DataRobot, Inc. – All rights reserved

でも、データって複数テーブルあるのが普通ですよね?

複数テーブルの例:● ローン履歴、クレジットカード履歴、マクロ経済指標 、etc.● 製品情報、検査データ、 etc● 店舗情報、売り上げ情報、地域情報、カレンダー、 etc

テーブル間でデータの粒度が異なる場合もあり、複数テーブルの統合の難しい点の一つ

Page 37: Paxata - storage.googleapis.com · 1. DataRobotとPaxataによるAI民主化のアプローチ 2. Paxataとは? 3. そのデータ、予測モデリングに適した形になってますか?

Confidential. ©2019 DataRobot, Inc. – All rights reserved

複数テーブルのマージにより、特徴量を追加する

● 複数テーブルの場合、DataRobotに入れるために1枚のテーブルにマージする必要がある

ローン情報 州別の年ごとのGDPデータ

Page 38: Paxata - storage.googleapis.com · 1. DataRobotとPaxataによるAI民主化のアプローチ 2. Paxataとは? 3. そのデータ、予測モデリングに適した形になってますか?

Confidential. ©2019 DataRobot, Inc. – All rights reserved

追加データを簡単にマージする

製品側が自動でキー項目を表示!ノンコーディングでデータを結合可能!

Page 39: Paxata - storage.googleapis.com · 1. DataRobotとPaxataによるAI民主化のアプローチ 2. Paxataとは? 3. そのデータ、予測モデリングに適した形になってますか?

Confidential. ©2019 DataRobot, Inc. – All rights reserved

DataRobotにアップロードしてみよう

Page 40: Paxata - storage.googleapis.com · 1. DataRobotとPaxataによるAI民主化のアプローチ 2. Paxataとは? 3. そのデータ、予測モデリングに適した形になってますか?

Confidential. ©2019 DataRobot, Inc. – All rights reserved

開始ボタンをクリックして、モデリングを開始しよう

① モデリングモードを「クイック」にする

② 開始ボタンをクリックする

● 各自で交差検定スコアやインサイトの内容について見てみよう

Page 41: Paxata - storage.googleapis.com · 1. DataRobotとPaxataによるAI民主化のアプローチ 2. Paxataとは? 3. そのデータ、予測モデリングに適した形になってますか?

Confidential. ©2019 DataRobot, Inc. – All rights reserved

[応用] サブのテーブルを集約した後にマージする

● マージの仕方によって生成される特徴量が異なってくる。それによって精度等の結果も変わってくる。

ローン情報 株式相場データ(時系列)

Page 42: Paxata - storage.googleapis.com · 1. DataRobotとPaxataによるAI民主化のアプローチ 2. Paxataとは? 3. そのデータ、予測モデリングに適した形になってますか?

Confidential. ©2019 DataRobot, Inc. – All rights reserved

通常はSQLやpandasなどコーディングが必要となる

groupby, mean

merge

Page 43: Paxata - storage.googleapis.com · 1. DataRobotとPaxataによるAI民主化のアプローチ 2. Paxataとは? 3. そのデータ、予測モデリングに適した形になってますか?

Confidential. ©2019 DataRobot, Inc. – All rights reserved

集約とマージを簡単に行う

■ date をyear、month、day に分割 ■ year、month でclose をgroup byして average を算出

Page 44: Paxata - storage.googleapis.com · 1. DataRobotとPaxataによるAI民主化のアプローチ 2. Paxataとは? 3. そのデータ、予測モデリングに適した形になってますか?

Confidential. ©2019 DataRobot, Inc. – All rights reserved

集約とマージを簡単に行う

■ 作成した株式相場データとローン情報をマージ

Page 45: Paxata - storage.googleapis.com · 1. DataRobotとPaxataによるAI民主化のアプローチ 2. Paxataとは? 3. そのデータ、予測モデリングに適した形になってますか?

Confidential. ©2019 DataRobot, Inc. – All rights reserved

まとめ現在 AIの民主化

データサイエンティスト

ビジネス・アナリストデータ・アナリスト

ビジネスユーザー

データサイエンティスト

シチズン・データ・サイエンティスト

ビジネスユーザー

シチズン・データ・サイエンティストの指導、育成、支援、監査

● 生のデータは通常、直接機械学習に用いてビジネス価値を生み出せる状態にはなっていない。● 前処理が必要となり、通常は多くのコーディング作業を伴う。● コーディングレスの前処理と機械学習を実現することにより、ユーザーは自分の専門領域に専念しながら

データから価値を生み出すことができる。

Page 46: Paxata - storage.googleapis.com · 1. DataRobotとPaxataによるAI民主化のアプローチ 2. Paxataとは? 3. そのデータ、予測モデリングに適した形になってますか?

Confidential. ©2019 DataRobot, Inc. – All rights reserved

Thank you!