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
Constrained K-means Clustering (クラスタサイズの制限をしたK-...
Search
Sponsored
·
SiteGround - Reliable hosting with speed, security, and support you can count on.
→
NearMeの技術発表資料です
PRO
July 12, 2024
Programming
490
1
Share
Embed
Copy iframe code
Copy JS code
Copy link
Start on current slide
Constrained K-means Clustering (クラスタサイズの制限をしたK-means法) を調べてみた
NearMeの技術発表資料です
PRO
July 12, 2024
More Decks by NearMeの技術発表資料です
See All by NearMeの技術発表資料です
Claude Code × git worktree で並列開発 (続き) -差分のサービスだけを併設する-
nearme_tech
PRO
1
50
Claude Code × git worktree で並列開発 — サブモジュール構成のリポジトリで成立させる —
nearme_tech
PRO
0
54
LLM + 強化学習
nearme_tech
PRO
0
31
PosthogのA/Bテスト機能の紹介
nearme_tech
PRO
1
44
AIフレンドリーなプロダクトに向けて
nearme_tech
PRO
2
65
初めてのLean言語
nearme_tech
PRO
0
100
Apache Airflow Workflow orchestration without turning cron into spaghetti
nearme_tech
PRO
2
37
実務で役立つ幾何学 ボロノイ図の基礎から グラフ・ネットワーク応用まで
nearme_tech
PRO
1
76
SQL/ID抽出タスクから考える 実践的なハルシネーション対策
nearme_tech
PRO
1
88
Other Decks in Programming
See All in Programming
Swift愛好会100回記念 第1回を振り返る
jollyjoester
0
120
「AI時代、配布するPythonコードをどう守るか: 難読化の実験と判断軸」 #PyconJP2026
pkshadeck
PRO
2
170
Foundry Localでエージェント開発
seosoft
0
150
LLMは4年分のCompose移行を再現できるのか?実プロダクト279件のXMLで探る自動化の境界線
makun
0
440
不幸な GC
chencmd
0
890
Webプラットフォームで議論されているセキュリティ課題 / Security issues being discussed on Web Platforms
petamoriken
0
150
標準パッケージに uuid が追加された 背景から見る Go らしい意思決定 / go_127_uuid_decision
convto
2
2.4k
AIと壁打ちしながら進めるコスト管理
fufuhu
2
1.9k
Vibes Containers 〜AIで変わるコンテナ設計と運用〜
tkikuc
2
500
業務時間外もAIに働いてもらう話
colorful12
3
10k
LL言語やWebフレームワークのPostgreSQL対応 〜DBの機能がユーザーに届くまで〜
kentaroutakeda
0
140
Hello, Hiroshima Geospatial Data! — Exploring DoboX with Python
ra0kley
0
180
Featured
See All Featured
Fight the Zombie Pattern Library - RWD Summit 2016
marcelosomers
234
17k
JAMstack: Web Apps at Ludicrous Speed - All Things Open 2022
reverentgeek
1
590
The Art of Programming - Codeland 2020
erikaheidi
57
14k
Exploring anti-patterns in Rails
aemeredith
3
500
Tips & Tricks on How to Get Your First Job In Tech
honzajavorek
1
720
GraphQLとの向き合い方2022年版
quramy
50
15k
More Than Pixels: Becoming A User Experience Designer
marktimemedia
3
520
Conquering PDFs: document understanding beyond plain text
inesmontani
PRO
4
3k
How to Get Subject Matter Experts Bought In and Actively Contributing to SEO & PR Initiatives.
livdayseo
0
190
First, design no harm
axbom
PRO
2
1.3k
Breaking role norms: Why Content Design is so much more than writing copy - Taylor Woolridge
uxyall
1
400
Abbi's Birthday
coloredviolet
3
9.8k
Transcript
0 Constrained K-means Clustering (クラスタサイズの制限をしたK-means法) を調べてみた 2024-07-12 第98回NearMe技術勉強会 Mio Takakuwa
1 背景 クラスタサイズ(1クラスターの内部の数)に 制限を加えたクラスタリングを行いたかった ⇨ “Constrained K-means Clustering” というものを見つけたので使ってみた&中身を調べてみた ※“Constrained
K-means Clustering”と検索するとたくさん出てくるが、 今回はクラスタサイズの制限ができるものを扱った 論文: https://www.researchgate.net/publication/2458036_Constrained_K-Means_Clustering (※この論文は要素がないクラスタを作らない工夫として、最小値の制限をしているが、 最大も同じように制限することでクラスタサイズの制限を行う)
2 K-means Clustering クラスタの平均的な位置を求めて、データをk個のクラスタに分類する手法 【アルゴリズム】 1. クラスタの中心を選ぶ 2. データをそれぞれ最も近い クラスタに割り当てる
3. クラスタ中心を更新する クラスタの中心が動かなくなるまで 繰り返す
3 K-means Clustering
4 K-means Clustering それぞれに 対応
5 K-means Clustering クラスタサイズが0のクラスタが できてしまう 【K-means Clusteringの問題点】
6 Constrained K-means Clustering (最小値のみの制約) それぞれに 対応
7 Constrained K-means Clustering (最小値のみの制約) この式を解きたい! ⇨最小費用フロー問題として解く
8 最小費用フロー問題 (Minimum Cost Flow Problem) A B D C
全体のコストを最小化しつつ、ノード Aからノード Dに10個届けたい 容量:5 コスト: 2 容量:8 コスト: 4 容量:5 コスト: 1 容量:10 コスト: 3 供給:10 需要:10 しかし、 A⇨Bは5個送れるが、コストは2かかる A⇨Cは8個送れるが、コストは4かかる…
9 Constrained K-means Clustering ・・・ データ クラスタ中心 ・・・ 1 1
1 1 (最小値のみの制約) 供給(−需要) 容量 コスト
10 Constrained K-means Clustering ・・・ データ クラスタ中心 ・・・ 1 1
1 1 人工需要 ノード データの 供給 クラスタ中心の 需要 (最小値のみの制約)
11 Constrained K-means Clustering ・・・ データ クラスタ中心 ・・・ 1 1
1 1 人工需要 ノード データの 供給 クラスタ中心の 需要 (最小値のみの制約) 供給(−需要) 容量 コスト
12 Constrained K-means Clustering ・・・ データ クラスタ中心 ・・・ 1 1
1 1 人工需要 ノード データの 供給 クラスタ中心の 需要 (最小値・最大値の制約) 供給(−需要) 容量 コスト
13 Constrained K-means Clustering https://colab.research.google.com/drive/1ytuPK2cS5I8RIv a5HQ7b9JzCYieNyEhF?usp=drive_link 【アルゴリズム】 1. クラスタの中心を選ぶ 2.
データをそれぞれ最も近い クラスタに割り当てる 3. クラスタ中心を更新 最小費用フロー問題に落としたい ⇨ノード、エッジ、コスト、供給量、容量の定義が必要
14 参考文献 P. S. Bradley K. P. Bennett A. Demiriz Microsoft
Research https://www.microsoft.com/en-us/research/wp-content/uploads/2016/02/tr-20 00-65.pdf https://qiita.com/kuga-qiita/items/5588d5469f3268b7fd39 https://fmarthoz.medium.com/k-means-algorithm-in-4-parts-6f44dc21d119 https://github.com/joshlk/k-means-constrained
15 Thank you