TinyML, makine öğrenmesi modellerini düşük güçlü mikrodenetleyiciler ve gömülü sistemler üzerinde çalıştıran uç yapay zeka dalıdır.

TinyML (Tiny Machine Learning), eğitilmiş makine öğrenmesi modellerini mikrodenetleyiciler, sensörler ve gömülü sistemler gibi milivat düzeyinde güç tüketen cihazlarda çalıştırmayı mümkün kılan yazılım-donanım disiplinidir. Terim, "tiny" (küçük) ve "machine learning" (makine öğrenmesi) kelimelerinin birleşiminden oluşur; hedefi sunucu altyapısı olmadan, düzinelerce kilobayt bellek ve yüz milivat altında güçle gerçek zamanlı çıkarım yapmaktır. Geleneksel yapay zeka modelleri GPU'lu sunucularda çalışırken TinyML modelleri bir pul kadar küçük devre kartlarında — ARM Cortex-M serisi işlemciler, Arduino, ESP32, STM32 veya Nordic nRF52840 — koşar. Bu "uç çıkarım" (edge inference) yaklaşımı üç kritik avantaj sunar: gizlilik (ham veri buluta gitmez), gecikme (internet bağlantısı gerekmez, yanıt milisaniye mertebesindedir) ve enerji verimliliği (pil ömrü yıllara uzayabilir). Model küçültme teknolojisi TinyML'in bel kemiğidir. Kuantizasyon (quantization), ağırlıkları 32-bit kayan noktalı sayıdan 8-bit ya da 4-bit tamsayıya indirerek model boyutunu 4-8× küçültür ve bellek bant genişliği gereksinimini düşürür. Budama (pruning), düşük katkılı nöronları kaldırarak seyrek (sparse) ağlar oluşturur. Bilgi damıtma (knowledge distillation) ise büyük öğretmen modelinin davranışını küçük öğrenci modeline aktarır. Bu yöntemlerin bileşimi çoğu zaman yüz kilobaytın altında, doğruluğu kabul edilebilir modeller üretir. Başlıca framework'ler TensorFlow Lite Micro (TFLM), Edge Impulse ve Arduino'nun TensorFlow kütüphanesidir. TFLM, TensorFlow modellerini FlatBuffer formatına dönüştürerek C++ runtime'ı aracılığıyla doğrudan mikrodenetleyicide çalıştırır. Edge Impulse bulut tabanlı bir eğitim ve dağıtım platformu sunarak sensör verisi toplamayı, model eğitimini ve hedef cihaza aktarımı tek çatı altında birleştirir. Uygulama alanları geniştir: akıllı termostatlar konuşma komutu tanır; endüstriyel sensörler titreşim analizi yaparak arıza öngörüsü üretir; tıbbi giyilebilir cihazlar kalp ritmi anomalisi saptarken baterya şarjını haftalarca korur; tarımsal IoT düğümleri görüntü işleme ile zararlı böcekleri tespit eder. Türkiye'de akıllı tarım, enerji izleme ve sağlık sensörü projelerinde TinyML bileşenleri artan sıklıkla kullanılmaktadır. 2026 itibarıyla RISC-V tabanlı AI hızlandırıcılar ve analog hesaplama bu alanın sınırlarını genişletmektedir. Öte yandan model doğruluğu, veri setinin temsil sorunu ve karmaşık donanım ekosistemi başlıca açık araştırma sorunları olarak kalmaktadır.

TinyML Nasıl Çalışır?

TinyML iş akışı üç aşamadan oluşur. İlk olarak model, normal bir ortamda (bulut GPU veya laptop) TensorFlow ya da PyTorch ile eğitilir. Ardından model küçültme adımında kuantizasyon, budama ve damıtma teknikleri uygulanarak model boyutu kilobayt mertebesine indirilir. Son aşamada küçültülmüş model — çoğunlukla C dizisi veya FlatBuffer olarak — mikrodenetleyicinin flash belleğine yüklenir ve RAM'in bir kısmını yürütme tamponu olarak kullanarak çıkarım yapar. Bellek sınırı genellikle 256 KB flash / 64 KB RAM mertebesindedir; bu sınır modelin katman sayısını, filtre boyutunu ve kanal genişliğini doğrudan kısıtlar.

Model Küçültme Teknikleri

Kuantizasyon (Quantization): Ağırlık ve aktivasyonları 32-bit float'tan 8-bit INT8'e (veya 4-bit) dönüştürür. Bellek ayak izini 4× küçültür, çıkarım hızını artırır, doğruluk kaybı çoğunlukla %1'in altındadır. TensorFlow Lite'ın post-training quantization aracı bunu birkaç satır kodla otomatikleştirir.

Budama (Pruning): Bağlantı ağırlıklarının düşük katkılı olanlarını sıfıra zorlayarak seyrek ağ oluşturur. Yapısal budama, donanım destekli hızlanmaya olanak tanır.

Bilgi Damıtma (Knowledge Distillation): Büyük öğretmen modelin yumuşak olasılık dağılımlarını küçük öğrenci modeline öğretir; öğrenci, ham etiketten fazlasını — arası ilişkileri — öğrenir.

