Sieć konwolucyjna w Tensorflow do klasyfikacji cyfr z MNIST

Trzeci wpis z serii związanej tworzeniem sieci neuronowych w Tensorflow, tym razem budujemy sieć konwolucyjną do klasyfikacji cyfr z MNIST. Omawiam idee operacji konwolucji dla sieci neuronowych oraz jak ją poprawnie zaimplementować w Tensorflow. W stosunku do poprzednich wpisów z serii sieć ta osiąga najlepszą dokładność klasyfikacji równą 0.9880.

Continue reading

Wielowarstwowa sieć neuronowa w Tensorflow do klasyfikacji cyfr z MNIST

W wpisie tym zbudujemy 5-warstwową w pełni połączoną (fully-connected) sieć neuronową klasyfikującą cyfry z zbioru MNIST. W tym celu wykorzystamy Tensorflow oraz wprowadzimy nowe techniki pozwalające na uczenie głębszego modelu takie jak np. funkcje aktywacji: relu, elu, dropout oraz algorytm optymalizacyjny Adam.

Continue reading

Sieć konwolucyjna do rozpoznawania ciągu cyfr część 2

Jest to  druga część serii przedstawiającej sposób pracy z sieciami konwolucyjnymi (Conv Nets) z wykorzystaniem TensorFlow. Dokonamy w niej rozpoznania oraz klasyfikacji szeregu cyfr jednocześnie, co będzie wiązało się z kilkoma istotnymi zmianami w skrypcie w stosunku do poprzedniego wpisu. Stanowi to także dobry przykład do omówienia jednego z kluczowych elementów skutecznego uczenia czyli inicjalizacji wag w sieci.

Continue reading

Instalacja Tensorflow 0.9 CUDA 7.5 na ubuntu 16.04 i diabeł na ramieniu

Czy też tak macie? Diabeł siedzący na ramieniu szepcze wam do ucha “no weź zaktualizuj, przecież to zajmie chwilkę”. Tak właśnie zaczyna się historia instalacji biblioteki Tensorflow od Google pozwalająca na uczenie sieci neuronowych tzw. deep learning. Wszystko miało pójść gładko, jednak jej konfiguracja na ubuntu 16.04 jeszcze może przysporzyć wiele kłopotów.

Continue reading