Перейти к содержанию
    

getch

Участник
  • Постов

    117
  • Зарегистрирован

  • Посещение

Весь контент getch


  1. Ух, так и не понял про половинки. Зачем они? И почему некорректно пробежаться по точками излома и точкам слева-справа?
  2. Для двухмерного случая надо минимизировать: Sum(|x * a + y * b|). Рассматриваем только один из четырех случаев: x + y = 1. Для каждого члена суммы излом будет только в одной точке: x = b / (b - a). Про вычитание/сложение половинок слева/справа от излома не понял. P.S. Если минимум находится в одном из изломов, то достаточно же пробежаться по всем изломам и найти минимум: посчитать сумму для каждой точки излома и выбрать минимальную.
  3. Про то, что это "галочка"с минимумом в нуле - ясно. Я, видимо, какую-то очевидность в ваших рассуждениях не могу уловить.
  4. Прошу, поясните свое решение для минимизации средне-абсолютной ошибки: Даже для двухмерного случая не понял (выделил).
  5. Элементы векторов NewV1 и NewV2 находятся в диапазоне (-1;1). Раз сумма квадратов элементов NewV1 < суммы квадратов элементов NewV2, то отсюда же должно следовать, что и сумма модулей элементов NewV1 < суммы модулей элементов NewV2. А на картинке это не так. Я бы понял, если бы элементы NewV1 и NewV2 вылезали за диапазон [-1;1], но они все внутри. P.S. Представьте, что я ничего не говорил про V1 и V2. А сразу показал NewV1 и NewV2.
  6. Спрошу еще, мне непонятен сей момент: Как такое может быть в данном случае, чтобы средне-квадратичная ошибка была меньше у NewV1 (в сравнении с NewV2), а средне-абсолютная - больше? Ведь по графикам видно, что и NewV1 и NewV2 находятся в диапозоне (-1; 1).
  7. Под вечер, наверное, туплю. Как учесть нормировку в векторе полученных коэффициентов? Точно, ступил. Нулевая корреляция - это же нулевое скалярное произведение векторов. Т.е. они ортонормированы. И соответственно угол 45. Спасибо, действительно, смешной вопрос.
  8. Так это решение я написал выше. И оно делает одинаковые ковариации, но не корреляции на случай несовпадающих исходных дисперсий. P.S. Не пойму, почему при минимизации дисперсии суммы двух векторов с одинаковой дисперсией весовые коэффициенты всегда равны? P.P.S. Интересное наблюдение, для двух сигналов с КК = 0 существует сигнал, который имеет одинаковый КК к исходным, и КК далеко не нулевой (у себя на примере получил > 0.7)
  9. Очень интересное свойство у решения, точнее у получившегося сложенного сигнала (NewVector): 1. ковариации NewVector c любым исходным сигналом равны. При этом обязательность условия "АБСОЛЮТНЫХ" не нужна. 2. Если дисперсии исходных сигналов равны, то из п.1 следует, что коэффициент корреляции NewVector c любым исходным сигналом совпадает. P.S. Интересно, как сложить сигналы, чтобы получившийся сигнал имел одинаковый коэффициент корреляции с исходными, даже если дисперссии исходных сигналов неравны...
  10. Вы, видимо, ветку не читали. 1. Уважаемый Oldring, привел очень быстрое и простое решение для случая, когда сумма КВАДРАТОВ весовых коэффициентов равна единице. 2. Постом выше написано, как решается задача, когда сумма коэффициентов равна единице. 3. И там же, как можно решить задачу (медленно, но работает), когда сумма МОДУЛЕЙ весовых коэффициентов равна единице. 4. Также в ходе обсуждения ставилась задача уменьшения не средне-квадратичной ошибки (дисперсии), а средне-абсолютной ошибки. Видение решения такой задачи уважаемый Oldring привел для двухмерного случая.
  11. Пока решение такое (правильное, но медленное): 1. Сначала решается задача для условия, что сумма коэффициентов (не их модулей) равна единице. 1.1 Составляется ковариационная матрица из столбцов исходной. 1.2. Берется обратная. 1.3. i-й искомый весовой коэффициент равен сумме элементов i-го столбца обратной матрицы, деленной на сумму всех элементов обратной матрицы. 1.4. Дисперсия, которую мы минимизировали, равна единице, деленной на сумму всех элементов обратной матрицы. 2. Используем решение выше для решения задачи, где сумма МОДУЛЕЙ коэффициентов равна единице. 2.1 "Перебираем" (есть свои оптимизации, но все равно не особо быстро) все варианты. Если коэффициентов N, то количество вариантов 2^N. Таким образом находим решение. Для N = 10 - работает быстро. А вот для больших N - плохо.
  12. Поторопился, решение неправильное.
  13. Выходит, мы не поняли друг друга... С полной формулировкой, что привел выше, каким видится Вам решение? P.S. Возможно, мой пост с решением выглядит, как упрек или тыканье носом. На самом же деле хотел поделиться своим результатом изучения основ линейной алгебры, учиться которой Вы рекомендовали.
  14. Ссылка на этот пост. Выдержка из него:
  15. Ага, прикол оценил. Вот полная формулировка задачи: Найти такой вектор V, чтобы дисперсия вектора (InMatrix*V) была минимальна. При этом сумма АБСОЛЮТНЫХ значений элементов вектора V равна единице. (Решение с условием "сумма КВАДРАТОВ равна единице" Вами ранее было предоставлено) Мат. ожидание столбцов матрицы InMatrix равно нулю.
  16. Сумма абсолютных значений весовых коэффициентов равна единице.
  17. Спасибо, задачу решил. Решение оказалось значительно проще:
  18. Но как же так, ведь регрессия формулируется так: X1 = V2 * X2 + ... + Vn * Xn + E, где E имеет мин. дисперсию. Здесь E = D / V1 Приведите, пожалуйста, простой невырожденный контрпример.
  19. Почему-то понять не могу: моя задача имеет решение V1 * X1 + V2 * X2 + ... + Vn * Xn = D - мин. дисперсия. Значит это решение регрессии: X1 = D / V1 - X2 * V2 / V1 - ... - Xn * Vn / V1. Если возможно, приведите какой-нибудь простой невырожденный пример, чтобы понять, в каком месте головы у меня гвоздь.
  20. Моя задача с нормировкой легко сводится к задаче с выделенным одним коэффициентом в качестве единицы. А решение моей задачи через SVD видится гораздо более ресурсоемким.
  21. Получается тогда, что ваш алгоритм гораздо проще известного решения многомерной линейной регрессии, гораздо быстрее выполняется. Вообщем, явно лучше. И странно, что в случае довольно обсосанной многомерной линейной регресси он не упоминается.
  22. Объясните, пожалуйста, чем поставленная задача отличается от многомерной линейной регрессии. Там задача решается по МНК через сингулярное разложение. Вы же нашли решение, вроде, той же задачи, гораздо более простое. Что я не понимаю?
  23. Нормирую же вектор весовых коэффициентов условием, что сумма их абсолютных значений равна единице. В идеале хотелось бы получить И максимальную частоту (плохо владею терминологией ЦОС) суммарного сигнала. Т.е. суммарный сигнал должен максимальное количество раз пересечь свое МО. Минимизация дисперсии - это не задача максимизации частоты. Но ее решение на моих данных показывает довольно хорошие результаты: не получается так, что сигнал долго находится выше МО, затем долго - ниже. МО относительно часто пересекается. Формализовать (чтобы потом можно было заняться оптимизационной задачей максимизации) частоту суммарного сигнала пока не могу. Похоже требуется разложить суммарный (возможно, достаточно только входные) сигнал на гармоники. Разложение Фурье, наверное (эта тема в парктическом применении мне мало знакома), стоит применять только на больших выборках сигнала. Решение же задачи минимизации дисперсии в виде вектора весовых коэффициентов позволяет говорить о линейных взаимовязях входных данных не только на качественном уровне (коэффициенты корреляции), но и на количественном. Можно оценивать степень линейных взаимосвязей сразу многих входных сигналов.
  24. Не имею дело с гауссово распределенными величинами. Более того, эти величины нестационарны. Но, что интересно, определенная линейная сумма нестационарных величин при минимизации дисперсии показывает очень хорошее распределение... Понимаю, что линейная связь в академическом опеределении - это мера угла между векторами. Но это определение мне не нравится на интуитивном уровне. По мне так, линейная связь - это возможность уменьшения дисперсии линейной суммы векторов. Сумма абсолютных значений весовых коэффициентов которых равна единице.
×
×
  • Создать...