NAS (Neural Architecture Search): Hedef donanıma özel, küçük ama doğru mimarileri otomatik arar; MCUNet ve MobileNetV3 bu yöntemle tasarlanmıştır.

Başlıca Framework ve Araçlar

TensorFlow Lite Micro (TFLM): Google'ın geliştirdiği, işletim sistemi gerektirmeyen C++ runtime'ı. ARM Cortex-M, RISC-V ve Xtensa LX6 gibi mimarileri destekler. Model FlatBuffer formatında flash'a gömülür.

Edge Impulse: Sensör verisi toplama, model eğitimi ve hedef cihaza dağıtımı tek platformda sunan bulut tabanlı çözüm. Arduino, Nordic ve ST cihazlarını otomatik tanır.

Arduino TensorFlow Kütüphanesi: TFLM'yi Arduino IDE ekosistemine entegre eder; özellikle eğitim projelerinde yaygındır.

ONNX Runtime Mobile: Platform-bağımsız model formatını ARM cihazlarında çalıştırır; TFLM'ye alternatif olarak kurumsal projelerde tercih edilir.

Uygulama Alanları

Endüstriyel IoT: Titreşim sensörleri motor arıza öngörüsü yapar; sıcaklık ve basınç anomali tespiti önleyici bakımı mümkün kılar.

Akıllı Giyilebilir Cihazlar: Bileklik ya da yama formatlı sensörler kalp ritmi (AFib) ve düşme algılama modellerini çalıştırır; HIPAA uyumluluğu için veri cihazda kalır.

Tarımsal Sensörler: Kamera modülü yaprak hastalığı ya da zararlı böcek tespiti yapar; hücresel bağlantı olmadan, güneş enerjisiyle yıllarca çalışır.

Ses Komutu Tanıma: Tetikleyici kelime tanıma; mikrodenetleyicide çalışır, ses yalnızca tetiklendiğinde buluta gider.

Türkiye Uygulamaları: Akıllı tarım girişimleri, fabrika makinesi izleme ve akıllı su sayacı projeleri TinyML bileşenlerini benimsemektedir.

Avantajlar ve Kısıtlamalar

TinyML'in en büyük avantajları gizlilik (ham sensör verisi hiçbir zaman ağa çıkmaz), düşük gecikme (milisaniye altı tepki süresi) ve enerji verimliliğidir (pil ömrü aylarca uzayabilir). Öte yandan modelin boyutu ve doğruluğu arasındaki denge kaçınılmazdır: karmaşık görevlerde donanım kısıtları nedeniyle yetersiz kalabilir. Donanım ekosistemi parçalı yapısı, her hedef kart için ayrı derleme ve test döngüsü gerektirebilir. Eğitim verisi kalitesi de kritiktir; mikrodenetleyicide çalışan model sahaya inince dağılım kayması (distribution shift) problemleriyle karşılaşabilir.

Donanım Ekosistemi

Popüler TinyML hedef kartları arasında Arduino Nano 33 BLE Sense (Nordic nRF52840, 256 KB RAM), ESP32-S3 (dual-core Xtensa LX7, 512 KB SRAM), STM32H7 serisi ve Raspberry Pi Pico 2 (RP2350) yer alır. NVIDIA Jetson Nano gibi kartlar edge AI kategorisinde değerlendirilir; güç tüketimi ve fiyat belirgin şekilde yüksektir. 2024 sonrasında piyasaya çıkan Ambiq Apollo510 ve Syntiant NDP101 gibi özel NPU içeren mikrodenetleyiciler, nöral ağ işlemlerini ana CPU'dan devrederek enerji verimliliğini katlamaktadır.

Sık Sorulan Sorular

TinyML ile Edge AI arasındaki fark nedir? Edge AI, verinin buluta gitmeden yerel cihazda işlenmesini ifade eden geniş bir kategoridir. TinyML bu kategorinin en kısıtlı ucunu — mikrodenetleyiciler, 256 KB altı RAM, milivat güç — kapsar.

TinyML modeli eğitmek için güçlü bir GPU gerekiyor mu? Eğitim aşaması normal bir PC veya bulut GPU'da yapılır; mikrodenetleyicide yalnızca çıkarım (inference) çalışır. Google Colab ücretsiz GPU ile eğitim, Edge Impulse ile dağıtım birçok proje için yeterlidir.

Hangi programlama diliyle TinyML geliştirilir? Model tanımı Python (TensorFlow/PyTorch), dağıtım kodu C/C++ ile yazılır. Edge Impulse bu köprüyü büyük ölçüde otomatikleştirir ve Arduino kütüphanesi olarak dışa aktarır.

TinyML için minimum donanım özellikleri nelerdir? TFLM'nin çalışabileceği minimum: yaklaşık 16 KB RAM, 32 KB flash, ARM Cortex-M0+. Daha gerçekçi sınır ise 64 KB RAM / 256 KB flash — bu çoğu modern mikrodenetleyicinin karşılayabileceği eşiktir.

TinyML Türkiye'de öğrenmek için nereden başlamalıyım? Edge Impulse'ın ücretsiz eğitim modülleri, Harvard CS249r (TinyML ders kitabı açık erişim) ve Türkçe Arduino topluluk forumları başlangıç için iyi kaynaklardır.