Большой Воронежский Форум

Если это ваш первый визит, рекомендуем почитать справку по форуму. Для размещения своих сообщений необходимо зарегистрироваться. Для просмотра сообщений выберите раздел.
Вернуться   Большой Воронежский Форум » Компьютеры и все, что с ними связано » » Программирование
Философия, технологии, алгоритмы!

Ответ
 
Опции темы
Старый 30.10.2011, 22:50   #1   
Registered User
 
Аватар для Спартак21
 
Сообщений: 402
Регистрация: 14.11.2007
Возраст: 38

Спартак21 вне форума Не в сети
Нейросети. Начала программирования НС

Господа!
Подскажите, где нарыть пример или исходничек нейросети с обучением или без него(желательно на С++)
С уважением
  Ответить с цитированием
Старый 30.10.2011, 22:56   #2   
Форумец
 
Сообщений: 584
Регистрация: 29.10.2004
Возраст: 39

crabzzy вне форума Не в сети
Спартак21, а гугл?

http://www.orc.ru/~stasson/neurox.html
  Ответить с цитированием
Старый 30.10.2011, 23:10   #3   
Registered User
 
Аватар для Спартак21
 
Сообщений: 402
Регистрация: 14.11.2007
Возраст: 38

Спартак21 вне форума Не в сети
уже видел... они предлагают пакет, который мне не нужен: мне требуется исходник...
В гугле надоело уже искать, т.к. на всех поисковиках первые 20 страниц абсолютно одинаковые(((
  Ответить с цитированием
Старый 31.10.2011, 01:38   #4   
Форумец
 
Аватар для Spectator
 
Сообщений: 40,897
Регистрация: 27.05.2003
Возраст: 46

Spectator вне форума Не в сети
http://www.google.ru/#hl=ru&sugexp=k...w=1246&bih=882
  Ответить с цитированием
Старый 31.10.2011, 08:54   #5   
Registered User
 
Аватар для Спартак21
 
Сообщений: 402
Регистрация: 14.11.2007
Возраст: 38

Спартак21 вне форума Не в сети
Спектатор!
Зэ Бэст Фрам Зэ Бэст
  Ответить с цитированием
Старый 03.11.2011, 15:34   #6   
Наркоман...
 
Аватар для Shoroh
 
Сообщений: 1,858
Регистрация: 20.06.2005
Возраст: 37

Shoroh вне форума Не в сети
как правило сеть генеришь, она тебе дает весовые коэффициенты и формулу(большую). Лучше спросить у ребят кто в политехе на 5-м курсе групп ИС фак-т ЕГФ. там ряд программм юзался. я уже успел забыть их названия. Пакет Statistica тоже умеет. у меня жена в этом году в нем сетями занималась и диплом писала.
  Ответить с цитированием
Старый 03.11.2011, 17:15   #7   
Registered User
 
Сообщений: 1,114
Регистрация: 23.06.2007
Возраст: 57

Hopkroft вне форума Не в сети
Цитата:
Сообщение от Shoroh Посмотреть сообщение
Лучше спросить у ребят кто в политехе на 5-м курсе групп ИС фак-т ЕГФ.
У нас были проги
Neural Analyzer из пакета Deductor Lite и программа NeuroPro.
Всё это можно скачать в интернете!
  Ответить с цитированием
Старый 03.11.2011, 18:13   #8   
Registered User
 
Аватар для Спартак21
 
Сообщений: 402
Регистрация: 14.11.2007
Возраст: 38

Спартак21 вне форума Не в сети
Сударь)
Мне не требуется нейропакет, меня интересует непосредственно механизм работы персептрона на равне с функциями, которые используются в нём

Последний раз редактировалось Спартак21; 03.11.2011 в 19:58. Причина: Не мог напечатать
  Ответить с цитированием
Старый 03.11.2011, 21:24   #9   
Форумец
 
Сообщений: 286
Регистрация: 17.09.2010

Battle Coder вне форума Не в сети
Спартак21, готовых исходников дать не могу... но нас в прошлом году (ВГУ) обучали по методичке теории искусственных нейронных сетей. Ну как "обучали". просто читали эту методичку и всё =)
где-то она на ww.lib.vsu.ru должна быть.. но сейчас поиск по библиотеке почему-то недоступен.

Там нет никакого алгоритма, но есть теория, формулы, принцип работы этого персептрона и его разновидностей... Алгоритм наверное можно составить, если есть мозг. =) Есть и отсылка к другой литературе (должна быть), но увы, я не помню...
А что если в гугле поискать?

