Behavioral Cloning
Davranış klonlamanın yapay zekâ taklit öğrenmesini nasıl güçlendirdiğini öğren. Temel uygulamaları, zorlukları ve bunu Ultralytics YOLO26 ile nasıl entegre edeceğini keşfet.
Davranış klonlama, bir yapay zekâ aracısının uzman gösterimlerinden oluşan bir veri kümesini titizlikle taklit ederek bir görevi gerçekleştirmeyi öğrendiği taklit öğrenmesinde temel bir tekniktir. Model, karmaşık bir ödül sistemine dayanmak yerine, sıralı karar vermeyi standart bir denetimli öğrenme problemi olarak ele alır. Binlerce durum-eylem çiftini (örneğin bir insan operatörün görsel akışı ile buna karşılık gelen kumanda kolu hareketlerini) alan aracı, yeni gözlemleri doğrudan öngörülen eylemlere eşleyen bir politika öğrenir.
Davranış Klonlamanın Pekiştirmeli Öğrenmeden Farkı#
Pekiştirmeli öğrenme, bir aracının bir ortamla etkileşime girerek bir ödül sinyalini en üst düzeye çıkaracak şekilde deneme yanılma yoluyla öğrenmesini gerektirirken davranış klonlama tamamen statik, önceden kaydedilmiş veri kümelerine dayanır. Ortamla etkileşim veya açık ödül işlevleri olmadan çalıştığı için bir Markov Karar Süreci oluşturmanın karmaşıklıklarını ortadan kaldırır. Ancak bu basitlik, aracının uzmanın performansını aşan yeni çözümler keşfedemeyeceği anlamına gelir. Güncel çevrimdışı pekiştirmeli öğrenme yöntemleri, ödüllerle daha fazla optimizasyon yapmadan önce ilk model eğitimini kararlı hâle getirmek için genellikle davranış klonlamayı sağlam bir başlangıç noktası olarak kullanır.
Gerçek Dünya Uygulamaları#
Davranış klonlama, matematiksel bir ödül işlevi tasarlamanın son derece zor, ancak insan gösterim verilerini toplamanın görece kolay olduğu alanlarda yaygın olarak kullanılır.
- Otonom Sürüş: NVIDIA DRIVE gibi modern sürücüsüz sistemler, uçtan uca davranış klonlamadan yoğun biçimde yararlanır. Binlerce saatlik insan sürüşü verisiyle eğitilen modeller, gelen bilgisayarlı görü akışlarından doğrudan direksiyon açılarını ve hızlanma komutlarını üretmeyi öğrenir.
- Robotik Manipülasyon: Uzaktan kumandalı robot kollar, paketleri ayırma, üretilmiş parçaları birleştirme veya çamaşır katlama gibi karmaşık fiziksel görevleri öğrenmek için davranış klonlamayı kullanır. İnsan gösterimlerindeki eklem açılarını ve görsel durumları tam olarak kaydeden modeller, ince motor becerilerini yüksek hassasiyetle taklit edebilir.
Birikimli Hata Problemi#
Bu tekniğin en önemli sınırlaması, yaygın olarak birikimli hatalar olarak bilinen kovaryat kaymasıdır. Eğitim sırasında aracı yalnızca kusursuz uzman yörüngelerinden öğrenir. Gerçek dünyadaki kapalı çevrimli yürütmede, başlangıçtaki küçük bir hata aracıyı eğitim verilerinde bulunmayan, alışılmadık bir duruma sürükler. Kurtulmak için gerekli bilgiye sahip olmayan aracının sonraki eylemleri hızla kötüleşir ve görevin tamamen başarısız olmasına yol açar. Bu sorunu azaltmak için büyük ve çeşitli veri kümeleri ile hedefli veri artırma gerekir.
Güncel Gelişmeler: Difüzyon Politikaları ve Eylem Parçalama#
Geleneksel sınırlamaların üstesinden gelmek için modern derin öğrenme mimarileri üretici teknikleri entegre ediyor. Difüzyon politikaları, son derece karmaşık ve çok modlu eylem dağılımlarını temsil etmek için difüzyon modellerinin matematiksel çerçevesinden yararlanır; böylece aracılar, güncel robotik araştırmalarında kapsamlı biçimde incelenen bir kavram olan belirsiz senaryoları daha başarılı şekilde ele alabilir. Eş zamanlı olarak eylem parçalama, aracının tek bir adım yerine gelecekteki eylemlerden oluşan bir diziyi öngörmesini sağlar; bu da tepkisel hataların sıklığını azaltır ve daha akıcı bir yürütme sağlar.
Bilgisayarlı Görü ile Pratik Uygulama#
Uygulamada davranış klonlama, çevresel durumları çıkarıp bunları politika ağına aktarmadan önce güçlü bir algılama omurgasına dayanır. Veri kümelerini yönetmek için Ultralytics Platformunu kullanan geliştiriciler, yüksek hızlı nesne algılama modellerini genellikle PyTorch gibi sinir ağı kütüphaneleriyle veya TorchRL gibi özel kontrol paketleriyle birlikte kullanır.
Aşağıdaki Python kod parçacığı, Ultralytics YOLO26 modelinin algılama katmanı olarak nasıl kullanılabileceğini ve temel bir PyTorch davranış klonlama politikasına aktarılmak üzere uzamsal koordinatların nasıl çıkarılacağını gösterir; bu politika da bir direksiyon eylemini öngörür.
import torch
import torch.nn as nn
from ultralytics import YOLO
# Load an Ultralytics YOLO26 model as the perception layer
perception_model = YOLO("yolo26n.pt")
results = perception_model("robot_camera_feed.jpg")
# Extract the bounding box center to define the current environmental state
if len(results[0].boxes) > 0:
box = results[0].boxes[0].xywh.squeeze()
state = torch.tensor([box[0], box[1]]) # x, y center coordinates
# A simplified PyTorch Behavioral Cloning policy mapping states to actions
bc_policy = nn.Linear(in_features=2, out_features=1)
# Predict the expert-cloned action (e.g., a steering angle)
predicted_action = bc_policy(state)
print(f"Predicted cloned action: {predicted_action.item()}")OpenAI ve Anthropic gibi kuruluşların fiziksel zekâ için temel modellere yönelik araştırmaları ilerledikçe davranış klonlama, makinelere karmaşık gerçek dünya ortamlarını yorumlamayı ve bu ortamlarda gezinmeyi öğretmenin temel taşlarından biri olmaya devam edecek.






