На главную Наши проекты:
Журнал   ·   Discuz!ML   ·   Wiki   ·   DRKB   ·   Помощь проекту
ПРАВИЛА FAQ Помощь Участники Календарь Избранное RSS
msm.ru
! правила раздела Алгоритмы
1. Помните, что название темы должно хоть как-то отражать ее содержимое (не создавайте темы с заголовком ПОМОГИТЕ, HELP и т.д.). Злоупотребление заглавными буквами в заголовках тем ЗАПРЕЩЕНО.
2. При создании темы постарайтесь, как можно более точно описать проблему, а не ограничиваться общими понятиями и определениями.
3. Приводимые фрагменты исходного кода старайтесь выделять тегами code.../code
4. Помните, чем подробнее Вы опишете свою проблему, тем быстрее получите вразумительный совет
5. Запрещено поднимать неактуальные темы (ПРИМЕР: запрещено отвечать на вопрос из серии "срочно надо", заданный в 2003 году)
6. И не забывайте о кнопочках TRANSLIT и РУССКАЯ КЛАВИАТУРА, если не можете писать в русской раскладке :)
Модераторы: Akina, shadeofgray
Страницы: (3) [1] 2 3  все  ( Перейти к последнему сообщению )  
> [Метод наименьших квадратов]Приглашаю подумать
    Мысль мне давно в голову засела. Что такое МНК? Метод, позволяющий провести кривую заданного типа рядом с экспериментальными точками. Чтобы получить коэффициенты, мы занимаемся минимизацией функционала  Sum_1_N (  ( y_i- f(x_i))^2 )
    Но почему именно "квадратов"? Почему не 4 степеней, или 10х или 100ых?
    Можно же написать Sum_1_N (  ( y_i- f(x_i))^(2*k) )
    И совсем не очевидно, что при k>1 результат будет хуже, чем при k=1.
    То есть, кривая может лежать "ближе" к заданным точкам .
    Я попробовал на Excel'e подогнать к набору из 10 точек параболу по М4К и М6К
    М4К по виду лучше легла, чем МНК.
    (мининизировал Solver'ом)

    Препы в Институте отмазывались, что МНК придумали потому, что коэффициенты для прямой хорошо им находятся. Это и понятно - мы их явно можем вытащить из частных производных от Sum
    Но это имхо не ответ.

    Еще в статистике есть теорема, что если точки от кривой раскиданы по Гауссу, то МНК доставляется наименьшая дисперсия для кривой. Тоже не удовлетворяет меня.

    Кто-нибудь скажет, что-то ценное?
    Понимаю, что тема скорее для математика, а не программерская, но может кто шарит.

      Цитата kms, 12.05.02, 21:54:05

      Понимаю, что тема скорее для математика, а не программерская, но может кто шарит.


      вроде этот раздел форума как раз для этого и предназначен:))

      мы в универе вот только к нему подошли, так что настолько глубоко я в нем не шарю.. но насколько я понял, это почти оптимально с точки зрения качество/производительнось. чтобы было приемлемое приближение и все легко находилось:))
        Дело в том, что препады в некоторй степени правы. Днйствительно при увеличении степени вычисление коэфф. затрудняется. А на сколько я помню из университетской практики наша профессура всегда гордилась своими умственными способностями, они как мы не пользовались компутерами, а считали все на листочках.  ;D
          Addon:
          Выбирай и делай то, что тебе самому по душе и если позволяют возможности. 8)
            Весь вопрос в том, какие данные мы собираемся апроксимировать, так если эксперементальные точки лежат практически на прямой, то лучше воспользоваться МНК (апроксимировать прямой), в других случаях лучшее приблежене будет если апроксимировать параболой.
            Но чем больше степень полинома, тем больше вычислений  :(
              Кто же знает где они лежат, на прямой или на окружности. ;D ;D ;D
                Ты...
                У тебя есть несколько точек полученых в ходе эксперемента. Ты смотришь как они лежат (
                Цитата GrAnd, 18.05.02, 08:05:24
                на прямой или на окружности. ;D ;D ;D

                ) и апроксимируешь
                  А если их около сотни ;D ;D ;D Дело в том, что начинать аппроксимацию  надо с самого лажового метода и при не получении необходимого приближения усложнять методику. И рассматривать где лежат точки не имеет никакого смысла.
                    Кроме МНК существуют метод моментов, метод максимального правдоподобия, метод минимальных модулей, метод коллокаций и мног ещё чего. Во многих случаях МММ (минимизируется максимальное отклонение экспериментальных точек от графика) визуально выглядит лучше. Почитайте труды Великого геометра, создателя метода,  и тогда многое станет ясно. МНК решает более широкий круг задач, чем тот, который Вы для него отвели. И как часто бывает - недостатки метода есть продолжение достоинств.
                      Если я правильно помню идею МНК, то суть его в том, что мы минимизируем отклонение. Почему квадрат? Потому что степень небольшая, уравнение выводится просто. Можно было бы и модуль отклонения - но он не дифферинцируется :(. Сами вспомните, как метод получается - пишем [C0f0 + .. + CnFn]^2->min, дифференцируем по всем переменным, получаем систему - вот и все. Зачем усложнять - очень часто усложнение не оправдывается.
                        Ты прав. можно использовать не только вторую степень, но вообще любую. Выбор степени зависит от пространства, в котором проводится аппроксимация. почитай про функциональный анализ. если не найдешь - пиши на мыло.
                          2WseslaW

                          ты чо, смеёшься?? посмотри на дату ;D
                            Да, не думал, чо тема вызовет столько откликов за 3 года :)
                            И тем не менее, никто достаточно не аргументировал, почему МНК лучше не с точки зрения вычислительной сложности, а как приближение кривой к точкам..
                            Про метод моментов поищу, мне представляется, что это нечто похожее на увеличение степени.
                              а ты чо, тот самый кмс 3 года спустя?? ;D

                              кстати не 3, а 1 ;D ;D

                              и вобще, не следует путать метод наименьших квадратов и линейную регрессию. наименьшими квадратами можно приближать какой угодно функцией, хоть суммой логарифма с гиперболическим косинусом. более того, мнк - ето вовсе даже не метод, а просто способ вычисления расстояния между двумя функциями. для линейной регрессии минимум находится аналитически, для других приближений его ищут различными _методами_ вроде градиентного спуска, сопряжённых градиентов, ньютона-рафсона, ....... .
                                >а ты чо, тот самый кмс 3 года спустя??  
                                Типа того.. :)
                                >кстати не 3, а 1  
                                Да, да :)

                                >и вобще, не следует путать метод наименьших квадратов и линейную регрессию. наименьшими квадратами можно приближать какой угодно функцией, хоть суммой логарифма с гиперболическим косинусом.
                                Я не путаю. Предполагается, что мы приближаем   набор точек (x_i, y_i)
                                какой-либо функцией Phi(x)? МНК дает нам необходимые коэффициенты этой фи.

                                >более того, мнк - ето вовсе даже не метод, а просто способ вычисления расстояния между двумя функциями.

                                Да, это функционал по сути. Так вот, чем обусловлен его выбор для все подряд функций и размерностей пространства Rn ?

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

                                Да, да, все это уже другие вопросы. Очевидно, что аналитическое решение есть в маолм количестве случаев, дальше начинаются обычные опты (тот же сольвер экселевский или матлаб).

                                Почему МНК(2)? Почему не МНК(3) 4... итд?

                                Я так понимаю, wormball знает ответ, но молчит пока. Написал на мыло.
                                Кстати, я найду где поискать и спросить, про все, что касается функана, но только что именно? :) Тока подзабыл я это все чуть-чуть...

                                Вел ли кто-нибудь исследования альтернативных функционалов для оптимального приближения кривой?
                                1 пользователей читают эту тему (1 гостей и 0 скрытых пользователей)
                                0 пользователей:
                                Страницы: (3) [1] 2 3  все


                                Рейтинг@Mail.ru
                                [ Script execution time: 0.0699 ]   [ 14 queries used ]   [ Generated: 23.10.26, 11:33 GMT ]