Pull to refresh
-3
0
Vladislav Faust @vladfaust

User

Send message

Создание генетического алгоритма для нейросети и нейроcети для графических игр с помощью Python и NumPy

Level of difficultyMedium
Reading time6 min
Views5.7K

Привет, Хабр!

Сегодня я расскажу и покажу, как сделать Genetic Algorithm(GA) для нейросети, чтобы с помощью него она смогла проходить разные игры. Я его испробовал на игре Pong и Flappy bird. Он себя показал очень хорошо. Совет прочитать, если вы не читали первую статью: "Создание простого и работоспособного генетического алгоритма для нейросети с Python и NumPy" , так как я доработал свой код который бы показан в той статье.

Я разделил код на две скрипта, в одной нейросеть играет в какую-то игру, в другой обучается и принимает решения(сам генетический алгоритм). Код с игрой представляет из себя функцию которая возвращает фитнес функцию (она нужна для сортировки нейросетей, например, сколько времени она продержалась, сколько очков заработала и т.п.). Поэтому код с играми(их две) будет в конце статьи. Генетический алгоритм для нейросети для игры Pong и игры Flappy Bird различаются лишь параметрами.

Используя скрипт, который я написал и описал в предыдущей статье, я создал сильно изменённый код генетического алгоритма для игры Pong, который я и буду описывать больше всего, так как именно на него я опирался, когда я уже создавал GA для Flappy Bird.

Вначале нам потребуется импортировать модули, списки и переменные:

Читать далее
Total votes 15: ↑13 and ↓2+11
Comments4

Настоящее предназначение OpenAI SORA: как и зачем симулировать «Матрицу» для ChatGPT

Level of difficultyMedium
Reading time41 min
Views92K

Ну что, уже успели прочитать восхищения небывалым качеством видео от нейросетки SORA у всех блогеров и новостных изданий? А теперь мы вам расскажем то, о чем не написал никто: чего на самом деле пытается добиться OpenAI с помощью этой модели, как связана генерация видео с самоездящими машинами и AGI, а также при чем здесь культовая «Матрица».

Войти в симуляцию →
Total votes 289: ↑285 and ↓4+281
Comments120

Ректальное программирование: основы для практикующих 1С-программистов

Reading time9 min
Views52K

Примечание: хотя статья адресована прежде всего одинэсникам, труЪ-программисты также могут узнать многие используемые методики или взять что-то на вооружение.

Одной из самых популярных и зарекомендовавших себя методологий программирования в 1С является так называемое ректальное программирование. Редкий проект внедрения и сопровождения учётных систем на платформе 1С обходится без его использования. Зачастую без знания данной методологии программистам даже бывает сложно найти работу в сфере 1С, потому что работодатели, особенно фирмы-франчайзи, в основном отдают предпочтение классическим, зарекомендовавшим себя методикам, а не новомодным заграничным веяниям.

Читать далее
Total votes 98: ↑90 and ↓8+82
Comments135

SoftEther VPN server — быстрая настройка

Reading time4 min
Views77K

В свете периодических блокировок в РБ и РФ, блокирующих как “недозволенные речи неугодных” так и работу специалистов разных мастей, организации и просто технари перебирают возможности различных VPN решений. SoftEther VPN в моем списке выглядит как бесплатное “чудо-решение”, которое позволяет иметь под рукой внушительный лист протоколов VPN из коробки: L2TP, IPSec, OpenVPN, SSTP, SoftEther VPN.

Цель туториала - упростить его установку, сделав доступным любому специалисту способному подключиться по ssh к серверу и вбить пару команд.

Читать далее
Total votes 4: ↑2 and ↓20
Comments8

HTML-теги и атрибуты, о которых вы, возможно, не знали

Reading time14 min
Views50K

image


Эта статья — шпаргалка по HTML-тегам. Поэтому не будем разглагольствовать, сразу к делу.


abbr


Тег abbr определяет аббревиатуру или акроним. Аббревиатура или акроним расшифровываются с помощью атрибута title.


<abbr title="HyperText Markup Language">HTML</abbr> был разработан британским ученым Тимом Бернерсом-Ли приблизительно в 1986—1991 годах.

abbr часто используется совместно с тегом dfn, идентифицирующим понятие или термин:


<p><dfn><abbr title="Cascading Style Sheets">CSS</abbr></dfn> - формальный язык описания внешнего вида документа (веб-страницы).</p>

