roboforum.ru

Технический форум по робототехнике.

Использование функциональных языков

Вопросы не попавшие в другие категории.

Использование функциональных языков

Сообщение hudvin » 25 май 2008, 16:20

Кто нибудь пытался писать "мозги" на функциональных языках ?
Хотелось бы узнать впечатления...
hudvin
 
Сообщения: 9
Зарегистрирован: 25 май 2008, 16:12

Re: Использование функциональных языков

Сообщение EdGull » 25 май 2008, 16:46

что имеется ввиду под такими языками?
Аватара пользователя
EdGull
 
Сообщения: 10211
Зарегистрирован: 28 дек 2004, 20:33
Откуда: Тольятти
Skype: Ed_Gull
прог. языки: Bascom AVR Basic
ФИО: Гуль Эдуард Викторович

Re: Использование функциональных языков

Сообщение hudvin » 25 май 2008, 16:59

Языки типа Scala/Erlang/др.
Основая штука, которая меня заинтересовала в них - модель потоков.
В двух словах, в обычных языках (Java/C++/C#) на одной машине можно запустить порядка тысяч-десятков тысяч потоков (если повезет), в вышеуказанных языках можно запускать до 1-20млн потоков на процессор. Каждый процесс является автономным и может обмениваться данными с другими потоками посредством сообщений.
У меня есть мысль попробовать использовать эту особенность для моделирования нейросетей большой сложности.
hudvin
 
Сообщения: 9
Зарегистрирован: 25 май 2008, 16:12

Re: Использование функциональных языков

Сообщение EdGull » 25 май 2008, 19:23

ну тогда, перемещу пока сюда, не место этой теме в проектах.
но что-то мне подсказывает, что очень скоро тема в ад переет...
Аватара пользователя
EdGull
 
Сообщения: 10211
Зарегистрирован: 28 дек 2004, 20:33
Откуда: Тольятти
Skype: Ed_Gull
прог. языки: Bascom AVR Basic
ФИО: Гуль Эдуард Викторович

Re: Использование функциональных языков

Сообщение =DeaD= » 26 май 2008, 08:43

Нейросети потоками??? А смысл?
Проект [[Open Robotics]] - Универсальные модули для построения роботов
Аватара пользователя
=DeaD=
 
Сообщения: 24218
Зарегистрирован: 06 окт 2004, 18:01
Откуда: Ебург
прог. языки: C++ / PHP / 1C
ФИО: Антон Ботов

Re: Использование функциональных языков

Сообщение hudvin » 26 май 2008, 09:55

Смысл не совсем в потоках, а в том, что каждая ячейка будет функционировать независимо от других вез всяких программных извращений. Мы будем иметь нек. кусок кода, который будет хранить свое состояние, уровни входа/выхода и др.
hudvin
 
Сообщения: 9
Зарегистрирован: 25 май 2008, 16:12

Re: Использование функциональных языков

Сообщение EdGull » 26 май 2008, 12:17

каждая ячейка будет функционировать независимо от других вез всяких программных извращений

прошу прощщения, а на каких процессорах это будет всё выполняться?
Аватара пользователя
EdGull
 
Сообщения: 10211
Зарегистрирован: 28 дек 2004, 20:33
Откуда: Тольятти
Skype: Ed_Gull
прог. языки: Bascom AVR Basic
ФИО: Гуль Эдуард Викторович

Re: Использование функциональных языков

Сообщение Виталий » 26 май 2008, 12:59

Это не имеет никакого практического смысла параллелить работу нейронов...
Время на переключение задач будет превосходить время расчета.
Все новости о моих проектах http://savethebest.ru
Аватара пользователя
Виталий
 
Сообщения: 2114
Зарегистрирован: 08 окт 2004, 16:43
Откуда: St. Petersburg
Skype: quark-bot
ФИО: Клебан Виталий

Re: Использование функциональных языков

Сообщение hudvin » 26 май 2008, 13:07

не будет ! - в этом-то и фича ФП
эти технологии используются на биржак и в телекоме, на том же Erlange реализованы мощнейшие серверные приложение
hudvin
 
Сообщения: 9
Зарегистрирован: 25 май 2008, 16:12

Re: Использование функциональных языков

Сообщение Digit » 26 май 2008, 13:35

hudvin, и каким же волшебным образом реализуется переключение 20млн потоков на одном ядре так, что затраты ресурсов на поддержание многопоточности, а также время на их переключение пренебрежимо малы по сравнению с временем расчета сигмоидной функции в нейроне?

hudvin писал(а):на том же Erlange реализованы мощнейшие серверные приложение

А на каких машинах работают эти мощнейшие серверные приложения?

Добавлено спустя 5 минут 9 секунд:
Вообще, многопоточность в некоторых сферах действительно настолько облегчает написание программы, разработку алгоритмов и оптимизацию процесса функционирования сложных систем, что аппаратные затраты на поддержание многопоточности представляются вполне адекватной платой.
Но есть задачи, в которых многопоточность только все усложняет. Вот в частности нейросети как раз из их числа.
злой полицейский
Аватара пользователя
Digit
 
Сообщения: 3339
Зарегистрирован: 27 ноя 2004, 00:42
Откуда: совсем Москва
ФИО: Григорий

Re: Использование функциональных языков

Сообщение hudvin » 26 май 2008, 14:02

Тем, что в ФП нет таких понятий как блорировка, синхронизация и тому подобное + собственный шедулер + ленивые вычисления + много чего еще... Двадцать миллионов может и не потянет, а вот около 5 млн на обычном ПК - запросто.

====

На обычном :). Jabber сервер ejabberd держит на порядок больше подключений, чем его аналоги на яве. С железом я, пожалуй не совсем правильно выразился. Скажем так, приложения на ФП успешно функционируют на таких нагрузках, на которых обычные приложения в принципе не могут работать.

