Свертка и ядро свертки

Статус
Закрыто для дальнейших ответов.

Alexey Shadrin

Участник
Топикстартер
Сообщения
9 260
Реакции
1 190
Господа, в процессе перевода материалов по зрительному восприятию возникла проблема: ваш покорный в силу недостатка образования напрочь не понимает смысл термина "свертка".

Разумеется, прежде чем поднять тему, я прочел несколько статей, в частности в Вики. Не понял абсолютно ничего. Что сворачивается? Куда? Зачем?

Более того, оказывается "свертка чего-то с чем-то". Как можно что-то с чем-то свернуть? Свернуть можно шею, свернуть можно с пути, можно свернуться в калачик, но как можно свернуть паровоз с помидором?

Буду очень признателен за разъяснения.

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

Спасибо!
 

Nikolay_Po

Частично освоивший
15 лет на форуме
Сообщения
588
Реакции
194
Ответ: Свертка и ядро свертки

Алексей, для примера сделал небольшой файлик в MS Excell, см. вложение.

Нажимая на клавиатуре F9 каждый раз Вы будете генерировать новую пару случайных функций. Нижний график - результат свёртки.
Попробуйте прокрутить лист вниз так, чтобы был виден только результат, без самих функций. Нажимайте F9. Когда получите максимальное положительное значение при нулевом сдвиге, посмотрите на функции - окажется, что они очень похожи. И чем выше будет пик - тем более похожи функции.
Если же пик смещён влево или вправо - значит одна функция похожа на другую, только похожее место одной функции сдвинуто относительно другой. На сколько - видно по шкале результата.

Если в обе таблицы с исходными функциями прописать одну и ту же, в результате будет автокорреляционная функция. То есть, свёртка сигнала самого с собой есть автокорреляционная функция. И чем больше пик автокорреляционной функции при нулевом сдвиге относительно остальных значений - тем легче такой сигнал обнаружить на фоне шумов и точно определить его местоположение (время).
 

Вложения

  • Пример свёртки дискретных функций.zip
    5.3 КБ · Просм.: 1 402

Alexey Shadrin

Участник
Топикстартер
Сообщения
9 260
Реакции
1 190
Ответ: Свертка и ядро свертки

Спасибо, понажимал. Забавно. Не понял АБСОЛЮТНО ничего... :embarasse

Очень прошу учесть возраст, образование и склад психики.

Итак.

1. Есть задача: добиться такого-то результата.

2. Чтобы решить эту задачу применяется т.н. операция свертки.

3. Операция свертки -- это...

4. При выполнении операции свертки используется т.н. ядро свертки. Ядро свертки -- это...
 

Nikolay_Po

Частично освоивший
15 лет на форуме
Сообщения
588
Реакции
194
Ответ: Свертка и ядро свертки

  1. Есть два сигнала во времени. 1-й и 2-й. Задача: определить, похож ли 1-й сигнла на 2-й и в каких местах.
  2. Для этого производим свёртку сигналов.
  3. Операция свёртки это зависимость интеграла по времени произведения 1-го сигнала на 2-й от сдвига по времени второго сигнала относительно первого. Для свёртки берётся копия первого сигнала. К ней прикладывается копия второго сигнала с определённым сдвигом. Копии сигналов перемножаются. Берётся интеграл по времени от этого перемножения. Значение интеграла наносится на график напротив выбранного сдвига. Затем сдвиг меняется, сигналы опять перемножаются. Опять берётся интеграл от произведения сигналов и наносится на график. Так повторяем для всех значений сдвигов. Полученый график и будет свёрткой.
  4. Увы, просто не помню, что такое ядро свёртки...

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

Попробуйте всё же понажимать F9 в файлике и получите пик хотя бы +2.5 или больше.
Попробуйте так же вручную ввести в одну функцию 0 0 1 0 0 0 0 0, в другую 0 0 0 0 0 1 0 0. Увидите результат в виде динственного пика. Место пика на результате показывает насколько 2-я функция сдвинута относительно первой.
 

Alexey Shadrin

Участник
Топикстартер
Сообщения
9 260
Реакции
1 190
Ответ: Свертка и ядро свертки

Nikolay_Po сказал(а):
Операция свёртки это зависимость интеграла по времени произведения 1-го сигнала на 2-й от сдвига по времени второго сигнала относительно первого.
Мда... Мне этого не осилить...
Спасибо.
 

Nikolay_Po

Частично освоивший
15 лет на форуме
Сообщения
588
Реакции
194
Ответ: Свертка и ядро свертки

Посмотрите сообщение выше. Я дополнил.
ИМХО, график незря строил - поиграйтесь с единичками и ноликами в качестве значений исходных функций - поймёте суть.
 

igors

Участник
Сообщения
1 736
Реакции
378
Ответ: Свертка и ядро свертки

Свертка это операция над функциями (есть требовния на функции, интегрируемость по Лебегу) подобная умножению чисел. И все свойства умножения эта опреция имела, кроме единичного элемента. А это неотъемлемое свойство мультипликативной операции. И вот в 1923 году, физик Поль Адриен Морис Дирак ввел в обиход δ-функцию Дирака, которая и играет роль 1-го элемента. Это породило целое направление математики - обобщенные функции, обобщенные решения и т.д.
Интуитивно должно быть понятно (если не понятно, то интуицию нужно тренировать), что если функции имеют близкие значения, то их произведение большое, а если их значения здорово отличаются - то произведение маленькое (в смысле свертки).
А ядр в Вашем контексте, это второй сомножитель.
 

Alexey Shadrin

Участник
Топикстартер
Сообщения
9 260
Реакции
1 190
Ответ: Свертка и ядро свертки

Так-так-так... пялюсь на графики Николая, перевариваю сказанное Игорем и, кажется, начинает доходить.

