MIT Açık Ders Malzemeleri

http://ocw.mit.edu                                                 

18.06 Doğrusal Cebir, Bahar 2005

Lütfen aşağıdaki alıntı biçimini kullanın:

Gilbert Strang, 18.06 Doğrusal Cebir, Bahar 2005. (Massachusetts Teknoloji Enstitüsü: MIT Açık Ders Malzemeleri). http://ocw.mit.edu ( MM, DD, YYYY) tarihinde erişildi.

Lisans: Yaratıcı Ortak Özelllik – Ticari Olmayan  -- Olduğu  gibi Kullanılır.

Not: Lütfen alıntınızda bu malzemeye eriştiğiniz gerçek tarihi kullanınız.

Bu materyallerden alıntı yapmak veya Kullanım Şartları hakkında bilgi almak için  http://ocw.mit.edu/terms sitesini ziyaret ediniz.

 

 

 

 

 

 

 

 

 

 

MIT Açık Ders Malzemeleri

http://ocw.mit.edu

Doğrusal Cebir, Bahar 2005

Transcript - Ders 31

Pekala. Artık bu dersin sonuna yaklaşıyoruz,  bu ders bir taban değişimi ile birlikte doğrusal cebirin karışımı olacak.

 

Ve taban değiştirme, bir tabandan diğerine geçiş uygulamalarda karşımıza çıkar.

 

Ve bu uygulamalardan söz etmek istiyorum.

 

Biraz sıkıştırma ile ilgilenmiştim.

 

Bir sinyal sıkıştırma, bir görüntü sıkıştırma.

 

İşte bu aslında bir taban değiştirmedir.

 

Ve sonra, bu bölümün ana teması, koordinatlardan bağımsız inceleyebileceğimiz doğrusal dönüşüm ile koordinatlar cinsinden bu dönüşümü bize veren matris arasındaki ilişkidir. Demek ki matris, bir doğrusal dönüşümün koordinatlar cinsinden tanımlanmasıdır. İşin güzel yanı ile başlayayım, o da görüntü sıkıştırmak olacak. Hepiniz ---bir şekilde sıkıştırma ile karşılaşacak, çünkü elde ettiğimiz verinin boyutunu biliyorsunuz ---bu dersler de aslında sıkıştırılmış. Benim hareketlerimi biraz atlamalı bulabilirsiniz. Bu kelimeyi kullanmalı mıyım? Web’de baktınız mı? Bunun için daha iyi bir kelime bulmak istiyorum.

 

Sıkıştırılmış diyelim. Demek ki tam sinyal var, tabii ki bu video-kameradaki ve video teyp’lerdeki olan, ancak bu bina 9 un en altına kadar gidip ve oradan da atlamalı bir harekete dönüşüp geriye dönüyor çünkü görüntüyü sıkıştırmak için standart bir yöntem kullanıyor.

 

Ve farkettiğiniz gibi, tahtada yazılı olan çok temiz gözüküyor, fakat fazla sayıda bit’e ihtiyacı olan benim hareketlerim, değil mi? Dolaysıyla, ve ben oraya koşup tekrar geri kosarak gelseydim, bu çok fazla sayıda bit gerektirecekti, ve ben daha da sıkıştırılmış olacaktım. Yani, sıkıştırma ne demek? Sadece hareketsiz bir görüntü düşünelim.

 

Ve tabii ki, uydular, iklim hesaplamaları, yanma hesaplamaları, bilgisayarlar ve her türde sensörler bize karşı konulamaz miktarda veri sağlıyor. Web de bunlardan biri.

 

Şimdi, bazı sıkıştırmalar kayıp olmadan da yapılabiliyor.

 

Kayıpsız sıkıştırma mümkün olabilir, çünkü aralarda fazlalıklar var. Kayıpsız sıkıştırma sadece, bir çeşit, fazlalıklar olması gerçeğini kullanarak mümkündür.

 

Ancak ben burada kayıpların olduğu sıkıştırma hakkında konuşacağım.

 

Bahsettiğim şu ---burada bir görüntü var.

 

Ve bir görüntü neden oluşur? Bir sürü küçük pixeller’den oluşur. Belki 512’ye 512’lik tir.

 

2 üzeri 9 a 2 üzeri 9 luk pixeller, ve bu 1 numaralı pixel, demek ki bu bir pixel olur.

 

Ve siyah beyazda çalışıyorsak, tipik bir pixel sıfırda 255’e giden bir gri-skala verecek.

 

Dolaysıyla pixel genellikle bu x_i’lerin birinin değeridir, yani bu i-inci pixel olabilir ve genelde 0 dan 255’e kadar skala da gerçek bir sayıdır.

 

Başka bir değişle, bu da 2 üzeri 8 farklı seçim demek olur. Genelde standart bu, şurası 8 ---8 bit.

 

Fakat bu her bir pixel için geçerli, dolayısı ile (512) nin karesi kadar pixelimiz var, ve x, R üzeri n’de bir vektör, ve n nedir? N, 512 kare dir.

 

İşte problemimiz bu, hemen şuradaki.

 

Pixel bize görüntüler hakkında bilgi veren bir vektör. Özür dilerim.

 

