“Derin öğrenme” ile çok seviyeli / hiyerarşik modelleme arasındaki fark nedir?


31

"Derin öğrenme" çok düzeyli / hiyerarşik modelleme için başka bir terim midir?

İkincisine öncekinden çok daha aşinayım, ancak söyleyebileceğim kadarıyla, temel fark tanımlarında değil, uygulama alanlarında nasıl kullanıldığı ve değerlendirildiği.

Tipik bir "derin öğrenme" uygulamasındaki düğümlerin sayısı daha büyüktür ve genel bir hiyerarşik form kullanır, oysa çok seviyeli modelleme uygulamaları tipik olarak modellenen üretken süreci taklit eden hiyerarşik ilişkileri kullanır. Uygulamalı bir istatistikte (hiyerarşik modelleme) etki alanında genel bir hiyerarşi kullanılması, etki alanına özgü bir hiyerarşiyi modellemenin, genel derinlemesine öğrenme öğrenme makinesi yapma hedefinin altını çizmiş olabilir.

Bu iki şey gerçekten aynı makine iki farklı isim altında, iki farklı şekilde kullanılıyor mu?

Yanıtlar:


38

Benzerlik

Temel olarak, makine öğrenim uygulamalarında genel bir soruyu cevaplamak için her iki algoritma türü geliştirilmiştir:

Verilen öngörücüler (faktörler) - performansı artırmak için bu faktörler arasındaki etkileşimi nasıl dahil edebiliriz?x1,x2,,xp

Bunun bir yolu basitçe yeni tahmincileri tanıtmaktır: Ancak bu, çok sayıda parametre ve çok özel bir etkileşim türü nedeniyle kötü bir fikir olduğunu kanıtlar.xp+1=x1x2,xp+2=x1x3,

Hem Çok Düzeyli Modelleme hem de Derin Öğrenme algoritmaları bu soruya daha akıllı etkileşimler modeli sunarak cevap verir. Ve bu açıdan onlar çok benzer.

fark

Şimdi, aralarındaki en büyük kavramsal farkın ne olduğu konusundaki anlayışımı vermeye çalışayım. Bir açıklama yapmak için, modellerin her birinde yaptığımız varsayımları görelim:

Çok seviyeli modelleme: Veri yapısını yansıtan katmanı bir Bayesian Hiyerarşik Ağı olarak gösterilebilir . Bu ağ sabittir ve genellikle etki alanı uygulamalarından gelir.1

Derin Öğrenme: veriler birçok faktörün etkileşimi ile oluşturulmuştur. Etkileşimlerin yapısı bilinmemektedir, ancak katmanlı bir faktoring olarak temsil edilebilir: daha düşük seviyeli gösterimleri dönüştürerek daha yüksek seviyeli etkileşimler elde edilir.2

Temel fark , Deep Learning'de "etkileşimlerin yapısı bilinmiyor" ifadesinden gelir . Etkileşim türü hakkında bazı öncelikler alabiliriz, ancak algoritma öğrenme prosedürü sırasında tüm etkileşimleri tanımlar. Öte yandan, Çok Düzeyli modelleme için etkileşimlerin yapısını tanımlamamız gerekir (daha sonra sadece modelin parametrelerini değiştirdiğini öğreniriz).

Örnekler

Örneğin, üç faktöre ve ve farklı katmanlar olarak . { x 1 } { x 2 , x 3 }x1,x2,x3{x1}{x2,x3}

Çok düzeyli modelleme regresyon, örneğin, biz etkileşimleri alacak ve , ama biz etkileşim asla . Elbette, kısmen sonuçlar hataların korelasyonundan etkilenecek, ancak bu örnek için önemli değil.x 1 x 3 x 2 x 3x1x2x1x3x2x3

Derin öğrenmede, örneğin iki gizli katmana ve doğrusal aktivasyon işlevine sahip çok katmanlı Kısıtlı Boltzmann makinelerinde ( RBM ), olası tüm polinom etkileşimlerini dereceyle üç veya daha az olacak şekilde yapacağız.

Ortak avantajlar ve dezavantajlar

Çok düzeyli modelleme

(-) etkileşimlerin yapısını tanımlamanız gerekir

(+) sonuçların yorumlanması genellikle daha kolaydır

(+) istatistik yöntemleri uygulayabilir (güven aralıklarını değerlendirebilir, hipotezleri kontrol edebilir)

Derin öğrenme

(-) eğitmek için çok büyük miktarda veri gerektirir (ve aynı zamanda eğitim için zaman gerektirir)

(-) sonuçların yorumlanması genellikle mümkün değildir (kara kutu olarak sağlanır)

(+) uzman bilgisi gerektirmez

(+) iyi eğitilmiş bir kez, genellikle çoğu diğer genel yöntemlerden daha iyi performans gösterir (uygulamaya özel değil)

Umarım yardımcı olur!


Derin bir sinir ağı neden eğitmek için büyük miktarda veri gerektiriyor? Bunu daha önce duymamıştım.
Jase

1
@Jase Sinir ağları genellikle çok fazla parametreye sahiptir, bu nedenle çoğu durumda küçük bir veri kümesi kullanıyorsanız, muhtemelen sadece üzerinize giyersiniz. Tabii ki, her şey göreve bağlı, ancak günümüzde en etkileyici NN sonuçlarının çoğu son derece büyük veri setleri kullanıyor.
Dmitry Laptev

Etkileyici sonuçların devasa veri kümeleri üzerinde olduğunu kabul ettim, ancak küçük veri kümelerinden genel olarak genelleme elde etmek için bırakma ve diğer hileleri kullanamayacağımızdan emin değilim.
Jase

1
@Jase Elbette, kullanabileceğiniz farklı buluşsal yöntemler vardır. Ancak, görüntü işleme konusundaki deneyimime göre, neredeyse tümü, bazılarının önceki ve dolayısıyla önyargıya temelde eşdeğer olan bazı düzenlemeleri getirmektedir. Her zaman istediğin gibi değil.
Dmitry Laptev

Muhtemelen, eğer parametrik olmayan, örneğin hiyerarşik bir Dirichlet kullanıyorsanız, etkileşimlerin yapısını tanımlamanız gerekmez.
Astrid

2

Bu soru / cevap bir süredir orada olsa da, cevabın birkaç noktasını netleştirmenin faydalı olacağını düşündüm. İlk olarak, hiyerarşik yöntemler ve derin sinir ağları arasında büyük bir ayrım olarak ifade edilen ifade, 'Bu ağ sabittir.' yanlış. Hiyerarşik yöntemler alternatif sinir ağlarından daha 'sabit' değildir. Örneğin, Hiyerarşik Evrişimsel Faktör Analizi, Chen ve diğ. ark.. Ayrıca etkileşimleri tanımlama gereksiniminin artık ayırt edici bir nokta olmadığını da göreceksiniz. Hiyerarşik modelleme ile artı olarak listelenmeyen birkaç nokta, benim deneyimlerime göre, fazladan takma sorunu ve hem çok büyük hem de çok küçük eğitim setlerini idare edebilme yeteneğidir. Nitpick noktası, Bayesian hiyerarşik yöntemleri kullanıldığında, güven aralıklarının ve hipotez testlerinin genellikle uygulanacak istatistiksel yöntemler olmadığıdır.

Sitemizi kullandığınızda şunları okuyup anladığınızı kabul etmiş olursunuz: Çerez Politikası ve Gizlilik Politikası.
Licensed under cc by-sa 3.0 with attribution required.