Bu yazıyı okuyabiliyor musunuz?
Btn nl hrflr cmldn çkrsk bl srnszc kyblyrz.
Eğer ünlü harfler olmadan da cümleyi rahatça okuyabiliyorsak, neden ünlü harflere ihtiyacımız var? Dijital çağ ile birçoğumuzun fark ettiği bir şey bu aslında. Mesaj atarken “selam” yerine “slm”, “naber” yerine “nbr” yazmak gibi…
İki türlü de anlayabiliyorsak, boşa harf eklemenin bir anlamı var mı?
Daha da önemlisi… Bir bilgiyi, en kompakt en sıkıştırılmış haline nasıl getirebiliriz? Claude Shannon, işte bu soruyu sorarak dünyayı değiştirdi. Bugün Güneş sisteminin dışına bile mesaj gönderebiliyorsak, bu unutulmuş dahiye borçluyuz.
Hayır, kendisi bir jonglör değil. Fakat tek tekerlekli bisikletiyle jonglörlük yapmak, tuhaf icatlar geliştirmek gibi adetleri varmış.
Sadece 21 yaşındayken, 1938’de MIT’de yazdığı Master tezi, bugün bile hala dünyanın gelmiş geçmiş en iyi Master tezi olarak kabul ediliyor. Çünkü onun keşfi, dünyayı değiştirdi. O, “information theory” yani “bilgi kuramının” babası. O, bize “1+1” in yine 1’e eşit olabildiği bir sistemi gösterdi. Bu sayede dijital dünyanın temelleri atıldı. Buna rağmen, onu neredeyse kimse hatırlamıyor.
1+1=1 nasıl olabilire takıldığınızı biliyorum, anlatacağım. Ama önce onu bu sonuca oluşturan yolu görelim.
Shannon, daha bir öğrenciyken, Michigan Üniversitesindeyken, Boolean cebiri üzerine dersler alıyor. Normal, bildiğimiz cebirde nasıl 0, 1, 2, … 9 gibi sayıları kullanıyorsak, Boolean cebirinde de doğru ve yanlış, yani true ve false birer değişken. Yani 1 ve 0 gibi. Ya da yazı veya tura gibi.
Yazı mı tura mı? Tura dediyseniz doğru bildiniz.
Şimdi yazı mı tura mı? Tura dediyseniz yine doğru bildiniz. Yazı tura atmak aslında mors kodu gibi. Size dash dash dash, dot yerine; yazı yazı yazı, tura diyebilirim.
Yazı mı tura mı? Yine tura. Üst üste bu kadar tura gelmesinin aslında bir sebebi var. Çünkü bu paranın her iki tarafı da tura. Bu hileli bir para. Yani bu yazı turanın içerisinde bir rastgelelik yok. Cevabın hep tura olacağını biliyorum. İşte bu yüzden, böyle hileli bir parayı, bilgi aktarmak için kullanamıyoruz. Yani sadece dot dot dot dot dot dot… Bu şekilde bir mesaj iletemem. Arada en az bir değişkenin daha olduğunu bilmeliyiz. Noktanın yanında bir de çizgi olmalı ki bu bir bilgiye dönüşsün.
İşte hileli olmayan normal bir para nasıldır? Bir yüzü turadır, diğer yüzü de yazı. Parayı fırlattığımda…
Ne geldiğini tahmin etmeniz, tamamen “belirsizliklere” bağlıdır. İşte Shannon, bunu şöyle anlatıyor:
“Eğer her şey tahmin edilebilirse o zaman hiç bilgi yoktur. Eğer işin içinde rassallık varsa, o zaman her şey hakkında bilgiye ihtiyacınız var.”
Shannon’ın bununla ne demek istediğini anlamak için durup şöyle bir düşünmek gerekiyor. Hatta uzunca bir süre düşünmek gerekiyor. Shannon ise, iletişimi açıklamak için fiziği kullanmanın yolunun “entropiden” geçtiğini buluyor. Yani belirsizlikle dans etmeye başlıyor.
Bir sistemde belirsizlikler ne kadar çoksa, entropinin de o kadar çok olacağını söylüyor. Yani entropi kabaca, ben bu parayı fırlatmadan önceki belirsizliklerin bir ölçütü. Bilgi yani “information” ise, parayı attıktan sonra edindiğim bilgi yani “knowledge.”
Eğer para sahteyse, iki yüzü de turaysa, herhangi bir belirsizlik yok. Dolayısıyla parayı fırlattıktan sonra edinilen bir bilgi de yok.
Parayı gerçek bir parayla değiştirirsek o zaman işler değişiyor.
Elimin altında ne olduğu “bilgisini edinebilmek” için, en az kaç soru sorabilirsiniz? Mesela “yazı mı” diye sorarsanız, buna “evet” veya “hayır” diyerek size sonucu söyleyebilirim. Evet veya hayır, ya da 1 veya 0… İkili sistemde tek bir soruyla bilgiyi edinebiliyoruz. İşte bu ikili sisteme yani “binary digit”e Shannon bir isim arıyor ve ikisini birleştirip, “bit” diyor. Evet “bit” kelimesinden ilk bahseden o. Bilginin en küçük birimi. Fizikte atom neyse, bilgide bit o. Bugün bilgisayarlarda mesela 500 megabyte derken, o ifadede yer alan byte kelimesi, 8 bit demek. Shannon’ın keşfi, şu an bile elimizin altında yani! Kullanılan sıkıştırma programlarının temelinde bu yatıyor. Hani nasıl telefonla bir fotoğraf çekiyorsunuz boyutu büyük oluyor ama Whatsapp’tan gönderince boyutu küçülüyor. İşte tam olarak öyle, fotoğrafı içindeki anlamlı bilgiyi kaybetmeden “sıkıştırıyoruz”. Tıpkı en başta yaptığım gibi.
“Bütün ünlü harfleri cümleden çıkarsak bile sorunsuzca okuyabiliyoruz”u alıp,
“Btn nl hrflr cmldn çkrsk bl srnszc kyblyrz” a dönüştürüyor.
İyi ama bunu en fazla ne kadar sıkıştırabiliriz? Örneğin 100 GB’lık bir veriyi hiçbir bilgiyi kaybetmeden 500 bit yapabilir miyiz? İşte Shannon’ı 1948’de meşhur yapan şey tam olarak bu. Entropinin, bir bilginin sıkıştırılabilecek en küçük birimi olduğunu göstermekle kalmıyor. Aynı zamanda, bunun, yani bilgiyi hatasız bir şekilde iletmenin bir limiti olacağını da buluyor: Shannon limiti.
Tıpkı ışık hızı limiti gibi, bilgiyi de hatasız bir şekilde bir kanaldan aktarabilmenin bir limiti var. Bu çok sıradışı bir keşif ve o zamanlar büyük bir yankı uyandırıyor. Ne yazık ki anlaması da, ışık hızının neden bir limit olduğunu anlamak kadar zor. Fakat sezgiselleştirebilmek adına şöyle düşünebiliriz:
Yazı tura attığımız zaman, sonuca dair bilgi edinebilmek için “tek bir soru” sormamız yetiyordu: “Yazı mı?”. Tek bir soru eşittir 1 bit. Eğer üç yazı turanın ardı ardına sonuçlarını bilmek istiyorsam 1 bit + 1 bit + 1 bit = 3 bite ihtiyacım var.
Peki en baştaki gibi bir cümleyi kaç bitte ifade edebilirim? Örneğin bu cümleden bir kelimeyi aktarmaya çalıştığımızı düşünelim. Bunu bir kelime tahmin oyunu, adam asmaca gibi düşünebilirsiniz. Her bir harfi tek tek tahmin etmek için, kaç soru sormamız gerekir? Yazı turada sadece bir soruyla bilebiliyordum. Peki harflerde kaç soruyla bunu öğrenebiliriz? Aklınıza bir şeyler geliyor mu? Bir düşünün bakalım.
İzlenebilecek en basit algoritmalardan biri, ikiye bölerek ilerleme. Örneğin ilk sorumuz, bu harf “N harfinden önce mi?” olabilir. Eğer cevap evetse, N’den sonraki harfleri eleriz. Sonra “G’den önce mi” diye sorarız ve cevap hayırsa, G’den öncekileri de eleriz. Bu şekilde eleyerek ilerledikçe elimizde en sonunda bir harf kalır. Tüm harfler için bu algoritmayı uygular ve ortalamasını alırsak, toplamda 4.7 soruda bir harfe ulaştığımızı buluruz. Yani bir harf, 4.7 bite karşılık gelir. Eğer bu 9 harften oluşan bir kelimeyse 4.7 x 9’dan 42.3 bit olduğunu buluruz.
Bu yarıya bölme algoritmasını kullanarak karekök iki gibi sayıların değerini nasıl hesaplayabileceğinizi daha önce anlatmıştım. Fakat bu algoritma en basit yaklaşım ve harflerin dilimizde rastgele, eşit olasılıklarla dağılacağını temel alıyor. Ama biz dilimizde harfleri böyle kullanmıyoruz. Örneğin İngilizce’de q harfinden sonra çok ender istisnalar dışında hep u harfi geliyor. Question, quiz, squirrel… Yani harfi tahmin etmemizi daha etkin kılacak yollar, algoritmalar var. Yani “q” harfini bulduysak, sonrakini herhangi bir soru sormadan “u” olarak seçebiliriz. Bu da bize bir bit avantaj sağlar. Zaten klavyelerimizdeki harflerin dağılımı da, bunu optimize edecek şekilde belirleniyor. Claude Shannon, İngilizce için 2.62 bit’te bir harfi bulabileceğimizi hesaplıyor. Rastgele dağıldığı 4.7 bitten çok daha küçük bir değer.
Peki, dilin kurallarından faydalanarak onun daha etkili bir şekilde iletmenin yollarını bulabiliyorsak… İletme açısından çok daha etkili olacak bir dil geliştirebilir miyiz? Ya da iletişimi daha hızlı kılmanın bir yolunu bulabilir miyiz?
Claude Shannon, iletişimin matematiksel teorisinin temellerini atarken, elektrik devrelerindeki rölelerin çalışma mantığı ile Boolean cebirini birleştirmeyi hayal etti. Rölelerin basit ama etkili çalışma prensibi – açık veya kapalı olma durumu – onu Boolean mantığının temel prensipleriyle özdeşleştirdi.
Bir röle ya kapalıdır ve elektriği geçirir (1/doğru), ya da açıktır ve elektriği geçirmez (0/yanlış). Bu ikili durum, tıpkı Boolean cebirindeki gibi sadece iki değer alabilir. Shannon, bu benzerlikten yola çıkarak, mantıksal işlemleri elektrik devrelerine dönüştürmenin mümkün olduğunu gösterdi.
Röleleri seri bağladığımızda, bu VE (AND) mantık kapısı gibi çalışır. Tıpkı bir zincirin tüm halkalarının sağlam olması gerektiği gibi, seri bağlı rölelerin hepsinin kapalı (1) olması gerekir ki devre tamamlansın. Bu yüzden seri bağlantıyı çarpma işlemiyle gösteririz. Örneğin iki röle seri bağlıysa, ikisi de kapalı (1) olmalıdır ki akım geçebilsin: 1 × 1 = 1. Eğer rölelerden biri açıksa (0), akım geçemez: 1 × 0 = 0.
Paralel bağlantıda ise durum farklıdır. Bu VEYA (OR) mantık kapısı gibi çalışır ve toplama işlemiyle gösterilir. Paralel bağlı rölelerden sadece birinin kapalı (1) olması, akımın geçmesi için yeterlidir. İşte bu yüzden Boolean mantığında 1 + 1 = 1 olur, çünkü iki yoldan da akım geçebilmesi, sonucu değiştirmez.
Yani bu mantıkta 1 + 1 = 1 olur.
Boolean mantığı ilk bakışta alışık olduğumuz matematik kurallarına aykırı görünebilir – özellikle 1 + 1’in 2 değil de 1’e eşit olması gibi. Fakat burada yaptığımız işlem, bildiğimiz sayısal toplama değil, mantıksal bir işlemdir.
Diyelim ki bir konsere gitmek için bilet aldınız. Ama sonra aynı konser için bir de davetiye geldi. Konser girişinde size “Biletiniz VEYA davetiyeniz var mı?” diye sorulduğunda “evet” dersiniz ve konseri izlersiniz. Sadece biletiniz varsa da “evet” dersiniz ve yine konseri izlersiniz. Sadece davetiyeniz varsa yine “evet” dersiniz ve konseri yine izlersiniz. Yani durumlardan birinin 0 olması sonucu değiştirmez. Durumlardan ikisinin aynı anda gerçekleşmesi de sonucu değiştirmez. Her halukarda konsere iki kez gitmezsiniz bir kez gidersiniz. 1 + 1 = 1 olduğu durumu günlük hayattan böyle bir örnekle açıklayabiliriz.
Boolean cebiri, işte bu tür günlük hayat mantığını elektrik devrelerine aktarmanın ustaca bir yoludur.
Kısaca günümüzde kullandığımız bu karmaşık entegreler, aslında çok bağlantılı, açık/kapalı olan röle sistemlerinden ortaya çıktı. Analogu, mantığı, dijitale böyle çevirdik. Buradan bilgisayarlar doğdu… Oradan cep telefonlarına dönüştü. O mektupla haberleşmeden, telgraf çekmelerden; saniyede gerçekleşen iletişime, Claude Shannon gibi bir gencin vizyonu sayesinde geldik.
2001 yılında kaybettiğimiz bu unutulmuş dahinin kızı, babasının dehasını şöyle anlatıyor:
“Harvard’da doktoraya başladığım zamanlardı, 1992 civarı olmalı, babamın Alzheimer’ı ilerlemeye başlamıştı. Bilişsel yeteneklerinin zayıfladığını görebiliyorduk. Bana ne çalışacağımı sordu. Ben de Dünya’nın manyetik alanının değişimini, milyon yıllık döngüsünü falan anlattım. Ve bana hemen o kadar zekice sorular sordu ki, problemin kökenine dair derin sorular… Çok şaşırdığımı hatırlıyorum. “Harika” diye düşündüm, “doktoramı yaparken bu muhteşem akıl benim yanımda olacak”. Maalesef böyle zekice sorular sormaya pek uzun süre devam edemedi. Hatta düşünmeye bile devam edemedi…”
Fakat onun perspektifi, dünyayı sonsuza dek değiştirdi. Bizi “bilgi çağına” geçirdi. Bugünlerde bilginin türlü türlü niyetlerle kullanıldığını görseydi, acaba ne düşündürdü diye merak ediyorum. Bizi bu günlere taşıyan kendisini bile tanımak yerine, her gün televizyonlarda sahtebilimcilerin sesini dinlediğimiz bir geleceği, eminim kendisi de pek hayal etmemiştir. Fakat bu problemi çözdüğümüz gibi, o problemi de çözeceğiz.
Belki de bilgi çağının en büyük ironisi bu: Her şeyi bildiğimizi sandığımız bir dünyada, gerçek bilginin değerini unuttuk.
Yazı mı, tura mı?
mn lmdğnz src, ğrnmy dvm dcksnz.