Ortaya çıkan görüntü, şu boyuttaki bir vektör ---bu görüntü hakkında elimizde olan bilgi, eğer renkli bir görüntü ise, bunun üç misli bir uzunluğumuz olurdu, çünkü renklendirmemiz gerekli 3 koordinatımız olacaktı.

 

Demek ki bu 3 çarpı (512)’nin karesi olacaktı.

 

Bu çok büyük boyutta bilgi içeriyor ve bu ders için görüntüyü sıkıştırmadan yollayamazdık.

 

Sistem çok fazla yüklenirdi, dolayısı ile sıkıştırmak gerek.

 

Standart sıkıştırma yöntemi ve bu dersler için hala kullanılan sistem, JPEG olarak bilinir. Bunun Joint Photographic Experts Group (Bileşik Fotoğrafçılar Eksperleri Grubu) nun baş harfleri olduğunu sanıyorum. Onlar bir resim sıkıştırma sistemi oluşturdular. Şimdi size bunu anlatmak istiyorum. Bu bir taban değiştirmedir.

 

Elimizdeki taban ne? Şu an kullandığımız taban da, standart taban da diyebilirsiniz, her pixel bir değer verir.

 

Bir x vektörümüz oluşur, (512) nin karesi uzunluğunda olan, ve diyelim ki i’inci pozisyonda, 121  veya bunun gibi birşey.

 

Onun yanındaki pixel 124 olabilir, belki kravatımın resme girdiği bölüm, ve çoğunlukla mavi gömlekse, bu hafif bir ton farklılığı yaratabilirdi ancak yakın değerler olacaktı, ve kravat başka bir renk, dolayısı ile, gömlek için birkaç pixelimiz olurdu, ve tahta için çok daha fazlası ve bunlar birbirlerine yakın olurdu. Ve bunlar yüksek korelasyonlu olanlar. Örneğin derse başladığımda, eğer boş bir tahtamız olsaydı, bir görüntü olacaktı, ancak bu görüntü’nün tüm pixel bilgisini vermek için bir neden olmazdı.

 

Söylemek istediğim, tüm gri zeminlerin pixel değerlerinin aynı olması, veya aynıya yakın olması, belki tahtayı silmiş olmamın getirdiği bazı farklılıklar olmuş olabilir ancak değerler çok yakın ---dolayısı ile bu görüntüde standart tabanın kullanılması çok aptalca olur.

 

Standart tabanla ilgili temel nokta, teker teker tüm pixel değerlerini verirken, bir sürü eşit veya yakın pixel değerlerinin olduğu avantajını kullanmadığı. Bu benzerlik durumunun avantajını nasıl kullanabiliriz? Taban vektörlerimin arasına tüm elemanlarının 1 olduğu bir vektör koymak harika olurdu. Bu standart tabanımızda yer alan bir vektör değil, dolayısı ile bir kez daha yazayım----standart tabanımız, bir tane 1 ve diğerleri sıfır, ve sıfır, bir ve diğerleri sıfır, hepiniz standart tabanın ne olduğunu biliyorsunuz.

 

R nin başka herhangi bir tabanı, bu çok büyük- boyutlu uzay için  ---ve şimdi daha iyi bir taban hakkında konuşacağım. Daha iyi bir taban---ve bunu yineleyeyim, bu tabanda görmek isteyeceğim çok güzel bir vektör, -- birlerden oluşan bir vektör.

 

Bu niye böyle? Birkez daha söyliyeyim, çünkü birlerden oluşan bir vektör, tek başına, birler tek başına üç boyutlu görüntü ile ilgili bilgiyi aktarabiliyor. Bizim görüntümiz üç boyutlu olmayacak, üç boyutlu ve sinyal karışımı olacak.

 

Bu tek vektörün bile tabana eklenmesi bize büyük kazanç sağlayacak. Şimdi soru şu, başka hangi vektörlerin bu tabanda yer alması gerekir? Bu tabandaki uç (sınır) vektör 1 -1, 1 -1, 1 -1 vektörü olabilir.

 

Bu vektör ---sanki bir kontrol mekanizması, bir dama vektörü gibi davranır, değil mi? Eğer görüntü kocaman bir +, -,  +, -, +, -, dizaynı olsaydı, bu vektör tüm sinyalin bilgisini saklıyor olacaktı.

 

Belki daha alışılmış olan görüntünün yarısı daha koyu, yarısının da açık renk olması durumudur.

 

Demek ki işimize yarayabilecek bir diğer vektör, yarısı +1’lerden diğer yarısı ise -1’lerden oluşan bir vektör. Ben sadece bu tabanın nerede olabileceğini söylemeye çalışıyorum,  her şeyden önce, emrimizde olan tabanları elde ettik.

 

Bunu seçmekte özgürüz gibi.

 

Aslında 1 milyar dolarlık bir seçim yaptık.

 

