← Tüm makaleler

Gömülü Sistemlerde Yapay Zeka: Edge AI'ye Kapsamlı Bir Giriş

Edge AI nedir, gömülü sistemlerle nasıl bir araya gelir ve bu alana nasıl adım atılır?

Gömülü Sistemlerde Yapay Zeka: Edge AI'ye Kapsamlı Bir Giriş

Yapay zeka artık yalnızca bulut sunucularda değil, doğrudan cihazların içinde çalışıyor. Bu rehberde Edge AI'nin ne olduğunu, gömülü sistemlerle nasıl bir araya geldiğini ve siz de bir gömülü yazılım mühendisi olarak bu alana nasıl adım atabileceğinizi adım adım ele alıyoruz.


İçindekiler

  1. Edge AI Nedir?
  2. Yapay Zeka, Makine Öğrenmesi, Derin Öğrenme Farkı
  3. Neden Edge'de Çalıştırırız? Bulut ile Karşılaştırma
  4. Gömülü Sistemci için Temel ML Kavramları
  5. Model Optimizasyon: Quantization, Pruning, Distillation
  6. TinyML Framework'leri ve Araç Ekosistemi
  7. Hedef Donanım: MCU, MPU ve NPU Seçimi
  8. Inference Pipeline: Sensörden Karara
  9. Gerçek Dünya Uygulama Örnekleri
  10. Başlangıç İçin Önerilen Yol Haritası

