← Tüm makaleler

Edge AI: Yapay Zeka Artık Gömülü Yazılımların İçinde

Bulut yerine cihaz üzerinde çalışan yapay zeka — donanım, yazılım ve gerçek zorluklar

Edge AI: Yapay Zeka Artık Gömülü Yazılımların İçinde

Birkaç yıl öncesine kadar "yapay zeka" sözcüğü, gömülü yazılımcı için uzak bir kavramdı: sunucular, GPU kümeleri ve büyük veri gerektiren bir dünya. Bugün durum farklı. Bir STM32, bir ESP32-S3 ya da bir Raspberry Pi üzerinde eğitilmiş bir sinir ağı modeli çalıştırabiliyorsunuz — internet bağlantısı olmadan, milisaniyeler içinde, batarya ile.

Bu yazı o dünyanın kapısını aralıyor: Edge AI nedir, neden önemlidir, hangi donanımlar bunu destekler ve sizi bekleyen gerçek zorluklar nelerdir?


Edge AI Nedir?

Edge AI, makine öğrenmesi çıkarım görevlerinin (inference) bulut veya sunucu yerine cihazın kendisinde — sensörün, kameranın ya da mikrodenetleyicinin üzerinde — çalıştırılması anlamına gelir.

Geleneksel bulut tabanlı AI akışı şöyle işler:

Sensör → Veri toplama → İnternet → Sunucu (model çalışır) → Sonuç geri gelir

Edge AI akışı ise şöyle:

Sensör → Veri toplama → Cihaz üzerindeki model çalışır → Anlık sonuç

İki akış arasındaki fark yalnızca mimari değil; gecikme, gizlilik, güvenilirlik ve güç tüketimi açısından köklü bir değişimi temsil ediyor.


Neden Edge AI?

Gecikme

Bir akıllı mikrofon ağzınızdan çıkan "Hey, cihaz!" komutunu algıladıktan sonra sunucuya gidip gelirse 200–500 ms geçebilir. Cihazın kendi işlemcisinde çalışan bir model bu işi 10–30 ms'de halleder. Gerçek zamanlı tepki, Edge AI'ı kaçınılmaz kılar.

Gizlilik

Ses, görüntü ve biyometrik veriler sunucuya gönderildiğinde gizlilik tartışmalı hale gelir. Edge AI, ham verinin cihazı hiç terk etmemesine olanak tanır. Yalnızca çıkarım sonucu (örneğin "komut algılandı") iletilir.

Bağlantıya ihtiyaç duymamak

Fabrika zemini, tarla, maden ocağı: internet bağlantısının kararsız ya da hiç olmadığı ortamlarda sistem çalışmaya devam etmek zorundadır. Edge AI bu ortamları mümkün kılar.

Güç Tüketimi

Bir veriyi buluta göndermek ve yanıt beklemek, Wi-Fi/LTE radyosunu aktif tutar. Düşük güç tüketimi kritikse — pil ömrü yıl cinsinden ölçülüyorsa — radyoyu mümkün olduğunca kapalı tutmak gerekir. Cihaz üzerinde çıkarım bu denklemi kökten değiştirir.


Donanım Yelpazesi

Edge AI, tek bir donanım profili değil; mikrodenetleyiciden küçük Linux kartına uzanan bir yelpazedir.

Mikrodenetleyici Sınıfı (MCU)

Kaynak kısıtlaması en ağır katman. Kilobayt cinsinden RAM, megahertz cinsinden saat hızı. Burada çalışan modeller, derin sıkıştırmadan geçmiş küçük ağlardır.

STM32 + STM32Cube.AI: ST Microelectronics, kendi geliştirme ortamına (STM32CubeIDE) entegre X-CUBE-AI paketiyle Keras/ONNX modellerini doğrudan STM32 için C koduna derliyor. F4 ve H7 serisi, özellikle anomali tespiti ve titreşim analizi gibi sinyale dayalı görevlerde tercih ediliyor.

ESP32-S3: Espressif'in bu çipi, orijinal ESP32'ye eklenen vektör işleme komut seti uzantılarıyla ayrışıyor. TensorFlow Lite for Microcontrollers (TFLM) ve ESP-DL kütüphanesiyle görüntü sınıflandırma, yüz tespiti ve anahtar kelime tanıma uygulamalarında yaygın kullanılan platform. Dahili PSRAM desteği (8 MB), model ve ara katman tamponları için alan tanıyor.

Arduino Nano 33 BLE Sense / Nano RP2040 Connect: Edge Impulse ile doğrudan entegre, başlangıç kitleri arasında en çok kullanılan platformlar. IMU, mikrofon ve kamera modülü bağlantısıyla hızlı prototipleme için tasarlanmış.

Ambiq Apollo / Nordic nRF9151: Ultra düşük güç tüketimini öncelikleyen uygulamalar için. Cortex-M4 / M33 çekirdekleri, mikrovat ölçeğinde dinleme modlarıyla sensör anomali tespitini pil ömrünü tüketmeden mümkün kılıyor.

