XML
XML'in makine öğrenimi ve bilgisayarlı görü için verileri nasıl yapılandırdığını öğren. PASCAL VOC açıklamalarındaki, tıbbi yapay zekâdaki ve Ultralytics YOLO26'nın eğitimindeki rolünü keşfet.
Genişletilebilir İşaretleme Dili (XML) olarak bilinen XML, yapılandırılmış verileri depolamak, taşımak ve düzenlemek için tasarlanmış esnek, metin tabanlı bir biçimdir. Bilgilerin bir web sayfasında nasıl görüntülendiğine odaklanan HTML'nin aksine XML, özel etiketlerden oluşan hiyerarşik bir yapı aracılığıyla verilerin neyi temsil ettiğini açıklamaya adanmıştır. Bu çok yönlülük, XML'yi farklı bilgi işlem sistemleri ve internet arasında veri alışverişi için temel bir standart hâline getirir. Makine öğrenimi (ML) bağlamında XML, veri kümelerini ve yapılandırma dosyalarını yönetmede kritik bir rol oynar; karmaşık bilgilerin, World Wide Web Konsorsiyumu (W3C) tarafından tanımlanan katı doğrulama standartlarına uyarken hem insanlar hem de makineler tarafından okunabilir kalmasını sağlar.
Yapay Zekâda XML'nin Rolü#
Hızla gelişen yapay zekâ (AI) alanında yapılandırılmış veriler, gelişmiş algoritmaların yakıtı görevi görür. XML, veri etiketlemeye sağlam bir çerçeve sunarak mühendislerin görüntü veya metin gibi ham medyayı zengin ve açıklayıcı meta verilerle kapsüllemesine olanak tanır. Bu yapılandırılmış yaklaşım, modellerin örüntüleri ve özellikleri tanımlayabilmek için açıkça etiketlenmiş örneklere ihtiyaç duyduğu denetimli öğrenme için gereklidir.
Modern iş akışlarında sorunsuz bulut tabanlı etiketleme ve eğitim için genellikle Ultralytics Platform kullanılsa da XML, eski sistemlere ve belirli akademik veri kümelerine derinlemesine yerleşmiş durumdadır. Katı söz dizimi veri bütünlüğünü güvence altına alır; bu da XML'yi, kurumsal entegrasyon ve doğrulamanın büyük önem taşıdığı karmaşık bilgisayarlı görü görevleri için tercih edilen bir seçenek hâline getirir.
Yapay Zekâ/ML Alanında Gerçek Dünya Uygulamaları#
XML, özellikle veri standardizasyonu, taşınabilirlik ve ayrıntılı meta verilerin kritik gereksinimler olduğu çeşitli pratik uygulamalarda önemli bir rol oynar.
- Nesne Algılama Veri Kümeleri (PASCAL VOC): XML'nin bilgisayarlı görüdeki en kalıcı kullanımlarından biri PASCAL Görsel Nesne Sınıfları (VOC) biçimidir. Bu standartta, bir veri kümesindeki her görüntü, açıklama ayrıntılarını içeren bir XML dosyasıyla eşleştirilir. Bu dosyalar, her nesnenin sınırlayıcı kutu koordinatlarını (
xmin,ymin,xmax,ymax) ve sınıf etiketlerini tanımlar. YOLO26 gibi son teknoloji modeller, nesnelerin konumunu öğrenmek için bu açıklamaları (genellikle dönüştürme işleminden sonra) işleyebilir; bu, nesne algılamanın temel süreçlerinden biridir. - Tıbbi Görüntüleme ve Sağlık Hizmetleri: Özel sağlık hizmetlerinde yapay zekâ alanında birlikte çalışabilirlik hayati önem taşır. Tıbbi taramalarda evrensel olarak kullanılan Tıpta Dijital Görüntüleme ve İletişim (DICOM) standardı, karmaşık hasta meta verilerini işlemek için XML ile sık sık etkileşime girer. XML, tanı sonuçlarının ve inceleme parametrelerinin yapılandırılmış biçimde raporlanmasını sağlayarak hassas tıbbi görüntü analizini kolaylaştırır. Bu, bu verilerle eğitilen yapay zekâ modellerinin Sağlık Düzeyi Yedi (HL7) gibi sağlık verisi standartlarına sıkı biçimde uymasını sağlar.
XML ve JSON ve YAML Karşılaştırması#
XML güçlü olsa da ML iş akışlarında kullanılan diğer veri serileştirme biçimleriyle sık sık karşılaştırılır. Farkları anlamak, iş için doğru aracı seçmene yardımcı olur.
- XML ve JSON Karşılaştırması: JavaScript Nesne Gösterimi (JSON), web uygulamaları için genellikle daha hafif ve ayrıştırılması daha kolaydır. JSON, API yanıtları ve birçok modern veri kümesi (COCO gibi) için standart hâline gelmiş olsa da XML, belge merkezli veriler ve şema doğrulaması gerektiren ortamlar için hâlâ tercih edilir. Web veri yapıları hakkında daha derinlemesine bilgi edinmek için Mozilla Geliştirici Ağı gibi kaynaklar mükemmel karşılaştırmalar sunar.
- XML ve YAML Karşılaştırması: YAML, etiketler yerine girintiye dayanan minimal söz dizimi ve insanlar tarafından kolay okunabilir olmasıyla bilinir. Bu özellik, düzenleme kolaylığının kritik olduğu Ultralytics YOLO gibi çerçevelerde model YAML yapılandırma dosyaları için YAML'yi tercih edilen seçenek hâline getirir. Buna karşılık XML daha ayrıntılıdır, ancak daha güçlü yapı zorlaması sunar.
Model Eğitimi için XML Ayrıştırma#
PASCAL VOC biçimindeki eski veri kümeleriyle çalışırken geliştiricilerin eğitim için sınırlayıcı kutu koordinatlarını çıkarmak amacıyla XML dosyalarını ayrıştırması genellikle gerekir. Python'un yerleşik kütüphaneleri bu süreci kolaylaştırır.
Aşağıdaki örnek, Python ElementTree API'sini kullanarak nesne sınıfı adlarını ve sınırlayıcı kutu koordinatlarını çıkarmak için basit bir XML açıklama dizesinin nasıl ayrıştırılacağını gösterir.
import xml.etree.ElementTree as ET
# Example XML string simulating a PASCAL VOC annotation
voc_xml_data = """
person
50
30
200
400
"""
# Parse the XML structure
root = ET.fromstring(voc_xml_data)
# Extract and print object details
for obj in root.findall("object"):
class_name = obj.find("name").text
bbox = obj.find("bndbox")
# Convert coordinates to integers
coords = [int(bbox.find(tag).text) for tag in ["xmin", "ymin", "xmax", "ymax"]]
print(f"Detected Class: {class_name}, Bounding Box: {coords}")Bu biçimlerin nasıl işleneceğini anlamak, eğitim verilerini hazırlamak için gereklidir. Ultralytics Platform üzerindeki otomatik araçlar bu dönüştürmeleri gerçekleştirebilse de manuel ayrıştırma bilgisi hata ayıklama ve özel veri işlem hatları için hâlâ değerlidir. Veri yapıları hakkında daha fazla bilgi için IBM XML Kılavuzu, kurumsal kullanıma ilişkin kapsamlı bir genel bakış sunar.