Edge AI Nedir? {#edge-ai-nedir}

Edge AI, yapay zeka modellerinin bulut sunucularına ihtiyaç duymadan doğrudan son cihazda — bir mikrodenetleyici, gömülü işlemci veya endüstriyel IoT kartı üzerinde — çalıştırılması anlamına gelir.

Geleneksel yaklaşımda bir sensörden toplanan veri önce internete gönderilir, bulutta işlenir ve sonuç tekrar cihaza döner. Edge AI bu döngüyü ortadan kaldırır: veri cihazı terk etmez, karar anında verilir.

Bu dönüşümün arkasında birkaç güçlü itici güç var:


Yapay Zeka, Makine Öğrenmesi, Derin Öğrenme Farkı {#ai-ml-dl-farki}

Bu üç kavram sık sık birbirinin yerine kullanılır, ancak aslında iç içe geçmiş bir hiyerarşiyi temsil eder.

Yapay Zeka (AI) en geniş çatıdır. İnsan zekasını taklit eden her türlü sistemi kapsar — kural tabanlı uzman sistemlerden modern sinir ağlarına kadar.

Makine Öğrenmesi (ML) bu çatının altında yer alır. Açık kurallar yazmak yerine, bir modeli veriden örüntüler öğrenecek şekilde eğitirsiniz. Karar ağaçları, destek vektör makineleri ve rastgele ormanlar bu kategoridedir.

Derin Öğrenme (DL) ise makine öğrenmesinin bir alt kümesidir ve birden fazla katmandan oluşan yapay sinir ağlarını temel alır. Görüntü tanıma, ses işleme ve doğal dil anlama alanındaki çarpıcı başarılar büyük ölçüde derin öğrenme sayesindedir.

Gömülü sistemler açısından pratik çıkarım şudur: eğitim genellikle PC veya bulutta derin öğrenme araçlarıyla yapılır; siz mikrodenetleyicide yalnızca inference (çıkarım) çalıştırırsınız. Yani bir gömülü yazılım mühendisi olarak PyTorch uzmanı olmanıza gerek yok — ama modelin nasıl çalıştığını, hafızayı nasıl kullandığını ve neden bazen yanıldığını anlamanız gerekiyor.


Neden Edge'de Çalıştırırız? Bulut ile Karşılaştırma {#neden-edge}

Kriter Bulut AI Edge AI
Gecikme (Latency) 50–500 ms (ağ dahil) < 5 ms (çoğu durumda)
Bağlantı bağımlılığı Zorunlu Yok
Veri gizliliği Veri buluta gider Veri cihazda kalır
Enerji tüketimi Sürekli radyo iletimi Yalnızca hesaplama
Operasyonel maliyet API ücreti + bant genişliği Tek seferlik donanım
Gerçek zamanlılık Sınırlı RTOS ile deterministik

Endüstriyel bir örnek üzerinden düşünelim: bir CNC tezgahında rulman arızasını tespit etmek istiyorsunuz. Titreşim sensöründen saniyede binlerce örnek gelir. Bu veriyi buluta göndermek hem bant genişliği hem gecikme açısından pratik değildir. Aynı model bir STM32H747 üzerinde milisaniyeler içinde çalışır ve olağandışı bir titreşim deseni (pattern) gördüğünde anında alarm üretir.


Gömülü Sistemci için Temel ML Kavramları {#temel-kavramlar}

Edge AI projesinde işin içine girdiğinizde karşılaşacağınız birkaç kavramı şimdiden anlamak, ilerideki hata ayıklama süreçlerini ciddi ölçüde kısaltır.

Sinir Ağı Temeli

Bir yapay sinir ağı, birbirine bağlı katmanlardan oluşur. Her nöron, bir önceki katmandan aldığı girdileri ağırlıklarla çarpar, bias ekler ve aktivasyon fonksiyonundan geçirir:

y = f(W·x + b)

Burada W ağırlık matrisi, x giriş vektörü, b bias ve f aktivasyon fonksiyonudur (ReLU, sigmoid vb.). Eğitim sırasında W ve b optimize edilir; çıkarım (inference) sırasında bunlar sabittir ve hesaplama oldukça basit matris çarpımlarına indirgenir.

Eğitim ve Inference Ayrımı

Eğitim, milyonlarca parametre için gradyan hesabı içerir ve GPU gerektirir. Inference ise ileri besleme (forward pass) hesabıdır — çok daha hafiftir ve MCU'da bile çalışır. Gömülü sistemci olarak genellikle inference tarafını devralırsınız: başka birinin eğittiği modeli cihazınıza entegre edersiniz.

Loss, Overfitting ve Validation

Bu kavramları bilmek, size teslim edilen modelin güvenilirliğini sorgulamak için gereklidir.


Model Optimizasyon: Quantization, Pruning, Distillation {#optimizasyon}

Eğitilmiş bir model doğrudan mikrodenetleyiciye taşınamaz. Tipik bir PyTorch modeli FP32 formatında gelir ve yüzlerce megabytes boyutundadır. MCU'nuzda ise belki 512 KB flash var. Bu uçurumu kapatmak için üç ana teknik kullanılır.

Quantization (Niceleme)

Ağırlıkları ve aktivasyonları float 32-bit'ten 8-bit tam sayıya (INT8) dönüştürmektedir.

w_int8 = round(w_fp32 / scale) + zero_point

Bu dönüşüm modeli 4 kat küçültür, inference hızını 2–4 kat artırır ve güç tüketimini önemli ölçüde düşürür. En büyük soru şu olur: doğruluk ne kadar düşer? İyi haber, sinir ağlarının doğası gereği gürültüye dayanıklı olması; çoğu modelde doğruluk kaybı %1–3 ile sınırlı kalır.

İki yaklaşım var:

Pruning (Budama)

Modeldeki küçük veya sıfıra yakın ağırlıklar sıfırlanır ya da tamamen kaldırılır. Seyreklik (sparsity) arttıkça model küçülür; ancak donanım desteği olmadan hız kazancı sınırlı kalabilir.

Knowledge Distillation (Bilgi Damıtma)

Büyük bir "öğretmen" modelin davranışını taklit edecek şekilde küçük bir "öğrenci" model eğitilir. Özellikle edge hedefleri için tasarlanmış hafif model ailelerinde (MobileNet, EfficientNet-Lite) sıkça kullanılır.


TinyML Framework'leri ve Araç Ekosistemi {#framework}

TensorFlow Lite Micro (TFLM)

Google tarafından geliştirilen, MCU hedefli framework. Minimal runtime, C++ tabanlı, geniş platform desteği. Edge Impulse ile kusursuz entegre çalışır.

Edge Impulse

Veri toplama, özellik çıkarma, model eğitimi ve dağıtımı tek bir web arayüzünde sunar. STM32, Nordic, Arduino, Espressif dahil onlarca platform desteklenir. Başlangıç için en hızlı yol.

X-CUBE-AI (STM32 için)

STMicroelectronics'in resmi araç paketi. Keras, TFLite veya ONNX modelini alır, STM32 mimarisine optimize edilmiş C kodu üretir. STM32CubeIDE'ye entegre çalışır.

ONNX Runtime

Daha güçlü Linux tabanlı MPU'larda (Raspberry Pi, i.MX8, RZ/V2N) tercih edilir. Geniş model desteği, cross-platform.

Araç Zinciri Özeti

Python / PyTorch / TensorFlow  →  ONNX / TFLite  →  X-CUBE-AI / Edge Impulse  →  C Array  →  MCU

Hedef Donanım: MCU, MPU ve NPU Seçimi {#donanim}

MCU (Mikrodenetleyici)

Cortex-M serisi (M4, M7, M33, M55) tipik hedef platformdur. Bellek kısıtlıdır (genellikle 256 KB – 2 MB SRAM), ancak düşük güç tüketimi ve deterministik zamanlama avantaj sağlar.

Öne çıkan kartlar:

MPU (Mikroişlemci)

Linux çalıştırır, daha geniş bellek ve depolama imkânı sunar. Raspberry Pi Compute Module, i.MX8, Renesas RZ/V2N bu kategoridedir. Daha büyük modeller, daha karmaşık görüntü işleme için uygundur.

NPU (Nöral İşlem Birimi)

Matris çarpımlarını donanım seviyesinde hızlandırır. STM32N6'daki Stellar NPU ve Google Coral Edge TPU buna örnek gösterilebilir. Kritik kısıt: NPU'nun desteklediği operasyon seti modelin tüm katmanlarını kapsamayabilir; model seçiminde bu dikkate alınmalıdır.


Inference Pipeline: Sensörden Karara {#pipeline}

Gerçek bir Edge AI sisteminde veri şu adımlardan geçer:

1. Veri Toplama

ADC, I2S, SPI veya UART üzerinden sensör verisi okunur. DMA kullanımı kritiktir — CPU meşgul edilmeden tampon doldurulur. Örnekleme hızı (Nyquist teoremi) ve pencere boyutu doğrudan model girişini etkiler.

2. Ön İşleme (Feature Engineering)

Ham veri genellikle doğrudan modele verilmez. Yaygın dönüşümler:

3. Inference

Model C array olarak flash'a yerleştirilir. Runtime (TFLM veya X-CUBE-AI üretimi) modeli adım adım çalıştırır. Aktivasyon tamponları SRAM'de tutulur. Tipik süreler: 5–50 ms (MCU sınıfı), < 1 ms (NPU).

4. Karar ve Aksiyon

Çıkış katmanından gelen sınıf olasılıkları veya regresyon değerleri bir eşik mekanizmasıyla işlenir. Alarm üretimi, motor durdurma, LED yakma veya MQTT üzerinden bildirim bu aşamada gerçekleşir.


Gerçek Dünya Uygulama Örnekleri {#uygulamalar}

Titreşim Tabanlı Anomali Tespiti

Rulman, fan veya pompa gibi dönen makine elemanlarının titreşim imzası, FFT analizi ile özellik vektörüne dönüştürülür. Eğitilmiş bir autoencoder veya sınıflandırıcı, normal operasyondan sapmaları gerçek zamanlı tespit eder. Endüstriyel IoT'nin en yaygın Edge AI kullanım alanıdır.

Anahtar Kelime Tespiti (KWS)

"Hey Alexa", "Tamam Google" gibi komutları tanıyan modeller, Mel Spectrogram + küçük CNN mimarisi ile birkaç kilobaytta çalışır. ESP32-S3 veya STM32 üzerinde sürekli dinleme yapılabilir.

Görüntü Sınıflandırma ve Kusur Tespiti

Üretim bantlarında kamera modülünden gelen görüntüler, MobileNet veya FOMO (Faster Objects, More Objects) mimarisi ile analiz edilir. Hatalı parça tespiti, etiket kontrolü, barkod okuma gibi uygulamalar Edge AI ile saniyenin altında gerçekleşir.

Biyometrik İzleme

Kalp atış hızı (PPG sensörü), uyku kalitesi (IMU) veya düşme tespiti gibi uygulamalar, giyilebilir cihazlarda kişisel verinin cihazda kalmasını gerektirdiğinden Edge AI'nin doğal alanıdır.


Başlangıç İçin Önerilen Yol Haritası {#yol-haritasi}

Gömülü yazılım geçmişiniz varsa Edge AI'ye geçiş düşündüğünüzden çok daha kısa sürer. İşte adım adım bir yol:

Kavramsal temel Edge Impulse'un ücretsiz hesabını açın. Hazır bir veri setiyle (titreşim veya ses) ilk modelinizi eğitin ve Arduino veya STM32 geliştirme kartına yükleyin. Amacınız tüm pipeline'ı bir kez uçtan uca görmek.

ML temellerini güçlendirin Google Colab'da Python ile basit bir sınıflandırıcı eğitin. Loss eğrisini, overfitting belirtilerini ve train/val ayrımını gözlemleyin. Keras ile başlayın — PyTorch sonradan öğrenilir.

Quantization ve deployment Eğittiğiniz modeli TFLite'a dönüştürün, INT8 quantization uygulayın. X-CUBE-AI ile STM32 üzerinde çalıştırın. Flash ve RAM kullanımını analiz edin.

Kendi projenizi oluşturun Sahip olduğunuz bir sensör (mikrofon, IMU, ADC) ile veri toplayın, etiketleyin ve kendi modelinizi eğitin. 3D yazıcı, fan veya titreşim kaynağı varsa anomali tespiti mükemmel bir başlangıç projesidir.

Matematiği bilmesem de olur mu?

Kısa cevap: evet, başlamak için olur. Edge Impulse ve X-CUBE-AI matematikten bağımsız olarak kullanılabilir. Ancak zamanla şunu fark edeceksiniz — loss nedir, overfitting neden olur, quantization neden %2 doğruluk kaybı yaratır — bu soruların cevabını bilmek, karşılaştığınız sorunları çok daha hızlı çözmenizi sağlar. Matematiği anlamak bir zorunluluk değil, sizi seviye atlatacak bir yatırımdır.


Sonuç

Edge AI, gömülü yazılım mühendisliğinin en hızlı büyüyen kesişim alanlarından biridir. Bulut bağımlılığı azaldıkça, veri gizliliği gereksinimleri arttıkça ve MCU'ların hesaplama gücü büyüdükçe akıllı cihaz talepleri önümüzdeki yıllarda katlanarak artacak.

Bu alanda konumlanan bir gömülü sistemci; C/C++ hakimiyetini, gerçek zamanlı sistem bilgisini ve donanım yakınlığını yapay zeka araçlarıyla birleştirince nadir ve değerli bir profil oluşturur. Başlamak için mükemmel bir zaman beklemek yerine en basit proje üzerinden deneyim kazanmaya başlamak en doğru yaklaşımdır.*

Kurslara göz at →