Uczenie maszynowe – co trzeba wiedzieć?

Michał Drożdż

Zaktualizowaliśmy ten tekst dla Ciebie!
Data aktualizacji: 31.12.2024
Autor aktualizacji: Tadeusz Sławik

Uczenie maszynowe (ML) jest obecnie szeroko i z powodzeniem wykorzystywane. Przykładowo, modele ML odpowiadają za rekomendacje na platformach takich jak Netflix i Amazon, umożliwiają rozpoznawanie twarzy w nowoczesnych smartfonach oraz wspierają innowacje w diagnostyce medycznej. Choć może się wydawać, że komputery „wiedzą” różne rzeczy, w rzeczywistości dokonują obliczeń. Wszystko, co robią, to operacje na liczbach. Uczymy je „wiedzieć”, definiując, co mają obliczać i jak przetwarzać dane.

Co to jest uczenie maszynowe?

Zastanawiasz się, czym naprawdę jest uczenie maszynowe? To system, który wykorzystuje algorytm do przekształcania (klasyfikowania) danego wejścia w odpowiadającą mu etykietę lub klasę (wyjście).

Jak wewnętrznie działa klasyfikacja? Kiedy system ML otrzymuje próbkę wejściową, wyodrębnia z niej wektor cech (wektor liczb) i określa, do której z zdefiniowanych klas (etykiet) ten wektor najprawdopodobniej należy.

Ten artykuł przedstawia przegląd procesu rozwoju systemu uczenia maszynowego (ML), koncentrując się szczególnie na uczeniu nadzorowanym. Celem jest wprowadzenie pojęć, które pomogą Ci rozpocząć eksplorację ML.

Uczenie maszynowe – definicja

Zacznijmy od omówienia podstawowych terminów:

  • Zbiór uczący (treningowy): Zbiór artefaktów (np. obrazów, próbek dźwiękowych, statystyk), który zawiera prawdziwe pozytywne i negatywne przykłady. Ten zbiór służy do trenowania systemu, dostarczając wektor cech dla każdego artefaktu oraz oczekiwane wyjście. System uczy się, które wartości cech odpowiadają którym wyjściom.
  • Zbiór walidacyjny: Zbiór artefaktów używany do dostrajania hiperparametrów wytrenowanego modelu. Ten krok jest kluczowy dla wielu metod, aby uniknąć przeuczenia i zapewnić generalizację.
  • Zbiór testowy: Zbiór artefaktów wykorzystywany do oceny, jak dobrze został wytrenowany system. Każde wejście jest klasyfikowane, a przewidywania systemu porównywane są z oczekiwanymi wynikami w celu oceny wydajności.
  • Wektor cech: Liczbowa reprezentacja charakterystyk artefaktu. Ujmuje właściwości artefaktu w uporządkowanym formacie, który algorytm może przetwarzać.
  • Deskryptor cech (lub ekstraktor): Metoda przekształcania artefaktu w wektor cech. Proces ten tłumaczy artefakt na reprezentację numeryczną odpowiednią do analizy.
  • Algorytm klasyfikacji: Algorytm określający, który wektor cech odpowiada której etykiecie lub klasie wyjściowej.
  • Przeuczenie: Sytuacja, w której model idealnie dopasowuje się do zbioru treningowego, ale słabo radzi sobie z nowymi danymi. Przeuczeniu można zapobiegać, stosując takie techniki, jak regularyzacja, augmentacja danych i walidacja krzyżowa.

Jak zbudować system ML

  1. Zbieranie danych
  2. Przetwarzanie danych
  3. Ekstrakcja cech
  4. Wybór i zastosowanie algorytmu klasyfikacji
  5. Trenowanie i ocena modelu
  6. Iteracja i optymalizacja

Nowoczesne narzędzia i frameworki

  • TensorFlow
  • PyTorch
  • Scikit-learn
  • JAX

Nowe trendy w ML

  • Transfer learning
  • Wyjaśnialna AI (XAI)
  • Etyczna AI
  • Samonadzorowane uczenie
  • Generatywna AI

Podsumowanie

Uczenie maszynowe to potężne i rozwijające się narzędzie, które może automatyzować procesy, wspierać podejmowanie decyzji i rozwiązywać złożone problemy. Sukces zależy od wysokiej jakości danych, przemyślanego wyboru algorytmów oraz starannej oceny.

Źródła

JAX (https://jax.readthedocs.io/) – Oficjalna strona.

LeCun, Y., Bengio, Y., & Hinton, G. (2015). Deep learning. Nature, 521(7553), 436-444. https://doi.org/10.1038/nature14539

Goodfellow, I., Bengio, Y., & Courville, A. (2016). Deep Learning. MIT Press. http://www.deeplearningbook.org

TensorFlow (https://www.tensorflow.org/) – Oficjalna strona.

PyTorch (https://pytorch.org/) – Oficjalna strona.

Scikit-learn (https://scikit-learn.org/) – Oficjalna strona.

Poznaj mageek of j‑labs i daj się zadziwić, jak może wyglądać praca z j‑People!

Skontaktuj się z nami