Şu anda regresyon için en küçük kareler (ve diğer) tahminlerini ve bazı uyarlanabilir algoritma literatürlerinde okuduğum şeylerden, genellikle "... ve hata yüzeyi dışbükey olduğundan ..." neden dışbükey olduğu ile ilgili herhangi bir derinlik nerede bulunamaz.
... Peki onu tam olarak dışbükey yapan nedir?
Bu tekrarlanan ihmali biraz can sıkıcı buluyorum çünkü kendi uyarlama algoritmalarımı kendi maliyet fonksiyonlarımla tasarlayabiliyorum, ancak maliyet fonksiyonumun dışbükey hata yüzeyi verip vermediğini söyleyemezsem, yapamayacağım Degrade iniş gibi bir şey uygulamak için çok ileri git çünkü küresel bir minimum olmayacak. Belki yaratıcı olmak istiyorum - örneğin hata ölçütlerim olarak en küçük kareleri kullanmak istemiyorum.
Daha derine inerek (ve sorularım burada başlar), dışbükey bir hata yüzeyine sahip olup olmadığınızı söyleyebilmek için, Hessian matrisinizin pozitif yarı tanımlı olduğundan emin olmanız gerektiğini buldum . Simetrik matrisler için, bu test basittir - sadece Hessen matrisinin tüm öz değerlerinin negatif olmadığından emin olun. (Matrisiniz simetrik değilse, Gramian sayesinde kendi transpozisyonuna ekleyerek ve aynı özdeğer testini yaparak simetrik yapabilirsiniz , ancak burada önemli değildir).
Hessian matrisi nedir? Hessian matrisi, maliyet fonksiyonunuzun tüm kısmi kombinasyonlarını kodlar. Kaç tane kısmi var? Özellik vektörünüzdeki özellik sayısı kadar. Kısmi nasıl hesaplanır? Kısmi türevleri orijinal maliyet fonksiyonundan 'elle' alın.
Yani tam olarak bunu yaptım: matrisi ile gösterilen bir x veri matrisine sahip olduğumuzu varsayarım , burada örnek sayısını ve n örnek başına özellik sayısını belirtir. (kısmi sayı da olacaktır). Sanırım sensörlerden m zaman numunemiz ve n uzamsal numunemiz olduğunu söyleyebiliriz , ancak fiziksel uygulama burada çok önemli değil.
Ayrıca, m x 1 boyutunda bir y vektörümüz var . (Bu sizin 'etiket' vektörünüz veya X'in her satırına karşılık gelen 'cevabınız' ). Basit olması için, bu örnek için m = n = 2 olduğunu varsaydım . Yani 2 'örnek' ve 2 'özellik'.
Şimdi, burada en uygun 'çizgiyi' veya polinomu belirlemek istediğinizi varsayalım. Yani, girdi veri özelliklerinizi , maliyet fonksiyonunuz şöyle olacak şekilde polinom ortak verimli vektörünüz \ boldsymbol {\ theta} 'na yansıtırsınız :
Şimdi ilk kısmi türevi wrt , (özellik 0) :
Şimdi tüm ikinci bölümleri hesaplayalım, yani:
Hessian'ın aşağıdakilerden başka bir şey olmadığını biliyoruz:
Şimdi, veri matrisini nasıl oluşturduğuma bağlı olarak , ('özelliklerim' sütunlara göre ve örneklerim satırlara göre gidiyor), Hessian şöyle görünüyor :
... örnek kovaryans matrisinden başka bir şey değil !
Bu yüzden nasıl yorumlanacağından tam olarak emin değilim - ya da söylemeliyim ki, burada ne kadar genellemem gerektiğinden tam olarak emin değilim. Ama bence şunu söyleyebilirim:
Herzaman doğru:
- Hessian matrisi her zaman hata / maliyet yüzeyinizin dışbükey olup olmadığını kontrol eder.
- Hessian matrisiniz pos-semi-def ise, dışbükeysiniz (ve en uygun çözümü bulmak için degrade iniş gibi algoritmaları kullanabilirsiniz).
Yalnızca LSE için geçerlidir:
- LSE maliyet kriteri için Hessian matrisi, orijinal kovaryans matrisinden başka bir şey değildir. (!).
- Benim için bu, LSE ölçütünü kullanırsam, verilerin kendisinin dışbükey bir yüzeye sahip olup olmadığımı belirlediği anlamına gelir ? ... Bu da hangi kovaryans matrisimin özvektörlerinin bir şekilde maliyet yüzeyini 'şekillendirme' yeteneğine sahip olduğu anlamına gelir? Bu her zaman doğru mu? Yoksa sadece LSE kriterleri için mi işe yaradı? Bir hata yüzeyinin dışbükeyliğinin verilere bağlı olması sadece benimle doğru oturmuyor.
Öyleyse, onu orijinal soru bağlamına sokmak gerekirse, bir hata yüzey açıklığının (seçtiğiniz bazı maliyet fonksiyonlarına dayanarak) dışbükey olup olmadığını nasıl belirler? Bu belirleme verilere mi dayanıyor yoksa Hessian mı?
Teşekkürler
TLDR: Maliyet fonksiyonumun ve / veya veri setimin dışbükey veya dışbükey olmayan bir hata yüzeyi sağlayıp sağlamadığını nasıl, tam ve pratik olarak anlatabilirim ?