address


Тег address определяет контактную информацию об авторе или владельце документа или статьи. Контактная информацию может включать в себя адрес электронной почты, адрес сайта, физический адрес, номер телефона, ссылки на аккаунты в социальных сетях и т.д.

Читать дальше →
Total votes 66: ↑54 and ↓12+42
Comments13

Индивидуальный противохимический пакет (ИПП)

Reading time23 min
Views29K
Несмотря на то, что я уже предвкушаю народное недовольство и N минусов с мотивацией «не соответствует тематике Хабра», все же в очередной раз рискну здесь опубликовать статью, которая НЕ про софт, НЕ про железо, НЕ про компании, и даже химию задевает только по касательной…

Суть проблемы в том, что мне внезапно понадобилось составить ретроспективу используемых отечественных (ну ок, и зарубежных тоже) индивидуальных противохимических пакетов (ИПП) используемых для удаления с кожи/одежды отравляющих веществ. ИПП — вещь довольно утилитарная, не удивительно что кто-то аббревиатуру ИПП может спутать с индивидуальным перевязочным пакетом, а кто-то даже с инфекциями передающимися половым путем. Добавляет масла в огонь и две особенности, которые я заметил во время поиска предметной информации. Первая особенность — это закрытость и запутанность (преднамеренная?) информации, даже про ИПП времен Второй мировой войны. Многие статьи в журналах — с отсутствующими страницами. Более чем уверен, что никакой защите секретности это не поможет, зато серьезно усложнит задачу людям, которые изучают упомянутую тему. Вторая особенность — недостаточный профессионализм военных химиков, или преподавателей-военных химиков, которые пишут свои учебные пособия зачастую с вопиющими ошибками.

Поэтому основная цель статьи — информационная, на правах «хабр-энциклопедиста» :) В следующий раз, когда какой-то условный курсант военных химик (который «покой мой бережет»), будет искать для своего реферата информацию, пусть он лучше наткнется на мою статью (и попадет в LAB-66), а не на опус анонимного копирайтера. К курсанту можно смело добавить реконструктора и военного историка…

В общем, под катом — ретроспектива средств индивидуальной дегазации и бонусом попытка масштабировать накопленные знания на вполне бытовую область — дезактивацию «перцового слезоточивого газа».


Продегазировать ИПП!
Total votes 49: ↑47 and ↓2+45
Comments19

На фондовом рынке США сформировался пузырь небывалых размеров

Reading time13 min
Views163K

Оценки напрочь оторвались от фундаментального анализа, мультипликаторы находятся на исторических максимумах, скорость эмиссии ценных бумаг зашкаливает — и всё это сопровождается безумно спекулятивным поведением инвесторов. Большой кризис неизбежен.

Читать далее
Total votes 249: ↑229 and ↓20+209
Comments775

Простейший измеритель CO2 за 2000 рублей и полчаса

Reading time2 min
Views53K
Измеритель уровня углекислого газа (CO2) наверное самый недооценённый прибор, который на мой взгляд должен быть в каждой квартире, ведь он показывает, насколько воздух пригоден для дыхания и с помощью него всегда видно, когда пора проветривать.

Такой измеритель в квартирах большая редкость прежде всего из-за высокой цены. Свой первый измеритель AZ Instruments 7798 CO2 datalogger я покупал за $139 и это была самая дешёвая модель на рынке.

Сейчас готовый измеритель CO2 стоит около 4000 рублей, а самодельный обойдётся вдвое дешевле.

Читать дальше →
Total votes 100: ↑98 and ↓2+96
Comments253

Ламповая self-hosted инфраструктура на Vultr

Reading time6 min
Views8.9K


О чём, зачем и почему?


Эту небольшую заметку я решил написать после собственного опыта разворачивания личной "инфраструктуры", состоящей из нескольких приложений для повседневных дел.


Здесь я расскажу, как развернуть сервисы для контроля финансов (FireFly3), заметок и чего покрупнее (BookStack) и контроля времени, уходящего на задачи в opensource проектах или на работе (Titra) — всё это на Vultr с защитой с помощью firewall групп и доступа только с нужных ip, например, домашней статики или vpn (ещё развернём для этого Pritunl).


Vultr я выбрал, так как достаточно давно с ним работаю и уже знаю, что он может, а что нет — в моём случае он подошёл идеально.