TV ile uğraşanlar, sinyalin tarandığı yönteme göre belli bir tabanı tercih ederken, sinemacılar farklı bir tabanı tercih edebilir. Vurgulamak istediğim bu soruda muazzam politika var, ve sonunda tüm bunlara bir doğrusal cebir problemine indirgemiyor, taban seçme problemine..  JPEG’in kullandığı en bilinen tabanı şimdi size vereceğim----bu daha Fourier tabanı, Fourier tabanını kullandığınızda, bunun içerdiği ---bir sabit vektör, bu elektrik mühendisleri için DC vektörü, I---birler vektörü (1111) Genelde 8 e 8 lik iyi bir seçimdir. Sekize sekiz iyi bir seçim. Sekize sekizle ne demek istiyorum- Söylemek istediğim büyük sinyal, bunun 512 e 512 lik olduğunu biliyoruz, JPEG bu sinyali 8’e 8’lik bloklara ayırıyor. Ve bunun tek seferde anlaşılması oldukça zor. JPEG bu 8 e 8’lik bloku alıp, bu 64 katsayı demek, 64 pixel, ve bu blok üçgeninde tabanı değiştiriyor.

 

Ve şimdi bakalım, Fourier’i yazacaktım. Fourier’i tüm bu birler vektörü ve sonra---daha önce Fourier matrisi konusunda bir dersimiz olmuştu, sütunları karmaşık bir W sayısının kuvvetleri olan matris. Bunu yinelemeyeceğim, çünkü Fourier tabanının detayına inmek istemiyorum. Tek yapmak istediğim sıkıştırmanın nasıl çalıştığını anlatmak.

 

JPEG’de ne oluyor? Video’ya, bu derslerin görüntüsüne ne oluyor?  8 e 8’lik bloklara ayrılıyor.

 

Her bir blokun içinde, 64 tane katsayı var, 64 tane taban vektörü, 64 pixel, ve 64 boyutlu uzayda, Fourier vektörlerini kullanarak taban değiştiriyoruz. Bunu kayıba yol açmayan bir adım olduğunu görmeliyiz. Bunu vurgulayayım.

 

X sinyalimiz geliyor. Taban değiştiriyoruz.

 

Bu taban değişikliği. Tabanı değiştiriyoruz.

 

Daha  iyi bir taban seçiyoruz. Bu  bize c katsayılarını üretiyor. 64 pixel giriyor ve 64 tane katsayı çıkıyor.

 

Şimdi sıkıştırma geliyor. Ve buraya kadar kayıp yok.

 

Bu sadece --- biliyoruz ki  R 64’ün bir sürü tabanı var, ve biz birini seçtik. Şimdi o tabanda, -- sinyali şimdi o tabanda yazıyoruz ve şimdi bu, dersin matematik kısmı.

 

Şimdi burada uygulama kısmı var.

 

Ve bir sonraki kısım da sıkıştırma adımı olacak.

 

Ve orada kayıplarımız olacak. Bilgi kaybedeceğiz. Ve bu adımda gerçekte ne olacak? İlk yazacağım şey, küçük olan katsayıları atmak olacak.

 

Buna eşikleme denir, bir çeşit eşik tanımlıyoruz.

 

Her bir katsayı, eşik değerimizin üstünde olmayan taban vektörlerin değerini, ve eşik değerine eşitliyoruz ve bu farkın gözle görülemeyeceği değerler için yapılıyor, yada bu taban vektörümüz bu kısmın kalıp kalmayacağına bağlı olarak, çok az fark görebilirsiniz. Dolaysıyla bu sıkıştırma adımı bir sıkıştırılmış küme katsayılarını oluşturuyor. Burada devam edeceğim.

 

Bu böylece devam ediyor, sıkıştırma adımı c şapka katsayısını üretiyor, -- ve bir sürü sıfır ile.

 

Demek ki sıkıştırma bu noktada geldi. Tümü 1’lerde olan vektörün katsayısı genelde büyük olur----bunu nadiren atmamız gerekir. Genellikle onun katsayısı büyük olacak.  Fakat bunun gibi bir şeyin katsayısı, bu hızlı alternatif vektör ancak onun çok küçük bir kısmı düzgün bir sinyalde görülebilir. İşte bu yüksek frekans olur ---bu düşük frekans, sıfır frekansıdır.

 

Bu şey sahip olabileceğimiz en yüksek frekanstır, ve eğer gürültü, cızıltı bunun gibi bir çıktı yaratıyorsa, ancak bunun gibi düzgün bir derste bu yüksek frekansın çok azı bulunur, --- bu derste gürültü çok az.

 

Peki, atabileceğimiz herşeyi atıyoruz ve birkaç katsayı ile kalıyoruz, ve sinyali sadece bu katsayıları kullanarak yeniden oluşturuyoruz. Bu katsayıları alıp tekrar taban vektörleri ile çarpıyoruz, ancak toplam artık bize 64 terim vermiyor. Herhalde yaklaşık 2 veya 3 terim kalır. Diyelim ki 3 terim kaldı. 64 terimden 3’e düştük, bu 21’i 1’e düşüren bir sıkıştırma.

 

Peşinde olduğumuz böyle bir sıkıştırma işte.

 

Ve herkes de bu tip bir sıkıştırma istiyor.

 

Bakalım, sanırım FBI ve parmak izi ile ilgili problemi biliyoruz. Bir sürü hareketsiz görüntü var. Biliyorsunuz, başparmağınız, mürekkepli şekiller oluşturuyor ve bunlar derlenip bir yere yollanıyor.

 

