1.1.3. Algoritmanın Tanımı ve Bilgisayar Bilimlerindeki Rolü

Şekil 1.6. Algoritma.
Not. Dijital Eğitim Koordinatörlüğü. Creative Commons Lisansları (CC BY NC-ND).

Bir algoritma, belirli bir problemi çözmek veya belirli bir görevi yerine getirmek için adım adım takip edilmesi gereken, açık, net, sonlu ve sıralı talimatlar bütünüdür. Tıpkı bir yemek tarifi, bir LEGO yapım kılavuzu veya bir navigasyon cihazının yol tarifi gibi, bir algoritma da bir bilgisayarın (veya herhangi bir işlemcinin) bir sonuca ulaşmak için izleyeceği kesin yönergeler dizisidir. Her algoritma; bir başlangıç noktası (giriş verileri), bir dizi işlem adımı ve bir bitiş noktası (çıktı) içerir.

Bilgisayar bilimlerinde algoritmalar, herhangi bir yazılımın veya bilgisayar programının temelini oluşturur. Bir yazılımın verimli, doğru, güvenilir ve ölçeklenebilir çalışması, büyük ölçüde altında yatan algoritmaların etkinliğine bağlıdır. Yapay zekâ alanında ise algoritmalar merkezi ve vazgeçilmez bir role sahiptir:

Model Eğitimi
YZ algoritmaları, ham verileri işleyerek bir “model” oluşturur. Bu model, veri içindeki karmaşık kalıpları, ilişkileri ve yapıları öğrenen matematiksel bir temsildir. Örneğin, bir karar ağacı algoritması, geçmiş müşteri verilerini kullanarak bir müşterinin kredi riskini (düşük, orta, yüksek) belirleyen kuralları öğrenebilir ve bu öğrenmeyle bir “kredi risk modeli” oluşturur. Destek Vektör Makineleri (SVM) veya Yapay Sinir Ağları (YSA) gibi algoritmalar da benzer şekilde farklı türde modeller üretebilir.

Tahmin ve Karar Alma
Eğitilmiş YZ modelleri, yeni ve daha önce görmediği veriler üzerinde doğru tahminler yapmak veya rasyonel kararlar almak için bu algoritmaları kullanır. Örneğin, bir spam filtresi algoritması, yeni gelen bir e-postanın içeriğini (giriş) analiz ederek onun “spam” olup olmadığına (çıktı) karar verir. Bir resim tanıma algoritması, bir görseldeki nesneleri tanımlayabilir.

Problem Çözme Mekanizmaları
Algoritmalar, optimizasyon (bir hedefi en iyi duruma getirme), arama (bir veri setinde belirli bir öğeyi bulma), sıralama (verileri belirli bir düzene göre dizme) ve kümeleme (benzer verileri gruplama) gibi çeşitli problem çözme görevleri için kullanılır. Örneğin, bir tavsiye motoru, kullanıcı davranışlarını analiz etmek için kümeleme algoritmaları kullanarak kişiselleştirilmiş ürün önerileri sunabilir. Bir rota optimizasyon algoritması ise en kısa veya en hızlı rotayı bularak lojistik maliyetleri azaltabilir.

Veri İşleme ve Dönüştürme
Büyük veri kümelerini anlamlı bilgilere dönüştürmek için algoritmalar kullanılır. Veri temizleme, öznitelik mühendisliği (ML modelinin performansını artırmak için ham veriden yeni özellikler türetme) ve veri normalizasyonu gibi adımlar, algoritmik süreçlerin önemli parçalarıdır.

Algoritmalar, YZ sistemlerinin “beynini” ve “kaslarını” oluşturur; onlar sayesinde makineler verilerden anlam çıkarabilir, öğrenme süreçlerini yönetebilir ve akıllıca davranabilirler. Algoritmalar, yapay zekâ sistemlerinin doğru tahminler veya kararlar alma yeteneklerini geliştiren, bir şefin enfes bir yemek hazırlamak için kullandığı “tarifler” gibidir. Hangi algoritmanın kullanılacağı, çözülmek istenen problemin doğasına, veri tipine ve istenen sonuca göre belirlenir.

Lisans

 Creative Commons Atıf-Gayri Ticari-Türetilemez 4.0 Uluslararası Lisansı için ikon

Yapay Zekâ Eğitimi Copyright © by Boğaziçi Üniversitesi Dijital Eğitim Koordinatörlüğü is licensed under a Creative Commons Atıf-Gayri Ticari-Türetilemez 4.0 Uluslararası Lisansı, except where otherwise noted.

Bu Kitabı Paylaş