Господа, верно ли я понимаю следующее?:

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

2. Если первое верно, то можно выявить эти отличия, перемножив эти функции и посмотрев на результат.

Верно?
 

splxgf

12 лет на форуме
Сообщения
7 744
Реакции
3 425
Ответ: Свертка и ядро свертки

Фрагменты текста на языке оригинала помогли бы лучше понять о чем идет речь.
 

Nikolay_Po

Частично освоивший
15 лет на форуме
Сообщения
588
Реакции
194
Ответ: Свертка и ядро свертки

Alexey Shadrin сказал(а):
Так-так-так... пялюсь на графики Николая, перевариваю сказанное Игорем и, кажется, начинает доходить.

Господа, верно ли я понимаю следующее?:

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

2. Если первое верно, то можно выявить эти отличия, перемножив эти функции и посмотрев на результат.

Верно?
В общем, верно. Действительно, результат свёртки показывает в явном виде уровень похожести/непохожести исходных функций при определённом их сдвиге между собой. То есть, положительный экстремум на максимуме указывает на такой относительный сдвиг, при котором функуции будут максимально похожи друг на друга, но не в одной конкретной точке, а на всём перекрытии в целом. Очень хороший пример - поиск координат известного фрагмента изображения на известном целом изображении.
 

Alexey Shadrin

Участник
Топикстартер
Сообщения
9 260
Реакции
1 190
Ответ: Свертка и ядро свертки

Nikolay_Po сказал(а):
В общем, верно. Действительно, результат свёртки показывает в явном виде уровень похожести/непохожести исходных функций при определённом их сдвиге между собой.
Что значит "сдвиг"? Кто куда сдвинулся? Спасибо.
 

igors

Участник
Сообщения
1 736
Реакции
378
Ответ: Свертка и ядро свертки

Alexey Shadrin сказал(а):
Что значит "сдвиг"? Кто куда сдвинулся? Спасибо.
Ядро сдвинулось.
Простой физической и понятной интерпретацией свертки является спектрофотометр. Одна функция это спектральный сигнал и разложив его в спектр в пространстве ( с помощью диф. решетки) мы вырезаем в нем с помощью шели небольшой диапазон, а приемник это интегрирует. Перемещая шель по спектру в пространстве мы и делаем сдвиг.
Т.к. свертка это функция, чтобы получить её значение в точке Y, мы ноль ядра сдвигаем в точку Y и уже после проводим интегрирование.
Часто вырезание оптическим фльтром из спекра и интегральное измерение сигнала называют сверткой, но так мы получаем только 1 точку этой функции. Если бы оптический фильтр был перестраеваемый, то мы бы могли постоить всю зависимость.
 

igors

Участник
Сообщения
1 736
Реакции
378
Ответ: Свертка и ядро свертки

Alexey Shadrin сказал(а):
Что такое ядро? Спасибо.
Алексей, Вы ведь смотрели определение свертки в викпедии, одна функция под интегралом как есть, а вторая сдвинута на Y, Она и есть ядро. Но свертка операция коммутативная, это наш выбор кого сдвигать, результат не измениться. Я писал про спектрофотометр, реально мы двигаем не шель а дифрешетку, но результат не меняется.
 

Alexey Shadrin

Участник
Топикстартер
Сообщения
9 260
Реакции
1 190
Ответ: Свертка и ядро свертки

igors сказал(а):
Алексей, Вы ведь смотрели определение свертки в викпедии,
Смотрел, но ничего не понял.
 

Alexey Shadrin

Участник
Топикстартер
Сообщения
9 260
Реакции
1 190
Ответ: Свертка и ядро свертки

igors сказал(а):
вторая сдвинута на Y, Она и есть ядро.
Если я взял кастрюлю и сдвинул ее на 5 см вправо, то почему она превращается в ядро, а не остается кастрюлей?
 

igors

Участник
Сообщения
1 736
Реакции
378
Ответ: Свертка и ядро свертки

Alexey Shadrin сказал(а):
Смотрел, но ничего не понял.
А что Вы хотите понять? Вот как Вы понимаете таблицу умножения?
Используете её каждый день.
 

Alexey Shadrin

Участник
Топикстартер
Сообщения
9 260
Реакции
1 190
Ответ: Свертка и ядро свертки

igors сказал(а):
А что Вы хотите понять?
Какие цели преследует операция свертки? Зачем ее выдумали? Какой от нее прок? Почему такое дурацкое название? Что свертывается? И зачем для того, чтобы что-то свернуть нужно ядро? Причем тут сдвиг, если речь о свертывании? Как можно свернуть что-то с чем-то?
 

igors

Участник
Сообщения
1 736
Реакции
378
Ответ: Свертка и ядро свертки

Alexey Shadrin сказал(а):
Какие цели преследует операция свертки? Зачем ее выдумали? Какой от нее прок? Почему такое дурацкое название? Что свертывается? И зачем для того, чтобы что-то свернуть нужно ядро? Причем тут сдвиг, если речь о свертывании? Как можно свернуть что-то с чем-то?
Прок очень большой.
Во первых эта операция отражает в пространстве-времени умножение Фурье образов.
Во вторых имеет огромное значение в основах натурофилософии. А имено с появлением в обиходе δ-функцию Дирака, которую считают математической моделью материальной точки, именно операция свертки наделяет эту материальную точку физическими свойствами. Можно и так сказать сворачивает пространство в точку.
 

igors

Участник
Сообщения
1 736
Реакции
378
Ответ: Свертка и ядро свертки

Алексей наверное знаете Castom фильтр в фотошопе, вот он делает свертку изображения с маской, если маска симметрична. Маска и является ядром. Почти любой другой фильтр фотошопа можно описать подходящей маской.
 
Статус
Закрыто для дальнейших ответов.