Giter Club home page Giter Club logo

neuron_web's Introduction

Neuron Web

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

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

Установка

Скачайте, соберите с помощью make.

О программе

При запуске программы нейронная сеть начинает обучаться с помощью встроенных в код программы примеров(массив пар samples). Во время обучения программа будет записывать среднюю квадратичную ошибку вывода(при каждой итерации). Запись происходит в файл, который называется info.txt. Так как итераций целых сто тысяч, файл будет весить прилично. Но не надо обращать на это внимания, даже при этом обучение происходит меньше чем за секунду (лично у меня, а у меня хороший процессор...). После обучения программа пытается открыть файл с входными данными, он должен называться input.txt. Если такой файл пресутствует, то используя его она заполняет ею созданный файл output.txt. Откройте, там все красиво оформлено. Вход должен представлять из себя четыре числа (возможно вещественных, но обучалась сеть на целых, хотя ведет себя сеть даже с вещественными числами крайне адекватно). Далее программа запрашивает ввод с клавиатуры, сначала здоровье, нож, огнестрел, враги. И тут же выдает результат. Весь процесс ввода красиво оформлен.

Примечания: хороший нож повышает вероятность, того что бот решит прятаться. При целых числах, бот почти всегда уверен в своем решении (выход близок к еденице - > 0.7), при вещественных числах у бота начинаются сомнения. Хотя и главное решение(то есть решение, число рядом с которым самое большое) адекватное.

И зачем я это все пишу? Все равно никто читать не будтет :) Но мне это нравится.

neuron_web's People

Contributors

lega4e avatar

Recommend Projects

  • React photo React

    A declarative, efficient, and flexible JavaScript library for building user interfaces.

  • Vue.js photo Vue.js

    🖖 Vue.js is a progressive, incrementally-adoptable JavaScript framework for building UI on the web.

  • Typescript photo Typescript

    TypeScript is a superset of JavaScript that compiles to clean JavaScript output.

  • TensorFlow photo TensorFlow

    An Open Source Machine Learning Framework for Everyone

  • Django photo Django

    The Web framework for perfectionists with deadlines.

  • D3 photo D3

    Bring data to life with SVG, Canvas and HTML. 📊📈🎉

Recommend Topics

  • javascript

    JavaScript (JS) is a lightweight interpreted programming language with first-class functions.

  • web

    Some thing interesting about web. New door for the world.

  • server

    A server is a program made to process requests and deliver data to clients.

  • Machine learning

    Machine learning is a way of modeling and interpreting data that allows a piece of software to respond intelligently.

  • Game

    Some thing interesting about game, make everyone happy.

Recommend Org

  • Facebook photo Facebook

    We are working to build community through open source technology. NB: members must have two-factor auth.

  • Microsoft photo Microsoft

    Open source projects and samples from Microsoft.

  • Google photo Google

    Google ❤️ Open Source for everyone.

  • D3 photo D3

    Data-Driven Documents codes.