Оценить сложность нейронной сети для задачи
От: 0K Ниоткуда  
Дата: 30.08.11 22:09
Оценка: :)
Глубоко нейронные сети не изучал, но чисто философский интерес пробудился.

Возьмем сложную каптчу (допустим, какая есть у Google). Известно, что нейронная сеть в нашем мозгу ее распознает практически в 95% случаев.

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

Итак, имеем:

1. Картинка 5 символов 200 * 70 пикселов.
2. Могут быть 26 букв алфавита.
3. Буквы наклонены и сливаются.
4. Размер все время разный.

Пример картинки: https://www.google.com/accounts/newaccount

Нужно:

1. Распознавать картинку целиком с помощью нейронной сети (то есть 26*5 = 130 выходов). Подчеркну, что нужно распознать все символы картинки, а не по одному.
2. Добиться точности аналогичной сети в нашем разуме: то есть около 95% угадываний.

И вопрос:

Как определить нужное количество нейронов и связей между ними для этой сети? В каких пределах нужное количество нейронов? Понятно, что оно будет больше 14130 (количество входов + количество выходов). Но насколько?

Ну и практический вопрос: почему мы не можем сделать такую сеть (то есть чтобы она реально работала с такими показателями)?
Re: Оценить сложность нейронной сети для задачи
От: samius Япония http://sams-tricks.blogspot.com
Дата: 30.08.11 22:17
Оценка: +1
Здравствуйте, 0K, Вы писали:

0K>1. Распознавать картинку целиком с помощью нейронной сети (то есть 26*5 = 130 выходов). Подчеркну, что нужно распознать все символы картинки, а не по одному.

Ты хочешь сказать, что ты распознаешь гуглокапчу целиком, а не посимвольно?
Лично мне приходится на каждый символ пялиться секунд по 3-5. И слово-то не угадывается, т.к. не слово, а набор букв.
Re: Оценить сложность нейронной сети для задачи
От: x905  
Дата: 31.08.11 04:15
Оценка: +1
Здравствуйте, 0K, Вы писали:


0K>1. Распознавать картинку целиком с помощью нейронной сети (то есть 26*5 = 130 выходов). Подчеркну, что нужно распознать все символы картинки, а не по одному.


а разве не 26^5 = 11 881 376 вариантов ?
Re[2]: Оценить сложность нейронной сети для задачи
От: batu Украина  
Дата: 31.08.11 04:41
Оценка:
Здравствуйте, x905, Вы писали:

X>Здравствуйте, 0K, Вы писали:



0K>>1. Распознавать картинку целиком с помощью нейронной сети (то есть 26*5 = 130 выходов). Подчеркну, что нужно распознать все символы картинки, а не по одному.


X>а разве не 26^5 = 11 881 376 вариантов ?

Выходов достаточно 26. В принципе интересно было б попробовать
Re[2]: Оценить сложность нейронной сети для задачи
От: 0K Ниоткуда  
Дата: 31.08.11 07:09
Оценка:
Здравствуйте, samius, Вы писали:

S>Ты хочешь сказать, что ты распознаешь гуглокапчу целиком, а не посимвольно?


А я разве не нейронная сеть ? Пусть и искусственная нейронная сеть сама науччится, что ей легче распознавать посимвольно.
Re[3]: Оценить сложность нейронной сети для задачи
От: 0K Ниоткуда  
Дата: 31.08.11 07:12
Оценка: -1
Здравствуйте, batu, Вы писали:

B>Выходов достаточно 26. В принципе интересно было б попробовать


26 -- только для одной буквы. Букв 5, по этому 130.

Мне нужно, чтобы распознавание было целиком на нейронной сети, без каких-либо доп. алгоритмаов дробления символов и прочего. Мозг же нейронная сеть и как то научился распознавать. Пусть и искусственная нейронная сеть научится -- пусть сколько угодно дробит эти символы или делает что угодно, но дойдет до этого сама в процессе обучения...
Re: Оценить сложность нейронной сети для задачи
От: avpavlov  
Дата: 31.08.11 07:21
Оценка:
0K>1. Распознавать картинку целиком с помощью нейронной сети (то есть 26*5 = 130 выходов). Подчеркну, что нужно распознать все символы картинки, а не по одному.