Eskiden Washington’a yollanır ve büyük bir dosyada saklanırdı. Yani Washington’da 30 milyon katil, sınavlarda kopya çekenlerin ve başkalarının parmak izleri saklıydı; ve bunlara vaktinde ulaşmak mümkün değildi. Örneğin polis karakolundasın, sana, peki, bunu şu kişi yapmış olabilir diyorlar, Washington’a bu kişi ile ilgili parmak izi örneğinin olup olmadığını soruyorlar. Wahington’da çekmeceler dolusu parmak izi örnekleri saklı ve bunun cevabını almak en az bir hafta sürer. Buna göre en doğal şey bunları dijital sinyale dönüştürmek. Onun için tüm parmak izleri örnekleri şimdi dijital olarak saklanıyor, en azından elektronik ortamdalar ama hala her birinde çok fazla bilgi saklı.

 

Demek istediğim her bir parmak izinin dijital görüntüsü (512) kareye (512) karelik pixel ise, eğer o kadar pixel varsa.

 

Demek ki sıkıştırmak gerek. FBI’ın bu sıkıştırmayı hangi tabana göre yapacağına karar vermesi gerekir.

 

Ve bu nedenle de Batı Virginia’da yeni bir merkez kurdular  ve parmak izleri şimdi oraya gidiyor.

 

Sanırım artık parmak iziniz polis merkezinde alındığında, eğer gelişmiş bir merkezse, parmak izi dijital olarak alınıp, sinyal dijital olarak yollanıyor ve sonra batı Virginia’da bu sinyal sıkıştırılıp endeksleniyor. Ve sonra sizi bulmak istediklerinde birkaç dakikada buluyorlar, artık haftalar gerekmiyor. Pekala.

 

Bu sıkıştırmalar sinyaller için, görüntüler için, video içindir ---tıpkı buradaki dersler gibi  ---ancak video ile ilgili bir nokta daha var. Video’yu birbiri ardına gelen hareket etmeyen görüntüler gibi görüp, her birini sıkıştırdıktan sonra hareketle videoya dönüştürebilirsiniz.

 

Ancak bu yöntem bazı şeylerini kaçırıyor, niye optimal olmadığını görebiliyor musunuz? Video çekiminde, bir dizi görüntümüz var, aslında video bir görüntüler dizisi, ancak bir görüntü’den diğerine geçişte ne oluyor? Bunlar inanılmaz derecede birbirleri ile bağlantılı. Söylemek istediğim her saniye bir görüntü alıyorum ve aynı zamanda hafifçe hareket ediyorum.

 

İşte bu videoda atlar gibi duran hareketi doğuruyor. Fakat benim gibi  --dizideki her görüntünün bir öncekine oldukça yakın olduğunu bilirsiniz.

 

Ön tahmin ve düzeltme kullanmanız gerekir. Benim bir anlık görüntümün----bir adım sonra da aynı olacağını varsayabilirsiniz ve ona küçük bir düzeltme eklersiniz. Ve siz düzeltmeyi sadece kodlayıp, dijital ortama geçirip, sonra da düzeltmeyi sıkıştıracaksınız. Aralarında yüksek korelasyon olan görüntüler dizisi, ve de sıkıştırmada bu korelasyonu kullanıyoruz, yani zaman içinde veya uzayda, anlık değişimlerin olmadığı, değişimin yumuşak bir şekilde olduğu ve önceki değerinden bir sonraki değeri tahmin edebilirsiniz

 

Peki bunlar katıksız olarak doğrusal cebir deki uygulamalardır. Müsaade ederseniz şunu belirteyim, kitap Fourier’ye rakip olan bir tabandan söz ediyor.

 

Fourier’in rakibine dalgacık diyoruz ve 8 e 8’lik durum için bu tabanın nasıl olduğunu açıklayabilirim.

 

8 e 8’lik dalgacık tabanı şu vektörlerden oluşur. Tüm birler vektörü, 8 tane 1,  sonra 4 tane 1, ve 4 tane -1’i olan vektör, sonra iki tane 1, iki tane -1 ve diğerleri sıfır olan vektör. Ve buna ek olarak 4 sıfırdan oluşan vektör ile, 2 tane 1, 2 tane -1 içeren vektör.

 

Şimdi 4 tanesini söyledim, ve 4 tane daha gerekiyor, değil mi? R^8 için? Bir sonraki taban vektör 1,-1  ve altı tane sıfır, ve sonra bunlardan 3 tane daha, 1, eksi 1 burada, ve burada, ve burada. Bunlar 8 boyutlu uzaydaki 8 vektör, ve bunlara dalgacık diyoruz, ve çok basit bir dalgacık seçimi, ancak daha karmaşık bir seçim var.

 

Bu birey sekmeli, 1 ile -1 arasında atlamak. Ve şimdi Fourier tabanı ile dalgacık tabanını karşılaştıralım.

 

