-А-а-а, - разочарованно протянул тот.
-Так вот, - Стас снова взял слово. - Что мне подать на вход без предобработки? Все действия игрока за какой-то промежуток времени? Так охренеем с объёма, да и мусора будет много.
-Точно, - поднаторевший в деятельности коллеги Миша тоже влез в дискуссию, - надо аккумулировать действия, которые делаются для одной и той же цели.
-У нас почти всё есть, - молчавший до этого Роман уверенным тоном развил идею, - ведь мыслеобразы пропускаются через основную нейросеть. Если хранить не только итог, но и значения на каком-то из предпоследних слоёв, то получим общие признаки.
-Чуть подробнее, - Антон почесал нос очками.
Старший разработчик и подхвативший его мысль Стас вдвоём объяснили, что на промежуточных слоях нейросети ближе к её выходу значения для схожих входных объектов имеют другие схожие параметры.
-Давай я лучше приведу упрощённый пример, - осенило Мишу.
Программист открыл у себя на мониторе графический редактор и изобразил координатную плоскость. Ось икс отметил как “вес”, а ось игрек - как “размер”.
-Скажем, нам надо научить нейронку различать котов и собак по их урезанным признакам. Мы сначала отмечаем на этой плоскости несколько образцов точек для собак, - тут он натыкал несколько раз в области правого верхнего угла графика, - И для котов, - новую порцию точек другого цвета Миша отметил поближе к точке с координатами (0, 0).
-Вот теперь мы грубо обводим овалами две этих области. Далее если признаки нового животного попадают в синюю - это, скорее всего, собака. В жёлтую - почти наверняка кот.
-Но тогда чихуахуа такая система примет за кошку, нет? - уточнил тимлид.
-Да, но здесь пример очень сильно упрощён. Характеристик действий игроков намного больше, чем две. Кластеры будут строиться в многомерном пространстве, и шансом пересечения у двух разнотипных действий почти не будет.
Понимание подхода помогло Антону разбить задачу на отдельные части, но работы предстоит всё равно много: проанализировать, какие действия игроков вели к определённой одной и той же итоговой цели, оценить сложность и нестандартность этих действий, собрать набор данных из нескольких сотен примеров, и это только начало. Получится сырая нейронная сеть, работу которой будет нужно обернуть логикой программы, которая будет решать, как поощрить старательных игроков и какая именно награда им подойдёт лучше всего.
Вооружившись очередной кружкой кофе, лид начал решительный штурм клавиатуры…
—--------------------------------------------------------------
*ПРОТИВНИКИ ЧЕТВЁРТОГО ЭТАЖА СГЕНЕРИРОВАНЫ. ОСТАЛОСЬ 1/25000*
Ой, что-то мне это не нравится.
-Нужно будет убить какого-то супер-монстра с кучей детёнышей? - предположила Китти.