Tasarım ve algoritma

Tasarım ve algoritma tasarim-ve-algoritma

Görünen köy kılavuz istemez. Bu sene kendimizi makine öğrenmesi (Machine Learning -ML) ve ona bağlı yapay zekâ (Artificial Intelligence -AI) tartışması içerisinde bulduğumuz aşikar. Peki, bu tartışmalara fransız kalmamak adına sabahlara kadar makale okumamız, istatistik bilgimizi tazelememiz ve matematik okur-yazarlığımızı artırmamız mı gerekiyor?

“Hayır.” yanıtını vererek size gümüş kurşunu altın tepside sunacağımı düşündüyseniz, üzgünüm. Eğer gerçekten bu konudaki tartışmalarda pasif dinleyiciden bir adım öteye geçebilmek niyetindeyseniz, ne yazık ki tüylerinizi ürperten o ödevlerden kaçınmanın yolu yok. Öte yandan, her girdiğiniz tartışmada, sessizlik bükücü ya da kazanan olmanız gerektiğine dair bir kural da yok. Yapay zekâ ile ilgili yetişilmesi neredeyse imkansız bir hızda üretilen bilgiyi bir USB aracılığıyla kendinize takıp, veri transferi tamamlandıktan sonra “çalıştır” komutuyla “kullanılabilir yetenekleriniz” arasına ekleyebileceğinize dair fütüristik beklentilere sahip olmayın, ne olur… Eğer bu konuda uzlaşabilirsek, oldukça temel seviyedeki bilgi bloklarınızı sıkılaştırarak kendinize sağlam bir öğrenme zemini yaratmanızı ve dur durak bilmeksizin çıkacağınız yapay zekâ katlarının içerisinde yaşayabilmenizi sağlayacak bir önerim var: (Her şeyden önce) Tasarım ve algoritma kavramlarını içselleştirmeniz.

Tasarıma “yeni” bir tanım…

2017 yılı boyunca Digital Age için kaleme aldığım tüm yazılarda, (yazıların tamamını okumuş olanlar için can sıkıcı olarak nitelendirilebilecek kadar yüksek bir frekansta) tasarımla dekorasyon arasındaki akraba evliliğinden hallice bağlamı dağıtmayı çalışıp, tasarımın problem çözmekle anılması gerektiğinin altını çizmeye çalıştım. Böylelikle “Bir sistemi ‘tasarlamak’, o sistemle etkileşime geçecek (diğer bir deyişle onu kullanacak olan) insanla sistem arasında yaşananları ‘tasarlamak’ anlamına gelir” diyerek giriş yapacağımız sistem-insan etkileşimi uzmanlığı ile ilgili yöntemler, taktikler ve uygulamalar hakkında yazarken, okurun zihninde estetik kaygıdan öte bir dünya canlanabilsin. Öte yandan “Dijital transformasyonda tasarım odaklı düşünceyi etkin bir şekilde kullanabilmek için…” diye söze girerken, insanı merkeze alan problem çözümleme yöntemlerinden bahsettiğimizi anlatmakta zorlanmayalım. Özetle, tasarımın sadece grafikerin değil, hedef kullanıcımızın problemini çözmeye odaklı her bir takım arkadaşımızın en güçlü çözüm tekniği olduğunu, başarıya giden uzun yoldaki ilk ortak kabulümüz olarak ele alabilelim.

2017 boyunca “algoritma” teriminin havası ağırlıklı olarak yazılım dünyasının sohbetlerindeki yelkenlere basılmış olsa da, 2018 trendlerinin basında yer aldığı şu günlerde gördük ki günlük iş sohbetlerimizde “algoritmalı cümlelerin” frekansı artacak. Bu öngörüm, bilişim terimlerine aşina olan profesyoneller, bilgi teknolojileri alanında eğitim görenler ve tabi ki akademisyenler için “Nihayet biz de pazarlamacılar gibi günlük sohbetimiz için bize özel terim ihracatına başlayabildik.” hazzını yaşatır mı bilemem ancak anlamı ve beraberinde getirdiği ödevler nezdinde sistemli düşünmenin gerekliliğini şart koştuğundan, ben gerekirse 2018 yılı boyunca her cümlemin içerisinde bir kez algoritma demeye razıyım. Yeter ki makine öğrenmesi ve yapay zeka konuşacağımız bir geleceğe adım atmadan önce tasarım ve algoritmayı hayatımıza doğru şekilde yerleştirebilelim.

Al-Khwarizmi – Algorithm – Algoritma…

Algoritmanın kökeni bizlere çok uzak değil:

“Dünya’da; 1) Onlu sayı sistemini kuramsal olarak tanımlayıp üzerinde dört işlem kurallarını, 2) Denklem kurma yolu ile problem çözme-cebirsel kuralını, 3) Algoritmik yaklaşımla çözümleme yolunu ilk kez tanımlayan; bilim tarihinde, batılıların “Al-Khwarizmi – Al-Khowarizmi” sanı ile, Arapların” Al-Harezmi” sanı ile, bizim, “Harzemli” sanı ile tanımladığımız, (Batı Türkmenistan’ın, Harzem (Aral) gölünün güneyinde, “Harzem Bölgesi’ndeki, Harzem kentinde doğan – M.S. 780) Türk kökenli, Dedesi Abdullah olan, Musa Oğlu Muhammed’in çalışmalarıdır.