Если ты так настойчиво подчёркиваешь, что распознавать надо все, а не каждый отдельно, то тогда 26^5 выходов. А если по одному — то 26 выходов (+ алгоритм, который будет на символы нарезать
Re[2]: Оценить сложность нейронной сети для задачи
От: 0K Ниоткуда  
Дата: 31.08.11 07:25
Оценка:
Здравствуйте, avpavlov, Вы писали:

A>Если ты так настойчиво подчёркиваешь, что распознавать надо все, а не каждый отдельно, то тогда 26^5 выходов. А если по одному — то 26 выходов (+ алгоритм, который будет на символы нарезать


Пусть нейронная сеть сама нарезает.

Главные вопросы:

1. Какого размера должна быть нейронная сеть?
2. Можно ли ее сделать парактически?
3. Как долго ее нужно будет обучать для достижения 95% угадываний?
Re[3]: Оценить сложность нейронной сети для задачи
От: samius Япония http://sams-tricks.blogspot.com
Дата: 31.08.11 07:33
Оценка:
Здравствуйте, 0K, Вы писали:

0K>Здравствуйте, avpavlov, Вы писали:


A>>Если ты так настойчиво подчёркиваешь, что распознавать надо все, а не каждый отдельно, то тогда 26^5 выходов. А если по одному — то 26 выходов (+ алгоритм, который будет на символы нарезать


0K>Пусть нейронная сеть сама нарезает.


0K>Главные вопросы:


0K>1. Какого размера должна быть нейронная сеть?

0K>2. Можно ли ее сделать парактически?
0K>3. Как долго ее нужно будет обучать для достижения 95% угадываний?
Интересно, как долго тебя пришлось бы обучать угадывать капчи целиком без обучения отдельным символам и тому что их надо разделять, указывая один из 26^5 возможных ответов, до достижения 95% угадываний?
Re[3]: Оценить сложность нейронной сети для задачи
От: gandjustas Россия http://blog.gandjustas.ru/
Дата: 31.08.11 07:40
Оценка: -2
Здравствуйте, 0K, Вы писали:

0K>Здравствуйте, avpavlov, Вы писали:


A>>Если ты так настойчиво подчёркиваешь, что распознавать надо все, а не каждый отдельно, то тогда 26^5 выходов. А если по одному — то 26 выходов (+ алгоритм, который будет на символы нарезать


0K>Пусть нейронная сеть сама нарезает.


0K>Главные вопросы:


0K>1. Какого размера должна быть нейронная сеть?

0K>2. Можно ли ее сделать парактически?
0K>3. Как долго ее нужно будет обучать для достижения 95% угадываний?

Если бы ты изучал ИНС, то знал бы что гораздо более важный вопрос — как представлять входные данные. Ведь если просто подавать картинку на вход ИНС, то мало что хорошего выйдет. нужна предобработка, аналогичная человеческому зрению, что-то вроде получения особенностей изображения, как в Open CV.
Re[4]: Оценить сложность нейронной сети для задачи
От: 0K Ниоткуда  
Дата: 31.08.11 08:08
Оценка:
Здравствуйте, gandjustas, Вы писали:

G>Если бы ты изучал ИНС, то знал бы что гораздо более важный вопрос — как представлять входные данные. Ведь если просто подавать картинку на вход ИНС, то мало что хорошего выйдет. нужна предобработка, аналогичная человеческому зрению, что-то вроде получения особенностей изображения, как в Open CV.


Изображение на сетчатки создается фокусирующей линзой (хрусталиком) и является уменьшенной картинкой (перевернутой), без всякой обработки. Обрабатывает это изображение нейронная сеть.

Точто так и в нашей задаче -- обработку изображения должна осуществить нейронная сеть.
Re[5]: Оценить сложность нейронной сети для задачи
От: gandjustas Россия http://blog.gandjustas.ru/
Дата: 31.08.11 08:52
Оценка:
Здравствуйте, 0K, Вы писали:

0K>Здравствуйте, gandjustas, Вы писали:


G>>Если бы ты изучал ИНС, то знал бы что гораздо более важный вопрос — как представлять входные данные. Ведь если просто подавать картинку на вход ИНС, то мало что хорошего выйдет. нужна предобработка, аналогичная человеческому зрению, что-то вроде получения особенностей изображения, как в Open CV.


0K>Изображение на сетчатки создается фокусирующей линзой (хрусталиком) и является уменьшенной картинкой (перевернутой), без всякой обработки. Обрабатывает это изображение нейронная сеть.

Уверен? Одна нейронная сеть? Судя по наблюдаемым механизмам восприятия информации используется гораздо более сложная система предобработки, чем ИНС.

Вообще говоря мозг не моделируется ИНС, там гораздо более сложные механизмы в гораздо большем количестве.

0K>Точто так и в нашей задаче -- обработку изображения должна осуществить нейронная сеть.

Кому должна?
Re[5]: Оценить сложность нейронной сети для задачи
От: gandjustas Россия http://blog.gandjustas.ru/
Дата: 31.08.11 08:55
Оценка: -1
Здравствуйте, 0K, Вы писали:

0K>Изображение на сетчатки создается фокусирующей линзой (хрусталиком) и является уменьшенной картинкой (перевернутой), без всякой обработки.


Кстати это неверное утверждение. Из школьного курса анатомии известно что сетчатка состоит из разных элементов, которые воспринимают разные аспекты изображения. Поэтому попытка построить ИНС, которая обрабатывает пиксели обречена на провал.
Re[6]: Оценить сложность нейронной сети для задачи
От: 0K Ниоткуда  
Дата: 31.08.11 08:58
Оценка:
Здравствуйте, gandjustas, Вы писали:

G>Уверен? Одна нейронная сеть? Судя по наблюдаемым механизмам восприятия информации используется гораздо более сложная система предобработки, чем ИНС.


А что в мозгу есть кроме нейронов и синапсов? Почему мы не можем их моделировать?

G>Вообще говоря мозг не моделируется ИНС, там гораздо более сложные механизмы в гораздо большем количестве.


Какие механизмы мы не можем моделировать?
Re[6]: Оценить сложность нейронной сети для задачи
От: 0K Ниоткуда  
Дата: 31.08.11 08:59
Оценка:
Здравствуйте, gandjustas, Вы писали:

G>Кстати это неверное утверждение. Из школьного курса анатомии известно что сетчатка состоит из разных элементов, которые воспринимают разные аспекты изображения. Поэтому попытка построить ИНС, которая обрабатывает пиксели обречена на провал.


Из палочек и колбочек. Нам достаточно палочек -- изображение монохромное. Кстати, колбочки не работают при слабом освещении.
Re[7]: Оценить сложность нейронной сети для задачи
От: gandjustas Россия http://blog.gandjustas.ru/
Дата: 31.08.11 09:04
Оценка:
Здравствуйте, 0K, Вы писали:

0K>Здравствуйте, gandjustas, Вы писали:


G>>Уверен? Одна нейронная сеть? Судя по наблюдаемым механизмам восприятия информации используется гораздо более сложная система предобработки, чем ИНС.


0K>А что в мозгу есть кроме нейронов и синапсов? Почему мы не можем их моделировать?

В компьютере ведь тоже нули и единицы, то мы то можем писать сложные программы. Вопрос не в самих нулях и единицах, а в их интерпретации. Вот интерпретацию сигналов, передающихся в мозгу мы (пока) не знаем.

ИНС — первая попытка смоделировать мозг по его физической структуре, но не очень неудачная, потому что мозг "работает" параллельно, а вычисления на ИНС последовательны и создать ИНС по масштабам аналогичную могзу приведет к неэффективности затрат. Кроме того без понимания процесса обучения мозга и интерпретации сигналов в мозгу мы не сможем сделать нечто похожее.

G>>Вообще говоря мозг не моделируется ИНС, там гораздо более сложные механизмы в гораздо большем количестве.

0K>Какие механизмы мы не можем моделировать?
Можем любые, но для начала их надо изучить, а ученым это сделать непросто. На живых людям никто не дает ставить эксперименты.
Пока процессы не изучены невозможно построить адекватную модель.
Re[6]: Оценить сложность нейронной сети для задачи
От: Don Reba Канада https://stackoverflow.com/users/49329/don-reba
Дата: 31.08.11 09:04
Оценка:
Здравствуйте, gandjustas, Вы писали:

G>Кстати это неверное утверждение. Из школьного курса анатомии известно что сетчатка состоит из разных элементов, которые воспринимают разные аспекты изображения. Поэтому попытка построить ИНС, которая обрабатывает пиксели обречена на провал.


"Аспекты изображения" воспринимаются в зрительной коре. Насчёт сетчатки, ОК, как ни странно, прав.
Ce n'est que pour vous dire ce que je vous dis.
Re[7]: Оценить сложность нейронной сети для задачи
От: gandjustas Россия http://blog.gandjustas.ru/
Дата: 31.08.11 09:05
Оценка:
Здравствуйте, 0K, Вы писали:

0K>Здравствуйте, gandjustas, Вы писали:


G>>Кстати это неверное утверждение. Из школьного курса анатомии известно что сетчатка состоит из разных элементов, которые воспринимают разные аспекты изображения. Поэтому попытка построить ИНС, которая обрабатывает пиксели обречена на провал.


0K>Из палочек и колбочек. Нам достаточно палочек -- изображение монохромное. Кстати, колбочки не работают при слабом освещении.


Вот видишь, уже получается что изображение попадающее в мозг состоит не из пикселей, а из каких-то других параметров, а неизвестно какая еще обработка происходит в мозгу до принятия решения о том что за цифру человек видит.
Re: Оценить сложность нейронной сети для задачи
От: Sorc17 Россия  
Дата: 31.08.11 09:55
Оценка:
Здравствуйте, 0K, Вы писали:

0K>Возьмем сложную каптчу (допустим, какая есть у Google). Известно, что нейронная сеть в нашем мозгу ее распознает практически в 95% случаев.


Никто не знает "что в нашем мозгу", не понимает как он работает, и говорить что в нем нейронная сеть — не верно. Некоторые отдельные части человеческой нервной системы действительно отдалённо напоминают так называемые нейронные сети, которые применяются в IT для распознавания образов в частности.
Для нас [Thompson, Rob Pike, Robert Griesemer] это было просто исследование. Мы собрались вместе и решили, что ненавидим C++ [смех].
Re[4]: Оценить сложность нейронной сети для задачи
От: batu Украина  
Дата: 31.08.11 10:25
Оценка:
Здравствуйте, 0K, Вы писали:

0K>Здравствуйте, batu, Вы писали:


B>>Выходов достаточно 26. В принципе интересно было б попробовать


0K>26 -- только для одной буквы. Букв 5, по этому 130.


0K>Мне нужно, чтобы распознавание было целиком на нейронной сети, без каких-либо доп. алгоритмаов дробления символов и прочего. Мозг же нейронная сеть и как то научился распознавать. Пусть и искусственная нейронная сеть научится -- пусть сколько угодно дробит эти символы или делает что угодно, но дойдет до этого сама в процессе обучения...

А по одной букве распознавать религия не позволяет? Или распознавание второй буквы должно отличаться от распонзнавания первой?
Подождите ...
Wait...
Пока на собственное сообщение не было ответов, его можно удалить.