Yerleştirmeler

'nı inceleyin.

Bir yemek önerisi uygulaması geliştirdiğinizi düşünün. Kullanıcılar favori öğünlerini giriyor ve uygulama da benzer öğünler öneriyor pek çok bilgi edindiniz. Makine öğrenimi (ML) modeli geliştirmek istiyorsanız yiyecek benzerliğini tahmin edebilen, böylece uygulamanız yüksek kaliteli içerikler üretebilir önerileri ("Krepleri sevdiğiniz için krep öneririz").

Modelinizi eğitmek için 5.000 popüler kullanıcı içeren bir veri kümesi borş çorbası dahil olmak üzere yemek ürünleri, sosisli sandviç salata, pizza, ve şavurma.

Şekil 1. Beş gıda maddesinin çizimleri. Saat yönünde
       sol üst: borş çorbası, sosisli sandviç, salata, pizza, şavurma.
Şekil 1. Gıda veri kümesine dahil edilen yemek ürünlerinin örneği.

Şunları içeren bir meal özelliği oluşturursunuz: tek seferlik kodlama temsili bir grafik oluşur.

Şekil 2. Top: Borş çorbası için tek seferlik kodlamanın görselleştirmesi.
       [1, 0, 0, 0, ..., 0] vektörü altı kutunun üzerinde gösterilir.
       her biri soldan hizalı
       sağa doğru düzenleyin. Kutular, soldan sağa
       şu resimleri içermelidir: borş çorbası, sosisli sandviç, salata, pizza, [boş],
       şavurma. Orta: Sosisli sandviç için tek seferlik kodlamanın görselleştirmesi.
       [0, 1, 0, 0, ..., 0] vektörü, her biri altı kutu üzerinde gösterilir.
       vektör sayılarından biriyle soldan sağa hizalanır. Kutularda bulunan
       borş çorbası görselleştirme için olanla aynı resimleri soldan sağa doğru
       bölümünü ziyaret edin. Alt: şavurma için tek seferlik kodlamanın görselleştirmesi. İlgili içeriği oluşturmak için kullanılan
       [0, 0, 0, 0, ..., 1] vektörü, her biri hizalı olarak altı kutunun üzerinde görüntülenir
       kullanarak soldan sağa doğru düzenleyebilirsiniz. Kutularda bulunan
       borş çorbası ve sosisli sandviç için olanlarla aynı resimler soldan sağa
       birlikte çalışır.
Şekil 2. Borş çorbası, sosisli sandviç ve şavurmanın tek sıcak kodlamaları. Her bir tek sıcak kodlama vektörü 5.000 uzunluğundadır (her biri için bir giriş menü öğesine dokunun). Diyagramdaki üç nokta 4.995 giriş gösterilmiyor.

Seyrek veri temsillerinin tehlikeleri

Bu tek kullanımlık kodlamaları incelediğinizde, burada temsil eder.

  • Ağırlık sayısı. Giriş vektörlerinin büyük olması, ağırlıklar nöral ağ için kullanılabilir. Tek seferlik kodlamanızda M girişleriyle ve N düğümlerden sonra ağın ilk katmanında yer alıyorsa model, MxN ağırlıklarını belirtir. Çok sayıda ağırlık başka sorunlara neden olur:
    • Veri noktalarının sayısı. Modelinizde ne kadar ağırlık olursa o kadar fazla veri ihtiyacınız olacak.
    • İşlem miktarı. Ne kadar ağırlık olursa o kadar hesaplama gerekir kullanmaya karar verebilir. Hesabınızın yeteneklerini aşmak çok kolaydır. donanım.
    • Bellek miktarı. Modelinizde ne kadar ağırlık varsa onu eğiten ve sunan hızlandırıcılar için gereklidir. Bunu ölçeklendirme çok zor bir süreçtir.
    • Destek vermenin zorluğu cihaz üzerinde makine öğrenimi (ODML) ile ilgili daha fazla bilgi edinin. Makine öğrenimi modelinizi yerel cihazlarda (ör. sunucu yerine modelinizi daha küçük yapmaya odaklanmalı ve daha küçük ağırlık sayısını azaltmak için kullanılır.
  • Vektörler arasında anlamlı ilişkiler eksikliği. tek seferlik kodlamalar, yiyecekle ilgili anlamlı bilgiler vermez. benzerliklerini görebiliriz. Matematiksel olarak indeks 1 ("sosisli sandviç") 4999'a ("şavurma") kıyasla indeks 2'ye ("salata") daha yakındır. köpek, salatadan çok şavurma'ya (et ve ekmek içerir) benzer.

Bu modülde, daha düşük boyutlu yerleştirmelerin nasıl oluşturulacağını öğreneceksiniz. hem bu iki sorunu da ele alan seyrek verilerin temsilleridir.