Mikro-NPU Sınıfı

Bu kategorideki çipler, sinir ağı işlemlerini hızlandırmak için ayrılmış bir donanım bloğu — Neural Processing Unit (NPU) — içerir.

STM32N6: ST'nin NPU entegre eden ilk MCU'su. 4 TOPS işlem gücüyle görüntü işleme ve ses tanıma görevlerini gerçek zamanlı çalıştırabiliyor.

MAX78000 (Analog Devices): CNN hızlandırıcısı, model çıkarımı için ana CPU'ya hiç ihtiyaç duymadan devreye giriyor. Ultra düşük güç tüketimi ve CNN'e özgü hızlandırma, pil ömrü kritik görüntü sınıflandırma uygulamalarını hedefliyor.

Syntiant NDP120: Uyanma kelimesi ve ses olayı tespitinde uzmanlaşmış, daima açık (always-on) düşük güç mimarisi.

Kenar Bilgisayar Sınıfı (Edge Computer)

Daha zengin modeller, birden fazla sensör akışının eş zamanlı işlenmesi veya görüntü/video: burada Linux çalışan güçlü kartlar devreye girer.

Raspberry Pi 4 / 5: ARM Cortex-A72/A76 çekirdekleri, 8 GB RAM'e kadar seçenek. TensorFlow Lite, ONNX Runtime ve PyTorch Mobile bu platformda sorunsuz çalışır. Haiku AI HAT+ gibi ek kartlarla NPU hızlandırması da mümkün.

Google Coral Dev Board / USB Accelerator: Edge TPU çipi, TensorFlow Lite modellerini olağandışı bir güç-performans noktasında çalıştırır. USB akseleratör versiyonu, mevcut Raspberry Pi veya Linux sistemine takılıp kullanılabilir.

NVIDIA Jetson Nano / Orin NX: GPU tabanlı çıkarım, gerçek zamanlı nesne tespiti ve çoklu kamera akışları için referans platform. JetPack SDK, CUDA, cuDNN ve TensorRT'yi hazır sunar.


Yazılım Ekosistemi

TensorFlow Lite for Microcontrollers (TFLM)

Google'ın MCU sınıfı için özelleştirilmiş çıkarım kütüphanesi. Dinamik bellek tahsisi yok; tüm tamponlar derleme zamanında statik olarak ayrılır. C++ ile yazılmış, minimum bağımlılık. Cortex-M, Xtensa ve RISC-V hedefleri için optimize edilmiş çekirdek operasyonlar içerir.

Edge Impulse

Uçtan uca bir Edge AI geliştirme platformu. Veri toplama, sinyal işleme, model eğitimi ve donanıma aktarım tek bir arayüzden yönetiliyor. Arduino, STM32, ESP32 ve Raspberry Pi için doğrudan C++ veya Arduino kütüphanesi olarak dışa aktarım yapabiliyor. Başlangıç için en düşük sürtünmeli araç zinciri.

STM32Cube.AI (X-CUBE-AI)

Keras, TensorFlow Lite ve ONNX modellerini STM32 için optimize edilmiş C koda dönüştürür. CubeMX arayüzü üzerinden hedef MCU'nun RAM ve flash kısıtlamalarına göre bellek tahminini gösterir. STM32 ekosistemi içinde kalmak isteyenler için entegre çözüm.

ESP-DL

Espressif'in ESP32-S3 için geliştirdiği çıkarım kütüphanesi. Çipin vektör işleme uzantılarını doğrudan kullanır; ONNX modellerini ESP32-S3'e dönüştürme pipeline'ı içerir.

ONNX Runtime (ORT)

Daha güçlü kenar cihazlarında (Raspberry Pi, Jetson) birden fazla framework'ten gelen modelleri çalıştırmak için ortak bir çalışma zamanı. CPU, CUDA, TensorRT ve OpenVINO arka uçlarını destekler.


Model Küçültme: Sınırları Aşmanın Yolları

MCU sınıfı donanımda çalışabilmek için modelin küçülmesi zorunludur. Üç ana teknik kullanılır:

Nicemleme (Quantization)

Model ağırlıklarını ve aktivasyonlarını 32-bit kayan noktadan (float32) 8-bit tam sayıya (int8) ya da daha düşüğe dönüştürür. Bellek ve hesaplama gereksinimi dörtte bire düşerken doğruluk kaybı genellikle %1–3 arasında kalır. TFLM ve Edge Impulse int8 nicemlenmiş modelleri varsayılan olarak destekler.

Budama (Pruning)

Eğitim sırasında ağırlığı sıfıra yakın nöronlar kaldırılır. Model seyrekleşir; sıkıştırıldığında daha az yer kaplar. Ancak gerçek hızlanma için donanımın seyrek matrisleri doğrudan desteklemesi gerekir — MCU sınıfında bu henüz yaygın değil.

