SlideShare uma empresa Scribd logo
1 de 22
Baixar para ler offline
前処理に重点おいた
Padocデータ分析環境
2023/03/20 mabo
1
自己紹介と目次
1. 目的
2. データサイエンスの目的
3. データサイエンスの問題
4. データサイエンスの解決方法
5. Padoc分析環境の考え方
6. Padocの統合分析環境
7. Padocの機械学習モデル
8. Padocのイントール
9. Padocの事例
2
• 自己紹介
中井眞人
20年以上データサイエンティストとして働く
• 実績
1.債務者の与信モデル
2.倒産率の推移予測
3.全社的ポートフォリオ分析
4.営業員の不正検知
5.最適人員配置
6.自然言語での要因分析
• 研究
1.VAEの潜在空間上の強化学習
1.目的
3
• データサイエンス工程での前処理が労力の70~80%占る
• 主に前処理用のツールとしてPadocを提供
Padoc: Process and Analysis Data Optimization Circumstance
データサイエンスの目的(1)
• 今や生成モデルの時代・・だが
4
Mt.Fuji in style Gogh Whale in the sky
BERTのChatBot(自作) 黒橋研のLLMを使用(参照先:https://note.com/npaka/n/na8721fdc3e24)
cat to dog
Stable Diffusion(自作:参照先 https://note.com/npaka/n/nd2b03d13a36a)
データサイエンスの目的(2)
5
司馬遷 史記の編纂 徳川吉宗 小石川薬草園
①集める→②理解する→③選択する→④活かす→⑤評価する
• データサイエンスの手法は古代から存在した
• 多くの知見を集めて問題解決する手法
2.データサイエンスの目的(3)
6
データサイエンスの目的
• 課題に関する集めたデータから発生メカニズムを推測し
解決方法をデータを使って実証的に示す
• 機械学習は前処理で推測された発生メカニズムの
モデル化に過ぎない
機械学習のモデル(例)
• 判別分析
• 合理的配置や配分
• 需要予測
• 不正(異常)検知
• 推薦(穴埋)問題
データサイエンス
機械学習
データサイエンスの目的(4)
• 発想の転換
• 課題の発生メカニズムが不明の場合
主役をモデル→前処理へ変更する
7
課題
把握
モデル
構築
モデル評
価保守
課題データの
収集と理解
感応分析で
データを選択
変数
加工
前処理 モデル 後処理
課題
把握
モデル
構築
モデル評
価保守
データの収集と
理解
業務知識で
要因を推測
要因の
兆候デー
タを選択
課題の発生メカニズム(要因)の推測 モデル化 評価
DS:①集める→②理解する→③選択する→④活かす→⑤評価する
3.データサイエンスの問題(1)
• 前処理は発生メカニズムを推測する工程なので70~80%を占める
• 発生メカニズムは業務知識で選択したデータと課題との感応分析
で推測する
8
課題
把握
モデル
構築
モデル評
価保守
データの収集
と理解
業務知識で
要因を推測
要因の
兆候データ
を選択
課題の発生メカニズム(要因)の推測 モデル化 評価
3.データサイエンスの問題(2)
• 業務データからは課題は一般に見えない
• 業務データは殆ど入出金・在庫の管理データで正確だが課題は見えない
• User側のデータ管理者から複雑な業務データの構造を理解
• User側の業務従事者から業務に沿って業務データの内容を理解
• DS側とUser側は共同で発生メカニズムの仮説を立てる
9
User データ管理者 User 業務従事者
DS側
3.データサイエンスの問題(3)
10
• 業務データから発生メカニズムを示すデータの作成が容易でない
1. 課題の発生メカニズムによってデータを分割する必要がある
2. 過去のデータが無い (解約先や破綻先は削除されている場合が多い)
3. 業務データが複雑過ぎて内容が理解できない(下記参照)
1営業員 2支店 3顧客
4契約 5商品 6売上
7納品 8遅延 9入出金
10取消訂正 11日報
12営業履歴 13信用情報
営業データ(例)
別セグメント
発生要因が異なる
3.データサイエンスの問題(4)
• 作成モデルが将来の運用データに適合するか不明
モデル作成データでの精度は意味がない。運用後の精度が大事
• 運用データが変化する可能性がある
• 機械学習モデルの導入自体で運用データが変わる
• 業務の拡大やビジネスの見直しにより運用データが変化する
11
4.データサイエンスの解決方法
• 課題の発生メカニズムの推測にはDS側とUser側の協調が必要
• 将来の運用も考えるとUser側によるモデル調整が必要
• 現在はDS側とUser側で協調できる適切な分析環境が無い
• モデル作成言語PythonはUser側の理解し難い
• SQLでは分析が出来ない
12
DS側
User側
DS側とUser側が協調できる分析環境をPadocが提供
5.Padoc分析環境の考え方
• Padocはテーブル型データを扱う
• テーブル型データの編集や結合は
コマンドで行う
• 課題と感応の強さの順にデータ表示
できる
• 分析結果をUserとで確認できる
• コマンドの並びでUserが理解と確認
ができる
13
get data1; //テーブル型データの読込
wrk = undate(today) - undate(birthday);
age = wrk/365.25;
//年齢の計算 データ編集コマンド
put data2;
get data2; //別のデータの読込
merge data2 by id //マージコマンド
put data3;
get data3;
cross target by age x1 x2 x3 x4 x5;
get data3;
reg target by x1-5 //分析コマンド
anaput out1;
Get out1
plot scat x1 x2 x3 by target;
6.PADOCの統合分析環境(操作)
• コントロール画面①
• コマンドの編集②
• 反転部分だけ実行可能
• 実行結果のログの表示③
• 実行結果のテーブル表示④
• 分析結果のPlot表示⑤
①
②
③
④ ⑤
実行アイコン
データ編集と分析の統合環境
6.PADOCの統合分析環境(機械学習モデル)
Cox Hazard
3Dの重回帰結果
SVM
ガウス過程回帰
カーネル回帰
最短経路問題
ベイジアンネット
共分散構造分析(SEM)
ガウス構造(GGM)
8.PadocのInstall
16
https://padoc.info/
download先のDirにある
readMe.htmlに従って
インストールする
instructYou.htmlは分析
事例の実行方法を示す
7.Padocの記述例・人種問題の分析(1)
home pgm; //dataはprogramと同じDirにある
get banker.csv@;
/* 人種・職種の整数→コード型に変更*/
attr name type/
minority:code
jobcat:code
;
put bank;
get bank;
/* 人種・職種別に給与の平均を計算 */
sumup salnow by minority jobcat;
anaput work;
get work;
/* 職種-人種ラベル作成 */
jobnm=stradd(stradd(jobcat,”-”),minority);
put work1;
get work1;
/* 職種・人種別の平均給与Plot */
plot bar salnow by jobnm/
yrange:[0:40000]
;
17
米国の銀行の人種と職種
に給与の差があるか調査
職種 1:行員 2:新人行員
3:警備 4:技術者 5:管理職
6:MBA 7:特殊
職種1,2の白人は給与
が僅に高いが、職種4,5
の白人は逆に低い
7.Padocの記述例・ローンのリスク層を計算(2-1)
18
ローン情報
顧客コード(複数)
個人コード
サマリー
顧客コード
個人コード
summary
個人データ
個人コード
家族コード
家族データ
家族コード
統合情報
顧客コード
個人コード
家族コード
ローン破綻情報
分析データ
金額 返済
年齢 年収
破綻
変数加工
merge merge
感応度
分析
変数選択
判別ツリー
省略
7.Padocの記述・例ローンのリスク層の分析(2-2)
/* 契約情報読込 */
get loan3ContR.csv@;
select personid contract mon amount payrate bonus;
paym=amount/mon+amount*payrate/100/12;
Put cont0;
/* 個人情報を顧客IDでマージ */
Get cont0;
merge loan3PersonR.csv@ by personid/
method=and11
;
put togo0;
/* 家族情報を世帯IDでマージ */
get togo0;
merge loan3Home.csv@ by homeid/
method=and11
;
put togo1;
/* 延滞情報を契約IDでマージ */
get togo1;
merge loan3Bank.csv@ by personid/
method=and11
;
put loan3togo@;
19
/* 変数追加 */
get loan3togo@;
old=ifix((undate(20180101)-undate(birth))/365.25); //年齢
workold=old-workspan; //就業年齢
if(bonus > 0) bonflg=“1”; //賞与有無
else bonflg="0";
ltoi = amount/income; //借金/収入
ptoi = paym/income; //金利/収入
put loan3ana@;
/* 破綻先(def=bad) と他の変数のCross 感応度解析 */
get loan3ana@;
cross def by counts amount sex work job
income workspan marrige family home
homespan openen old workold bonflg paym
ltoi ptoi;
/* 破綻先(def=bad)のTree分析 */
get loan3ana@;
tree def by counts amount sex work job
income workspan marrige family home
homespan openen old workold bonflg paym
ltoi ptoi/
target/bad,good
terminal=100 /* 末端ノード数 */
test=50 /* 試験用のデータの率 50%*/
;
anaput anaout;
/* 試験データの精度曲線 */
get anaout;
plot line distincRate by countRate;
ローンの申し込客のリスク層の分析
契約情報・個人情報・家族情報・延滞情報
を連結して判別ツリーでリスク層を検出
7.Padocの記述例・ローンのリスク層の分析(2-3)
20
破綻先と個人情報とのCross感応度 判別ツリーによるリスク層の検出
7.Padocの記述例・ローンの破綻率を計算(2-4)
21
get train3;
/* ロジット回帰 */
logit deflg by bonflg work_dmy1 work_dmy3-4 home_dmy1-8
marrige_dmy1 ltov family income homespan openen
old workspan ptov;
anaput anaout;
//work_dmy2 は発散する
get anaout;
/* ロジット回帰結果 パレート図の表示 */
plot line logitRate by countRate;
get test3;
/* 試験データのロジットモデル適用 */
score deflg by bonflg work_dmy1 work_dmy3-4 home_dmy1-8
marrige_dmy1 ltov family income homespan openen
old workspan ptov;
anaput test3out;
get test3out;
/* 試験データでのパレート図の表示 */
plot line logitRate by countRate;
ローンの申し込客の破綻率のロジット回帰
個人・契約・家族・延滞・を連結したデータ
でロジット回帰で破綻率を計算
/* 連結データの読込 */
get loan3ana@;
/* カテゴリのOneHot化 */
onehot work home marrige;
put anadata0;
get anadata0;
select def bonflg work_dmy1-5 home_dmy1-8 marrige_dmy1
workold ltov family old income homespan openen workspan
ltov ptov;
put anadata1;
get anadata1;
/* 目的変数の指標化 */
if(def == "good") deflg=0;
else deflg=1;
put anadata2;
get anadata2;
/* 学習データ2000件と試験データを分離4000件 */
rnd=random;
sort rnd;
if(# <= 2000) outrec train3; //学習データ
else outrec test3; //試験データ
7.Padocの記述例・ローンの破綻率を計算(2-4)
結果
22
ロジット回帰結果
学習データでのパレート図
試験データでのパレート図

Mais conteúdo relacionado

Mais de Masato Nakai

Deep genenergyprobdoc
Deep genenergyprobdocDeep genenergyprobdoc
Deep genenergyprobdocMasato Nakai
 
機械学習の全般について 4
機械学習の全般について 4機械学習の全般について 4
機械学習の全般について 4Masato Nakai
 
Word2vecの理論背景
Word2vecの理論背景Word2vecの理論背景
Word2vecの理論背景Masato Nakai
 
粒子フィルターによる自動運転
粒子フィルターによる自動運転粒子フィルターによる自動運転
粒子フィルターによる自動運転Masato Nakai
 
Icpによる原画像推定
Icpによる原画像推定Icpによる原画像推定
Icpによる原画像推定Masato Nakai
 
Siftによる特徴点抽出
Siftによる特徴点抽出Siftによる特徴点抽出
Siftによる特徴点抽出Masato Nakai
 
End to end training with deep visiomotor
End to end training with deep visiomotorEnd to end training with deep visiomotor
End to end training with deep visiomotorMasato Nakai
 
機械学習の全般について
機械学習の全般について機械学習の全般について
機械学習の全般についてMasato Nakai
 
強化学習の汎用化Ai
強化学習の汎用化Ai強化学習の汎用化Ai
強化学習の汎用化AiMasato Nakai
 
強化学習の汎用化Ros
強化学習の汎用化Ros強化学習の汎用化Ros
強化学習の汎用化RosMasato Nakai
 
強化学習の汎用化Sarsa
強化学習の汎用化Sarsa強化学習の汎用化Sarsa
強化学習の汎用化SarsaMasato Nakai
 

Mais de Masato Nakai (20)

Semi vae memo (2)
Semi vae memo (2)Semi vae memo (2)
Semi vae memo (2)
 
Open posedoc
Open posedocOpen posedoc
Open posedoc
 
Dr.raios papers
Dr.raios papersDr.raios papers
Dr.raios papers
 
Deep genenergyprobdoc
Deep genenergyprobdocDeep genenergyprobdoc
Deep genenergyprobdoc
 
Irs gan doc
Irs gan docIrs gan doc
Irs gan doc
 
Semi vae memo (1)
Semi vae memo (1)Semi vae memo (1)
Semi vae memo (1)
 
Ai論文サイト
Ai論文サイトAi論文サイト
Ai論文サイト
 
Vae gan nlp
Vae gan nlpVae gan nlp
Vae gan nlp
 
機械学習の全般について 4
機械学習の全般について 4機械学習の全般について 4
機械学習の全般について 4
 
Word2vecの理論背景
Word2vecの理論背景Word2vecの理論背景
Word2vecの理論背景
 
粒子フィルターによる自動運転
粒子フィルターによる自動運転粒子フィルターによる自動運転
粒子フィルターによる自動運転
 
Icpによる原画像推定
Icpによる原画像推定Icpによる原画像推定
Icpによる原画像推定
 
Siftによる特徴点抽出
Siftによる特徴点抽出Siftによる特徴点抽出
Siftによる特徴点抽出
 
End to end training with deep visiomotor
End to end training with deep visiomotorEnd to end training with deep visiomotor
End to end training with deep visiomotor
 
機械学習の全般について
機械学習の全般について機械学習の全般について
機械学習の全般について
 
強化学習の汎用化Ai
強化学習の汎用化Ai強化学習の汎用化Ai
強化学習の汎用化Ai
 
強化学習の汎用化Ros
強化学習の汎用化Ros強化学習の汎用化Ros
強化学習の汎用化Ros
 
Alpha gor 2
Alpha gor 2Alpha gor 2
Alpha gor 2
 
強化学習の汎用化Sarsa
強化学習の汎用化Sarsa強化学習の汎用化Sarsa
強化学習の汎用化Sarsa
 
Bayesian net16409
Bayesian net16409Bayesian net16409
Bayesian net16409
 

Padoc_presen4R.pdf