К слову, на практику примеры у нас были на matlab и использовался лишь тулбокс оттуда... логики работы нейросетей никто так и не понял, так как не пытался его построить
  Ответить с цитированием
Старый 03.11.2011, 23:22   #10   
Registered User
 
Аватар для Спартак21
 
Сообщений: 402
Регистрация: 14.11.2007
Возраст: 38

Спартак21 вне форума Не в сети
Эх, да есть и литература
Мне не хватает взгляда на простейшую программную реализацию
  Ответить с цитированием
Старый 04.11.2011, 23:42   #11   
Форумец
 
Сообщений: 286
Регистрация: 17.09.2010

Battle Coder вне форума Не в сети
Спартак21, ну на мой взгляд... что нужно сделать. построить некую структуру данных (граф) в памяти... это вроде несложно на любом ЯП реализовать.
В вершинах этого графа сохранять переменные состояния (веса), которые при обучения надо изменять...
Ещё должна быть какая-то функция активация нейрона. Вроде я ничего сложного особо не вижу... в теории. но сам этого никогда не делал. Даже стыдно "отл" в зачётке по нейросетям стоит. А толку от этого, собственно?.. от этого матлаба. Лучше бы научили самим реализовывать хотя бы что-нибудь самое простое.

Может, если б взялся бы, сделал бы. но некогда, других дел хватает

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

Кстати, на habrahabr.ru вроде попадались статейки про нейросети... поищите там. может, и примеру кода будут.
http://habrahabr.ru/tag/нейронные%20сети/
  Ответить с цитированием
Старый 05.11.2011, 23:11   #12   
Registered User
 
Аватар для Спартак21
 
Сообщений: 402
Регистрация: 14.11.2007
Возраст: 38

Спартак21 вне форума Не в сети
Не волнуйся)

не знаю, как Вас по имени, но очень рад, что готовы помочь и вообще советуете)))
уже перечитал огромное количество "макулатуры", и терзают лишь вопросы, в каком виде подавать данные на входы, а также какие модели обучения задать для НС.
Если ответите, то "спасибо" уж обеспечено)
  Ответить с цитированием
Старый 06.11.2011, 00:30   #13   
Форумец
 
Аватар для Spectator
 
Сообщений: 40,897
Регистрация: 27.05.2003
Возраст: 46

Spectator вне форума Не в сети
Цитата:
Сообщение от Спартак21 Посмотреть сообщение
не знаю, как Вас по имени, но очень рад, что готовы помочь и вообще советуете)))
уже перечитал огромное количество "макулатуры", и терзают лишь вопросы, в каком виде подавать данные на входы, а также какие модели обучения задать для НС.
Если ответите, то "спасибо" уж обеспечено)
Вопрос неверный.
Правильный вопрос - как оценить качество отдачи нейросети, используемое, к тому же, для ее же обучения (дальнейшего). И это важно - нейросеть, как и человек, может быть крайне эффективна на определенном уровне, но абсолютно бесполезна на следующем....
  Ответить с цитированием
Старый 06.11.2011, 18:14   #14   
Registered User
 
Аватар для Спартак21
 
Сообщений: 402
Регистрация: 14.11.2007
Возраст: 38

Спартак21 вне форума Не в сети
коллега! На мой взгляд, это отделный вопрс, также не менее важный в этом комплексе!
Если батл прольет немного света, то будет опора.
  Ответить с цитированием
Старый 07.11.2011, 00:16   #15   
Форумец
 
Сообщений: 286
Регистрация: 17.09.2010

Battle Coder вне форума Не в сети
Цитата:
Сообщение от Спартак21 Посмотреть сообщение
а также какие модели обучения задать для НС.
Ну дык это зависит от того, для чего вообще эта НС предназначена.