Fourier tabanındaki bu adamı nasıl yazabilirdim? Bu bir sekiz---bu R^8’de bir vektör. Bunu dalgacık tabanının bir bileşimi olarak nasıl yazabilirdim? Dalgacık kuramı konusunda şunu görebilmemiz için yeterli bir şeyler anlattım mı? Yani şu çok hızlı adamın, şu hızlı adamın dalgacık tabanı bileşimi cinsinden,  nasıl yazılabileceğini görebiliyor musunuz? Şu olacak-----şu dördünün toplamı olacak, tamam mı? Bu çok hızlı adam şuradaki 1 ve eksi 1 ve sonraki ve sonraki ve de sonraki. Demek ki şu son 4 dalgacığı alıyoruz. Şunu ayırdık v.s. Demek ki tabanın yaptığı iş bu.

 

R^8’deki her vektör bunların bir bileşimi ve doğrusal cebir açısından----doğrusal cebirin yaptığı katsayıları bulmak. Şimdi bu aşamaya geçmek istiyoruz. Eğer size bir taban verilirse, tıpkı şu dalgacık tabanı gibi, ve de pixeli verirsem, şurada pixel değerlerimiz var P1, P2, ---P8’e kadar, yapmamız beklenen ne? Bu değerler standart tabandaki değerler, değil mi? Bunlar 8 arda arda sıralama noktanın değerleri. Sanırım şimdi 8x8’lik bir boyuttan, tek boyuta iniyorum. Bu üstteki satır boyunca 8 pixel değeri alacağım. Şimdi ne yapmak istiyorum? Standart tabanda pixel değerleri bunlar.

 

Şimdi bunları bir bileşim olarak yazacağım, c1 kere bu adam, + c2 kere şu adam,  + c3 kere şu, bunlar katsayılar, ve c4 kere şu adam  ---ne yaptığımı görüyor musunuz? Bu P vektörünü c1 kere birinci dalgacık + ...+ c8 kere sekizinci dalgacık şeklinde yazmak istiyorum. İşte bu dönüşüm adımı.

 

Bu kayıpsız adım. Bu adım P’den ---ona burada P diyorum, ve şurada x dedim, şimdi----hareket riskini alıp, ve dolayısı ile atlamalar yaratıp---şimdi P dediğim sinyal, şu pixel değerleri, ve şimdi katsayılara bakıyorum. Pekala, bana onu nasıl yapacağımı söyleyin.

 

Eğer size 8 taban vektörünü verirsem, ve giriş sinyalini versem, ve de katsayıları sorsam, ne yapmanız gerekir? Atmam gerekli adım ne? Bunu çözmeye çalışıyorum, 8 adet katsayıyı bilmek istiyorum, dolayısıyla sadece 8 gri skalası olan standart tabandan dalgacık tabanına geçiyorum ve şimdi vektör sadece 8 sayıdan oluşuyor.  R^8’de bir vektör tanımlamanız için sadece 8 sayı gerekiyor, bunlar da tabanın katsayıları. Bunu daha önce de yaptık. Bu denklemin vektör yazılımı; şimdi de matris şeklinde görmek istiyoruz.

 

Bu dalgacık matrisinin sütunlarının bir bileşimi. Bu P=c1, c2, ..., c8’e kadar, ve bu adamlar sütunlar.

 

Bu gerçekte tüm bu ders boyunca yaptığımız bir işlem, ilk taban vektörü ilk sütuna gidiyor, ikinci taban vektörü ikinci sütuna gidiyor ve böylece devam ediyor, dalgacık matrisinin sekiz sütunu 8 taban vektörümüz. Bu bir dalgacık matrisi, W diyelim. Taban değiştirme işlemi ---şimdi taban değiştirmeye geliyorum, taban değişimi, -- şu tahtada kalayım, ancak, şunun üstünde yazayım, şuraya.

 

Şurası standart taban, dalgacık tabanı burada, ve dönüşümü yapmak için P = Wc’yi çözmek gerek. Katsayılar demek ki W ters P’ye eşit. Tamam.

 

Bu önemli bir noktaya parmak basıyor. Güzel bir tabanı, hızlı bulunabilen bir tersi var. İyi taban ne demek? Bu milyar dolarlık yarışma gibi ve hala bitmedi. İnsanlar daha güzel tabanlar da bulacaklar.

 

İyi bir tabanının ilk kuralı, hızlı olması.

 

W  matrisi ile hızlı çarpımı yapabilmeli  İyi, ve W - W’nın tersi ile de hızlı çarpabilmeliyim. Bunun anlamı ---eğer tabanınız hızlı işlem yapmanıza müsade etmiyorsa, işlemler o kadar fazla zaman alır ki, bunu karşılayamazsınız (ekonomik olmaz). Bu tabanlar ---Fourier tabanları, herkes söyledi, Fourier tabanı ile nasıl hızlı çalışacağımı biliyorum, çünkü hızlı Fourier dönüşümü denilen bir şey var. Demek ki daha önceki bir dersimde sözünü etmiş olduğu hızlı Fourier dönüşümü var, ve kitabın da son ünitesinde bulunmuyor ---taban değişimini yaptık ---ve Fourier tabanı için, hızlı Fourier dönüşümünün sayesinde hızlı yapılabiliyor ve burada da hızlı dalgacık dönüşümü var. Bu dalgacık örneği için, değişimi yapabilirim, matrisin tersini almak kolay.

 

