# Deep learning - wybór algorytmu w zależności od posiadanych danych
W zależności, jakie dane posiadamy, możemy stosować różny rodzaj algorytmu. **Przy większości problemów związanych z uczeniem głębokim implementujemy tzw. głębokie sieci neuronowe.**
Poniżej omówione są dwa najpopularniejsze rodzaje danych, w których decydujemy się użyć głębokich sieci neuronowych:
## Przykład 1: Nasza baza danych zawiera dane tekstowe np. komentarze na portalach społecznościowych dotyczącym partii politycznych
**W sytuacji gdy nasze dane są w formie tekstowej, to stosujemy tzw. sieci rekurencyjne i metody bazujące na sieciach rekurencyjnych, np. sieci LSTM (ang. Long Short Term Memory), GRU.**
**Opis sytuacji**: załóżmy, iż jesteśmy partią polityczną, która przygotowuje się do kampanii wyborczej. Chcemy pozyskać nową grupę wyborców taką, która wcześniej na nas nie głosowała. Mamy dostępne komentarze na naszym fanpage`u w portalach społecznościowych typu Twitter i Facebook. Komentarzy jest bardzo dużo. **Używając sieci rekurencyjnych, które służą m.in. do algorytmów klasyfikacji, jesteśmy w stanie zbadać wydźwięk tych komentarzy: czy są pozytywne, czy też negatywne.** Mogą również mieć wydźwięk "raczej pozytywny" lub "raczej negatywny". Wówczas możemy wyróżnić cztery grupy komentarzy: komentarze pozytywne, raczej pozytywne, negatywne i raczej negatywne. Dzięki zbudowaniu algorytmu, który dokona tego podziału, możemy zidentyfikować grupę tych, którzy zwykle na nas nie głosują, bo nie należą do grupy docelowej (ludzie młodzi z dużych miast). To oznacza, iż możemy ich czymś do siebie przekonać, tym samym poszerzyć nasz elektorat i wygrać wybory, w czym pomogło nam uczenie głębokie.
## 2. Przykład 2: Nasza baza zawiera zdjęcia osób znajdujących się w sklepie odzieżowym
**Bazy danych, które są obrazami, analizujemy najczęściej z pomocą sieci splotowych (ang. Convolutional Neural Network)**. Dzięki tym algorytmom jesteśmy nie tylko w stanie odróżnić, na którym zdjęciu jest pies, a na którym kot, ale przede wszystkim możemy dokonać detekcji różnych obiektów na zdjęciach.
**Opis sytuacji**: prowadzimy sklep odzieżowy w dużej galerii handlowej w jednym z największych polskich miast. Rząd ponownie wprowadził obowiązek noszenia maseczek. Dodatkowo powinny być to maseczki typu FFP2. **Wykorzystując sieci splotowe i algorytmy detekcji (m.in. takie sieci do detekcji jak chociażby Yolo) możemy dowiedzieć się, ile osób na zdjęciu nosi maseczkę, a ile nie**. W tym wypadku z użyciem algorytmów uczenia głębokiego możemy sprawdzić, czy nasi pracownicy skutecznie przestrzegają zaleceń sanepidu. Do każdego takiego przypadku związanego ze zlokalizowaniem obiektu na zdjęciu używamy np. algorytmu Yolo. Dodatkowo rozwiązanie to powie nam jak bardzo pewne jest swojego wyboru np. jestem pewny na 99%, iż widzę samochód. Przykład działania poniżej:
![obraz1.webp](/uploads/obraz1_d0bef7145f.webp)
## Poznaj Uczenie maszynowe z TensorFlow
Jeżeli te zagadnienia są dla Ciebie interesujące i chcesz je poznać bardziej szczegółowo lub zająć się też innymi zastosowaniami sieci neuronowych zapoznaj się biblioteką TensorFlow w języku Python.
**Biblioteka ta umożliwia prace z sieciami neuronowymi i tworzenie takich algorytmów jak te opisane powyżej.** Najlepszą metodą, aby poznać ten temat, jest wzięcie udziału w [szkoleniu Uczenie maszynowe z TensorFlow](https://www.sages.pl/szkolenia/uczenie_maszynowe_z_tensorflow) prowadzonym przez praktyka z wieloletnim doświadczeniem, który opowie o detalach poszczególnych metod. Szkolenie uczenie maszynowe z TensorFlow to pierwszy krok, który przybliży Cię do zostania ekspertem w dziedzinie uczenia głębokiego i rozwiązywania nie tylko takich problemów jak powyżej, ale również wielu bardziej skomplikowanych problemów biznesowych. [Cały program szkolenia znajdziesz na naszej stronie](https://www.sages.pl/szkolenia/uczenie_maszynowe_z_tensorflow).