У нас, например, в качестве примеров было распознавание образов (задаваемых векторами, как правило ноликов и единичек хватало...), или аппроксимация функций, или прогнозирование...

Вот, например, какая-то функция есть. Из неё брали мы несколько точек с каким-то шагом. А те, что между ними, находили через НС. Для этого её обучали - то есть в матлабе есть для этого функция специальная... подавали на вход какой-то вектор (или вектора), и также в качестве аргумента вектор (или просто число, я уж не помню), которое должно получаться на выходе...

С обучаемыми данными НС работала как надо (то есть возвращала точку, удовлетворяющую функции), а с каким-то другими уже не так гладко, но похоже на правду =)


Вообще говоря, всё работало криво, и преподаватель по практике внятно объяснить, почему, и что нужно для того, чтобы было как надо, не хотел или не мог =) иногда советовал добавить нейронов в скрытом слое. или наоборот убрать...
я, кстати, так и не понял, какое количество нейронов надо выбирать в зависимости от той или иной задачи... в методичке про это не было написано.

короче, мне эта штука не очень нужна в данный момент, но если надо будет разобраться... думаю, в какой-то литературе найду ответы на все вопросы...
  Ответить с цитированием
Старый 07.11.2011, 00:18   #16   
Форумец
 
Сообщений: 286
Регистрация: 17.09.2010

Battle Coder вне форума Не в сети
Спартак21, короче, вам надо подавать на обучение какой-то вектор... и "обучать" (применять какой-то из алгоритмов обучения, тысячи их), до тех пор, пока НС не станет возвращать другой вектор (требуемый в зависимости от задачи).

И не забыть предусмотреть в алгоритме выход из цикла (или из рекурсии, что там будет), чтобы не было зацикливания (а то сеть может обучаться бесконечно...), например, количество итераций. или размер шага.
  Ответить с цитированием
Старый 07.11.2011, 17:15   #17   
Registered User
 
Аватар для Спартак21
 
Сообщений: 402
Регистрация: 14.11.2007
Возраст: 38

Спартак21 вне форума Не в сети
Battle Coder, было бы очень интересно решение задачи, условие которой приведено ниже:
есть генератор случайных чисел(ГСЧ), генерирующий целые числа от 0 до 4.
нужно создать НС, выдающую правильный с некоторой погрешностью результат следующего рэндома
На этом примере ты и расскажешь, что и почему, а я задам интересующие вопросы, как и товарищ Спектатор
Ок?
  Ответить с цитированием
Старый 14.11.2011, 19:43   #18   
Форумец
 
Сообщений: 4
Регистрация: 12.02.2011
Возраст: 32

tonytony вне форума Не в сети
Спартак21, на сайте ml-class.org есть курс видеолекций по машинному обучению, читаемых преподавателем Стэнфорда. Думаю, вы сможете много оттуда почерпнуть.

Правда, исходников нет, но какая проблема написать код, если есть алгоритм?
  Ответить с цитированием
Старый 14.11.2011, 23:08   #19   
Registered User
 
Аватар для Спартак21
 
Сообщений: 402
Регистрация: 14.11.2007
Возраст: 38

Спартак21 вне форума Не в сети
Спасибо за ссылку!
Благодарю)
проблемы в написании кода таковы:
1. соединения нейронов.
2. начальные веса, которые, по моим соображениям, в идеале тоже есть НС.
3. функция активации: те, что в большинстве книг получены методом "палец в небо".
4. реализация памяти нейрона и алгоритма её обновления.

пока эти вопросы считаю основными, т.к. они определяют НС в широком смысле, а уже следующие вопросы за ними будут определят "тонкости" сети.
  Ответить с цитированием
Старый 14.11.2011, 23:32   #20   
Форумец
 
Аватар для Spectator
 
Сообщений: 40,897
Регистрация: 27.05.2003
Возраст: 46

