Ne yazık ki , sadece bir problem açıklaması verildiğinde, bir sinir ağının en iyi nöron sayısını ve katman sayısını belirlemek için genel bir yol yoktur . Başlangıç noktası olarak denemek için iyi değerleri belirleyecek çok fazla rehberlik bile yoktur.
En yaygın yaklaşım, benzer problemlerde kullanılan ağlar hakkında önceki deneyimlere dayanan kaba bir tahminde başlamak gibi görünmektedir. Bu sizin kendi deneyiminiz veya bir eğitim kursundan, blogunuzdan veya araştırma raporundan aldığınız ikinci / üçüncü el deneyiminiz olabilir. Ardından, bazı varyasyonları deneyin ve en iyisini seçmeden önce performansı dikkatlice kontrol edin.
Sinir ağlarının boyutu ve derinliği diğer hiper-paramatörler ile de etkileşime girer , böylece başka bir yerde bir şeyi değiştirmek en iyi değerlerin yerini etkileyebilir. Bu nedenle, bir ağ için "en iyi" boyut ve derinliği izole etmek mümkün değildir ve daha sonra diğer parametreleri izole etmeye devam eder. Örneğin, çok derin bir ağınız varsa, ReLU etkinleştirme işleviyle verimli bir şekilde çalışabilir, ancak sigmoid ile o kadar iyi çalışmayabilir - ağın en iyi boyutunu / şeklini bulup daha sonra değişen etkinleştirme işlevleriyle bir deneme denediyseniz neyin en iyi sonuç verdiği konusunda yanlış sonuca varmak.
Bazen sinir ağ tasarımına sıfırdan başlayarak araştırmacıların kullandığı “temel kurallar” hakkında bilgi edinebilirsiniz. Bunlar sorunlarınız için işe yarayıp yaramayabilir, ancak en azından probleme bir başlangıç yapma avantajına sahiptirler. Gördüğüm varyasyonlar:
Boyutu değiştirmek için özel bir neden olmadığı gerekçesiyle (belki bir otomatik kodlayıcı oluşturmuyorsanız), girişe benzer boyutta ve aynı boyutta gizli katmanlara sahip bir ağ oluşturun.
Basit bir ağı neyin geliştirdiğini görmek için basit başlayın ve karmaşıklık oluşturun.
Çıktının giriş verileriyle iyi açıklanmasını bekliyorsanız, ancak karmaşık bir ilişkiyle (yalnızca doğal olarak gürültülü olmanın aksine) değişen ağ derinliklerini deneyin.
Biraz bırakmayı deneyin, sinir ağlarının her şeyi daha iyi hale getiren sihirli peri tozuna en yakın şeydir (uyarı: bırakma eklemek genellemeyi artırabilir, ancak gerekli katman boyutlarını ve eğitim sürelerini de artırabilir).
Bunları veya herhangi bir metni herhangi bir metinde okursanız, bir tutam tuz ile alın. Ancak, en kötüsü, boş sayfa efektini geçmenize ve bir tür ağ yazmanıza ve test ve iyileştirme sürecini başlatmanıza yardımcı olurlar.
Bir kenara, başka bir yaklaşım daha iyi olabilir ve size çok zaman kazandırarak bir sinir ağını ayarlamak çok kaybolmak için çalışın. Diğer makine öğrenimi ve veri bilimi yaklaşımlarını göz önünde bulundurun ve kullanın. Verileri keşfedin, belki bazı grafikler yapın. Sorununuza bağlı olarak, atım, doğrusal regresyon, lojistik regresyon veya softmax regresyon için kriterler elde etmek için önce bazı basit doğrusal yaklaşımları deneyin. NN'lere farklı bir ML algoritması kullanmayı düşünün - XGBoost gibi karar ağacı tabanlı yaklaşımlar birçok problem üzerinde derinlemesine öğrenmekten daha hızlı ve daha etkili olabilir.