Гоу гоу гоу
00:00:00Видео продолжает разработку нейронной сети с искусственным интеллектом, предназначенной для автономной игры в Counter-Strike. Несмотря на то, что предыдущее видео набрало 20 тысяч лайков, Valve не предложила никаких стимулов для прекращения этого проекта. Создатель по-прежнему привержен продвижению этой инновационной игровой технологии.
Что было в прошлом видосе
00:00:20В предыдущем видео нейронная сеть была обучена распознавать контртеррористов и террористов на изображениях из Global Offensive. Однако запуск TensorFlow параллельно с игрой вызвал серьезные проблемы с производительностью из—за ограниченной мощности графического процессора, что привело к получению всего пяти кадров в секунду - слишком низкой для практического использования. Для эффективного решения этой проблемы было разработано стратегическое решение.
Читаю комментарии
00:00:47Изучение комментариев привело к интересному предложению: стандартизировать и уменьшить разрешение исходных изображений для обучения нейронной сети. Вдохновленные этой идеей, было принято решение продолжить эксперименты с ней. Выражаем благодарность сторонникам, которые поддерживали нас лайками и содержательными комментариями.
Анализируем исходные картинки нейросети
00:01:13Был создан простой скрипт на Python для анализа входных изображений нейронной сети и получения визуальной статистики. Выяснилось, что более 85% изображений имеют разрешение более 1366x768 пикселей, что неэффективно для оптимальной работы нейронной сети. Для эффективной работы достаточно меньшего разрешения.
Унифицируем изображения
00:01:42Изображения были изменены до одинакового разрешения, например, 400x400 пикселей или меньше. Однако соответствующие XML-файлы, содержащие данные о метках, нуждались в обновлении, поскольку в них хранятся координаты, характерные для размеров исходного изображения, а не проценты. Это потребовало пересчета и перезаписи позиций метаданных в соответствии с новыми разрешениями с использованием формата Pascal VOC — метода, который критиковали за его неэффективность по сравнению с хранилищем, основанным на процентах. Несмотря на эти трудности, были успешно внесены коррективы перед переобучением нейронной сети на обновленных изображениях.
Результат унифицирования :3
00:03:25Процесс унификации занял примерно 3-4 часа на видеокарте RTX 2080 Ti. К сожалению, эти усилия не привели к заметному улучшению FPS. Нейронная сеть продолжала работать плохо, со значительным отставанием при работе только на одном графическом процессоре.
Сразу 2 видеокарты
00:03:40Была рассмотрена идея одновременного использования двух видеокарт, когда одна из них предназначена для рендеринга игры, а другая выполняет дополнительные задачи. Однако этот подход не привел к каким-либо заметным улучшениям или выгодам в производительности.
Включил второй компьютер
00:04:00Для оптимизации работы нейронной сети был активирован и очищен второй компьютер. Был добавлен третий монитор, чтобы создать эффективную систему с двумя компьютерами, в которой уже были доступны две клавиатуры и мыши. Вместо того чтобы переносить видеокарту из одной системы в другую, было проще запустить оба компьютера одновременно и написать быстрый скрипт для передачи данных.
Топ мышка xD
00:05:10Пользователь описывает настройку второй мыши, подключенной к другому компьютеру, подчеркивая ее уникальную функцию, при которой колесо прокрутки вращается как вертушка. Эта функция особенно понравилась ему. Они также упоминают, что эта мощная мышь, известная на YouTube, вращалась с помощью сжатого воздуха.
Тест на 2х видеокартах
00:05:30Распределение задач между двумя графическими процессорами повысило производительность, достигнув 15 кадров в секунду при использовании медленной модели TensorFlow, такой как Fast R-CNN. Это улучшение по сравнению с предыдущими 5 кадрами в секунду, но его по-прежнему недостаточно для эффективного таргетинга нейронной сети в играх. В играх, требующих не менее 60 кадров в секунду, более низкая частота кадров нейронной сети оставляет промежутки, в которых происходят непредсказуемые события, часто позволяя врагам перемещаться до того, как они станут мишенью.
Делюсь кодом с вами
00:06:24Текущее состояние нейронной сети требует улучшения, в частности, для эффективной работы на одной видеокарте. Эта оптимизация имеет решающее значение, поскольку у большинства пользователей есть только один графический процессор, что обеспечивает более широкий доступ. Создатель планирует поделиться оптимизированным кодом вместе с обучающими файлами и предоставить руководство по установке через свой Telegram-канал, как только наберется 90 000 подписчиков.
Переход на YOLOv7
00:07:32Переход на архитектуру нейронной сети YOLOv7 обусловлен ее более высокой производительностью по сравнению с традиционными CNN. Традиционные CNN на основе тензора описываются как медленные и неэффективные, что сродни попыткам превратить обычный автомобиль в высокопроизводительный - этого просто не произойдет. Учитывая эти ограничения, внедрение передовых архитектур, таких как YOLOv7, становится необходимым для достижения лучших результатов в задачах, требующих скорости и точности.
Кринжово читаю на английском
00:08:02Автор начинает свой путь с YOLO версии 7, инструмента, которым он никогда раньше не пользовался. Чтобы понять его назначение и функциональность, он углубляется в чтение на английском языке, несмотря на трудности. Это первый шаг к освоению этой передовой технологии.
Установил и настроил YOLO
00:08:23Пользователь установил YOLOv7 на систему Windows, несмотря на то, что планировал вскоре перейти на Linux. После установки были проведены тесты, подтверждающие функциональность нейронной сети в быстром распознавании объектов по тестовым изображениям. Им пришлось переписать код для захвата и обработки изображений из-за различий между более быстрыми реализациями на базе TensorFlow R-CNN и PyTorch, но они справились с этим без существенных задержек. Многопроцессорная обработка была удалена из-за сбоя при настройке; теперь все выполняется в одном процессе для упрощения начальной настройки.
Первый тест новой нейронки
00:09:33Был проведен тест, чтобы определить частоту кадров в секунду (FPS), достижимую на одной видеокарте. Результаты показали более 25 кадров в секунду без многопроцессорной обработки и около 20 кадров в секунду при одновременном запуске игры. Эта производительность впечатляет, учитывая, что оптимизация еще не применялась, и демонстрирует приемлемую частоту кадров для воспроизведения в этих условиях.
Обучаем новую нейросеть
00:10:16Новая нейронная сеть обучается распознавать игроков в играх, в частности, контр-террористов. В отличие от предыдущей модели, в которой для надписей использовался формат Pascal VOC, для этой модели требуется форматирование надписей YOLO. XML-файлы, которые использовались ранее, больше бесполезны; их необходимо воссоздать с использованием другого метода. К счастью, существующий конвертер, доступный на GitHub, упрощает процесс, автоматизируя преобразование меток.
Права роботов RLM!!!
00:11:00Возникла дискуссия о правах роботов, вызванная разногласиями в чате Telegram. Спор разгорелся вокруг того, можно ли считать систему искусственного интеллекта, используемую для игры в CS, мошенничеством, поскольку она воспринимает только то, что люди видят во время игрового процесса, без доступа к игровой памяти. Несмотря на это объяснение, некоторые назвали нейронную сеть недобросовестной помощью или "обманом". Это привело к размышлениям о потенциальной дискриминации роботов из-за их превосходящих возможностей по сравнению с людьми, подчеркнув, что подобные предубеждения могут возникать по мере развития технологий.
Почему это не чит
00:11:42Искусственный интеллект, используемый в играх, таких как нейронные сети в CS:GO, принципиально отличается от читов. В отличие от аймботов, которые всегда поражают цели даже сквозь дым или светошумовые шашки, ИИ не может видеть сквозь эти препятствия и действует в рамках правил игры. Это отличие подчеркивает его роль как умного игрока, а не инструмента для получения несправедливых преимуществ.
Тест YOLO в игре
00:12:15YOLO был протестирован в игровой среде и показал в среднем 20-25 кадров в секунду и точное обнаружение объектов. Однако нейронной сети не хватало возможностей автономного прицеливания. Чтобы устранить это ограничение, был разработан специальный код для автоматического прицеливания. Функция съемки остается полуавтоматической; она активируется только при нажатии клавиши Caps Lock во время тестирования.
Тест в игре, но стреляет нейросеть
00:12:50Производительность нейронной сети была протестирована в игре, продемонстрировав ее способность эффективно распознавать тени. Несмотря на то, что это была ранняя и рудиментарная версия, разработанная всего за несколько вечеров, результаты были впечатляющими. Кроме того, улучшения включали создание сценариев для более плавного прицеливания с использованием незначительных корректировок.
Сможете отличить где человек, а где нейронка?
00:13:48Обсуждение вращается вокруг определения того, выполняется ли действие человеком или имитируется нейронной сетью. Конкретный пример включает в себя имитацию движения человеческой руки, что поднимает вопросы о подлинности и точности воспроизведения. Предлагаются методы анализа записей, позволяющие выявить тонкие различия между подлинными и искусственными движениями.
Лё финал
00:14:00Бесплатный выпуск кода для нейронной сети для 90 000 подписчиков Код для нейронной сети и руководство по установке будут доступны бесплатно на Telegram-канале, как только он наберет 90 000 подписчиков. Несмотря на предложения о продаже кода, на данный момент достаточно поддержки через лайки и подписки. Ссылки доступны в описании видео.
Будущие улучшения с поддержкой просмотра Третья часть этого проекта может включать в себя значительные улучшения, такие как оптимизация качества или включение автономной навигации по карте, если это видео наберет 20 000 лайков у зрителей. Создатель подчеркивает, что нейронные сети - невероятно захватывающая технология.