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
関東Kaggler会発表資料
Search
takoi
August 10, 2026
Technology
120
0
Share
Embed
Copy iframe code
Copy JS code
Copy link
Start on current slide
関東Kaggler会発表資料
takoi
August 10, 2026
Other Decks in Technology
See All in Technology
老害フォレンジッカーはAI羊の夢を見るか?
tadmaddad
0
290
【CEDEC2026】『Relink』を拡張せよ - 『GRANBLUE FANTASY: Relink - Endless Ragnarok』の開発速度と品質を守るCI運用
cygames
PRO
0
140
JavaScript 研修 (2026)
recruitengineers
PRO
1
450
Flutterをカメラで動かしたかった話
sony
1
130
바이브풀 라이프
arawn
0
100
つくって納得、つかって実感! 大規模言語モデルことはじめ ver2.0
recruitengineers
PRO
3
1.1k
AIエージェントを前提としたプラットフォーム エンジニアリング:GKEで作るAgent-Ready Golden Path
legalontechnologies
PRO
2
210
Software Supply Chain Attackからクラウド環境を守るためにできること
lhazy
2
210
【CEDEC2026】専門性の高いデフォルメチームが挑んだ人材育成戦略 〜Cygames Academiaの企画から実施まで〜
cygames
PRO
0
520
新しい SLO が良い感じにハマっている話
z63d
5
2.1k
組織にどうSREを根付かせるか?〜IVRyの場合〜
abnoumaru
0
330
ボトムアップ文化が強い組織で セキュリティをどう根付かせていくかの現在進行形の話 / Making Security Stick in a Bottom-Up Organization
yamaguchitk333
0
200
Featured
See All Featured
ReactJS: Keep Simple. Everything can be a component!
pedronauck
666
130k
The Cost Of JavaScript in 2023
addyosmani
55
10k
Visualization
eitanlees
152
17k
My Coaching Mixtape
mlcsv
0
200
Evolution of real-time – Irina Nazarova, EuRuKo, 2024
irinanazarova
9
1.5k
Utilizing Notion as your number one productivity tool
mfonobong
4
520
How to make the Groovebox
asonas
2
2.3k
SEO for Brand Visibility & Recognition
aleyda
0
4.7k
GraphQLとの向き合い方2022年版
quramy
50
15k
How to train your dragon (web standard)
notwaldorf
97
6.7k
Making the Leap to Tech Lead
cromwellryan
135
10k
End of SEO as We Know It (SMX Advanced Version)
ipullrank
3
4.3k
Transcript
第6回関東Kaggler会 生成AI時代のアイディアの一例 2026年8月7日 蛸井宏和
目次 1. 自己紹介 2. 生成AI時代のアイディアの一例 3. BirdCLEF+ 2025の解法紹介 4. まとめ
©Rist Inc. 2
自己紹介 • 氏名 : 蛸井宏和 • Kaggle : Competitions Grandmaster
• テーブルデータのコンペに参加することが多い ©Rist Inc. 3
生成AI時代のアイディアの一例 • 生成AIに聞けば、色々アイディアが出てくる ◦ アイディアが似たり寄ったりになりやすい • そことは重ならないアイディアでBirdCLEF+ 2025 ゴールド •
アイディアを出す一つの方向性として解法を紹介 ©Rist Inc. ◦ ただし、一般化して他で活かせるかは正直怪しい ◦ 「こういう考えもあるか」程度に聞いてください 4
BirdCLEF+ 2025の解法紹介 一見間違った処理をすることが精度改善に繋がり、その結果ゴールドメダル(6位)を獲得するこ とができた • 一見間違った処理がポイント ◦ おそらく生成AIでは提案してこない ◦ 間違った処理でも精度改善につながることがあるので、アイディアが尽きたらそこを試
してみるのもいいかもしれない(本日伝えたいこと) • ©Rist Inc. 間違った処理による影響を加味してさらなる精度改善に繋げた 5
BirdCLEF+ 2025の解法紹介 : 重要なポイント • Lossの計算方法を変えた ◦ 出力をsigmoidに通したあと、BCEWithLogitsLossでlossを計算 ◦ BCEWithLogitsLossは通常、sigmoidを通さずlogitsを入れる
▪ ◦ ©Rist Inc. そこをsigmoidを通してから入れた 一見すると間違った処理だが、精度改善につながった 6
BirdCLEF+ 2025の解法紹介 : コンペ概要 コロンビアのエル・シレンシオ自然保護区で録音された音声からどの種が鳴いているかを予測する コンペ • 予測する種は206種類で、鳥類以外も予測対象になっている ◦ •
• train data(labelあり)と test data の間にドメインシフトがある ◦ train data(labelあり)test data と違う場所で録音されている ◦ test data と同じ場所で録音された label なしの data は提供されている label が不均衡 ◦ ©Rist Inc. 鳥類 146 / 両生類 34 / 昆虫 17 / 哺乳類 9 最も少ない種だと2つしか学習データにない 7
BirdCLEF+ 2025の解法紹介 : データ • • • • train_audio /
*.ogg ◦ xeno-canto.org、iNaturalist、Colombian Sound Archive (CSA)より収集 ◦ ファイル数 : 28,564 ◦ 32kHz、長さはバラバラ train_soundscapes / *.ogg ◦ testと同じ場所で録音されたデータ ◦ ラベルなし ◦ ファイル数 : 9,726 ◦ 32kHz、1つのファイル 60s train.csv ◦ train_audioのメタデータ ◦ あるファイルでどの種が鳴いているかという情報がある(音声のどの部分で鳴いているかは不明) taxonomy.csv ◦ ©Rist Inc. 予測対象についてのデータ 8
BirdCLEF+ 2025の解法紹介 : 評価指標 / 推論環境 • • ©Rist Inc.
評価指標 : macro-averaged ROC-AUC ◦ それぞれの種でAUCを計算して、平均 ◦ 評価対象にない種は除外 推論環境 ◦ CPUのみ ◦ 推論時間 : 90分 9
BirdCLEF+ 2025の解法紹介 : ソリューション概要 • コンペの進め方 : Public Scoreを見て進める ◦
trainとtestでドメインシフトがあって、CVが参考にならないため • 前処理 : メルスペクトログラム • モデル : SED(Sound Event Detection) ©Rist Inc. ◦ 音声コンペでよく使われるモデル構成 ◦ 出力が2種類ある ▪ clipwise output : 入力した音声全体に対して1つの予測 ▪ framewise output : 音声を短い区間に区切って、区間ごとに予測 ◦ 学習時はこの2つの出力で loss を計算する ◦ 予測に使うのは、このうちどちらか 10
BirdCLEF+ 2025の解法紹介 : lossの計算方法 • clipwise output のみ sigmoid を通して出力範囲を
0〜1 にしたうえで BCEWithLogitsLoss に入れた • framewise output は logits のまま BCEWithLogitsLoss loss = 0.5 * BCEWithLogitsLoss()(sigmoid(clipwise_logit), y) # ← sigmoid が二重にかかる loss += 0.5 * BCEWithLogitsLoss()(framewise_logit, y) ©Rist Inc. # ← 通常どおり 11
BirdCLEF+ 2025の解法紹介 : loss の計算時に何が起きるか • sigmoid が2回かかるので、loss に入る値は 0.5〜0.731
に圧縮される ◦ • label 0 に対しても最小 0.5 なので、loss がゼロにならない ◦ ©Rist Inc. σ(0) = 0.5、σ(1) = 0.731 下げるには、出力をできるだけ 0.5 に近づける必要がある ▪ logit を大きく負に振る必要がある ▪ 出力が小さくなる 12
BirdCLEF+ 2025の解法紹介 : 出力の比較 今回のloss(sigmoid二重)の出力が小さくなっている train_soundscapes(testと同じ場所で録音されたデータ)の5sごとの最大値の比較 ©Rist Inc. 13
BirdCLEF+ 2025の解法紹介 : Scoreの比較 • labelつきのtrain dataのみで学習 • clipwise output(sigmoid二重)で評価
◦ • この時点ではclipwise outputの方がframewise outputよりscoreが良かった sigmoid 二重が正則化として働いた? 1 : 今回のloss Public Score Private Score (参考) CV 0.900 0.908 0.963 0.887 0.896 0.969 (sigmoid二重) 2 : 通常のloss ※ ©Rist Inc. それぞれでパラメータなどのチューニング済み 14
BirdCLEF+ 2025の解法紹介 : sigmoid二重を採用 • sigmoid二重は間違った処理かつCVは下がったが、コンペはPublic Scoreで判断すると 決めていたので、Public Scoreが良いsigmoid二重を採用 •
©Rist Inc. 2sub目は一応通常lossでも準備はしていた 15
BirdCLEF+ 2025の解法紹介 : Pseudo Labelの活用 • label がついていない soundscape に
pseudo label を付与して学習に利用 • labelありのtrain dataで学習 → pseudo label 付与 → labelありtrain data + pseudo labelで学習 → pseudo label付与 → labelありtrain data + pseudo labelのサイクルを 回していく ©Rist Inc. 16
BirdCLEF+ 2025の解法紹介 : Pseudo Labelの活用 • Pseudo label 1周目はclipwise output(sigmoid二重)を利用
• labelありtrain data + pseudo labelでモデルを学習してPublic Scoreは改善 • Pseudo label 2周目にclipwise output(sigmoid二重)を利用すると、Public Score は改善しなくなった ©Rist Inc. 17
BirdCLEF+ 2025の解法紹介 : Pseudo Labelの問題点 Pseudo label2周目以降、clipwise output(sigmoid二重)の出力が小さくなりすぎて、pseudo labelとして機能しづらくなったと考えた train_soundscapes(testと同じ場所で録音されたデータ)の5sごとの
clipwise outputのpseudo label1周目と2周目の比較 ©Rist Inc. 18
BirdCLEF+ 2025の解法紹介 : Pseudo Labelの問題点への対応 Pseudo label2周目以降はclipwise output(sigmoid二重)からframewise outputに切り替えた train_soundscapes(testと同じ場所で録音されたデータ)の5sごとの
clipwise outputとframewise outputのpseudo label2周目の最大値の比較 ©Rist Inc. 19
BirdCLEF+ 2025の解法紹介 : Pseudo Labelの活用 • Pseudo label2周目以降framewise outputに切り替えることにより、pseudo label3周目
までPublic Scoreが伸び続けた ◦ • ©Rist Inc. 間違った処理による影響を加味してさらなる精度改善に繋げた点 最終結果 : 6位 20
まとめ • 間違った処理でも精度改善につながることがある ◦ アイディアが尽きたら、そこを試してみるのもいいかもしれない • 間違った処理による影響が出ることもあるので、その考慮が必要 • ただし再現性は怪しいので、参考程度に ©Rist
Inc. 21