If you're seeing this message, it means we're having trouble loading external resources on our website.

Ако си зад уеб филтър, моля, увери се, че домейните *. kastatic.org и *. kasandbox.org са разрешени.

Основно съдържание

Методът на Грам-Шмид

Определяне на ортонормален базис по метода на Грам-Шмид. Създадено от Сал Кан.

Искаш ли да се присъединиш към разговора?

Все още няма публикации.
Разбираш ли английски? Натисни тук, за да видиш още дискусии в английския сайт на Кан Академия.

Видео транскрипция

Дадено е едно множество от линейно независими вектори, v1, v2... vk, които са базис на подпространството V. Виждали сме това вече много пъти. Добре. Това е базис, но ние учихме в последните няколко урока, че ще е даже още по-добре, ако имаме ортонормален базис за подпространството V. В това видео ще разгледаме е дали има някакъв начин да конструираме ортонормален базис за подпространството V, когато ни е даден този базис, който предполагам, че не е ортонормален базис. Това може да стане независимо дали този базис е ортонормален, или не е, просто ще създадем още един ортонормален базис. Но можем ли някак, като ни е даден само този базис, да създадем ортонормален базис на V, и след това да се възползваме от свойствата, които има един ортонормален базис? Да видим как можем да започнем. Да разгледаме някои прости примери. Да кажем, че имаме едномерно подпространство. Ще го нарека V1, тъй като това е едномерно подпространство. Нека линейната му обвивка да е само този вектор v1. Или можем да кажем, че вектор v1 е базис на подпространството V1. Ако имаме този прост случай, как можем да гарантираме, че този базис е ортонормален? Можем, например, да дефинираме някакъв вектор, да го наречем вектор u1, който е равен на... Очевидно, той е ортогонален на всички други вектори. Тук няма никакви други вектори, няма нулеви вектори, няма никакви други членове на това множество, така че той е ортогонален на всички други вектори, защото няма други вектори. За да направим дължината му равна на 1, можем да вземем този вектор и да го разделим на неговата дължина. Значи ще дефинираме някакъв вектор u1, равен на вектор v1, разделен на дължината си, разделен на ||v1||, и тогава колко ще бъде дължината на вектор u1? Това ще бъде дължината на вектор v1 върху дължината на v1, ето така. Това тук е просто константа. Това би могло да е 1 върху дължината на вектор v1. Това би могло да е 5 по дължината на v1, но просто е равно на 1. Този вектор има дължина 1. И така имаме множество, което съдържа само вектор u1, можем да кажем, че множеството от вектор u1 е ортонормален базис на подпространството V1. Това беше много лесно. Когато k = 1, постигнахме целта си. Това беше супер лесно. Просто трябваше да разделим на дължината на вектора. Само трябваше да нормализираме този вектор и получихме ортонормален базис, защото няма нищо друго, на което да е ортогонален този вектор. Сега малко да усложним ситуацията. Нека да имаме две измерения. Нека да имаме подпространството V2. То е линейната обвивка на – нека да е на тези първите два вектора. V2 е линейната обвивка на векторите v1 и вектор v2. Знаем, че вектор v1 може лесно да се представи като... знаем, че вектор v1 е линейна комбинация на вектор u1. Откъде го знаем? Можем просто да умножим двете страни на това равенство по дължината на вектор v1. Получаваме u1 по дължината на v1 е равно на v1. Можем да кажем, че това е същото нещо като... Това е еквивалентно да кажем, че линейната обвивка на векторите v1 и v2, където u1 е векторът, който получихме тук. Защо мога да твърдя това? Защото всичко, което може да е линейна комбинация на тези вектори, може да е линейна комбинация и на тези вектори. Защото навсякъде, където имаме вектор v1, можем да заместим с линейната комбинация на u1, която е равна на v1. Просто умножаваме u1 по този скалар и получаваме v1. Мисля, че разбираш идеята. Но как можем да гарантираме, че това е ортонормално множество? Какво да направим? Ще направя чертеж. Това е една равнина в Rn Ще използвам нашата черна дъска или нашата видео дъска, това е равнината. Имаме вектор u1, който е единичен вектор. Той има дължина 1. Значи това е вектор u1. Векторите v1 и v2 са линейно независими, това следва от определението за базис на подпространството. Значи не можем да представим вектор v2 като мащабирана версия, т.е. като линейна комбинация на вектор v1. По същия начин, не можем да представим вектор v2 като линейна комбинация на единичния вектор u1, защото u1 е линейна комбинация на u1. Значи вектор v1 няма да лежи на правата, която е линейна обвивка на u1. Ще го начертая. Правата, която е линейна обвивка на вектор u1 е ето това. Това е правата, която е линейна обвивка на u1. Искам да я направя малко по-добре. Не искам да е твърде тъмна. Ето това е правата. Ще опитам за последен път. Правата, която е линейната обвивка на вектор u1, изглежда така. Това е тя, това е просто една права. И това е подпространството V1, нали? Което е линейна обвивка на вектор u1. Значи това е линейната обвивка на вектор u1. Ние просто нормализирахме v1 тук, за да получим вектор u1. Значи линейната обвивка на вектор v1 е същата като линейната обвивка на вектор u1. Това е това подпространство. Това е тази права в Rn. Имаме вектор v2, който е линейно независим от векторите v1 и u1. Вектор v2 изглежда приблизително така. Това е вектор v2. Сега искаме да заместим вектор v2 с друг вектор, който определено е ортогонален на тази права, и така че да можем да конструираме v2 с някаква комбинация на този вектор и на нашия нов вектор. Векторът, който е най-очевидният кандидат за това, е някакъв вектор, който е ортогонален на v1. Щом е ортогонален на v1, той принадлежи на ортогоналното допълнение на подпространството V1. Ако го разгледаш на чертежа тук, ако добавя някакъв член на V1 към този член на ортогоналното допълнение на V1, ще получа вектор v2. Всъщност сме виждали това много пъти. Този вектор ето тук... Знаем, че произволен вектор в Rn, да кажем вектор v2, може да се представи като сума от два вектора. Ще ги означа като векторите х и у, като вектор х принадлежи на V1, а вектор у принадлежи на ортогоналното допълнение на V1. Виждали сме това много пъти. И какво е вектор х по определение? Търсим този вектор х. Това е вектор х. А това е вектор у. Търсим вектор у, защото, ако намерим този вектор у, тогава ако заместим вектор v с вектор у, ще можем да получим вектор v, тъй като ако вземем мащабирана версия на вектор u и я прибавим към вектор у, ще получим v. Всички вектори, които преди можехме да изразим чрез вектор v2, сега ще можем да изразим чрез вектор u1, мащабирани версии на това, плюс мащабирани версии на новия ни вектор. Значи искаме да намерим този вектор у ето тук. Как можем да го намерим? Той е равен на v2 минус вектор х. Нали? А какво е вектор х по определение? Вектор х по определение е проекцията на вектор v2 в подпространството V1. Значи векторът, който търсим, вектор у, ако успеем да го намерим и след това да заместим v2 с у, вектор у просто е равен на вектор v2 – ще го запиша по следния начин– минус проекцията на вектор v2 в подпространството V1. Ето това е вектор у. Спомни си, ако можем да заместим v2... причината, поради която линейната обвивка на v1, v2 е равна на линейната обвивка на u1, у2 – ще означа този вектор като y2. Ще означа този вектор като у2, защото вероятно в бъдеще ще използваме у. Значи търсим вектор у2. Причината защо тази линейна обвивка съвпада с линейната обвивка на u1 и у2 е защото можем да получим вектор v2 като линейна комбинация на векторите u1 и у2, нали? Можем да мащабираме вектор u1 и после да го съберем с вектор у2, за да получим вектор v2. Значи всеки вектор, който мога да получа чрез вектор v2, мога да получа като линейна комбинация на тези два вектора. Ето защо тези са еквивалентни. Хубавото на това сега е, че тези две неща са ортогонални допълнения... или тези вектори са ортогонални помежду си, нали? По определение, у принадлежи на ортогоналното допълнение. Скаларното произведение на тези два вектора ще бъде 0. Как можем да го намерим? Това е удобно също така, защото подпространството V1 има ортонормален базис. Преди два или три урока видяхме нещо много хубаво за ортонормалните базиси – това че много лесно се определят проекциите спрямо тези базиси. Ще го запиша – проекцията на вектор v2 в подпространството V1 е равна на вектор v2... ще го запиша по следния начин – скаларното произведение на вектор v2 и първия базисен вектор на V1, който е вектор u1, нали? Това е първият базисен вектор. Имаме ортонормален базис – по u1. После, ако имаме още базисни вектори, можем да кажем плюс скаларното произведение на вектор v2 по следващия базисен вектор, значи по този базисен вектор, и така нататък. Но подпространството V1 има само един базисен вектор – u1. Нали? Това е единственият му базисен вектор. Значи можем да преработим това тук. Вектор у2, с който ще заместя вектор v2, е равен на v2 минус проекцията на v2 върху подпространството V1, върху тази права, което е ето това тук – скаларното произведение (v2 . u1) по вектор u1. И така намерихме вектор у. Значи имаме базиса на подпространството V2, като тези два вектора са ортогонални. Този вектор е единичният вектор. Той е нормализиран, но този вектор още не е нормализиран. За да го нормализираме, просто да дефинираме друг вектор u2, и да повторим същата процедура. Първо да го нормализираме. Значи u2 е равен на вектор у2, разделен на дължината на у2. Сега можем да кажем, че подпространството V2 е равно на линейната обвивка на вектор u1 и – тук вместо вектор у2 записвам u2, защото мога да получа вектор у2 като мащабирам вектор u2. Хубавото на това сега е, че имам два единични вектора, или два нормализирани вектора, и те са ортогонални помежду си, като линейната им обвивка е равна на линейната обвивка на векторите v1 и v2. Можем да продължим – ако имаме подпространство V3, какво ще направим? Ще използваме същия принцип. Да дефинираме подпространството V3. Това е тримерно подпространство. Когато имаме повече измерения от V3, вече е трудно да се визуализира, но мисля, че ще видиш закономерност след тази стъпка. Ако дефинираме, че линейната обвивка на V3 са тези вектори, u1, u2 и после в нашия оригинален базис, v3. Не съм го написал, но тук има вектор v3. Значи нашият първоначален не-ортонормален базис, съдържа v3. Какво представлява това? Как можем да превърнем този базис в ортонормален? Ако начертая всички тези вектори, линейната обвивка на u1 и u2, подпространството V2 е просто една равнина. Това е една равнина в R3. Ще изглежда ето така. Новата ни линейна обвивка ще бъде всичко в тази равнина, всички линейни комбинации на векторите в тази равнина, плюс линейните комбинации на вектор v3, който е линейно независим от тези вектори, защото той беше линейно независим от векторите, които използвахме, за да получим тези единични вектори. Значи вектор v3 ще стърчи от тази равнина. Той не може да се представи като линейна комбинация от тези вектори. Значи вектор v3 стърчи от равнината, ето така. Сега търсим друг вектор, чрез който можем да представим всички вектори в тази линейна обвивка, но той е ортогонален на тези вектори ето тук. Друг начин да разсъждаваме за това е, че той е ортогонален спрямо равнината. Значи търсим друг вектор, който е ортогонален на равнината. Да наречем този вектор у3, у с индекс 3, не на трета степен, вектор у с долен индекс 3. Ако намерим вектор у3, можем да заместим вектор v3 с него, защото вектор v3 може да се представи като линейна комбинация на векторите u1 и u2. Нали? Той ще бъде линейна комбинация на векторите u1 и u2, който ще бъде някакъв вектор в равнината плюс у3. Мога да представя този вектор с този зелен вектор плюс този вектор ето тук. Ако го заместим с вектор у3, можем да получим вектор v3, и можем да получим всички линейни комбинации, които вектор v3 може да ни помогне да конструираме. И какво представлява вектор у3? По съвсем същата логика, този зелен вектор ето тук е проекцията на нашия вектор v3 в подпространството V2, и нашия вектор у3 е равен на вектор v3 минус проекцията на вектор v3 в подпространството V2. Какво получаваме? Проекцията... ще го напиша – проекцията на вектор v3 в подпространството V2 ще бъде равна на... ще използваме съвсем същата логика като преди. Видяхме това преди два или три урока. Понеже подпространството V2 е дефинирано с ортонормален базис, можем да кажем, че проекцията на вектор v3 в това подпространство е скаларното произведение на v3 по вектор u1, първия базисен вектор, плюс скаларното произведение на вектор v3 по втория ортонормален базисен вектор, Това е много лесно. Това е едно от предимствата на ортонормалния базис. Това представлява ортонормалния базис. Значи можем да дефинираме проекцията по този начин. Значи вектор у3 е просто вектор v3 минус това ето тук, което ще запиша. Значи вектор у3 е равен на вектор v3 минус проекцията на v3 във V2. Значи минус това ето тук. Ще го копирам и ще го поставя. И получаваме вектор у3. Ако заместим това с у3, което можем да направим, защото сега представихме v3 като линейна комбинация на тези вектори и вектор у3. Това е хубаво, защото всички тези вектори са ортогонални помежду си, но у3 все още няма дължина 1. Той не е нормализиран. Значи можем просто да представим вектор у3 като друг единичен вектор Можем да кажем, че вектор u3 е равен на вектор у3, разделен на дължината на у3, независимо каква е тя. Но ако знаем колко е вектор у3, можем да намерим неговата дължина, и да го разделим на нея. После, ако... значи това е равно на линейната обвивка на u1, u2 и u3. Вектор u3 може да е мащабирана версия на вектор у3. Ние имаме предвид линейни комбинации, когато говорим за линейна обвивка, така че можем да мащабираме векторите и да съберем полученото с проекцията. Пак ще получим v3. Всички тези вектори са нормализирани. Така че получаваме ортонормален базис за подпространството V3. Мисля, че виждаш модела. Можеш да продължиш по същия начин. Можеш да дефинираш v4 – в условието на задачата казах, че имаме k-мерно подпространство. Стигаме до вектор vk. Можеш да продължиш по същия начин, докато стигнеш до k. Когато k е равно на 3, ние вече намерихме решението. Ако k е 4, можеш да дефинираш подпространство V4, което е равно на линейната обвивка на u1, u2, u3 и после да вземеш един не-ортонормален вектор v4. Можеш да заместиш вектор v4 с вектор у4, който е равен на v4 минус проекцията. Но тук нещата вече трудно се визуализират. Сега имаме проекция в тримерно пространство. Проекцията на вектор v4 в нашето подпространство V3. Това е напълно аналогично на това. Просто сега имаме тримерното пространство V3, а не равнина. Намираме проекцията в това подпространство. Този вектор определено ще е ортогонален на всичко друго в нашето подпространство V3. Можем да конструираме v4 чрез у4, защото по определение v4 е равен на... просто разместваме това – у4 плюс проекцията на вектор v4 във V3. Така че можеш да конструираш вектор v4 чрез у4 и някаква линейна комбинация на тези вектори. Значи мога да заместя този вектор с у4, а след това ще нормализирам вектора у4. Ще го разделя на неговата дължина и ще получа вектор u4. И продължавам по същия начин, докато стигна до размерност k. Ако имам V5, повтарям целия процес отново. Този метод за създаване на ортонормален базис се нарича метод на Грам-Шмид. Той може да изглежда абстрактен по начина, по който го използвахме тук, но в следващото видео ние ще намираме ортонормални базиси на подпространства и тогава ще видиш, че не е толкова сложно, когато работим с конкретни примери.