İçindekiler:
Video: Çipli Kimlik Kartında Büyük Hata 2024
Bazen çeşitli kaynaklardan elde ettiğiniz ham veriler, makine öğrenme görevlerini yerine getirmek için gerekli özelliklere sahip olmayacaktır. Bu olduğunda, istenen sonucu elde etmek için kendi özelliklerini oluşturmalısın. Bir özellik oluşturmak, ince havadan veri oluşturulması anlamına gelmez. Mevcut verilerden yeni özellikler yaratabilirsiniz.
Özellikler oluşturma gereğini anlama
Makine öğrenme algoritmalarının büyük bir kısıtlılığı, kullandığınız özelliklere verdiğiniz yanıtı bağlayabilecek bir formül tahmin etmenin imkansız olabilmesidir. Bazen tahmin edilememesi, eldeki bilgilere dayanarak yanıtı eşleyemezsiniz (bu doğru bilginiz yok demektir). Diğer durumlarda, sağladığınız bilgiler algoritmanın doğru şekilde öğrenilmesine yardımcı olmaz.
Örneğin, gayrimenkullerin fiyatını modelliyorsanız, arazinin yüzeyi oldukça tahmin edicidir, çünkü daha büyük gayrimenkullerin maliyeti daha fazladır. Ancak eğer yüzey yerine, arazinin kenarlarının uzunluğu (köşelerinin enlem ve boylam koordinatları) ile makine öğrenme algoritması sağlıyorsanız, algoritmanız sağladığınız bilgilerle ne yapılacağını anlamayabilir. Bazı algoritmalar, özellikler arasındaki ilişkiyi bulmayı başaracak ancak çoğu algoritma olmayacak.
Bu sorunun cevabı, özellik yaratmaktır. Özellik yaratma, bir bilimin ötesinde bir sanat olarak kabul edilen makine öğrenmesinin bir parçasıdır, çünkü mevcut müdahaleleri yaratıcı bir şekilde karıştırmaya insan müdahalesi anlamına gelir. Bu görevi, orijinallerden daha öngörüleyici güce sahip yeni türetilmiş özellikler oluşturmak için toplama, çıkarma, çarpma ve oran yoluyla gerçekleştirirsiniz.
Sorunu iyi bilmek ve bir insanın nasıl çözeceğini bulmak, özellik yaratmanın bir parçasıdır. Dolayısıyla bir önceki örneğe, arazi yüzeyinin mülkiyet fiyatına bağlanması, ortak bir bilgidir. Bir mülkün değerini tahmin etmeye çalışırken özelliklerin yüzeyinden yoksunsa, bu verileri mevcut verilerden kurtarabilir ve bunu yaparak tahminlerin performansını artırabilirsiniz.
İlk önce sağduyu, ortak bilgi veya uzmanlık uzmanlığına güvenip güvenmediğinize bakılmaksızın, hangi bilginin sorun için en iyi sonucu alması gerektiğini çözerseniz, makine algoritması için çok şey yapabilirsiniz. kullanılabilir hale getirmeye çalışın ya da özellikler arasından türetin.
Otomatik olarak özellikler oluşturma
Bazı yeni özellikler otomatik olarak oluşturabilirsiniz.Otomatik özellik oluşturma işlemini başarmanın bir yolu, polinom genişlemesi kullanmaktır. R ve Python'da otomatik olarak özellikler oluşturmanız için polinom genişlemesine ulaşmak için belirli yollar mevcuttur. Şimdilik, polinom genişlemesi ardındaki kavramları kavramanız gerekir.
Polinom genişlemesinde, özellikler arasında etkileşim oluşturmakla birlikte güçler oluşturursunuz (örneğin, bir özelliğin karesini hesaplamak). Etkileşimler, özelliklerin çoğaltılmasına dayanır. Çoğaltmayı kullanarak yeni bir özellik oluşturmak, özelliklerin bir bütün olarak nasıl davrandığı eğilimini takip etmenize yardımcı olur. Bu nedenle, özel durumları ima edebilen özellikleri arasındaki karmaşık ilişkileri haritalamaya yardımcı olur.
Bir etkileşime mükemmel bir örnek, bir arabadan yayılan ses ve arabanın fiyatıdır. Tüketiciler, bir spor arabası almadıkça gürültülü otomobillerden memnun değiller; bu durumda, motor gürültüsü, aracın gücünü sahibine hatırlatan bir artı. Ayrıca, ziyaretçileri serin arabayı fark ettiriyor, bu nedenle gürültünün gösterilmesinde büyük bir rol oynuyor çünkü gürültü kesinlikle başkalarının dikkatini çekecek. Öte yandan, bir aile otomobilini kullanırken gürültü o kadar da güzel değil.
Bir makine öğrenme uygulamasında, belirli bir otomobilin tercih oranını tahmin etmeye çalışırken, gürültü ve otomobilin fiyatı gibi özellikler kendiliğinden öngörülebilir. Bununla birlikte, iki değerin çarpımı ve özellik setine eklenmesi, hedefin bir spor otomobil olduğu (yüksek gürültüyü yüksek bir fiyatla çarptığınızda) bir öğrenme algoritmasına ima edebilir.
Güçler, tepki ve özellikler arasında doğrusal olmayan ilişkiler yaratarak belirli durumlarda ima ederek yardımcı olurlar.
Başka bir örnek olarak, bir kişinin yıllık masraflarını tahmin etmeniz gerektiğini düşünün. Yaş iyi bir öngördürücüdür, çünkü insanlar yaşlandıkça ve olgunlaştıkça, yaşamları ve aile durumları da değişir. Öğrenciler yoksullara başlarlar ama sonra iş bulurlar ve bir aile kurabilirler. Genel bir bakış açısıyla, giderler belirli bir noktaya kadar yaş arttıkça büyüyor. Emeklilik genellikle giderlerin azalmaya eğilimli bir noktaya işaret eder. Yaş, bu tür bilgileri içerir, ancak bu büyümeye eğilimli bir özelliktir ve masrafları büyümesiyle ilişkilendirmek, belirli bir yaşta ortaya çıkan dönüşümün tanımlanmasına yardımcı değildir.
Kare şeklindeki özelliğin eklenmesi, kendisini yaşa alan, başlangıçta küçük ancak yaşla birlikte hızla büyüyen bir karşı efekt yaratmaya yardımcı olur. Nihai etki, başlangıçtaki büyümenin belirli bir yaşta masraflarda zirveye ve ardından bir azalmaya işaret ettiği bir parabol.
Başlangıçta belirtildiği gibi, böyle dinamikleri (gürültü ve spor otomobilleri, tüketim ve yaşlılık yaşı) önceden bilmek, doğru özellikleri yaratmanıza yardımcı olabilir. Ancak, önceden bu dinamikleri bilmiyorsanız, polinom genişlemesi onları otomatik olarak oluşturacaktır, çünkü belirli bir düzen verildiğinde, bu düzenin etkileşimlerini ve güçlerini yaratacaktır. Sipariş, mevcut özelliklere uygulanacak çarpma sayısını ve maksimum gücü gösterecektir.
Böylece 2. düzenin polinom genişletmesi tüm özelliklerini ikinci güce yükseltiyor ve her özelliği diğerleriyle çarpıyor. Açıktır ki, sayı arttıkça, yeni özellikler de o kadar çok olur, ancak bunların birçoğu gereksiz olur ve yalnızca makinenizin öğrenme algoritmasının veriyi aşırıya çıkarmasına katkıda bulunur.
Polinom genişlemesi kullanırken, oluşturduğunuz özelliklerin patlamasına dikkat etmek zorundasınız. Güçler doğrusal olarak artar, bu nedenle beş özelliğe sahipseniz ve sipariş 2'nin genişlemesine ihtiyacınız varsa, her özellik ikinci güce kadar yükseltilir. Birinin sırasını artırmak, her orijinal özellik için yeni bir güç özelliği ekler. Bunun yerine, etkileşimler, o düzeye kadar olan özelliklerin kombinasyonlarına dayanarak artar.
Aslında, beş özellik ve 2. sırada bir polinom genişlemesi ile, özelliklerin birleşiminin on eşsiz kombinasyonu oluşturulmuştur. Siparişi 3'e yükseltmek, iki değişkene ait tüm eşsiz kombinasyonların yanı sıra, üç değişkenin, yani 20 özellikten oluşan benzersiz kombinasyonların oluşturulmasını gerektirecektir.