Birisi akıllıca düşünüp bu dalgacık tabanını seçmiş ve güzel bir tersi var.

 

Aslında, niye güzel bir tersi olduğunu görebilirsiniz.

 

Bu sekiz taban vektörümün bir özelliğini görebiliyor musunuz? Yalnız beşini yazdım, ancak bu beşi için söylediğim özelliği görebilirseniz, diğer üçü için de görebileceksiniz. Eğer bu 8 vektörü verip, size güzel özellik ne diye sorarsam ne dersiniz? En başta söyleyebileceğiniz, hepsinin 1’ler ve sıfırlardan oluştuğu. Demek ki tüm çarpımlar çok hızlı, iki tabanında yapılabiliyor. Ancak bu vektörlerin diğer önemli özelliği ne? Görebilen var mı? Demek ki bir tabanı değerlendirirken önemli bir özellik, bu özelliğin mutlaka olması gerekmiyor ancak olması mutlu eder ---bu özellik vektörlerin dik olması.

 

Taban vektörleri dikse, işim kolay. Ve bunlar da öyle.

 

Görebiliyor musunuz? Şununla bunun nokta çarpımını alın, 4 tane +1, dört tane de -1 elde edersiniz, bu da sıfır eder. Şununla bunun nokta çarpımını alın, iki artı 1 ile, iki tane eksi 1 elde edersiniz. Veya şu değer ile şunun nokta çarpımını. İki tane +1 ve iki tane -1. Bunun bir dik taban olduğunu görebilirsiniz, ancak birimdik değil.

 

Bunu düzeltmek için, uzunluklarına ile bölmeliyim, birim vektöre dönüştürmek için. Bunu yapalım şimdi.

 

Şurada bir yerde, şunun uzunluğu karekök sekiz, şununkisi karekök dört, bunun uzunluğu ise karekök iki. Bu sadece bir sabit faktör, bu kolay----bunu yaptığımızı varsayalım.

 

Söyleyin W2 nin tersi ne? Bu 4üncü bölümün, 4.4 kısmında işlenmişti.

 

Eğer birimdik sütunlarımız varsa, o durumda matris tersi, matris devriğine eşit olur. Demek ki w ile çarpmanın hızlı bir yolu varsa, ki var, tersi aynı şekilde olacak ve W ters yapmak için hızlı yol olacak.

 

Bu dalgacık tabanı hızlı yapma şartını yerine getiriyor. Hızlı kullanabiliyoruz.

 

Ancak ikinci bir şart daha var, ancak işe yarar mı bakalım. En hızlı yapabileceğimiz şey, hiç taban değiştirmemek. Değil mi? En hızlı yapabileceğimiz şey, standart tabanda kalmak sekiz pixel değeri ile kalmak.

 

Ancak o veri sıkıştırma açısından kötüydü. Bu sekiz pixel değeri, sırf bu değerleri almış olsaydım, bunlardan bazılarını atabilirdim. Eğer %90’ı atsam ---eğer 10’da 1 oranında sıkıştırma yaparsa ve pixel değerlerimizin %90’nını atarsam, resmim kararır. Halbuki iyi olan tabanı kullandığımda, dalgacık tabanı veya Fourier tabannda, eğer c5, c6, c7 ve c8’i atarsam, tek atıyor olduğum küçük noktacıklar, ki bunlar da az sayıda olacak. Demek ki ihtiyacımız olan ikinci özellik iyi sıkıştırma. Demek ki önce hızlı olmalı ve ikinci olarak da bazı taban vektörlerinin sinyale yakın olması gerekir. Birkaç tane yeter.

 

Bunu şu şekilde yazabilir miyim? Sadece birkaç taban vektörü, bu 18.06 dersinin video görüntülerini yaratmaya yeter. Sıkıştırma oranının ne olduğunu bilmiyorum, sıkıştırmayı yapan David’e soracağım -- ve bu arada sınav için gerekli derslerin zamanında web’e konulmasını sağlayacağım. Onlara bugün bir mesaj yollayacağım.

Demek ki Fourier tabanını kullanıyor, çünkü JPEG ..demek ki JPEG2000, bunun görüntü sıkıştırmamın yeni standartı olması  bekleniyor, artık dalgacık tabanını kullanacak. Söylemek istediğim, görüntü işleme dünyasının gittiği yerin büyük resmini görüyorsunuz.

 

Fourier herkesin bildiğiydi ve insanların otomatik olarak kullandığı, ve yenisi dalgacıklar ki bu elimizdeki en basit dalgacık dizisidir.

 

Ve bu FBI’ın kullandığı değil, bu orada FBI daha düzgün bir dalgacık kullanıyor, 1’den -1’e atlayacağına, daha düzgün bir kesme noktası (cutoff) kullanıyor ve bu JPEG 2000’de kullanılacak olan olacak, bu da işin uygulama kısmı.

 

Şimdi dersin matematik kısmına gelelim, doğrusal cebir kısmına. Öncelikle bir taban değişikliği gördük. Önce taban değişimi fikrini bir daha gözden geçireyim, sonra da dönüşüm matrisine bakalım.

 

