Sözlük

Özellik Mühendisliği

Uzman özellik mühendisliği ile makine öğrenimi doğruluğunu artırın. Etkili özellikler oluşturma, dönüştürme ve seçme tekniklerini öğrenin.

YOLO modellerini Ultralytics HUB ile basitçe
eğitin

Daha fazla bilgi edinin

Özellik mühendisliği, Makine Öğrenimi (ML) modellerine daha uygun hale getirmek için ham verilerden özelliklerin seçilmesi, dönüştürülmesi ve oluşturulmasına yönelik önemli bir süreçtir. Altta yatan sorunu daha iyi temsil eden girdiler oluşturmak için alan bilgisini ve veri analizi tekniklerini kullanmayı ve sonuçta model performansını, doğruluğunu ve yorumlanabilirliğini geliştirmeyi içerir. Bunu bir yemek tarifi için en iyi malzemeleri hazırlamak olarak düşünün; en yetenekli şef (veya model) bile düşük kaliteli malzemelerle(eğitim verileri) mücadele eder. Bu adım genellikle makine öğrenimi iş akışının en kritik ve zaman alıcı kısımlarından biri olarak kabul edilir.

Özellik Mühendisliği Neden Önemlidir?

Gerçek dünyadan toplanan ham veriler nadiren makine öğrenimi algoritmalarında doğrudan kullanıma hazırdır. Eksik değerler, tutarsızlıklar, alakasız bilgiler içerebilir veya model tüketimi için uygun olmayan formatlarda olabilir (metin veya kategorik veriler gibi). Özellik mühendisliği bu sorunları şu şekilde ele alır:

  • Model Performansını İyileştirme: İyi tasarlanmış özellikler, problemle ilgili kalıpları vurgulayarak modellerin öğrenmesini ve genelleştirmesini kolaylaştırır.
  • Karmaşıklığı Azaltma: Daha bilgilendirici girdiler sağlayarak modelleri basitleştirebilir, bazen oldukça karmaşık nesne algılama mimarilerine veya algoritmalarına olan ihtiyacı azaltabilir.
  • Çeşitli Veri Türlerini İşleme: Çeşitli veri türlerini (metin, görüntü, kategorik) algoritmaların anlayabileceği sayısal temsillere dönüştürmek için yöntemler sağlar. Daha fazla okuma için veri ön işleme tekniklerini keşfedin.
  • Yorumlanabilirliği Artırmak: Anlamlı özellikler bazen bir modelin neden belirli tahminlerde bulunduğunu anlamayı kolaylaştırarak Açıklanabilir Yapay Zekaya (XAI) katkıda bulunabilir.

Yaygın Özellik Mühendisliği Teknikleri

Özellik mühendisliği şemsiyesi altına çeşitli teknikler girmektedir:

  • İmputasyon: Boşlukları tahmini değerlerle (örneğin ortalama, medyan veya daha sofistike yöntemler) doldurarak eksik verilerin ele alınması. Kayıp verilerin ele alınması yaygın bir ilk adımdır.
  • Ölçeklendirme ve Normalleştirme: Daha büyük değerlere sahip özelliklerin öğrenme sürecine hakim olmasını önlemek için sayısal özelliklerin aralığını veya dağılımını ayarlama (örneğin, Min-Maks ölçeklendirme, Z-skor normalleştirme).
  • Kategorik Değişkenlerin Kodlanması: Sayısal olmayan verilerin ('kırmızı', 'yeşil', 'mavi' kategorileri gibi) sayısal formatlara dönüştürülmesi (örn. Tek Sıcak Kodlama, Etiket Kodlama). Kategorik verilerin kodlanması bölümüne bakınız.
  • Özellik Oluşturma (Üretme): Alan bilgisi veya etkileşim analizine dayalı olarak mevcut özelliklerden yeni özellikler türetme (örneğin, 'date_of_birth'ten 'age' oluşturma, 'height' ve 'weight'ı 'BMI' olarak birleştirme veya TF kullanarak metin özellikleri çıkarma).
  • Binning (Ayrıklaştırma): Sürekli sayısal verilerin ayrık kutular veya aralıklar halinde gruplandırılması.
  • Log Dönüşümü: Çarpık veri dağılımlarını işlemek için logaritmik bir dönüşüm uygulamak. Daha fazla ayrıntı için veri dönüşümlerini keşfedin.
  • Özellik Seçimi: Modeli basitleştirmek ve potansiyel olarak performansı artırmak için gereksiz veya ilgisiz olanları atarak yalnızca en alakalı özellikleri belirleme ve tutma. Bu , boyut azaltma ile yakından ilgilidir.

Özellik Mühendisliği ve Özellik Çıkarımı

