1 Востаннє редагувалося love.is.cpp (21.11.2017 23:20:50)

Тема: Нейронні мережі.

Доброго дня. Я займаюся програмуванням. Намагаюся написати нейронну мережу на мові Python, за допомогою бібілотеки PyBrain.
Я хочу зробити нейронну мережу для розпізнавання цифр від 1 до 9. Маю картинку 150*250 пікселів, отже маю 37500 вхідних нейронів. Якщо хтось зможе, допоможіть будь ласка з  навчанням мережі. Не можу налагодити кількість скритих слоїв, так кількість нейронів у них.

2

Re: Нейронні мережі.

Прихований текст
не скритих, а прихованих, не слоїв, а шарів

а чому не TensorFlow?
https://www.tensorflow.org/get_started/mnist/beginners

тут спілкуються українці, про політику, і інше (серед них є програмісти, але дуже мало, тому не заходьте туди лише з питаннями про програмування)
https://discord.gg/Zk29v4P
Подякували: 0xDADA11C7, love.is.cpp, leofun013

3

Re: Нейронні мережі.

Навіщо створювати теми-дуплікати? Не хвилюйтесь, вашу тему і так побачать.

[x|x<-[2..],all(>0)[x`mod`y|y<-[2..x-1]]]
Подякували: love.is.cpp1

4

Re: Нейронні мережі.

Чувак, ти з політеху (того, що львівський)?

Навчаюсь вчитись, щоб навчатись.

5

Re: Нейронні мережі.

Ні, ще не навчаюся у ВУЗі. Цікавлюся нейронними мережами.

6

Re: Нейронні мережі.

дивно нік love.is.cpp, а на пітоні пише НМ

- Поганому трояну фаєрвол заважає
- Ніколи не програмуйте та не пийте пиво
Якщо ви з першого разу написали програму, в якій немає жодної помилки, повідомте про це системного програмісту: він виправить помилки в компіляторі

7

Re: Нейронні мережі.

Нічого не заважає.

8 Востаннє редагувалося ping (22.11.2017 00:32:40)

Re: Нейронні мережі.

чи не варто застосувати тут  convolutional neural network ( CNN ) ?

В той час як традиційні моделі багатошарового перцептрону (БШП) успішно застосовувалися для розпізнавання зображень, через повну зв'язність між вузлами вони страждають від прокляття розмірності[en], і, отже не дуже добре масштабуються на зображення вищих роздільностей.
Шари ЗНМ, розташовані в 3 вимірах

Наприклад, у наборі CIFAR-10 зображення мають розмір лише 32×32×3 (ширина 32, висота 32, 3 канали кольору), тому один повноз'єднаний нейрон у першому прихованому шарі звичайної нейронної мережі матиме 32*32*3 = 3 072 вагові коефіцієнти. Проте зображення 200×200 призведе до нейронів, що мають 200*200*3 = 120 000 вагових коефіцієнтів.

Такі мережеві архітектури не беруть до уваги просторову структуру даних, розглядаючи вхідні пікселі, що є далеко і близько один від одного, на рівних засадах. Очевидно, що повна зв'язність нейронів у рамках розпізнавання зображень є марнотратною, а величезна кількість параметрів швидко веде до перенавчання.

Згорткові нейронні мережі є біологічно натхненими варіантами багатошарових перцептронів, розробленими для імітації поведінки зорової кори. Ці моделі пом'якшують виклики, поставлені архітектурою БШП, використовуючи сильну просторово локальну кореляцію, присутню в природних зображеннях. На противагу до БШП, ЗНМ мають наступні відмітні ознаки:

    Тривимірні ємності нейронів. Шари ЗНМ мають нейрони, впорядковані в 3 вимірах: ширина, висота та глибина. Нейрони всередині шару є з'єднаними з невеликою областю попереднього шару, що називається рецептивним полем. Для формування архітектури ЗНМ складаються різні типи шарів, як локально, так і повноз'єднані.
    Локальна з'єднаність: відповідно до концепції рецептивних полів, ЗНМ використовують просторово локальну кореляцію шляхом застосування схеми локальної з'єднаності між нейронами сусідніх шарів. Ця архітектура таким чином забезпечує, що навчені «фільтри» виробляють найсильніший відгук до просторово локального вхідного образу. Складання багатьох таких шарів веде до нелінійних «фільтрів», що стають все більше «глобальними» (тобто, чутливими до більшої області піксельного простору). Це дозволяє мережі спочатку створювати добрі представлення дрібних деталей входу, а потім збирати з них представлення більших областей.
    Спільні ваги: В ЗНМ кожен фільтр відтворюється на усьому зоровому полі. Ці відтворені вузли використовують спільну параметризацію (вектор ваги та упередження) та формують карту ознаки. Це означає, що всі нейрони в заданому згортковому шарі виявляють в точності одну й ту ж саму ознаку. Відтворені вузли таким чином дозволяють ознакам бути виявленими незалежно від їхнього положення в зоровому полі, забезпечуючи таким чином властивість інваріантності відносно зсуву.

Разом ці властивості дозволяють згортковим нейронним мережам досягати кращого узагальнення на задачах бачення. Також допомагає й поділ ваги, різко зменшуючи кількість вільних параметрів, яких треба навчатися, знижуючи таким чином вимоги до пам'яті для роботи мережі. Зниження обсягу пам'яті уможливлює тренування більших, потужніших мереж.

https://uk.wikipedia.org/wiki/%D0%97%D0 … 0%B6%D0%B0

First, solve the problem. Then, write the code. (c)JJ
Подякували: 0xDADA11C7, leofun012

9

Re: Нейронні мережі.

Q-bart написав:

Чувак, ти з політеху (того, що львівський)?

Хм... А ви з полiтеху ?

10

Re: Нейронні мережі.

vtorgashov написав:
Q-bart написав:

Чувак, ти з політеху (того, що львівський)?

Хм... А ви з полiтеху ?

Та я то так. Просто там чув про схожий проект, де треба розпізнавати цифри, от і подумав, що це ті самі люди))

Навчаюсь вчитись, щоб навчатись.

11

Re: Нейронні мережі.

Q-bart написав:
vtorgashov написав:
Q-bart написав:

Чувак, ти з політеху (того, що львівський)?

Хм... А ви з полiтеху ?

Та я то так. Просто там чув про схожий проект, де треба розпізнавати цифри, от і подумав, що це ті самі люди))

класична задача.
зустрічається на багатьох курсах в різних варіаціях.
наприклад - https://www.kaggle.com/c/digit-recognizer

First, solve the problem. Then, write the code. (c)JJ