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

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

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

Произведението на матрица с вектор като линейна трансформация

Произведенията на матрица с вектор като линейни трансформации. Създадено от Сал Кан.

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

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

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

Смятам, че доста добре познаваш умножението на матрица с вектор, и сега в това видео искам да ти покажа, че произведението на матрица с вектор е еквивалентно на преобразувание. То всъщност представлява линейно преобразувание. Да кажем, че имаме матрицата А, и да кажем, че нейните елементи са, или нейните стълбове са v1... вектор-стълб v2 и така нататък чак до vn. Тази матрица има n стълба. Да кажем, че има m редове. Това е матрица m по n. Ще дефинирам някакво преобразувание. Нека това преобразувание да е от Rn в Rm. Това тук е множеството на първообразите. Мога да взема произволен вектор от Rn и той ще се изобрази в някакъв вектор в Rm. И ще дефинирам моето преобразувание като Т от х, х е някакъв вектор в Rn, равно на А – това е това А, матрицата А. Ще го запиша с този цвят ето тук. Това трябва да е удебелено. Понякога забравям за удебеляването. Голямо удебелено А по вектор х. Може би веднага ти прави впечатление, че това преобразувание изглежда като много странен роднина на това как дефинирахме преобразуванията или функциите до сега. Първото нещо, с което трябва да свикнем, е че това е просто едно преобразувание. Какво правим? Взимаме нещо от Rn и после какво представлява произведението на матрицата А с вектор х? Ако запиша матрицата А ето така, ако това е х, като х1, х2, ще имаме n елементи, защото сме в Rn. Това може да се преработи като х1 по v1, плюс х2 по v2, и така нататък до xn по vn. Това ще е сборът на всички тези вектор-стълбове. Всеки от тези вектор-стълбове v1, v2 до vn – на кое множество принадлежат те? Това е матрица m по n, така че ще имаме m... матрицата има m реда, или всеки от тези вектор-стълбове ще съдържа m елемента. Значи всички тези принадлежат на множеството Rm. Ако взема едно линейно преобразувание на всички тези, просто ще получа друг член на множеството Rm. Този вектор тук ще бъде член на множеството Rm, друг вектор. Ясно е, че като умножавам моя вектор х по А, аз го изобразявам. Създавам образ от Rn – ще избера друг цвят – във Rm. Казвам това в най-общия смисъл. Може би n е 3, може m да е 5. Кой знае? Това се отнася за общия случай. Така че това е един конкретен пример, конкретен член на множеството Rn, това е този вектор, който нашето преобразувание или функция ще изобразят като този вектор ето тук. И този вектор ще принадлежи на Rm, като можем да го наречем А по х. Или можем да кажем, че А по х е равно на b, можем да го наречем вектор b. Това е резултатът на нашето преобразувание. Това съответства на нашето определение или терминология за функция или за преобразуванието като изображение на едно множество в друго. Това може все още да не те удовлетворява, защото всичко, което сме виждали досега, изглеждаше ето така. Ако имаме преобразувание, можем да го запишем като преобразуванието от – бих написал х1, х2 до хn е равно на... Тук бих записал m елемента, разделени с точка и запетайка. Каква е връзката на това с това тук? За да я видим, ще взема един конкретен пример. Нека да имаме матрицата – ще използвам друга буква. Нека да имаме матрицата В, която е много елементарна матрица. Това е 2, –1, 3 и 4. Ще дефинирам някакво преобразувание. Ще дефинирам преобразуванието Т. То е от R2 в R2. Дефинирам Т. Т на някакъв вектор х е равно на тази матрица В, по този вектор х. На какво е равно това? Матрицата е ето тук. Ще пиша с виолетово. 2, –1, 3 и 4, по вектор х, [х1; х2]. На какво е равно това? Това е равно на друг вектор. Това е равно на вектор в множеството от образите R2, където първият елемент е 2 по х1. Просто прилагам определението за умножение на вектор и матрица. 2 по х1, плюс –1 по х2, или минус х2. Това е този ред по вектора. После вторият ред по този коефициент. Получаваме 3 по х1, плюс 4 по х2. Това изглежда по-познато. Мога да преработя това преобразувание. Мога да преработя преобразуванието като Т от [х1; х2], е равно на 2 по х1, минус х2,... ще слеза малко надолу, запетая, 3 по х1, плюс 4 по х2. Надявам се, че си съгласен/а с това умножение по матрица, това не е някаква нова, екзотична форма на преобразувание. Това е просто различен начин. Това твърдение тук е просто друг начин за записване на същото това преобразувание ето тук. Следващият въпрос, който може да зададеш, като аз вече казах това в началото на видеото, е умножението с матрица винаги ли ще е линейно преобразувание? Кои бяха двете условия, за да бъде линейно преобразувание? Знаем, че преобразуванието на сбора на два вектора, вектор а плюс вектор b, трябва да е равно на сбора от техните преобразувани версии. Преобразуваният вектор а плюс преобразуваният вектор b. Другото условие е преобразуванието на мащабирана версия на вектор а да е равно на мащабираната версия на преобразуванието. Това са двете условия за линейно преобразувание. Да видим дали тук умножението по матрица може да се приложи. Аз съм споменавал това преди, и даже тогава казах, че трябва да го докажеш. Аз допуснах, че вече го знаеш, но ще го докажа тук, защото ми омръзна да ти повтарям, че трябва да го докажеш. Трябва да го направя поне веднъж аз. Да видим, умножение на вектор с матрица. Ако умножим матрицата А по някакъв вектор х, знаем... ще го запиша по следния начин: Знаем, че това е еквивалентно на... казах матрицата... Нека това е матрица m по n. Можем да запишем всяка матрица просто като редица от вектор-стълбове. Значи тази матрица ще има n вектор-стълба. Нека те да са v1, v2 и така нататък до vn вектор-стълбове. Всеки от тези вектор-стълбове ще има m компонента. По х1, х2 и така нататък до xn. Виждали сме такова умножение и преди. Съгласно определението за умножение на матрица с вектор това е равно на х1 по v1. Това по това. Този скалар по този вектор, плюс х2 по v2, и така нататък, до плюс xn по vn. Това е съгласно определението за умножение на матрица с вектор. И това ще е равно на... направих го в началото на видеото. И полученият вектор ще принадлежи на Rm. Той ще има m на брой компоненти. Какво се случва, ако взема някаква матрица А, която е m по n, и я умножа по сбора на вектор а плюс вектор b? Мога да преработя това като това ето тук. Значи матрицата А по... Сборът на вектор а и вектор b, първият компонент ще бъде (а1 + b1). Вторият компонент е (а2 + b2) и така чак до (аn + bn). Това е същото нещо като това. Това не означава А от (а + b). Това означава матрицата А по вектор (а + b). Може би тук трябва да сложа знак за умножение точка. Умножавам матрицата по вектора. Трябва да внимавам с начина на записване. Това е умножение на матрица с вектор. Не е някакъв нов вид скаларно произведение на матрицата. Това е равно на това произведение ето тук. И въз основа на това, което ти казах тук горе, което сме виждали много, много пъти, това е същото като (а1 + b1) по първия вектор-стълб на А, това е този вектор ето тук. Това А е същото като това А. Значи по v1. Плюс (а2 + b2) по v2, и така до плюс (аn + bn) по vn. Всеки член хi тук се замества с член (аi + bi). Значи всяко х1 тук се замества с (а1 + b1). Това е еквивалентно на това. Тъй като знаем, че произведението на вектор и скалар се характеризира с дистрибутивното свойство, можем да кажем, че това е равно на а1 по v1. Ще запиша всички членове а1. а1 по v1, плюс b1 по v1, плюс а2 по v2, плюс b2 по v2, и така нататък до плюс an по vn плюс bn по vn. И ако просто обединим еднаквите членове отново, ако просто групираме всички членове, съдържащи а, тогава получаваме а1 плюс... извинявам се. а1 плюс – ще го напиша по следния начин: а1 по v1 плюс а2 по v2, и така нататък, чако до an по vn. Взех всички членове, които съдържат а. Сега ще съберем всички членове, които съдържат b. Ще използвам този цвят за членовете, съдържащи b. Всички членове, съдържащи b. Значи плюс b1 по v1, плюс b2 по v2, и така до bn по vn. Това е ето това тук. Това е еквивалентно на това твърдение ето тук. Просто разместих всичко, което, разбира се, е еквивалентно на това твърдение ето тук. И на какво е равно това? Това е равно на моя вектор... тези стълбове са, спомни си, това са стълбовете на матрицата главно А. Значи това е равно на матрицата А по а1, а2, и така до аn, което е нашият вектор а. На какво е равно това? Това е равно на сбора на тези v-та. Това са стълбовете за А, така че това е равно на матрицата А по вектор b. b1, b2, и така до bn. Това е вектор b. Току-що показахме, че ако събера двата вектора а и b, и после умножа сбора по матрицата А, това е напълно еквивалентно на това да умножа двата вектора по матрицата А първо и после да събера получените произведения. Значи удовлетворяваме – това е за произволна матрица m по n. Удовлетворено е първото условие ето тук. А какво да кажем за второто условие? То е даже още по-лесно за разбиране. с по а1 – ще го напиша по следния начин. Вектор а по – извинявам се. Матрицата главна буква А по вектор малка буква а – ще го направя по следния начин, защото искам – по вектор с по малко а. Значи първо умножавам вектора по скалара. Това е равно на – мога да напиша моята главна буква А за матрицата. Вече съм означил вектор-стълбовете. Това е v1, v2, чак до vn. Това е матрицата А. После – как изглежда с по вектор а? с по вектор а е просто да умножим числото по всички компоненти на вектор а. Значи това е равно на с по а1, с по а2, до с по аn. На какво е равно това? Знаем това, виждали сме го много пъти досега. Това е равно на – ще го напиша малко по-ниско. Това е равно на с по а1, по този вектор-стълб, по v1. Плюс с по а2, по v2, и така до с по an, по вектор vn. Ако изнесем това с извън скоби, отново, произведението на вектор и скалар притежава дистрибутивното свойство. Мисля, че правих видео за това, но то е много лесно за доказване. Значи това е равно на с по... ще работя с един цвят – а1 по v1, плюс a2 по v2, плюс и така нататък, до an по vn. И на какво е равно това? Това е просто нашата матрица А по нашия вектор, матрицата с главна буква А. Може би прекалено много използвам буквата а. Матрицата главно А по вектора малко а. Като вектора малко а е просто това нещо ето тук, а1, а2 и така нататък. Това тук горе е същото като това тук. Така че ти показах, че ако взема матрицата и я умножа по някакъв вектор, който първо беше умножен по скалар, това е еквивалентно на това първо да умножа матрицата по вектора, а след това да умножа полученото по скалар. Показах ти, че матрицата, умножена по произведение на вектор със скалар или произведението на матрица с вектор удовлетворява условието за линейна трансформация и това условие. Така че главният извод ето тук е за произведението на матрица с вектор. Това е важен извод. Произведението на матрица с вектор винаги е линейно преобразувание. И това е нещо като странична забележка. В следващото видео ще покажа, че всяко линейно преобразувание – това е много важно – може да се представи като произведение на матрица с – всяко преобразувание на всеки вектор може да е еквивалентно, може да се представи като произведение на този вектор с матрица. Това има много важни следствия и, като странична забележка, свързва това с ежедневния живот. Може би имаш Xbox, Sony Playstation или други такива 3D графични програми, чрез които тичаш наоколо и стреляш по разни неща. Начинът, по който софтуерът управлява тези програми, където можеш да виждаш нещата от всички ъгли, например имаш куб, а после ако го завъртиш малко, кубът започва да изглежда ето така, той се върти, движиш го нагоре и надолу, това са все матрични преобразувания. Ще се занимаем с всичко това в повече подробности. Всичко това са преобразувания на вектори или на позиции на вектори, което ще разгледаме по-подробно. Всичко това наистина е просто матрично умножение. Всички неща, които правиш в твоите страхотни 3D игри на твоя Xbox или на твоя Playstation, те са просто матрични умножения. Ще ти докажа това в следващото видео. Така че, когато имаш тези графични карти или тези графични машини, те просто – досещаш се – отдалечаваме се от теорията. Но всички тези графични процесори се базират на умножения на матрици. Ако имам някакъв процесор, тогава трябва да напиша софтуер как се умножават матрици. Ако правя Xbox или нещо подобно, 99% от работата е просто да въртя тези абстрактни обекти и да ги показвам по различни трансформирани начини, затова трябва да имам специален хардуерен чип, който прави това, който е създаден така, че да умножава матрици. Ето това всъщност представляват графичните процесори или машини.