Надеюсь, что это окажется для кого-то полезным.

Читать дальше →
Total votes 7: ↑5 and ↓2+3
Comments9

Основы оптимального стиля. Когнитивно-ориентированный анализ удобочитаемости текста программы

Reading time34 min
Views7K

epam


Грубо говоря, очевидно, что некоторые виды форматирования лучше других.
— Стив Макконелл, Совершенный код.


Эта статья об особенностях человеческого зрения и о том, как знание этих особенностей может помочь нам улучшить объективную удобочитаемость наших программ.

Читать дальше →
Total votes 9: ↑9 and ↓0+9
Comments47

Создание зашифрованного диска с «двойным» дном с помощью Veracrypt

Reading time4 min
Views79K


VeraCrypt — свободный форк TrueCrypt используемый для сквозного шифрования в Windows, Mac OSX и Linux, и позволяет шифровать системный диск, отдельный внутренний или внешний диск или создавать виртуальные диски с использованием файлов-контейнеров.

В этой статье мы рассмотрим интересную возможность VeraCrypt для создания зашифрованного диска со скрытым разделом, этот метод, также называемый методом «двусмысленного шифрования», обеспечивает возможность правдоподобного отрицания наличия второго тома, т.к. не обладая нужным паролем, доказать существование скрытого тома не представляется возможным.
Читать дальше →
Total votes 42: ↑40 and ↓2+38
Comments62

Мне надоело, что индустрия зависит от прихоти создателей языков программирования. Сообществу нужно больше власти

Reading time6 min
Views35K

image


Я программирую 16 лет, и перебрал за это время много технических стеков. Изучать языки весело, в начале они всегда как новенькие игрушки, пока месяце на третьем не появляются первые проблемы.


В языках вечно не хватает чего-то простого — лямбда-функций, именованных объединений, кастомных примитивных типов. Я лезу в обсуждения на Stack Overflow, в Github и вижу, как разрабы жалуются — им не хватает того же, чего и мне. Но обсуждения почти всегда заканчиваются одинаково: нужная фича не появится, потому что главный дизайнер языка и члены его команды нужной ее не считают.


Раньше в эти моменты мне казалось, что это я неграмотный, и чего-то не понимаю. Что создатели языков за гранями приземленной разрабовской критики. Они умны, дальновидны, преисполнены мудрости, и пути их неисповедимы.


Но сейчас я понимаю — это полная чушь.

Читать дальше →
Total votes 179: ↑112 and ↓67+45
Comments337

Почему налоговая не верит в айтишников-индивидуальных предпринимателей?

Reading time2 min
Views93K

Сколько может зарабатывать айтишник на ИП? У ФНС свое мнение


Когда один человек много зарабатывает и честно платит налоги, налоговики смотрят со стороны и думают: «Как такое возможно? Наверняка у него масса помощников! Пусть и за них налоги заплатит!»

Рассказываем, как при наличии электронной подписи в пару кликов забыть о подобных притязаниях налоговой.
Читать дальше →
Total votes 125: ↑122 and ↓3+119
Comments233

HighLoad vs HighExtensible — эффективность против антихрупкости

Reading time6 min
Views8.1K

Давайте поговорим о high-load, high-extensible, ООП, DDD & EDA.


Речь пойдет о разнице между high load & high extensibility — это разные цели и задачи в разработке. Для которых нужны принципиально разные подходы. Которые часто вызывают когнитивный диссонанс среди программистов, предвещающий бурную полемику.


На Хабре много статей про high-load, а вот тема high-extensible как-то упускается из внимания.


Если попытаться примерно представить разность в понятиях и механиках, то вот табличка:


image


Давайте попробуем разобрать это все подробнее.

Читать дальше →
Total votes 37: ↑26 and ↓11+15
Comments55

Инклюзивное образование: почему такая хорошая идея так плохо работает

Reading time32 min
Views67K


Один из главных культурных трендов последних десятков лет — это идея безусловного равенства между людьми, из которой далее вытекает необходимость борьбы с любыми проявлениями дискриминации: по расовому, половому и прочим признакам. В образовании это материализовалось в виде инклюзии: такой модели обучения, когда мы одновременно воспитываем и учим нормативно развивающихся детей и детей, имеющих произвольные нарушения и особенности развития. Например, если у вашего ребенка в классе есть один аутист и пять обладателей дефицита внимания с гиперактивностью, этот класс можно считать инклюзивным.