Özellikle Harzemli cebri, “üstün bir aritmetik” yaratması yanında, onlu sayılarla hesap ve problem çözme yöntemini açıklıkla – Algoritmik yaklaşımla öğretmesi, giderek güncel hayatı da etkilemiş, bilimsel yaklaşım ve gerçekçi düşünce bağlamında katkısı, alfabenin yazı diline katkısından az olmamıştır. Bu nedenledir ki, onlu sayılar ve Harzemli cebri ile problem çözebilenlere Harzemli – Alkhowarizmi tarafında olan anlamına “Algorist”ler adı verilmiştir. Avrupa’yı “Aydınlanma”ya götüren yolda Harzemli’nin etkisi az olmamıştır. Nasıl ki, çağımızın aracı bilgisayarı programlarken kullandığımız yönteme katkısı az olmadığı gibi…”*

Net ve basit bir algoritma tanımıyla devam edelim: “Algoritma, verilen herhangi bir sorunun çözümüne ulaşmak için uygulanması gerekli adımların hiçbir yoruma yer vermeksizin açık, düzenli ve sıralı bir şekilde söz ve yazı ile ifadesidir. Algoritmayı oluşturan adımlar özellikle basit ve açık olarak sıralanmalıdır.” Sonra da üzerine bir algoritma tasarlayabilmek için seçeceğimiz problemi, yine aynı netlik ve basitlikte bir örnekle tanımlayalım: “İnternet’te aradığımı bulmakta zorlanıyorum. Anahtar kelime ile yaptığım sorguların daha anlamlı ve arayışımla uyumlu yanıtlar verebilmesini istiyorum.” An itibarıyla, bu probleme yanıt verebilecek en hızlı çalışan algoritmayı yazabileceğimizi düşünmek oldukça hayalperest bir çıkarım olacaktır. Google’ın kurucu ortaklarından Larry Page’in soyadını verdiği ve “İnternet’e düzen getirmeyi hedefleyerek tezleştirdiği” PageRank algoritması işte tam da bu probleme yanıt vermek üzere yaratıldı.**

PageRank-algorithm-simplified
PageRank algoritmasının basite indirgenmiş ilk hali.

“Çalışmayan lamba” analojisi ile kendi algoritmanı yaz

“Tam algoritmanın aslında benim de tasarlayabileceğim bir çözüm olabileceğine dair umutlarım yeşeriyordu ki karşıma yine Google ve anlamadığım terimlerden oluşan matematik formülleri çıkıverdi…” diye iç geçirenler, sizi duydum. Sizi duydum ve içinize su serpecek algoritma örneğiyle geri döndüm: “Çalışmayan Lamba Algoritması”

  • Lamba çalışmıyor.
  • Lambanın fişi takılı mı?
    • Değilse fişi tak.
    • Takılıysa bir sonraki adıma geç.
  • Ampul patlak mı kontrol et.
    • Patlaksa ampulü değiştir.
    • Değilse bir sonraki adıma geç
  • Yeni bir lamba al.

Nasıl ki yapay zekâ ve makine öğrenmesi salt bilim insanlarının işi değilse, tasarım salt grafikerlerin, algoritma da salt yazılımcıların işi değildir. Yapay zekânın öğrenebilir hale gelebilmesi için gerekli olanları bilme ve/veya uygulayabilme arasındaki farkı kapatmak adına harcayacağınız efor, yakın gelecekte, hangi iş alanında çalışırsanız çalışın, bir tasarım sürecinde yapay zekânın size katabileceklerini işte tam da o kadar kullanabileceğiniz anlamına gelecektir.

Şu anda iç sesiniz “Bir dakika, bir dakika, iyi de PageRank de, yukarıdaki ‘Çalışmayan Lamba’ da algoritmaysa, demek ki yazılımcı olmaya gerek yokmuş. Bunu ben de yazarım.” şeklinde tınlıyor mu? O halde amacıma ulaştım ve algoritmanın üzerindeki sis perdesini kaldırmayı az da olsa başarabildim demektir. “Az da olsa” diye final yapmamın sebebi, ilk PageRank örneğindeki kompleksiteyle ampul örneğindeki yalınlık arasında gidip gelirken öğrenilmesi gerekenlerin, aynı işlevi görecek diğer algoritmaların varlığını öğrendiğinizde yaşayacaklarınızın, algoritmanın sağlamasını yapmak için harcayacağınız eforun sizi nasıl da çok hızlı bir şekilde vazgeçmeye iteceğinin muhtemelen henüz bilincinde olmamanızdır.


*Harzemli yolu ya da algoritma N.Kaya KILAN Başkent Üniversitesi, Bilgisayar Mühendisliği Bölümü

**The PageRank Citation Ranking: Bringing Order to the Web


(Bu makale Digital Age Şubat 2018 sayısı için yazılmıştır.)

  • ahuseynovteymur@gmail.com

    Tam da öyle düşünüyordum, çok iyi duydunuz )) Algoritma’nın kökeninin doğudan gelmesini okuyunca ona ayrı bir bağırdım, onu da duymanız lazımdı. Böyle şeyler insanı “aşağılanmış(kültür) sendromu”ndan çıkartıyor, ayrı özgüven veriyor. Güzel yazı için teşekkürler.
    Not:yorumu gönder butonu artık aşağı haraket ediyor. Ona ayrı sevindim))

Bugün ilk makalen bizdendi.

Daha fazlası için SHERPA Blog okuru olmalısın.
Giriş Yap Ücretsiz kaydol

Benzer Yazılar

İLGİNİ ÇEKEBİLİR
Hava durumundan çok daha fazlası: İlham veren 7 yaratıcı arayüz weather-app-designs

Hava durumundan çok daha fazlası: İlham veren 7 yaratıcı arayüz

Gizle
SENİN İÇİN ÖNERİYORUZ
UX Efsanesi #15: “Kullanıcılar optimumu seçer.”

UX Efsanesi #15: “Kullanıcılar optimumu seçer.”

Gizle