Peki bunların uygulamalarının geniş olduğunu görüyorsunuz.

 

Şimdi taban değişikliği hakkında ve biraz da bunun --- matrisi hakkında konuşmalıyız.

 

Tamam.

 

Tamam, demek ki taban değişikliği.

 

Esasında, bunun için özür dilerim, vektörümü tek bir taban cinsinden yazdım şimdi de tabanını değiştirmek istiyorum.

 

Aslında bunu dalgacık durumunda gördünüz.

 

Şimdi şuna ihtiyacım olacak ---W matrisi ve W’nın sütunları yeni taban vektörlerimiz olsun.

 

Bu durumda taban değişikliğinin tek içerdiği W’nın tersi, daha öncesinde de olduğu gibi.

 

Diyelim ki eski tabanda bir x vektörümüz olsun, ve c  de yeni tabandaki vektörümüz olsun, ikisinin arasındaki ilişki x=Wc olur. Atmamız gereken adım bu.

 

Taban değişikliğini yaratan bir W matrisimiz var.

 

Şimdi düşünmem gerekli olan matris dönüşümleri. Ve dersi bitirmeden şu soruyu soralım.

 

Bir T doğrusal dönüşümünün olduğunu varsayalım.

 

Bunu bir sekiz --- n’ye n’lik bir matris olarak düşüneceğim.

 

Ve bu belli bir taban cinsinden hesaplanıyor.

 

Demek ki T ---özür dilerim, T dönüşümünü elde ettim, nokta. Bu sekiz boyutlu uzayı sekiz boyutlu uzaya taşıyor.

 

Şimdi şuralara matrisler koyalım. Tamam.

 

İlk tabana göre, v1’den v8’e kadar, bir A matrisimiz var.

 

Şuralara sadece harfler koyayım.

 

İkinci bir tabana göre, u1’den başlayıp ---veya w1, daha önce kullandığım w1’den w8’e kadar olduğu için, bunun da matrisi B ve şimdi sorum A ile B arasındaki ilişki ne? Dönüşüm matrisimiz T’yi nasıl kurgulayacağız?

 

Örneğin bir döndürme olduğunu söyleyebiliriz. Bu sekiz boyutlu bir uzayın bir dönüşümü olacak, azıcık yerinde çevirecek. Veya izdüşümünü düşünebiliriz. Veya başka herhangi bir doğrusal dönüşüm.

 

Şimdi hatırlamamız gerekir ---ilk adımım size A matrisini nasıl oluşturacağımızı hatırlatmak olacak. İkinci adım ise, aynı yöntemi kullanarak B matrisini oluşturmak, ancak aynı dönüşüm olduğu için, A ile B arasında bir ilişki olmalı. Ve bunun cevabına atlıyayım. Elimde aynı dönüşüm olduğunda ve şu tabandaki matrise uygulandığında ve sonra başka bir tabana uygulandığında, bu iki matris benzer olur.

 

Demek ki bu iki matris benzer matrisler.

 

Şimdi benzer matrislerin ne demek olduğunu hatırlıyormusunuz? Benzer. A’ya benzer, iki matris benzer. Benzer.

 

Ve bunun anlamı ne? Anlamı, bu B matrisini aldığımda, bu matrisi bir benzerlik kullanarak, A matrisinden elde edebileceğim, bir tarafımda bir M matrisi kullanarak, diğer yanımda bir M^-1 matrisi kullanarak yapabilirim.

 

Ve bu M taban değiştirme matrisi olacak.

 

Dersimizin bu bölümü kabul etmek gerekir ki biraz sıkıştırılmış oldu. Sizin görmenizi istediğim ---gerçekte algılamanızı istediğim sonuç şu. Geri gidip şunu söylemeliyim, A nın bu T dönüşümünün matrisi olması ne anlama geliyor? Bunun ne anlama geldiğini hatırlatmam gerek, geçen dersimizin konusu idi.

 

Görmenizi istediğim sonuç, eğer farklı bir tabana geçiyorsam, şimdi biliyoruz ki ---bakın, yeni bir tabana geçtiğimde iki şey olur. Her vektörün yeni bileşkeleri olur. Oradaki kural, eski ve yeni bileşkeler arasındaki kural bu. Her matris değişir, her dönüşüm yeni bir matris türetir. Ve yeni matris bu şekilde ilişkilendirilir, şu M, W ile aynı olabilirdi.

 

Buradaki M, şuradaki W olurdu.

 

Peki son dakikalarda, şükran günü öncesindeki olan dersimizin son bölümünü özetleyebilirim. Matrisimiz ne? Ve sadece bir taban alacağım. Bu bölüm şimdi tahtanın bu yanına gidecek. Matris ne? A ne? Tamam.

 

v1’den v8’e kadar bir taban kullanmak.

 

Peki. Buradaki önemli nokta ne? Önemli olan, dönüşümünün bu 8 taban vektörüne ne yaptığını bilmem durumunda, dönüşümün tümünü biliyor olmam. T’yi biliyoruz, T hakkında herşeyi biliyorum, T hakkında her şeyi T(v)’yi bildiğimden biliyorum, yani T’nin v1, v2’ye ve v8’e yaptığını bildiğimden.

 