Если двадцать лет назад в России инклюзивное образование находилось в статусе не вполне легального педагогического эксперимента, то сейчас оно формально принято в качестве основной модели. Это означает, что если у вашего ребенка есть особые образовательные потребности, то в принципе вы можете привести его в любой сад и любую школу, и образовательное учреждение — теоретически — обязано будет создать условия для того, чтобы ребенок смог там учиться.

Фасад этой практики — идея, что дети имеют право расти и развиваться вместе, и мы не должны создавать отдельные резервации детей с особенностями, где они лишены общества других детей.

А теперь посмотрим, что происходит, когда мы эту идею пытаемся реализовать.
Читать дальше →
Total votes 171: ↑168 and ↓3+165
Comments278

3D ML. Часть 2: функции потерь в задачах 3D ML

Reading time22 min
Views11K


Основной сложностью при выборе функций ошибок для работы с 3D данными является неевклидовость рассматриваемых структур, из-за которой задача определения расстояния в пространстве 3D моделей становится совсем нетривиальной.


В этой заметке мы поговорим о том, какие функции ошибки (Loss functions) алгоритмов используются в 3D ML, какие из них можно использовать в качеств метрик качества (metrics), а какие — в качестве регуляризаторов (regularizers).

Читать дальше →
Total votes 25: ↑25 and ↓0+25
Comments1

Что такое CDN, и как это вообще работает

Reading time15 min
Views36K

Сайт Texas Internet Consulting. Жив с 1987 года, страница — 7 Килобайт.

Помните время, когда главная больше 90 Килобайт считалась расточительством? С тех пор Интернет стал жирным. И понадобились инструменты, чтобы правильно раздавать трафик сразу с нескольких узлов. Например, во время очередного обновления Fortnite CDN от Akamai сумел переварить трафик мощностью в 106 Терабит в секунду. Давайте пробежимся по основным принципам этой технологии и потенциальным проблемам.

И о том, почему Minecraft в Казани тормозит, если не развернуть сервер в черте города.
Читать дальше →
Total votes 78: ↑76 and ↓2+74
Comments30

Внезапный диван леопардовой расцветки

Reading time8 min
Views83K
Если вы интересуетесь искусственным интеллектом и прочим распознаванием, то наверняка уже видели эту картинку:


А если не видели, то это результаты Хинтона и Крижевского по классификации ImageNet-2010 глубокой сверточной сетью

Давайте взглянем на ее правый угол, где алгоритм опознал леопарда с достаточной уверенностью, разместив с большим отрывом на втором и третьем месте ягуара и гепарда.

Это вообще довольно любопытный результат, если задуматься. Потому что… скажем, вы знаете, как отличить одного большого пятнистого котика от другого большого пятнистого котика? Я, например, нет. Наверняка есть какие-то зоологические, достаточно тонкие различия, типа общей стройности/массивности и пропорций тела, но мы же все-таки говорим о компьютерном алгоритме, которые до сих пор допускают какие-то вот такие достаточно глупые с человеческой точки зрения ошибки. Как он это делает, черт возьми? Может, тут что-то связанное с контекстом и фоном (леопарда вероятнее обнаружить на дереве или в кустах, а гепарда в саванне)? В общем, когда я впервые задумался над конкретно этим результатом, мне показалось, что это очень круто и мощно, разумные машины где-то за углом и поджидают нас, да здравствует deep learning и все такое.

Так вот, на самом деле все совершенно не так.
под катом пятна
Total votes 148: ↑145 and ↓3+142
Comments141

Распознавание лиц человеческим мозгом: 19 фактов, о которых должны знать исследователи компьютерного зрения

Reading time13 min
Views62K
Важной целью исследователей в области компьютерного зрения является создание автоматизированной системы, способной сравняться или превзойти способности человеческого мозга по распознаванию лиц. Результаты психофизических исследований процесса распознавания лиц предоставляют специалистам по компьютерному зрению ценнейшие факты, которые помогут улучшить системы искусственного интеллекта.

Как обычно, предлагаю сокращенный перевод, полный текст доступен в оригинале.

Читать дальше →
Total votes 185: ↑181 and ↓4+177
Comments66

Information

Rating
Does not participate
Registered
Activity