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