Chcę narysować ciężary tf.layers.dense w histogramie tensorboardu, ale nie pokazuje się w parametrze, jak mogłem to zrobić?Jak uzyskać wagi w pliku tf.layers.dense?
Odpowiedz
Ciężary są dodawane jako zmiennej o nazwie kernel
, więc można użyć
x = tf.dense(...)
weights = tf.get_default_graph().get_tensor_by_name(
os.path.split(x.name)[0] + '/kernel:0'))
można oczywiście zastąpić tf.get_default_graph()
przez inny wykres, na którym pracujemy w.
Świetnie! Rozwiązuje moje pytanie. DZIĘKI – user8381550
I aby uzyskać uprzedzenia wystarczy użyć 'bias = tf.get_default_graph(). get_tensor_by_name ( os.path.split (x.name) [0] + '/ bias: 0') ' – collector
Wygląda na to, że powinno być oznaczone jako rozwiązane. –
Najnowszy warstwy tensorflow api tworzy wszystko zmienne za pomocą wywołania tf.get_variable
. Zapewnia to, że jeśli chcesz ponownie użyć zmiennej, możesz po prostu użyć funkcji tf.get_variable
i podać nazwę zmiennej, którą chcesz uzyskać.
W przypadku tf.layers.dense
zmienna jest tworzona jako: layer_name/kernel
. Tak, można uzyskać zmienną mówiąc:
weights = tf.get_variable("layer_name/kernel") # do not specify
# the shape here or it will confuse tensorflow into creating a new one.
[Edit]: Nowa wersja Tensorflow ma teraz zarówno funkcjonalne i obiektowego interfejsy API warstw. Jeśli potrzebujesz warstw tylko do celów obliczeniowych, to używanie funkcjonalnego API to dobry wybór. Nazwy funkcji zaczynają się od małych liter, na przykład ->tf.layers.dense(...)
. Obiekty warstwy można utworzyć za pomocą pierwszej wielkiej litery, np. ->tf.layers.Dense(...)
. Po uzyskaniu dojścia do tego obiektu warstwy można korzystać ze wszystkich jego funkcji. Aby uzyskać wagi, po prostu użyj obj.trainable_weights
, która zwraca listę wszystkich możliwych do wyszukania zmiennych znajdujących się w zasięgu tej warstwy.
Natknąłem się na ten problem i po prostu go rozwiązałem. Nazwa tf.layers.dense
nie musi być taka sama z prefiksem nazwy jądra. Mój tensor to "gęste_2/xxx", ale jego jądro to "gęsty_1/jądro: 0". Aby upewnić się, że działa tf.get_variable
, lepiej ustawić funkcję name=xxx
w funkcji tf.layers.dense
, aby dwie nazwy miały ten sam prefiks. Działa jako demonstracja poniżej:
l=tf.layers.dense(input_tf_xxx,300,name='ip1')
with tf.variable_scope('ip1', reuse=True):
w = tf.get_variable('kernel')
Przy okazji, moja wersja tf to 1.3.
Szaleję z tensorflow.
biegnę to:
sess.run(x.kernel)
po treningu, a ja się ciężary.
Pochodzi z właściwości opisanych: here.
Mówię, że zwariowałem, ponieważ wydaje się, że istnieje milion nieco różnych sposobów zrobienia czegoś w tf, a to odciąga samouczki.
- 1. Wagi z pakietem plm
- 2. Jak zaimplementować wzór wagi w php?
- 3. zapisać konkretne wagi w TensorFlow
- 4. Jak mogę wizualizować wagi (zmienne) w cnn w Tensorflow?
- 5. Implementacja wielowarstwowego perceptronu: wagi szaleją
- 6. Jak sprawdzić wagi po każdym epoc w modelu Keras
- 7. Jak zrobić tekst czcionką/stylu wagi odważne w JavaScript
- 8. jak uzyskać kierunek pliku tga w java
- 9. Jak uzyskać deskryptor pliku bufora w pamięci?
- 10. Jak uzyskać długość pliku w Go?
- 11. jak uzyskać parametry zdefiniowane w pliku jaspca?
- 12. Jak uzyskać łącze do pliku w FileField?
- 13. Jak uzyskać rozmiar pliku w WinRT?
- 14. Jak uzyskać bieżącą ścieżkę pliku w javascript
- 15. Jak uzyskać wczorajszą datę w pliku wsadowym?
- 16. Jak uzyskać typ MIME pliku w Qt?
- 17. Jak uzyskać rozmiar pliku w C#?
- 18. W extjach, jak uzyskać przesłaną zawartość pliku
- 19. Jak mogę uzyskać nazwę pliku w Dart?
- 20. Jak uzyskać rozszerzenie pliku w PHP?
- 21. Jak uzyskać skrót MD5 pliku w C++?
- 22. Jak uzyskać rozmiar pliku tymczasowego w Androidzie?
- 23. Jak uzyskać datę w pliku BAT
- 24. Jak uzyskać typ zawartości pliku w PHP?
- 25. Jak uzyskać nazwę pliku wejściowego w MRjob
- 26. Jak mogę uzyskać ikonę pliku?
- 27. Jak uzyskać datę utworzenia pliku?
- 28. Jak uzyskać nazwę otwartego pliku?
- 29. Jak uzyskać tymczasową nazwę pliku?
- 30. Jak uzyskać nazwę pliku DLL?
Witamy w Stackoverflow! Poświęć trochę czasu na przeczytanie [stron pomocy] (http://stackoverflow.com/help), szczególnie w sekcjach o nazwie ["Jakie tematy mogę tu zadać?"] (Http://stackoverflow.com/help/ na temat) i ["Jakiego rodzaju pytań należy unikać?"] (http://stackoverflow.com/help/dont-ask). Proszę również wziąć udział w [trasie] (http://stackoverflow.com/tour) i przeczytać o [jak zadawać dobre pytania] (http://stackoverflow.com/help/how-to-ask). Na koniec, dowiedz się, jak utworzyć [Minimalny, kompletny i sprawdzalny przykład] (http://stackoverflow.com/help/mcve). – Markus