Добавлено спустя 3 минуты 40 секунд:
Единственный обмен механизма данными между потоками - сообщения.
hudvin
 
Сообщения: 9
Зарегистрирован: 25 май 2008, 16:12

Re: Использование функциональных языков

Сообщение EdGull » 26 май 2008, 14:56

а преключение между задачами за счет каких аппаратных ресурсов происходит?
вроде все нынешние процы исключительно последовательные
Аватара пользователя
EdGull
 
Сообщения: 10211
Зарегистрирован: 28 дек 2004, 20:33
Откуда: Тольятти
Skype: Ed_Gull
прог. языки: Bascom AVR Basic
ФИО: Гуль Эдуард Викторович

Re: Использование функциональных языков

Сообщение hudvin » 26 май 2008, 15:34

Я же сказал, это есть особенность ФП.
Потоки Эрланга инкапсулируются в небольшое количество потоков ОС.
Создание нового потока Erlang в плане ресурсов не дороже вызова обычной функции
hudvin
 
Сообщения: 9
Зарегистрирован: 25 май 2008, 16:12

Re: Использование функциональных языков

Сообщение EdGull » 26 май 2008, 16:18

а как можно 5 млн. потоков ФП преобразовать в "небольшое количество потоков ОС"?
Аватара пользователя
EdGull
 
Сообщения: 10211
Зарегистрирован: 28 дек 2004, 20:33
Откуда: Тольятти
Skype: Ed_Gull
прог. языки: Bascom AVR Basic
ФИО: Гуль Эдуард Викторович

Re: Использование функциональных языков

Сообщение Vooon » 26 май 2008, 20:38

жаль что пока нет стабильных свободных операционок с микроядром...
Linux user | Firefox user
Аватара пользователя
Vooon
Site Admin
 
Сообщения: 3339
Зарегистрирован: 09 фев 2006, 15:36
Откуда: Москва
Skype: vooon341
прог. языки: Python, C, Bash, JavaScript, C++, PHP
ФИО: Владимир Ермаков

След.

Вернуться в Обо всём

Кто сейчас на конференции

Сейчас этот форум просматривают: нет зарегистрированных пользователей и гости: 22