Платформа Valve очима алгоритмів. Розробник створив мапу 10 тисяч ігор на Steam за допомогою машинного навчання
Привіт, спільното! Наштовхнувся на цікавий проєкт-аналіз і хотів поділитися ним з вами. Користувач Reddit з ніком Newbie Indie Game Dev зібрав понад 10 тисяч скриншотів у Steam і за допомогою машинного навчання створив з них двовимірну мапу, де кожна точка — окрема гра. При цьому алгоритм розташовував ігри ближче одна до одної, якщо їхні скриншоти були візуально схожі, і далі — якщо вони відрізнялися.

«Самі осі графіка не мають прямого значення; важливими є відстані між точками та кластери. На зображенні, яким я ділюся, точки також зафарбовані відповідно до кількості відгуків (грубий проксі-показник продажів). Щільна фіолетова зона зліва відповідає деяким із найуспішніших ігор на платформі. Мені здається цікавим те, що така структура виникає попри те, що система ніколи не „бачила“ кількість відгуків, ціни, жанри чи будь-які інші метадані — вона отримала лише по одному скриншоту на гру. Я багато часу думав про те, чому так може бути (і про всю проблему „кореляція ≠ причинність“), але мені дуже цікаво почути й ваші думки», — зазначив автор роботи.
Пайплайн використовує нейронну мережу EfficientNet-B3, попередньо натреновану на мільйонах реальних зображень (ImageNet-1K), щоб створити ембедінги для кожного скриншота у високовимірному просторі (понад 1500 вимірів). Далі Newbie Indie Game Dev застосував алгоритм зменшення розмірності (t-SNE), щоб спроєктувати ці ембедінги у двовимірний простір для візуалізації.

«Датасет — це курована вибірка з понад 10 тисяч ігор, а не весь каталог Steam. Я вирішив включити всі великі тайтли (щонайменше 3 тисячі відгуків), а також велику кількість менших ігор, відібраних так, щоб вибірка залишалася достатньо репрезентативною й водночас придатною для обчислення та візуалізації. Скриншоти я завантажував безпосередньо зі Steam: для кожної гри брав перше зображення, показане на сторінці.
Я також зафарбовував точки за різними іншими показниками, які зібрав зі Steam (ціна, жанри, теги тощо), і шукав кластери. Деякі з них напрочуд добре збігаються з речами, до яких модель не мала прямого доступу. Я також створив версії, де замість скриншотів використано Steam-„хедери“ (широкі банери, які зазвичай містять назву гри та слугують її основною візуальною ідентичністю у Steam)», — додає автор.

Окрім того, він створив інтерактивну версію мап, де можна фільтрувати та перефарбовувати точки за різними метаданими й наводити курсор на окремі ігри. З матеріалами можна ознайомитися за цим посиланням. Також Newbie Indie Game Dev створив відео, яке є продовженням його аналізу.
1 коментар
Додати коментар Підписатись на коментаріВідписатись від коментарів