Подтвердить что ты не робот

Мнение о подходящем языке программирования для мозга нейронной сети робота?

Я делаю проект Neural Network в качестве моего последнего студенческого проекта. Идея проекта: очень простой робот с двумя двигателями и два датчика ir и bump пройдут среду с использованием нейронной сети, которая находится в компьютере. Основное требование - наблюдать, возможно, с помощью подходящего GUI процесса обучения и процесса эволюции нейронной сети. (Основная цель - наблюдать нейронную сеть, а ее изменения не приводят в движение робота). Робот будет взаимодействовать с компьютером, используя последовательную связь на ранних этапах проекта, а затем будет использовать WLAN..

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

Я до сих пор рассматривал JAVA и С#.. Я также прошу ваше мнение... Пожалуйста, дайте свои отзывы о проекте и аспектах моих соображений при выборе языка. (Другими словами.. что еще мне нужно? прежде чем принимать решение)

Спасибо.

4b9b3361

Ответ 1

(Основная цель - соблюдать нейронной сети, и ее изменения не диск робота).

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

Мой вопрос в том, какой из лучших язык, который можно использовать для реализации компоненты в компьютере (Neural Сеть

ANN могут быть записаны на любом языке. Используйте язык, с которым вам наиболее удобно, или, по крайней мере, любой язык "совместим" с вашей текущей настройкой. (например, если у вас уже есть робот, разговаривающий с машиной Windows по последовательному соединению с использованием С#, то почему бы вам не использовать эту существующую установку в качестве основы для вашего проекта? Вы уже были бы готовы к получению!). Если это Java или С#, то идите. Нет причин, по которым вам нужно будет изучать новый язык. На самом деле я бы рекомендовал не изучать новый язык для вашего проекта. Вы больше предпочитаете тратить свое время на свою интересную проблему, чем пытаться выяснить пыльные углы какого-то нового языка.

Ответ 2

Я согласен с Shaggy, что визуальное представление сетевого комплекса, достаточного для управления роботом, скорее всего, не будет интересным.

Вы рассматривали похожие проекты? Некоторые быстрые поисковые запросы показали Нулевое измерение - попытка визуализировать некоторые аспекты обучения ANN в 3D. Вот их видеоролик . Вероятно, есть еще что-то вроде этого - они, вероятно, дадут вам некоторое представление о том, какие аспекты вы делаете, и не хотите контегрировать.

Вот статья о визуализации структуры ANN (опять же, только первая, на которую я наткнулся). Как вы видите, визуализация не очень проницательна.

Говоря о языке - просто выберите тот, с которым вам больше всего нравится. Или выберите тот, с которым вы хотели бы улучшить свой опыт - если у вас есть отношение и время, чтобы учиться во время этого проекта.
Одна вещь, которую нужно иметь в виду: ANN-обучение - задача, требующая вычислительных средств, и достижение разумной производительности на языках более высокого уровня, таких как С# или Java, вероятно, будет сложнее, чем на "нижнем уровне", таких как С++.

Я также предлагаю вам рассмотреть возможность использования существующих библиотек для работы с NN. Я использовал пакет STATISTICA Neural Networks (стоит немного денег) несколько лет назад, я также считаю, что есть библиотеки с открытым исходным кодом. Правильно и эффективно реализовать хороший алгоритм обучения ANN, поэтому вы можете принять существующую реализацию и сосредоточиться на части GUI/визуализации.

Ответ 3

Я рекомендую использовать С# со свободной нейронтонной сетью. Я думаю, это даст вам все, что вам нужно.

Ответ 4

Рассмотрим Matlab/Labview. Комбинация позволяет легко визуализировать работу вашей программы и строить внутренние состояния.