Ютубер mattbatwings создал нейросеть в Minecraft, которая способна отгадывать нарисованные числа и высчитывать точность ответа. Он выложил карту в открытый доступ и опубликовал видео, в котором показал весь процесс создания нейросети от начала до конца.
На моменте идеи задача заключалась в том, чтобы сделать нейросеть, способную определять, что изображено на картинке. Но оказалось, что для майнкрафта такая задача является слишком комплексной. Её пришлось упростить до создания нейросети, угадывающей число. Проведя небольшой ресерч, ютубер решил создать ИИ на основе MLP (Multilayer perceptron — класс нейросетей прямого распространения, состоящего из трех слоев: входного, скрытого и выходного).
Изначально алгоритм был написан на python с помощью библиотеки keras и готового датасета с написанными от руки цифрами. Затем, ютубер создал систему для «рисования» — площадку размером в 28×28 блоков.
Следующий шаг оказался самым сложным и заключался в создании «скрытого» слоя. По расчетам, для работы нейросети необходимо было производить 784 математические операции только с помощью редстоуна. Благодаря python-пакету mcschematic удалось экспортировать необходимые веса (числовые значения внутри синапсов нейронов) в майнкрафт.
Итоговый результат получился следующим: точность угадывания — 83%, а время работы — примерно 2 минуты. Скачать карту с нейросетью и потестить её самостоятельно можно тут. А посмотреть видео можно здесь.
Источник: habr.com