Genellikle birbirinin yerine kullanılsa da, özellik mühendisliği ve özellik çıkarımı farklı nüanslara sahiptir.

  • Özellik Mühendisliği: Özellik çıkarma işleminin yanı sıra manuel olarak yeni özellikler oluşturmayı, alan uzmanlığına dayalı olarak mevcut özellikleri dönüştürmeyi ve en iyi özellikleri seçmeyi de içeren daha geniş bir süreçtir. Genellikle yaratıcılık ve verilerin ve sorunun derinlemesine anlaşılmasını gerektirir.
  • Özellik Çıkarma: Özellikle ham, genellikle yüksek boyutlu verilerin (görüntüler veya ham sensör okumaları gibi) otomatik olarak daha düşük boyutlu, daha yönetilebilir bir özellik kümesine dönüştürülmesine odaklanır. Temel Bileşen Analizi (PCA) veya Evrişimsel Sinir Ağlarındaki (CNN'ler) katmanlar tarafından yapılan otomatik özellik öğrenme gibi teknikler özellik çıkarma örnekleridir.

Özünde, özellik çıkarma genellikle daha geniş bir özellik mühendisliği süreci içinde kullanılan bir araçtır.

Gerçek Dünya Uygulamaları

  1. Kestirimci Bakım: Üretimde, makinelerden gelen ham sensör verileri (titreşim, sıcaklık, basınç) gürültülü ve yüksek boyutlu olabilir. Özellik mühendisliği, yuvarlanan ortalamaları, zaman pencereleri üzerindeki standart sapmaları, frekans alanı özelliklerini (FFT gibi) hesaplamayı veya ani artışları veya değişiklikleri gösteren özellikler oluşturmayı içerebilir. Bu mühendislik özellikleri, üretimde yapay zeka bölümünde tartışıldığı gibi, bir makine öğrenimi modelinin potansiyel ekipman arızalarını gerçekleşmeden önce tahmin etmesini kolaylaştırır.
  2. Müşteri Kaybı Tahmini: Hangi müşterilerin bir hizmeti kullanmayı bırakabileceğini tahmin etmek için ham veriler kullanım günlüklerini, demografik bilgileri, destek bileti geçmişini ve satın alma kayıtlarını içerir. Özellik mühendisliği, 'ortalama oturum süresi', 'son satın almadan bu yana geçen süre', 'son aydaki destek bileti sayısı', 'olumlu/olumsuz geri bildirim oranı' veya 'müşteri yaşam boyu değeri' gibi özellikler oluşturmayı içerebilir. Türetilen bu özellikler, yalnızca ham günlüklere kıyasla müşteri kaybını tahmin etmek için daha zengin sinyaller sağlar. Bu, finans ve perakende sektöründeki yapay zeka ile ilgilidir.

Özellik Mühendisliği ve Ultralytics

gibi gelişmiş modeller olsa da Ultralytics YOLODerin sinir ağı mimarileri(omurga, boyun, kafa) aracılığıyla ilgili görsel özellikleri otomatik olarak öğrenerek nesne algılama ve görüntü segmentasyonu gibi görevlerde üstünlük sağlayan özellik mühendisliği ilkeleri geçerliliğini korumaktadır. Örneğin, giriş görüntülerini bir YOLO modeline beslemeden önce ön işleme tabi tutmak (örneğin, değişken aydınlatma için histogram eşitleme, OpenCV gibi kütüphaneler kullanarak gürültü azaltma veya sorun alanına özel veri artırımları uygulama), sağlamlığı ve model performansını artırabilen bir özellik mühendisliği biçimidir. Ayrıca, YOLO 'dan elde edilen çıktılar (sınırlayıcı kutu koordinatları, nesne sınıfları, sayılar gibi), sonraki görevler için özellikler olarak tasarlanabilir veya daha karmaşık analizler için diğer veri kaynaklarıyla birleştirilebilir, belki de veri kümelerini ve modelleri düzenlemeye yardımcı olan Ultralytics HUB gibi platformlar içinde yönetilebilir. Model kullanımı, özel eğitim ve açıklamalı verilerin önceden işlenmesi hakkında daha fazla bilgi için Ultralytics belgelerini ve öğreticilerini keşfedin. Featuretools gibi araçlar, Otomatik Makine Öğrenimi (AutoML) kavramlarıyla uyumlu olarak özellik mühendisliği sürecinin bazı kısımlarının otomatikleştirilmesine de yardımcı olabilir. Etkili özellik mühendisliği, güçlü derin öğrenme modellerinin yanı sıra bile, başarılı MLOps uygulamalarının önemli bir yönü olmaya devam etmektedir.

Tümünü okuyun