Bu niye böyle? Çünkü T bir doğrusal dönüşüm; demek ki bu çıktıların ne olduğunu biliyorsam---demek bunlar girdiler v1---v8’ e kadar, bunlar da dönüşümden elde ettiğimiz çıktılar, örneğin her birinin döndürüldüğü, her birinin izdüşümünün alındığı durum  gibi, yaptığım dönüşüm ne idiyse, nasıl oluyor da, bu iki bilgi ile herşeyi biliyorum?  Doğrusallık nasıl işliyor? Niye? Çünkü her x, bu taban vektörünün bir  bileşimi, doğru mu?  C1V1, C2V2, -- C8V8, bunlar taban vektörleri.

 

Taban olmanın en önemli noktası, her bir vektörün, taban vektörleri cinsinden tek bir şekilde ifade ediliyor olması.

 

Ve sonra, T(x) ne? İddiamız, T(x)’in tüm x’ler için tamamı ile biliniyor olması, çünkü her x, bunların bileşimi ----ve şimdi de doğrusal dönüşüm kısmını kullanarak, x’in çıktısını, -- c1 kere v1’den elde edilen çıktı, artı c2 kere v2’den gelen çıktı v.s.

 

Ta ki, c8 kere v8’in çıktısına gelene kadar.

 

Bu şunu söylemek gibi.

 

T’nin her bir taban vektörüne ne yaptığını biliyorsak, herşeyi biliyoruz demektir.

 

Bunlar bilmemiz gereken 8 nokta. Şimdi.

 

Ancak bu cevapları şu tabanda görmek istiyoruz.

 

Bu ilk çıktı sekiz taban vektörünün bir bileşimi. Şimdi T’yi ilk girdi’nin üzerinde deneyelim; yani ilk çıktıyı taban vektörleri cinsinden yazayım, yani a11 v1+a21 v2+---+a81 v8.  Şimdi T(v2)’yi a12(v1), a22(v2) vs bileşimi alarak yazmaya çalışalım. Teker teker sütunlar cinsinden A matrisini oluşturmaya çalışıyoruz. Bu sayılar ilk sütuna gidiyor, A matrisi ---bu ---bu matrisimiz T’yi bu taban açısından belirleyen matris.

 

a 11’den a18’e kadar, a21’den, a28’e kadar v.s. Tamam.

 

Reçete bu.  Başka bir deyişle, eğer bir dönüşüm ve bir taban elimizde olursa.

 

Yani işte bu size vermem gereken şey.

 

Girdiler taban vektörlerimiz, ve dönüşümün ne olduğunu söyleyeyim ve sonra bana söyleyin --- her taban için T’yi hesaplıyoruz. Sonucu taban cinsinden yazıyorum ve bu bana A matrisine girecek 64 sayıyı oluşturuyor. Ve şimdi güzel bir örnekle derse son verelim. V1’den v8’e taban özvektörlerimiz olsun.

 

Bir özvektör tabanımız olduğunu varsayalım T(v_i) , bu v_i ile aynı yönde olsun. Şimdi sorum A’nın ne olduğudur. Bütün adımları takip edebilir misiniz? Birlikte yapalım, çünkü bir dakikada yapabiliriz.

 

Demek ki bu mükemmel tabanı seçtik.

 

Ve aslında sinyal görüntü işlemcisi ile bunlar özvektör gibi görünebilirler.

 

Ancak bu daha uzun bir hesaplama süresi gerektirecek. Dolayısı ile dalgacık tabanını kullanacağız.

 

Veya Fourier tabanını kullanacağız.

 

Ancak en iyi taban özvektör tabanıdır.

 

Peki matrisimiz ne? Matrisin ilk sütunu ne?  İlk sütunu nasıl elde ederim? İlk taban vektörü v1’i alıyorum.

 

Önce dönüşümün buna ne yaptığına bakıyorum. Çıktımız lambda1 v1 ve bu çıktıyı bir bileşim olarak yazıyorum. İlk girdimiz v1, çıktımız lambda1 v1. Şimdi lambda1 v1’i taban vektörleri cinsinden yazalım. Zaten bu yapıldı bile. Lambda1 kere birinci taban vektörü ve sıfır kere diğerleri. Demek ki bu ilk sütunda lambda1 ve sıfırlar olacak. Tamam.

 

İkinci girdi v2, -- çıktısı Lambda2 v2; çıktıyı v’ler cinsinden yaz.. Zaten bu yapıldı. Bu, lambda iki kere ikinci v olur. Şunu yapmalıyız, bu ikinci sütunda lambda iki v2 olacak.

 

Sonucu görebiliyor musunuz? Bu tabandan, özdeğerler tabanında matrisimiz köşegen oldu. Demek ki bu mükemmel taban;  bu görüntü işlemi için elimizde bulundurmak isteyeceğimiz matris ancak pixel matrisimizin özvektörleri çok pahalı. Daha ucuz veya yaklaşık bir şey yapmak istediğimde, örneğin dalgacık tabanını seçebiliyorum.

 

Pekala, teşekkürler. Kısa sınava hazırlık dersimiz Çarşamba’ya bütün gün olacak. Teşekkürler.