Upgrade to Pro
— share decks privately, control downloads, hide ads and more …
Speaker Deck
Features
Speaker Deck
PRO
Sign in
Sign up for free
Search
Search
SageMakerDataWranglerでノンコードデータ前処理を試してみた
Search
holywater044
May 31, 2021
Technology
0
48
SageMakerDataWranglerでノンコードデータ前処理を試してみた
JAWS-UG名古屋202105登壇資料
https://jawsug-nagoya.doorkeeper.jp/events/121870
holywater044
May 31, 2021
Tweet
Share
More Decks by holywater044
See All by holywater044
第4回Snowflake中部 User Group 〜DWの設計や運用、みんなどうしてるの? Snowflakeで迷うことディスカッション会~
holywater044
0
140
第3回 Snowflake 中部ユーザ会 - dbt x Snowflake ハンズオン - 状態イラスト抜粋版
holywater044
0
79
Tableau & Snowflake ハンズオン ~ データコラボレーションをぷち体験しよう ~
holywater044
1
300
Prepの集計機能についておさらいしてみる
holywater044
1
110
機械学習の勉強で出会った印象的なワード
holywater044
1
34
時系列予測サービス Amazon Forecast の初学レポート
holywater044
0
36
Other Decks in Technology
See All in Technology
[mercari GEARS 2025] Keynote
mercari
PRO
1
310
"おまじない"はもう卒業! デバッガで探るSpring Bootの裏側と「学び方」の学び方
takeuchi_132917
0
180
AI時代の戦略的アーキテクチャ 〜Adaptable AI をアーキテクチャで実現する〜 / Enabling Adaptable AI Through Strategic Architecture
bitkey
PRO
7
1.8k
ABEJA FIRST GUIDE for Software Engineers
abeja
0
3.2k
Moto: Latent Motion Token as the Bridging Language for Learning Robot Manipulation from Videos
peisuke
0
150
AIと自動化がもたらす業務効率化の実例: 反社チェック等の調査・業務プロセス自動化
enpipi
0
660
Service Monitoring Platformについて
lycorptech_jp
PRO
0
300
Lazy Constant - finalフィールドの遅延初期化
skrb
0
230
AIエージェントによるエンタープライズ向けスライド検索!
shibuiwilliam
4
570
現地速報!Microsoft Ignite 2025 M365 Copilotアップデートレポート
kasada
1
1.2k
Dart and Flutter MCP serverで実現する AI駆動E2Eテスト整備と自動操作
yukisakai1225
0
570
ステートレスなLLMでステートフルなAI agentを作る - YAPC::Fukuoka 2025
gfx
8
1.3k
Featured
See All Featured
Scaling GitHub
holman
463
140k
Creating an realtime collaboration tool: Agile Flush - .NET Oxford
marcduiker
34
2.3k
Docker and Python
trallard
46
3.7k
Build your cross-platform service in a week with App Engine
jlugia
234
18k
Faster Mobile Websites
deanohume
310
31k
Automating Front-end Workflow
addyosmani
1371
200k
RailsConf & Balkan Ruby 2019: The Past, Present, and Future of Rails at GitHub
eileencodes
140
34k
Principles of Awesome APIs and How to Build Them.
keavy
127
17k
Java REST API Framework Comparison - PWX 2021
mraible
34
9k
Being A Developer After 40
akosma
91
590k
YesSQL, Process and Tooling at Scale
rocio
174
15k
For a Future-Friendly Web
brad_frost
180
10k
Transcript
SageMaker DataWranglerで ノンコードデータ前処理を試してみた JAWS-UG名古屋 データ分析を学ぶ 2021-05-31 MON AKIHIRO HORIKAWA 1
自己紹介 名前: Akihiro Horikawa 所属: 総合エネルギー会社の技術研究所 仕事: 社内のデータ分析(主にアセスメントとマネージメント) 資格: ・JDLA
G検定 2018#2 ・データ分析実務スキル検定 PM級 コミュニティ:・機械学習名古屋 ・JAWS-UG名古屋 ・中部Tableauユーザ会 ・DataRobotコミュニティ 趣味: 子供、データサイエンス、ゲーム、漫画 2
はじめに 3 ⚫ SageMakerStudioに搭載されている、ノンコードデー タ前処理ツール?『SageMaker DataWrangler』 の操作デモになります ⚫ 本LTは、2021年5月31日時点の情報に基づきます ⚫
本LTの内容にAWS公式と相異があった場合、AWS 公式を正とさせていただきます ⚫ 本LTは登壇者個人の見解であり、誤りが含まれる可 能性があります
4 『 前処理が8割 』
前処理が8割 ⚫ 可視化やモデリング以前に、生データをまともに分析で きるようにするまでが大変 ⚫ データ分析界隈では耳にタコができるくらいよく聞く話 ⚫ ただ、「前処理」の指す範囲はっきりしない気もする データ収集、整形系の前処理、探索的データ分析(EDA)、 ML準備系の前処理、特徴量エンジニアリング、・・・
5
前処理が8割 ⚫ 『データ民主化』の流れで、ノンコード・GUIベースの データ前処理ツールも、存在感を増してる印象 ➢ Tableau PrepBuilder ➢ Alteryx ➢
DataRobot Prep(旧Paxata) etc ⚫ 学習コストの低さ、作業効率、可読性などにメリット ⚫ でも上記はそれなりのお値段するので、気軽に使える ツールないかなあと思っていた 6
7 『 データ ラングリング 』
データラングリング 8 ⚫ 「ラングリング」(wrangling)は、馬などを飼いならす、 の意 ⚫ カウボーイ(wrangler)が暴れ馬を乗りこなすように、 データを自在に操るための収集・処理・分析・利用の 総合テクニック 参考:オライリー
“Pythonではじめるデータラングリング” https://www.oreilly.co.jp/books/9784873117942/ ⚫ 某AIベンチャーさんが使っていたのではじめて聞いた
データラングリング 9 ⚫ AWSから『データラングリング』の名を冠したサービスが 出ました! ⚫ 興味あったけどなかなか試せずにいたので、今回データ 分析の会ということで、使ってみました! Amazon SageMaker
※ 個別のアイコンはないっぽい
10 試す内容
試す内容 11 ⚫ 普段使っているTableauPrepの基本機能を参考に 作ったお題リスト # 内容 TableauPrepの機能 1 読込み(S3のcsv)、型変更
読込み 2 サンプル、統計量、分布の確認 クリーニング 3 ユニオン ユニオン 4 ジョイン ジョイン 5 不要項目の削除 クリーニング 6 加工項目の追加 クリーニング 7 絞込み(フィルタ) クリーニング 8 集計 集計 9 ピボット ピボット 10 出力(S3のcsv) 出力
試す内容 12 ⚫ データ項目、ER ⚫ 前処理の概要 【売上データ : transaction_1, transaction_2】
tansaction_id item_id quantity date delete pivot1 pivot2 item_id item_name item_price 【商品マスタ : master】 1 1..n +ユニオン transaction_2 2000レコード ← master transaction_1 3000レコード ジョイン 項目削除 delete 項目追加 item_price*quantity 絞込み item_name 集計 date(月次) ピボット pivot1,2 transaction_all
13 操作デモ
操作デモ ⚫ 前置き • SageMakerStudioは起動済で、フローを新しく作るところ から始めます • データは、S3にアップロード済です 14
操作デモ ⚫ 補足 • 最後のファイル出力のnotebookの実行は、 SageMakerStudioのクイックスタートで作ったIAMでは権 限が足りず途中でエラーが出ました ⇒ IAMReadOnlyAccessポリシーをアタッチしました 15
16 まとめ
まとめ 17 ⚫ お題を試した結果 ただ、このお題は、SMDataWrnglerには不利だったように思う (次ページ) # 内容 ノンコードでできたか 1
読込み(S3のcsv)、型変更 できた 2 サンプル、統計量、分布の確認 できた 3 ユニオン できた 4 ジョイン できた 5 不要項目の削除 できた 6 加工項目の追加 できた 7 絞込み(フィルタ) わからなかった 8 集計 わからなかった 9 ピボット わからなかった 10 出力(S3のcsv) できた?
まとめ ⚫ 所感 • 今回のお題からは、TableauPrepの代わりは辛そう ➢ ノンコードでできないことがあった ➢ 出力のジョブに約6分弱もかかった(x4largeなのに) ➢
GUIのユーザビリティに差がある • 一方、お題には出てこない機械学習用の前処理機能がある これらは、TableauPrepには無いもの(現時点) ➢ カテゴリのダミー変数化(OneHotエンコーディングなど) ➢ 統計的手法による、外れ値処理・欠損値処理 ➢ 予測精度の味見 etc 18
まとめ ⚫ 所感 • おそらく、想定するユースケースが元々違うんだろう ➢ TableauPrep: ビジネスパーソンの可視化分析の前処理 ➢ SMDataWrangler:
エンジニアの機械学習の前処理 • SMDataWranglerは、機械学習データパイプラインへの組 み込みや、AWSの他サービスとの連携、といったシーンで強み が期待できるんじゃないか • そう考えると今回はお題がずれてた気がするし、機能もまだま だ把握しきれてないので、もう少し調べてみようかと思う 19
まとめ ⚫ おまけ • ところで、わからないこと調べてたら、以下が出てきた 20 AWS Glue DataBrew •
あれ? これもノンコードデータ前処理じゃね??
21 俺たちの戦いはこれからだ!!
22 ご清聴ありがとうございました。