Spectator вне форума Не в сети
Цитата:
Сообщение от Спартак21 Посмотреть сообщение
Спасибо за ссылку!
Благодарю)
проблемы в написании кода таковы:
1. соединения нейронов.
Выбираются под задачу, объем и тип сети, доступное "железо".

Цитата:
Сообщение от Спартак21 Посмотреть сообщение
2. начальные веса, которые, по моим соображениям, в идеале тоже есть НС.
Исключительно под задачу. Хотя можно поэкспериментировать с началом и результатом.

Цитата:
Сообщение от Спартак21 Посмотреть сообщение
3. функция активации: те, что в большинстве книг получены методом "палец в небо".
Так и должно быть. НС - это нечто, в идеале, САМОСТОЯТЕЛЬНО "мыслящее".

Цитата:
Сообщение от Спартак21 Посмотреть сообщение
4. реализация памяти нейрона и алгоритма её обновления.
Это вполне осписано, выбрать есть из чего.
Я бы даже сказал - более чем.

Основная твоя задача - найти правильный способ обучения НС и ее тип. К сожалению, это уже задача со многими неизвестными. Правильно представлять НС как годовалого ребенка, которому в кратчайшие сроки надо поступить в Гарвард за тебя.... Можно пинать чтобы учил основной предмет - математику, скажем, можно стараться обучить биологии, химии, физике, экономике, чтобы был общий высокий уровень развития мозгов.
  Ответить с цитированием
Старый 15.11.2011, 23:17   #21   
Registered User
 
Аватар для Спартак21
 
Сообщений: 402
Регистрация: 14.11.2007
Возраст: 38

Спартак21 вне форума Не в сети
У тебя-то какие соображения???
Делись
  Ответить с цитированием
Старый 15.11.2011, 23:49   #22   
Форумец
 
Аватар для Spectator
 
Сообщений: 40,897
Регистрация: 27.05.2003
Возраст: 46

Spectator вне форума Не в сети
Цитата:
Сообщение от Спартак21 Посмотреть сообщение
У тебя-то какие соображения???
Делись
Я уже говорил
Мне нужны входные данные. В серьезном объеме, относительно свежие, в "готовом" виде.
Бинарник, текстовый документ - всё что можно без проблем загрузить.
Тогда я готов поэкспериментировать. Результатами эксперимента, безусловно, поделюсь.
НС я буду разрабатывать сам, на голых Сях, других способов не приемлю. Время и желание экспериментировать с НС есть, вытаскивать данные - нет.
  Ответить с цитированием
Старый 17.11.2011, 09:11   #23   
Наркоман...
 
Аватар для Shoroh
 
Сообщений: 1,858
Регистрация: 20.06.2005
Возраст: 37

Shoroh вне форума Не в сети
ну ты силен. данные эт основа сети.
  Ответить с цитированием
Старый 18.11.2011, 09:50   #24   
Registered User
 
Аватар для Спартак21
 
Сообщений: 402
Регистрация: 14.11.2007
Возраст: 38

Спартак21 вне форума Не в сети
AI

Цитата:
Сообщение от Shoroh Посмотреть сообщение
ну ты силен. данные эт основа сети.
и какой алгоритм действий???
  Ответить с цитированием
Старый 21.11.2011, 12:01   #25   
Registered User
 
Сообщений: 1,114
Регистрация: 23.06.2007
Возраст: 57

Hopkroft вне форума Не в сети
Цитата:
Сообщение от Спартак21 Посмотреть сообщение
и какой алгоритм действий???
Найди в интернете программу реализации однослойного перцептрона. Начни пока с неё.
Распознавание цифр с помощью однослойного перцептрона (с примером)
Его реализаций огромное количество. На простых примерах можешь посмотреть как работает сеть. Тем более результат сможешь проконтролировать

Если с ним не разберёшься, то стоить подумать над другими научными проблемами

P.S.
Цитата:
Сообщение от Спартак21 Посмотреть сообщение
Сударь)
Мне не требуется нейропакет, меня интересует непосредственно механизм работы персептрона на равне с функциями, которые используются в нём
Что-бы понимать механизмы иногда стоит посмотреть как работают уже готовые пакеты. Как в них это реализовано, какие тестовые примеры они дают, какие параметры дают изменить и т.д.
Неужели у тебя в училище/институте нету преподавателя компетентного в этом вопросе?!?!

