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
Kaggleの歩き方-関西Kaggler会に参加してみて-
Search
wakama1994
July 26, 2024
Programming
690
2
Share
Embed
Copy iframe code
Copy JS code
Copy link
Start on current slide
Kaggleの歩き方-関西Kaggler会に参加してみて-
primeNumber社内勉強会での発表資料
wakama1994
July 26, 2024
More Decks by wakama1994
See All by wakama1994
Rで始めるML・LLM活用入門
wakamatsu_takumu
0
270
ド文系だった私が、 KaggleのNCAAコンペでソロ金取れるまで
wakamatsu_takumu
3
2.8k
「実践DataOps」書籍紹介
wakamatsu_takumu
0
72
BQで天気基盤をつくって、役立つ情報を可視化してみた!
wakamatsu_takumu
4
1.3k
「データモデリング実践入門」は20年経っても色あせない
wakamatsu_takumu
4
1.5k
いろんな可視化ツールあるけどggplotて何がいいの?- 複数ツールで比較してみた!-
wakamatsu_takumu
1
1.6k
文系出身でも「アルゴリズム×数学」はスッキリ理解できた!話
wakamatsu_takumu
0
650
ChatGPTにどんなときRを使えばいいか聞いてみた!
wakamatsu_takumu
0
750
A/Bテスト実践ガイド ~真のデータドリブンへ至る信用できる実験とは~
wakamatsu_takumu
1
1.9k
Other Decks in Programming
See All in Programming
jQueryをバージョンアップする前に使いたいjQuery Migrate
matsuo_atsushi
0
190
Java × distroless で 軽量なコンテナイメージを / Java on Distroless
contour_gara
0
500
Datadog × OpenTelemetry 入門と実践のあいだ
kn_to_maxpno
1
150
Spec Driven Development | AI Summit Lisbon
danielsogl
PRO
0
150
Lemonade + Foundry Toolkit でお手軽アプリ開発
seosoft
1
310
Copilot CLI の継戦能力を高める コンテキスト管理
nozomutu
1
1.2k
RTSPクライアントを自作してみた話
simotin13
0
490
権限チェックの一貫性を型で守る TypeScript による多層防御
mnch
4
1.1k
Language Server 使ってる? 〜VSCode と Zed の場合〜 / Are you using a Language Server? ~For VS Code and Zed~
handlename
0
760
3Dシーンの圧縮
fadis
1
650
SPMマルチモジュールで テストカバレッジを取得する技法
yosshi4486
0
140
Signal Forms: Beyond the Basics @ngBaguette 2026 in Paris
manfredsteyer
PRO
0
230
Featured
See All Featured
Applied NLP in the Age of Generative AI
inesmontani
PRO
4
2.3k
Mobile First: as difficult as doing things right
swwweet
225
10k
Designing Dashboards & Data Visualisations in Web Apps
destraynor
231
55k
The Curse of the Amulet
leimatthew05
1
13k
Exploring the relationship between traditional SERPs and Gen AI search
raygrieselhuber
PRO
2
4k
The Director’s Chair: Orchestrating AI for Truly Effective Learning
tmiket
1
190
16th Malabo Montpellier Forum Presentation
akademiya2063
PRO
0
140
SEOcharity - Dark patterns in SEO and UX: How to avoid them and build a more ethical web
sarafernandez
0
200
The innovator’s Mindset - Leading Through an Era of Exponential Change - McGill University 2025
jdejongh
PRO
1
190
How to audit for AI Accessibility on your Front & Back End
davetheseo
0
400
Discover your Explorer Soul
emna__ayadi
2
1.1k
Bioeconomy Workshop: Dr. Julius Ecuru, Opportunities for a Bioeconomy in West Africa
akademiya2063
PRO
1
130
Transcript
Kaggleの歩き方 -関西Kaggler会に参加してみて- ソリューション本部 Takumu Wakamatsu
AGENDA 自己紹介 そもそもkaggleって? Competition(コンペ)に参加してみよう! コンペだけじゃない、kaggleの魅力 関西kaggler会に参加してみて まとめ 01. 02. 03.
04. 05. 06.
©primeNumber Inc. 3 名前: 若松 拓夢 年齢: 大谷世代 入社時期: 2023年10月
本業: そりゅーしょん 副業:slackスタンプ職人 自己紹介 ※ミライ会議の自己紹介で誕生しました笑 コレクション ※trocco5周年のノリです笑
©primeNumber Inc. みなさんの中で TVゲームをする方いますか? 4
©primeNumber Inc. 5 TVゲームていろんな楽しみ方ありますよね!
©primeNumber Inc. 6 実はkaggleも 色んな楽しみ方があります!!
©primeNumber Inc. 7 多くの人の誤解 どうせやったところで 業務に生かすことできないんでしょ! 徹夜で高いスコア 出さないとダメなんでしょ! 分析初心者が始めるのって ハードル凄い高いんでしょ!
そんなことは 全くない! コンペで 高いスコア 出すことが 目立ってる
©primeNumber Inc. 8 今日の発表 • kaggleのコンペは誰でも気軽に始められます! • コンペ以外の魅力も沢山あります! • 関西kaggler会のようにコミュニティも充実してます!
kaggleってそもそも何? POINT
©primeNumber Inc. 10 まず呼び方ですが、Kaggleと書いて「カグル」と読みます。日本でも最近は定着してきましたが、Kaggleに参加している方を「カ グラー(Kaggler)」とも呼びます。 Kaggleですが、本サイトへ行くと一番上に書かれていますが「The Home of Data Science
& Machine Learning」 (データサイエンスと機械学習の家)と題されている通り、世界中の機械学習・データサイエンスに携わっている約 40万人の 方が集まるコミニティーです。 Kaggleでは、企業や政府などの組織とデータ分析のプロであるデータサイエンティスト/機械学習エンジニアを繋げるプラット フォームとなっています。単純なマッチングではなく、Kaggleの最大の目玉とも言える「 Competetion(コンペ)」が Kaggleの特徴の一つです。 kaggleの概要 2017.11.22「Kaggleとは?機械学習初心者が知っておくべき3つの使い方」より引用 ※2023年現在の登録者は1400万人
©primeNumber Inc. 11 kaggleの構成要素 • Competitions →予測した結果のスコアを競う • Dataset →主に参加者がコンペで使ったデータが保管
• Model →kaggle内で実行できるモデル • Code →主に参加者が作った解析コードの保管場所 • Discussion →コンペにまつわる議論や教え合いの場 • Learn →主に初学者を対象とした学習コンテンツ Competitions(コンペ)が最も盛り上がってる
Compedition(コンペ)に参加してみよう! POINT
©primeNumber Inc. 13 アカウントを作ろう! ※誰でも始められます! (年齢、資格、学歴、データサイエンスの経験は不問) リンク先 https://www.kaggle.com/
©primeNumber Inc. 14 • Active compeditionから現在やっ ているコンペを見つける ◦ Medal(後述)有/無 ◦
賞金の有/無 • 参加方法 ◦ SOLO: 一人参加 ◦ Teams: 五人まで ▪ チームを組むのは一定 期間まで可能 コンペを見つけて参加してみよう! https://www.kaggle.com/competitions
©primeNumber Inc. 15 submit(結果の提出方法).... • テーブルコンペ ◦ csvで予測結果を提出 ◦ 初心者コンペに多い
• codeコンペ ◦ 解析したcodeを提出 ◦ 解析処理時間(Ex: 9h) が設けられる場合も ◦ 一般的になりつつある コンペのsubmit(結果提出)とレベル感 レベル感 https://atmarkit.itmedia.co.jp/ait/articles/2108/30/news033.html
©primeNumber Inc. 16 表形式データ • 回帰 ◦ 【Started】House Prices
- Advanced Regression Techniques: 住宅価格の予測 • 二値分類 ◦ 【Started】Titanic - Machine Learning from Disaster: 生存有無の予測。Kaggleで最初にやってみるコンペ ◦ 【+Featured】Home Credit Default Risk: 貸し倒れの予測 • 多クラス分類 ◦ 【Playground】Tabular Playground Series - Jun 2021: eコマース製品のカテゴリの予測 • 不正検知(=二値分類。※異常検知の直近のコンテストはなかった) ◦ 【Research】IEEE-CIS Fraud Detection: 顧客取引からの不正の検出 ◦ • 時系列(=回帰の一種) ◦ 【Featured】Recruit Restaurant Visitor Forecasting: 未来日付におけるレストラン訪問者数の予測 ◦ 【Research】Web Traffic Time Series Forecasting: 未来におけるWikipediaページトラフィックの予測 • レコメンデーション ◦ 【Featured】Santander Product Recommendation: 来月に使用する製品の予測(=推奨) ◦ 【Featured】Elo Merchant Category Recommendation: 顧客購買行動に対するロイヤルティ度の予測 コンペの例: 構造化データ https://atmarkit.itmedia.co.jp/ait/articles/2108/30/news033.html
©primeNumber Inc. 17 画像/動画 • 認識 ◦ 【Started】Digit Recognizer:
MNIST多クラス分類 • 物体検知/追跡 ◦ 【Started】Facial Keypoints Detection: 顔画像上のキーポイント位置の検出 音声 • 認識 ◦ 【Research】Rainforest Connection Species Audio Detection: 熱帯でのサウンドスケープから鳥やカエルの種 の検出 テキスト/言語 • 分類 ◦ 【Started】Natural Language Processing with Disaster Tweets: 災害かそうでないかの識別 • エンティティ抽出 ◦ 【InClass】Shopee Code League - Address Elements Extraction: テキストから住所部分の抽出 • 質問応答(=生成の一種) ◦ 【Featured】Google QUEST Q&A Labeling: 質問に対する回答の生成 ◦ • テキスト変換 (=生成の一種) ◦ 【Research】Text Normalization Challenge - English Language: 英語テキストを書き言葉から話し言葉に変換 コンペの例: 非構造化データ https://atmarkit.itmedia.co.jp/ait/articles/2108/30/news033.html
©primeNumber Inc. 18 初学者でも参加しやすいよう以下コンテンツがあります! • Discussion • Notebook submitまでのサポート
©primeNumber Inc. 19 Discussion は、コンペティションの内容に関わる議論をする掲示板 Discussion では以下のような内容が投稿 • 初心者からの質問 •
ルールに関する質問 • 知見や手法についての議論 • 予測精度に効く特徴量作成 • 論文などの2次情報 Discussionについて 引用元https://www.kikagaku.co.jp/kikagaku-blog/kaggle-competition/ https://www.kaggle.com/discussions?sort=hotness
©primeNumber Inc. 20 Code(Notebook)とは、kaggle上で回せる Jupyter Notebookのこと 環境構築は不要 • NewNotebookを押下すればOK コンペ中他の参加者の公開したNotebook見れる
Code(Notebook)について 引用元https://www.kikagaku.co.jp/kikagaku-blog/kaggle-competition/ https://www.kaggle.com/code
©primeNumber Inc. 21 例えばこんな感じ....!! Optiver: Nasdaqの株価予測コンペ とりあえずsubmitまでできるシンプルモデル https://www.kaggle.com/competitions/optiver-trading-at-the-close
©primeNumber Inc. 22 コンペの評価方法...統計学的な指標で競う場合が多い ex) MAE(絶対平均誤差), RMSE(二乗平均平方根誤差), F1 score, Log
Loss… • 最近LLM系のコンペも出てきてるので、この限りではない コンペの開催期間... • 2-3ヶ月かけて行われるものが一般的 • 中には、1週間で短期間で行われるものも ◦ この類のコンペだと、短期決戦でお題をどこまで理解できるかも焦点 評価方法とコンペ開催時期
©primeNumber Inc. 23 コンペの順位... Public Score: コンペ期間中に出る順位 (一定割合のデータのみで判断) Private Score:コンペが終わった時の順位
(全データで判断) • Private Scoreで順位が決まります • Publicからの順位の上がり下がりを shake up/down Public score/Private score 順位の決定
©primeNumber Inc. 24 上位入賞するとメダルがもらえます・・・!! メダルの獲得条件 https://atmarkit.itmedia.co.jp/ait/articles/2109/16/news019.html#l_di-01.gif
©primeNumber Inc. 25 メダルをたくさん取ると、称号がもらえます! 称号(Tier)について https://zenn.dev/koukyo1994/articles/7b8b06de0680f0
©primeNumber Inc. 26 称号持ってる人はこれだけいます! アメリカにつぐkaggle大国 https://research-p.com/column /1218 https://research-p.c om/column/1664 https://www.kaggle.com/rankings
©primeNumber Inc. 27 Knowledge Compedtition • 過去のMedalコンペを題材にしたもの ◦ 有名なのだとTitanic •
時間無制限でいつでもsubmitが可能 ◦ Medalコンペとくらべ、初心者にやりやすい Learn • Python や機械学習などについて学べる場 • Kaggle Notebook環境を使って練習問題を解く 初心者向けコンペや学習コンテンツも充実...!! https://www.kaggle.com/learn/time-series
©primeNumber Inc. 28 実はKaggleスタートではありませんでした • SIGNATEと呼ばれる日本のコンペプラットフォームが入口 ◦ SIGNATE上の初心者コンペ(AI Quest)で好成績を出せて楽しくなった ◦
外部の講座(データサイエンティスト養成講座)を修了し、コンペ勉強会に参加 • コンペ勉強会の仲間が、kaggleに参加していたので、自分もチームを組んで参加 ◦ 運よくメダルが取れたので、そこから楽しくなって今に至る ※詳細はQiitaの記事にもしてるので、気になる方は後で読んでください 参考: 私の始め方
コンペだけじゃない、kaggleの魅力 POINT
©primeNumber Inc. 30 Kaggle継続するにハイスコア必要!?? ハイスコア出すなんて、 データ分析普段やらないから 無理だ・・・ 称号持ってる人と 勝負するなんて結果 わかりきってるよ・・
いい精度出すには パラメータチューニング。。 美味しいですかそれ? 徹夜してハイスコアまで 出したいと思わないな・・・
©primeNumber Inc. 31 ハイスコア出せずkaggle続けても.....
©primeNumber Inc. 32 コンペ以外でもメダルや称号が...!! ※「Upvote(いいね)」ボタンがあり、voteがある数を超えるとメダルが付与 https://www.kaggle.com/progression https://zenn.dev/koukyo1994/articles/7b8b06de0680f0
©primeNumber Inc. 33 • ユーザーがデータセットを置いて、公開できる • OSSのように公開するためのプラットフォーム • データ制限は、private datasets全体で20GB上限
• どんなデータでもアップすることは可能 • Kaggle API for datasetsでアップロード・ダウン ロード可能 • コンペ以外のデータも沢山あります ◦ 自分でアップロードも可能 Datasetについて https://blog.hamayanhamayan.com/entry/2020/05/04/104943 https://www.kaggle.com/datasets
©primeNumber Inc. 34 データセットの形式 形式 例 備考 CSVs 「The Complete
Pokemon Dataset」 json SQLite 「European Soccer Database」 BigQuery 「USA Names Data 」 利用方法 • Big Query を使い始める • クエリを超えて: BigQuery API の探索 ユーザー 1 人あたり 30 日間でスキャンされ るデータの割り当ては 5 TB アーカイブ 「胸部X線画像(肺炎)」のデータ 検索方法や規約については、How to Use Kaggleを参照
©primeNumber Inc. 35 面白そうなデータセット https://www.kaggle.com/datasets/preethamgouda/campaign-data https://www.kaggle.com/datasets/downshift/water-quality-monitoring-dataset
©primeNumber Inc. 36 External Data コンペのルールでExternal Dataが認められている場合、収集したExternal DataをKaggle Datasetとして公開したものをDiscussionで
shareしておくと高い評価を貰いやすいようです。 コンペデータを加工 最近のコンペでは、入力に時間がかかる前処理を施す必要があることもあります。これらのコンペで時間がかかる前処理を施したあと のデータセットを新しいデータセットとして公開すると評価されやすいようです ライブラリ Internet使用不可のコンペではKaggleのdocker imageに入っていないライブラリを使いたい場合、Kaggle Datasetsにライブラリを加えて それをNotebookで読み込むようにするやり方が広く使われています。コンペにおいて重要なライブラリなどをDataset化して公開すると 多くの人から評価されるようです。 学習済み重み ハイスコアNotebookを重みも公開した状態で公開すると重みの方にもupvoteがつきやすくなると言うトリックがあります。金圏や銀圏上 位にそのまま入れてしまうようなNotebookの重みの公開は快く思わない人もいるようですが、コンペ終盤でない限り多くの人に歓迎され ています。 DataSetでのメダルの取りやすさ https://zenn.dev/koukyo1994/articles/7b8b06de0680f0
©primeNumber Inc. 37 Discussionでのメダルの取りやすさ 上位解法(割愛) 手元のスコア vs kaggle 上のスコア(割愛)
関連論文やリンクのまとめなど コンペ序盤に現れやすいスレッドで、金メダルを取りやすいです。過去の類似コンペを調べてその上位解法のリンクを貼ったり、関連研 究の論文をいくつか読んでリンクと簡単な説明をつけたり、と様々ですが、これをやるメリットとしてその過程で自分もいろいろ知見をた めることができる、というものがあります。 自分がドメイン知識がある分野の場合や、リサーチ力には自信がある場合にはこれで金メダルを狙うのはカタいと思います。 バグ報告 + 解決法など 最近はKernel Onlyのコンペが多いこともあり、submissionにまつわるエラーなどが出やすいという傾向があります。これらについての報 告やそれをどう解決したか、という情報は他の人にとっても非常にありがたいことが多く、高く評価されやすいです。 アイデア共有 言うまでもないことですが、重要なアイデアの共有はいずれのコンペにおいても歓迎されます。重要なアイデアなんだからあまり共有は したくないと思う方もいるかもしれませんが、実際のところそれを生かしてスコアをあげるチームはそれほど多くないことがほとんどで す。 https://zenn.dev/koukyo1994/articles/7b8b06de0680f0
©primeNumber Inc. 38 Notebookでのメダルの取りやすさ 初期のベースライン(スターターNotebook) スターターNotebookは先ほども述べたものですが、ここではコンペ初期のベースラインのようなものだと考えています。最初に出た ベースラインはupvoteをもらいやすい傾向にありますが、そうでなくても 1. コンペを進める上でいろいろカスタマイズしやすい
2. naiveなやり方ではたどり着けないくらいには高いスコアがちゃんと出る ようなNotebookはupvoteをもらいやすいです。(中略)手の速さに自信がある方はスターターの公開に全力を注ぐのも一つの楽しみ方 ではないでしょうか? ハイスコアNotebook(割愛) 知見共有系 例えば危険な特徴が混入していることを警告するNotebook、ライブラリの使い方やよく知られていないドメインのお作法の解説、デー タの偏りを指摘するNotebookなど、様々なものがあります。 https://zenn.dev/koukyo1994/articles/7b8b06de0680f0
©primeNumber Inc. 39 コンペも自分でも開けちゃいます! Kaggleコンペに当たっては以下の3要素があれば、開催できます! • コンペに出題する問題 :単一な変数を予測することが出来る設計にする必要があります。 • 予測に用いるデータ
:必要なデータをクリーニングして Kaggleの運営側に渡す必要があります。ま た、テーブルデータの場合は数万~数十万行ほどのデータがあったほうが良いとのことです。 • お金:企業開催コンペの一般的な費用は $85,000~$200,000程度のようです。Kaggleの運営側に開催準 備を手伝ってもらうことが多い場合や、賞金設定によって費用は上下します。なお、賞金設定は最小 $25,000とのことです。 ※コンペを開催することで、Dataset, Discussion,Notebookのメダル獲得や称号保持者もいます 引用元:Kaggleでコンペを開催する方法について調べてみた
©primeNumber Inc. 40 企業でのコンペ事例やコンペコンサルの会社まで...!! • Panasonicでは多数のkagglerが在籍し、活発に社 内コンペを実施 ◦ その他、リクルート,野村総研,NTTコミュニ ケーションズ,
ネットワンズシステムズ etc • Nishikaやatma cupなどの国内コンペプラット フォームではコンペコンサルも...! ◦ atma cupの中の人は個人でコンペ相談乗っ てくれるそうです... https://tech-ai.panasonic.com/jp/blog_page.html?id=20220805
©primeNumber Inc. 41 実は関西kaggler会でコンペ以外の 楽しみ方を教えてくれた方がいます....
©primeNumber Inc. 42 関西kaggler会のオープニングの発表で.... ※関西kaggler会の運営の方 普段はAuto MLのDataRobot に在籍されている 発表資料 https://speakerdeck.com/ryosukehata/guan-xi-kagglerhui-fa-biao-suraido
©primeNumber Inc. 43 Ryosuke Hataさんの発表
©primeNumber Inc. 44 Ryosuke Hataさんの発表
©primeNumber Inc. 45 Ryosuke Hataさんの発表
©primeNumber Inc. 46 Ryosuke Hataさんの発表
©primeNumber Inc. 47 Competition以外の称号保持者もこれだけいます...!!! https://zenn.dev/koukyo1994/articles/7b8b06de0680f0
©primeNumber Inc. 48 参考: 私のkaggleとの向き合い方の変化 発表 聞く前 SOLOでコンペのメダルとって凄いと言われたい! • メダルも取れたし、SOLOでExpert目指そう
◦ 業務をやりながらで一人だとキツすぎる.... ◦ 周りより優位なところ見せたい... 発表 聞いた後 どんなやり方でもいいから、kaggleと継続に関わりたい! • 今まで通り、チームで楽しくやっても良さそう • 社内の人とチーム組んで、バーカンで酒飲みながらやりたい....! • 社内コンペ開いてみんなで盛り上がりたいな....
関西kaggler会に参加してみて POINT
©primeNumber Inc. 50 そもそも関西kaggler会って? 関西Kaggler会は、有志によるKaggleコミュニティです。関西 を拠点に、企業や組織の垣根を超えて、データサイエンティ ストの交流を促すために活動をしています。 kaggleやデータ分析が好きで、関西在住の方、関西に縁が ある方、関西が好きな方が参加できます。 Kaggle
好きだからこそ、ルールは守り、プライベートシェアリ ングは行いません。 ※交流会は2021年から今回で9回目 https://kansaikaggler.studio.site/
©primeNumber Inc. 51 2024年7月5日(金) 12:45〜18:30 • 会場:大阪京橋 QUINTBRIDGE(NTT西日本の敷地内) • LT会 参加人数:125人(半分が関西以外から)
会場の雰囲気
©primeNumber Inc. 52 発表内容 一部・二部: kagglerの発表 三部: 企業スポンサー 会終了後 ノベルティ抽選会→懇親会
https://kansaikaggler.studio.site/posts/event_202407
©primeNumber Inc. 53 印象的だった発表① コンペ気軽に参加しようぜ〜
©primeNumber Inc. 54 印象的だった発表② データ分析コンペとの向き合い方(ver1振り返り)
©primeNumber Inc. 55 印象的だった発表② データ分析コンペとの向き合い方 (ver2の本筋)
©primeNumber Inc. 56 交流会に参加した全体的な感想 • 強強 kagglerでも業務や体調面から無理なくコンペをやる人が多い • kagglerは、意外にもデータサイエンスがベスプラだと思ってない ◦
ダッシュボード可視化が最高だと思うkaggle Masterの方も • メダルに固執しすぎず、改めていろんな頑張り方があると理解 ◦ チームで出る楽しさ、成長に重きをおいても良さそう....!! • コンペをpN社内でも開催したい....!! ◦ データセットの準備は大丈夫、問題設定の事例も沢山ある ◦ コンペを通じて、部署間の交流も生まれるし、分析周りの知見も溜まる
©primeNumber Inc. 57 みんなのkaggleアカウント 最後に記念撮影...!!!!
©primeNumber Inc. 58 1次会は50人以上が参加 2次会も何組かで別の場所に行きました笑 懇親会の雰囲気とノベルティについて
©primeNumber Inc. 59 おまけ: kaggleコミュニティは全国いっぱいあります...!! ※関西kaggler会は 次回11月8日に開催予定
まとめ POINT
©primeNumber Inc. 61 発表のまとめ • 一見するとコンペで黙々とハイスコアを出すしか楽しめなさそう.... • しかし、データに関する様々なコンテンツが充実 ◦ コンペ同様にメダルや称号もあります
◦ 自分でコンペを開いたり、コンペと関係ないデータも見れます! • コミュニティもいっぱいあるし、一緒にやる仲間もたくさんいます! kaggleはどんな楽しみ方をしても ※ kaggleもいいですが、私はGoogle Professional Data Engineerの再試を8/4(日)に受けます...データエンジニアもがんばります...