Grid vs Random search w scikit-learn – co powinieneś wiedzieć o doborze parametrów?

Co ma decydujący wpływ na efektywność w procesie klasyfikacji? Od razu nasuwa się odpowiedź algorytm, ale pamiętajmy nawet najlepszy/najmodniejszy algorytm nie zadziała bez skrupulatnie dobranych parametrów. Jak je dobierać, na co zwrócić uwagę oraz czy losowe przeszukiwanie przestrzeni jest lepsze od podejścia uczesanego wyczerpującego?

Continue reading

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

Modele regresji liniowej szybko i łatwo z scikit learn

Rozmawiająć z osobami, które zawodowo wykorzystują metody analizy danych byłem zaskoczony jak wiele modeli predykcyjnych opartych jest na regresji liniowej. Jest to jedna z podstawowych technik w arsenale analityka, stosukowo prosta w implementacji oraz zrozumieniu, a jednak niezwykle efektywna i użyteczna. Dzięki bibliotece scikit-learn jesteśmy w stanie w kilku wierszach kodu python’a zaimplementować jej podstawowe rodzaje.

Continue reading