P.S.S. Можно с Озона книжки заказать, если совсем туго с баблом - дуй в Никитинку. Лично я иногда так и делаю.
  Ответить с цитированием
Старый 21.11.2011, 12:30   #26   
Форумец
 
Аватар для Spectator
 
Сообщений: 40,897
Регистрация: 27.05.2003
Возраст: 46

Spectator вне форума Не в сети
Цитата:
Сообщение от Hopkroft Посмотреть сообщение
P.S.S. Можно с Озона книжки заказать, если совсем туго с баблом - дуй в Никитинку. Лично я иногда так и делаю.
Последний раз когда я был в Никитинке там были книги только 70х годов. Правда, был я там последний раз середине 00х. Новые книги были представлены, но чисто формально.
С тех пор что-то поменялось?
  Ответить с цитированием
Старый 21.11.2011, 12:51   #27   
Registered User
 
Сообщений: 1,114
Регистрация: 23.06.2007
Возраст: 57

Hopkroft вне форума Не в сети
Цитата:
Сообщение от Spectator Посмотреть сообщение
Последний раз когда я был в Никитинке там были книги только 70х годов. Правда, был я там последний раз середине 00х. Новые книги были представлены, но чисто формально.
С тех пор что-то поменялось?
Честно сказать меня пока Озон и Гугля спасает, так что про актуальность точно сказать не могу.

P.S. Было бы неплохо прикрепить тему со списком источников где можно посмотреть информацию в бумажном(может есть специализированные библиотеки, пусть даже платные) и электронном виде. А то вот мечется человек, не знает где можно посмотреть книжки и денег на покупку нету
  Ответить с цитированием
Старый 21.11.2011, 13:18   #28   
Форумец
 
Аватар для Spectator
 
Сообщений: 40,897
Регистрация: 27.05.2003
Возраст: 46

Spectator вне форума Не в сети
Цитата:
Сообщение от Hopkroft Посмотреть сообщение
P.S. Было бы неплохо прикрепить тему со списком источников где можно посмотреть информацию в бумажном(может есть специализированные библиотеки, пусть даже платные) и электронном виде.
В бумажном - смысла нет. Оттого что я прикреплю тему литература не появится. Есть несколько магазинов, в которых что-то можно найти, но о них и так все знают. А в электронном - я возражаю против тем, пропагандирующих пиратство.
В конце концов, ozon.ru никто не отменял, а у кого есть деньги и знаниие английского - amazon.com тоже никто не отменял.
Кстати, рекомендую http://www.amazon.com/s/ref=nb_sb_no...etwork&x=0&y=0 заодно и английский можно подтянуть, что программисту никак не помешает.
  Ответить с цитированием
Старый 21.11.2011, 13:33   #29   
Наркоман...
 
Аватар для Shoroh
 
Сообщений: 1,858
Регистрация: 20.06.2005
Возраст: 37

Shoroh вне форума Не в сети
Ну какой алгоритм тебе нужен?
есть у тебя 50 чисел на входе. относительно их должен например получить 1-но число на выходе.
  Ответить с цитированием
Старый 28.11.2011, 21:48   #30   
Registered User
 
Аватар для Спартак21
 
Сообщений: 402
Регистрация: 14.11.2007
Возраст: 38

Спартак21 вне форума Не в сети
ДА. Задача такова!
а потом мне усложняем: нужно узнать следующее за этим, имея выборку из этих 50
  Ответить с цитированием
Поиск в теме: 



Быстрый переход:

  Ваши права в разделе
Вы не можете создавать новые темы
Вы не можете отвечать в темах
Вы не можете прикреплять вложения
Вы не можете редактировать свои сообщения
BB коды Вкл.
Смайлы Вкл.
[IMG] код Вкл.
HTML код Выкл.


Powered by vBulletin® Version 3.8.7
Copyright ©2000 - 2024, Jelsoft Enterprises Ltd. Перевод: zCarot
Support by DrIQ & Netwind