Концепция перцептрона.
Перцептрон(от англ. to perception - восприятие) - это самая первая модель нейронной сети, состоящая из всего одного нейрона, которая разрабатывалась в 1950-ых и 1960-ых учёным Френком Розенблаттом, вдохновлённым более ранней работой Уолтера Питтса и Уоррена Мак-Каллока.
Сегодня основной моделью нейрона является сигмоидный нейрон, о котором мы поговорим позже.
Идея состояла в том, чтобы подавать на вход некоторые числа, 0 или 1, проводить над ними некоторые операции, и таким образом делать какие-то решения.
Розенблатт предложил простое правило вычисления результата: он придумал "веса" - вещественные числа
w1, w2, … ,
говорящие о важности соответствующего входа для выхода.Другими словами, каждой стрелочке между входом и перцептроном соответствует число, делающее свой вклад в то, что получится на выходе.
Выход нейрона - число 0 или 1, определяющееся по тому, больше ли или меньше взвешенная сумма
var inputs:Array = [false, true, false]; //в AS3 при арифметических операцияъ true соответствует число 1, а false 0, соответственно при умноженни на true мы получаем умножение на 1, а при умножении на false мы получаем умножение на 0. var weights:Array = [1, 2.5, 1]; var sum:Number = 0; for(var i:int = 0; i < inputs.length; i++) sum += inputs[i]*weights[i];
var threshold:Number = 2; var output:Boolean; if(sum < threshold) output = false; else output = true;
Хотите больше интуиции?
Давайте представим, что приближаются выходные, и вы услышали, что в вашем городе собираются проводить сырный фестиваль. Вы любите сыр, и решаете, идти вам на фестиваль или нет.
Пускай первый вход(inputs[0]) говорит нам, хорошая ли сегодня погода.
0(false) = погода плохая
1(true) = погода хорошая
Второй вход(inputs[1]) говорит нам, хочет ли ваша половинка пойти с вами:1(true) = погода хорошая
0(false) = не хочет
1(true) = хочет
0(false) = рядом нет остановок
1(true) = рядом есть остановка
Но возможно, вы просто ненавидите плохую погоду, и ни в коем случае не пошли бы на фестиваль, если погода плохая. Вы можете смоделировать перцептрон для подобного принятия решений. Один из способов это сделать - выбрать вес weights[0]=6 для погоды, а weights[1]=2 и weights[2]=2 для других условий. Большее значение weights[0] подчёркивает то, что погода значит многое для вас, намного больше, чем присутствие или отсутствие вашей половинки, или близость общественного транспорта. Наконец, предположим, что вы выбираете порог 5 для перцептрона. Учитывая эти выборы, перцептрон реализует желаемую модель принятия решений, выводя 1 когда погода хорошая, 0, когда погода плохая. Не имеет значения, хочет ли пойти с вами ваша половинка, или присутствие рядом транспорта.
Изменяя значение этих весов и порога, мы можем получить разные модели выбора решений. Например, предположим, мы выбрали порог 3. Таким образом, перцептрон бы решил, что вы должны идти на фестиваль, если погода хорошая или когда и рядом есть остановка общественного транспорта, и ваша половинка хочет с вами присоединиться. Другими словами, это была бы совсем другая модель принятия решений. Опускание порога говорит, что вы больше хотите пойти на фестиваль.
Источник
Текст взят отсюда
http://neuralnetworksanddeeplearning.com/chap1
(на мой взгляд, это - лучшее объяснение работы перцептрона)
Всего комментариев 0
Комментарии
Последние записи от ZackMercury
- Вывод формулы для бесконечного цикла. (11.01.2019)
- Как заменить цикл на формулу. (10.01.2019)
- Конечные и бесконечные суммы, Ч. 1 (08.01.2019)
- Как легко запомнить тригонометрические функции (07.01.2019)
- Движение по треугольнику, квадрату, пентагону, хексагону, ... (05.01.2019)