Bilgi Damıtma (Knowledge Distillation)

Büyük ve doğru bir "öğretmen" modelden, küçük bir "öğrenci" model eğitilir. Öğrenci, öğretmenin yalnızca etiketlerini değil, olasılık dağılımını da taklit etmeye çalışır. Doğruluğu küçük modelin kapasitesinin ötesine taşımanın en etkili yolu.


Yaygın Uygulama Alanları

Anahtar Kelime Tespiti (KWS): "Hey Siri", "OK Google" benzeri uyanma kelimeleri. Daima açık, mikrovat düzeyinde güç tüketimi gerektiren bu görev, NPU'lu çipler için en olgun kullanım alanı.

Anomali Tespiti: Titreşim, sıcaklık veya akım verilerinde anormal örüntü tespiti. Endüstriyel bakım tahmininde (predictive maintenance) kullanılır. Eğitim yalnızca "normal" verisiyle yapılır; anomali eşiğini model öğrenir.

Görüntü Sınıflandırma / Nesne Tespiti: Kamera modülüyle birlikte ESP32-S3 veya Coral'da gerçek zamanlı çalışan MobileNet, YOLO-nano gibi hafif modeller. Kusurluluk tespiti, sayım, sınıflandırma.

Hareket Tanıma: IMU verisinden jest ya da aktivite sınıflandırması. Giyilebilir cihazlar, endüstriyel takip.

Ses Sınıflandırma: Makine sesi, cam kırılması, duman dedektörü — görsel veri yerine akustik örüntü tespiti.


Gerçek Zorluklar

Edge AI'ı parlak sunan pazarlama anlatısı birçok detayı atlıyor. Gerçek projede karşılaşılanlar:

Bellek kısıtlaması her şeyi belirler. Cortex-M4'te 256 KB RAM var; modelinizin aktivasyon tamponu tek başına 512 KB istiyorsa o model bu çipte çalışmaz. Doğruluk hedefiyle donanım gerçekliği arasındaki uzlaşı, projenin en kritik tasarım kararıdır.

Eğitim verisi ile cihaz verisi farklı olabilir. Bilgisayarda yüksek kaliteli mikrofonla toplanan ses, MCU'nun düşük kaliteli ADC'sinden gelen sesle aynı dağılımda değildir. Model, gerçek cihaz üzerinde toplanan veriyle eğitilmezse doğruluk düşer.

Niceleme sonrası doğruluk kaybı tahmin edilemez. Bazı modeller int8 nicemlemeden neredeyse etkilenmezken bazıları ciddi biçimde bozulur. Her model için nicemlenmiş versiyonu ayrıca doğrulamak şarttır.

Gecikme profili donanıma çok bağlıdır. Benchmarklar çoğunlukla en iyi koşullar için yapılır. CMSIS-NN operatörleri olmayan bir MCU'da veya cache miss oranı yüksek bir bellekte aynı model çok daha yavaş çalışabilir.

Güç tüketimi çıkarımla bitmez. Model çalışırken CPU tam gaz gider. "Uyanma kelimesi tespiti 100 μA'da çalışır" iddiasını ciddiye almak için tüm döngüyü — sensör okuma, ön işleme, çıkarım, uyku — ölçmek gerekir.


Başlamak İçin Pratik Yol

Teoriyi geride bırakıp ilk projeyi yapmak isteyenler için en pratik yol:

  1. Edge Impulse hesabı açın (ücretsiz).
  2. Arduino Nano 33 BLE Sense veya ESP32-S3 DevKit alın.
  3. Cihazdan doğrudan Edge Impulse'a veri gönderin (dahili veri toplama aracı).
  4. Platform üzerinde DSP bloğu seçin (MFE için ses, spektral özellikler için ivme), model eğitin.
  5. Arduino kütüphanesi olarak dışa aktarın, cihaza yükleyin.

İlk çalışan demo bu adımlarla bir günde tamamlanabilir. Gerçek ürün geliştirme ise veri kalitesi, model optimizasyonu ve donanım entegrasyonu açısından çok daha derin bir yolculuk anlamına geliyor.


Özet

Konu Özet
Edge AI nedir? ML çıkarımını cihazın kendisinde çalıştırma
Neden önemli? Düşük gecikme, gizlilik, bağlantısızlık, güç verimliliği
MCU sınıfı donanım STM32, ESP32-S3, Nano 33 BLE Sense
NPU'lu donanım STM32N6, MAX78000, Syntiant NDP120
Güçlü kenar donanım Raspberry Pi + Coral, NVIDIA Jetson
Yazılım araçları TFLM, Edge Impulse, STM32Cube.AI, ESP-DL
Model küçültme Nicemetme (int8), budama, bilgi damıtma
Başlangıç noktası Edge Impulse + Arduino Nano 33 BLE Sense
Kitap serisini incele →