Свёртка и взаимная корреляция
Проект с пингвинами
Проект использует 342 записи Palmer с нужными измерениями: 240 для обучения, 102 для проверки. Выбранные примеры для обучения определяют масштабирование и параметры модели. Исходный CSV
Этот проект обучает веса с помощью softmax, в отличие от лаборатории на главной странице, где используются ближайшие средние по видам. Те же измерения пингвинов, но разные методы классификации. Предсказания могут различаться.
Фреймы и разреженные сигналы · Кодируют или восстанавливают сигналы с помощью фреймов и словарей.
Из длины клюва и крыла вычитаем средние по обучающим примерам, затем делим на их стандартные отклонения. Получается вектор из двух чисел.
Рассмотрите понятие рядом с проектом: предположения источника могут отличаться. Эти наблюдения не доказывают теорему.
Вход: 12 × 2; Проверка на новых данных: 102 · #58 · 40.6 мм, 193 мм. Известный ответ: Адели; Прогноз: Адели · [≈0,7383; ≈0,2444; ≈0,01737].
Используется в разделах источника: 6.3 Разбор и восстановление
Скалярное произведение со свёрнутым фильтром равно скалярному произведению с соответствующей взаимной корреляцией.
Это вычисление объясняет соответствующее выражение источника.
Пример формулы источника
Иллюстрация · Численное равенство иллюстрирует конечное циклическое тождество; оно не доказывает общую формулу фреймлетов.
Обозначения
- Сигнал на конечной циклической группе.
- Вектор анализа.
- Оконный фильтр, дополненный нулями.
- Циклическая свёртка с дополненным фильтром.
- Взаимная корреляция.
- Евклидово скалярное произведение.
Пример формулы источника
Этот пример использует свои входные данные и предположения. Его изменение не меняет проект.
Измените значение или код и запустите пример. Это конечная иллюстрация, а не доказательство теоремы.
Поток данных в этом примере
Код изменён. Сбросьте его, чтобы вернуть схему примера.
Вы выбираете
input.first= 2
Начальные значения в коде
x=[1, 2, 3]u=[0, 1, 0]
Вычисляется здесь
Выражение результата: {
x,
u,
v,
conv,
correlation,
convolutionInner: dot(x, conv),
correlationInner: dot(u, correlation),
}
v=[input.first, 1, 0]Использует:input.firstconv=u.map((_, i) => u.reduce((s, z, j) => s + z * v[(i - j + 3) % 3], 0))Использует:u,vcorrelation=x.map((_, i) => v.reduce((s, z, j) => s + z * x[(i + j) % 3], 0))Использует:x,v
Возвращает
x- массив (3 элементов): [1, 2, 3]
u- массив (3 элементов): [0, 1, 0]
v- массив (3 элементов): [2, 1, 0]
conv- массив (3 элементов): [0, 2, 1]
correlation- массив (3 элементов): [4, 7, 7]
convolutionInner- 7
correlationInner- 7
Прочитайте числа из input и верните результат. Основы JavaScript.
Результат
Техническая формулировка
Пример использует три циклические позиции и окно длины 2, дополненное одним нулём. Вычисляются оба скалярных произведения и полный вектор корреляции.
Источник: Выражение из статьи