Tüm projeler
Ideatlas — Steam Evreni

Ideatlas — Steam Evreni

28 Ekim 20262 görüntülenme
PythonMachine LearningThree.jsVeri Görselleştirme

133 bin Steam oyununun açıklamalarını embedding'e çevirip 3B uzayda haritalayan interaktif evren. Oyunlar kümelere ayrılıyor; "boş uzay" bölgeleri henüz yapılmamış oyun fikirlerinin yerini gösteriyor.

Evreni gez: ideatlas.ahmetkadir.com →

Fikir

"Yapay zekâ yeni bir fikir üretemez" iddiasına verilen bir cevaptan yola çıktı: Steam'deki her oyunu açıklamasından ve etiketlerinden bir vektöre çevir, hepsini aynı uzaya koy, sonra kimsenin olmadığı yerlere bak. Bir oyun fikri yeniyse, mevcut oyunların arasındaki boşlukta durur.

Veri

Steam mağaza API'si ve SteamSpy üzerinden 195 bin uygulamanın tamamı tek tek çekildi (Kaggle yerine, eksiksiz olsun diye). Resumable bir crawler Coolify üzerinde dört gün çalıştı; DLC ve demo elendikten sonra açıklaması olan 133 bin yayınlanmış oyun kaldı.

Harita

Her oyunun adı, kısa açıklaması, etiketleri ve detay metni bir sentence-transformer modeliyle (bge-small) 384 boyutlu vektöre dönüştürüldü. UMAP ile 3 boyuta indirildi, HDBSCAN ile kümeler bulundu; her küme, içinde global ortalamaya göre en çok öne çıkan etiketlerle otomatik adlandırıldı. Her oyun için en yakın "ikiz" ve benzerlik yüzdeliği hesaplandı.

Boş uzay

Haritanın içinde rastgele noktalar örneklenip, çevresi oyunlarla dolu ama en yakın komşusu tipik mesafenin çok üstünde olan bölgeler işaretlendi. Bunlar "her tarafında oyun var, ortasında hiçbir şey yok" bölgeleri — yeni bir fikrin oturacağı yerler. Hiçbir oyuna benzemeyen "yalnızlar" ayrıca listeleniyor.

Site

133 bin nokta three.js ile tarayıcıda çiziliyor: additive blending ve bloom ile nebula görünümü, orbit kamera, hover ve tıklamayla oyun detayı, arama, küme etiketleri, boş uzay modu. Koordinatlar Int16'ya kuantize edilip binary olarak sunuluyor; tüm evren birkaç MB. Backend yok, nginx statik.

Yığın

Python · requests · SQLite · sentence-transformers · UMAP · scikit-learn (HDBSCAN) · three.js · Docker · Coolify

Kaynak kod: github.com/ahmet4kadir/steam-ideatlas →