Closed kadirnar closed 1 year ago
Selamlar Kadir :)
Yatay sekilde gosterim bi sonraki versiyon cikacak. Hatta, buradaki issue onunla ilgili #56
Block yapisi ile ilgili, depth
parametresi var. Dokumanda yazildigi gibi (dokumanda (e.g. docstring
of draw_graph
function) her parametreyi olabildigince aciklamaya calistim), depth parametresi gorsel cikan en buyuk depth icin ust limit kuruyor. Bir modulun depth i ise nested module hierarchy sindeki depth i ne karsilik geliyor.
Mesela depth=2 (default depth=3), en fazla 2. sub module displayde gozukuyor onun icindekiler gozukmuyor.
Typo lar icin ozur, yazidigim klavye ingilizce :)
Eger belli modulleri depth inden bagimsiz olarak kapatmak istiyorsan orasi baska. Cunku bu durum depth parametresinden cok daha fazla customization gerekiyor.
Bu durumda aklima gelen plan, draw_graph
a bi config setting
verip bu config settings to modulleri belirtmek.
Ama bu draw_graph
fonksiyonun asiri compleks yapar, ki bunu pek istemiyorum.
Eger baska bi planin varsa aklinda onu da duymak isterim.
Bi de mumkunse ingilizce devam edelim. Cunku bu durumda baska birisinin gorup tavsiye vermesi/anlamasi daha olanakli oluyor, ki bunu gecmis tecrube ettim :)
Ben bool ile ilgili parametreleri test etmiştim. Depth dediğiniz gibi işime yaradı. Block çıktılarını görüp ona göre düzenleme yapmak çok işime yarıyor. Görselleştirme kodlarına formatını bilmiyorum fakat daha düzenli bir çıktı mümkünse bunun iyileştirmesini talep edebilirim.
FPN + GhostBottleneck kullanarak tasarladığım yapı: https://drive.google.com/file/d/17DuijhDP5ILzo70LCbf2OKmXumm2WuCi/view?usp=share_link
Anlatmak istediğim biraz karışık olduğu için ingilizce anlamakta zor olur diye Türkçe yazdım. İngilizce konusunda haklısın. İstersen konu başlığını değiştirebilirsin. Cevaplar ve kod kalitesi için teşekkür ederim. Konuyu da kapatabilirsin.
Daha duzenli bir cikti derken, tam olarak ne kastediyorsun? (Mesela node larin goreceli pozisyonlari ?) Duzenli kelimesi bircok manaya karsilik gelebilir :)
Daha duzenli bir cikti derken, tam olarak ne kastediyorsun? (Mesela node larin goreceli pozisyonlari ?) Duzenli kelimesi bircok manaya karsilik gelebilir :)
Haklısın. Mesela tasarladığım mimari bu diyebilirim.
Torchview çıktısı ile baktığımda daha karışık geliyor. Torchview ile böyle bir çıktı almak zordur fakat daha anlaşılabilir olabilirse harika olacağını düşünüyorum. Belki pozisyonlarla ilgili bir şey yaparsan oklar birbirine girmiş gibi gözükmeyebilir. Görselleştirme modulunü bilmediğim için yorum pek yapamıyorum.
Demek istedigini anladim, algoritmik bir cozumu var gibi. Ama tam kesin olmak icin, gosterdigin figurde birkac graph node u eksik gibi, mesela MaxPool2d, add (from maxpool2d ve singleConvBlock) Bunlari da ekleyip gosterirsen tam emin olabilirim.
Su anlik en iyi cozum asagidaki gibi.
Buradak yaptigim tek sey depth ayni olan node lari ayni seviyeye koyman (buna expand_nested=True
ile ulasabilirsin.)
Gosterdigin ghost block yapisi, bence, iyi bir cozum degil (bu yapi ilk denemelerimden biriydi). Bunu kullanirken gosterilen sekil modulun nested yapisini iyi yansitmiyor.
Sanki ghost block input alip output cikartiyor gibi, ardindan onun submodulleri tekrardan forward prop yapiyor. Bunun yerine expand_nested=True
gorsel olarak modulun yapisini daha iyi yansitiyor. Cunku hangi submodulun hangi module ait oldugunu gorebiliyorsun
UpConv gitmeden + simgesiyle yeni bir conv göstermem gerekiyordu. Gösterim de hata yapmışım. Teşekkür ederim. Öyle UpConv iletiyorum.Maxpool veya başka bir işlem yok. Orada hata yapmışım. Aslında Torchview kütüphanesinin gelişmesi bu yüzden çok önemli :)
Demek istediğini pek anlamadım. Fakat kodları daha clean hale getirdiğimde daha iyi sonuç alacağım diye düşünüyorum. 1-2 hafta yoğunluğumdan sonra daha güzel bir şekilde deneyeceğim. Test için mimari kodlarını paylaşacağım. Yapabilirsem farklı kütüphanelerle karşılaştırma yapacağım. İlgin için teşekkür ederim.
Pardon, ben daha once gosterdigin LDC model ini kullandigini dusundum. Ghost ile ilgimi yorumumu tamamen gormezden gelebilirsin :)
Note: If, for some reason, you want to learn the content of this issue, and Google translate does not work, you can ask for translation :)
Merhaba Mert,
Mimari geliştirirken Torchview kütüphanesi çok işime yarıyor. Çok fazla block ve residual yapısı kullandığımda ana yapıyı torchview üzerinden anlamak daha karışık oluyor. Block modullerin içini göstermeyecek bir modül var mı?
Örnek: https://github.com/WongKinYiu/ScaledYOLOv4/blob/main/figure/scaled-yolov4.png
Çok fazla block yapısı oldugu durumlar da .pdf çıktısı çok uzun oluyor. Acaba bu çıktıyı yatay alma gibi bir özellik ekleyebilir misin?
Teşekkürler.