loader image
Close
  • Use case
    • Bankowość i Finanse
    • eCommerce i Retail
    • Telekomunikacja i Dostawcy Mediów
    • Administracja
    • Opieka Zdrowotna
    • Technologie i Informatyka
  • Rodzaje aktywności
    • Współdzielenie kont i udostępnianie urządzeń
    • Uwierzytelnianie pracowników
    • Bezsprzętowe MFA/2FA dla klientów
    • Praca Zdalna
    • Zgodność z regulacjami PSD2, SCA
    • System antyfraudowy
    • Wykrywanie botów i zdalnych pulpitów
  • Rozwiązania
    • Biometria behawioralna
    • Device Fingerprinting
    • PureSecure
    • MobileSecure
  • Strefa wiedzy
    • Onepagery
    • Prezentacje
    • E-book
    • Webinary
    • Video
  • Aktualności
    • Blog
    • Teksty eksperckie
  • Firma
    • O nas
    • O grupie
    • Polityka Prywatności
    • Projekt Unijny
  • Kontakt
  • Use case

    Bankowość i finanse

    eCommerce i Retail

    Telekomunikacja i Dostawcy Mediów

    Administracja

    Opieka Zdrowotna

    Technologie i Informatyka

    Współdzielenie kont i udostępnianie urządzeń

    Uwierzytelnianie pracowników

    Bezsprzętowe MFA/ 2FA dla klientów

    Praca zdalna

    Zgodność z regulacjami PSD2, SCA

    System antyfraudowy

    Wykrywanie botów i zdalnych pulpitów

  • Rozwiązania

    Biometria behawioralna

    Device Fingerprinting

    PureSecure

    MobileSecure

  • Strefa wiedzy

    Onepgery

    Prezentacje

    E-book

    Webinary

    Wideo

  • Aktualności

    Blog

    Teksty eksperckie

  • Firma

    O nas

    O grupie

    Polityka prywatności

    Projekt unijny

  • Kontakt
  • Polski
    • Polski
    • English

  • Use case

    Bankowość i finanse

    eCommerce i Retail

    Telekomunikacja i Dostawcy Mediów

    Administracja

    Opieka Zdrowotna

    Technologie i Informatyka

    Współdzielenie kont i udostępnianie urządzeń

    Uwierzytelnianie pracowników

    Bezsprzętowe MFA/ 2FA dla klientów

    Praca zdalna

    Zgodność z regulacjami PSD2, SCA

    System antyfraudowy

    Wykrywanie botów i zdalnych pulpitów

  • Rozwiązania

    Biometria behawioralna

    Device Fingerprinting

    PureSecure

    MobileSecure

  • Strefa wiedzy

    Onepgery

    Prezentacje

    E-book

    Webinary

    Wideo

  • Aktualności

    Blog

    Teksty eksperckie

  • Firma

    O nas

    O grupie

    Polityka prywatności

    Projekt unijny

  • Kontakt
  • Polski
    • Polski
    • English

Teksty eksperckie

Transfer Learning – czyli kilka słów o skąpstwie i sprycie w uczeniu maszynowym

Zarys historyczny i pojęciowy

Zgodnie z Wikipedią pierwsze wzmianki na temat transfer learningu pojawiły się w 1976 roku w artykule naukowym: „The influence of pattern similarity and transfer learning upon the training of a base perceptron B2”. Jego autorzy S. Vezinovski i A. Fulgosi opisali w nim matematyczny i geometryczny model transferu wiedzy. Rozwój technologii i prace nad uczeniem głębokim sprawiły, że dziś przeniesienie wiedzy jest jednym z gorętszych tematów w dziedzinie uczenia maszynowego.

Transfer learning to podejście do uczenia maszynowego polegające na wykorzystaniu wiedzy pozyskanej w ramach rozwiązywania jednego zadania i zastosowaniu jej do wykonania innego (w miarę zbliżonego dziedzinowo). Pozwala to na osiągnięcie dużo lepszych wyników, przyspieszenie czasu trenowania modeli i w konsekwencji oszczędzenia zasobów obliczeniowych. Transfer wiedzy jest naturalnym wynikiem badań oraz pracy nad metodami uczenia głębokiego, które wymagają ogromnych ilości danych treningowych i długiego czasu trenowania. Zastosowanie tej techniki nie jest rzeczą trywialną. Zadziała ona bowiem tylko w sytuacjach, gdy wyuczone reprezentacje oraz struktury danych są dobrze zgeneralizowane, a domeny obu zadań relatywnie pokrewne.

Rysunek 1. Przykłady transferu umiejętności zainspirowane życiem.

Koncepcja transferu (wiedzy) ma swoje odbicie w teorii psychologii wychowawczej. Zagadnieniem tym zajmował się psycholog C. H. Judd. Według Judda możliwe jest osiągnięcie efektu przeniesienia wiedzy między dwoma różnymi sytuacjami pod warunkiem, że osoba ucząca się potrafi generalizować swoje doświadczenia. W praktyce ma to miejsce na przykład wtedy, gdy ktoś kto potrafi grać na skrzypcach uczy się gry na pianinie szybciej niż ludzie nieposiadający doświadczenia muzycznego. Skrzypce i pianino są instrumentami muzycznymi różniącymi się budową oraz sposobem korzystania. Gra na obu wymaga jednak wyczucia rytmu i taktu, które są cechami wspólnymi, potencjalnie możliwymi do przeniesienia. Analogia ta dobrze pokazuje jak działa transfer learning w uczeniu maszynowym. Rysunek 1 przedstawia kilka zainspirowanych życiem przykładów transferu wiedzy między różnymi domenami. Podobnie jak w przypadku uczenia maszynowego przeniesienie wiedzy z dziedziny źródłowej (ang. source domain) do dziedziny docelowej (ang. target domain) służy poprawie szybkości uczenia i minimalizuje ilość czasu potrzebną do opanowania zagadnienia.

Rysunek 2. Porównanie klasycznego uczenia maszynowego i transfer learningu.

Różnice między klasycznym uczeniem maszynowym, a uczeniem z wykorzystaniem przeniesienia wiedzy zilustrowane zostały na rysunku 2. W podejściu tradycyjnym (lewa strona) do każdego problemu podchodzi się w sposób izolowany. Modele uczone są do rozwiązania konkretnych problemów, a wiedza wydobyta w trakcie ich budowy pozostaje niedostępna dla innych zadań. Transfer (prawa strona) zakłada natomiast ponowne wykorzystanie wiedzy pozyskanej w trakcie rozwiązywania innych problemów.

Strategie i kategoryzacja transferu wiedzy

Można wyróżnić wiele strategii transfer learningu. Wybór i ich zastosowanie zależy od dziedziny oraz typu podejmowanego zadania, a także dostępności danych i zasobów obliczeniowych. Przed podjęciem decyzji na temat stosowanej strategii warto przemyśleć trzy aspekty badawcze:

  • Która część wiedzy może zostać przeniesiona z rozwiązania źródłowego żeby poprawić skuteczność rozwiązania docelowego?

  • Czy transfer wiedzy poprawi skuteczność docelowego rozwiązania, czy wręcz odwrotnie, spowoduje, że będzie ono mniej skuteczne, a więc wywoła zjawisko negatywnego transferu (ang. negative transfer)?

  • W jaki sposób przenieść wiedzę z modelu źródłowego bazując na docelowej dziedzinie i typie zadania?

 

kategoria

etykiety zadania źródłowego

etykiety zadania docelowego

induktywny transfer wiedzy

dostępne/niedostępne

dostępne

transduktywny transfer wiedzy

dostępne

niedostępne

nienadzorowany transfer wiedzy

niedostępne

niedostępne

Tabela 1. Kategoryzacja transferu wiedzy ze względu na dostępność etykiet danych.

W literaturze występuje kilka podejść do kategoryzacji transfer learningu. Jedno z nich zakłada podział skupiający się na dostępności etykiet danych i wyróżnia trzy kategorie przeniesienia wiedzy:

  • induktywne (ang. inductive)

  • transduktywne (ang. transductive)

  • nienadzorowane (ang. unsupervised)

Kiedy etykiety danych dostępne są zarówno w zadaniu źródłowym, jak i docelowym mówimy o transferze induktywnym. Przeniesienie transduktywne to sytuacja, gdy etykiety występują jedynie dla zadania źródłowego. Natomiast w przypadku przeniesienia nienadzorowanego dane nie posiadają żadnych etykiet.

Przeniesienie wiedzy w sieciach konwolucyjnych

Dalsza część artykułu skupia się na transferze induktywnym w uczeniu głębokim z wykorzystaniem konwolucyjnych sieci neuronowych (ang. convolutional neural network). W tym obszarze wyróżnia się dwa główne scenariusze zastosowania transfer learningu:

  • wykorzystanie pretrenowanej sieci jako ekstraktora cech (ang. feature extractor)

  • dostrojenie pretrenowanej sieci (ang. Fine-tuning)

Wykorzystanie sieci jako ekstraktora cech polega na użyciu zamrożonej konwolucyjnej części sieci bez jej warstw gęstych służących do klasyfikacji. W wyniku przepuszczenia danych z nowego zadania przez wyekstrahowaną część pretrenowanego modelu otrzymuje się kody konwolucyjne (ang. CNN codes). Powstałe kody stanowią reprezentację przekonwertowanych danych wsadowowych i są wkładem do nowego klasyfikatora.

W przypadku dostrajania sieci nie tylko podmienia się warstwy klasyfikacyjne pretrenowenego modelu (warstwy gęste), ale również ponownie aktualizuje jego wagi. Uaktualnienie parametrów może dotyczyć całej sieci lub jedynie jej części. W przypadku dostrajania należy pamiętać żeby współczynnik uczenia (ang. learning rate) nie był za wysoki. Stosując pretrenowany model zakładamy, że jego wagi są relatywnie dobre. Zbyt wysoki parametr uczenia mógłby spowodować ich silne zniekształcenie, a co za tym idzie utracić wcześniej wydobytą wiedzę.

Strategia przeniesienia wiedzy wykorzystuje ważną charakterystykę modeli konwolucyjnych. Głęboka sieć na przestrzeni kolejnych warstw uczy się na różnych poziomach abstrakcji. Warstwy wcześniejsze reprezentują generalne koncepty, jak na przykład różne typy krawędzi występujących w obrazach. Warstwy późniejsze natomiast skupiają się na bardziej złożonych obiektach, jak błotnik, reflektor, oko, ucho, nos i są specyficzne dla dziedziny podejmowanego zadania. W sytuacji transferu wiedzy w zadaniach mniej pokrewnych korzysta się z warstw wcześniejszych, a w zadaniach bardziej podobnych z warstw późniejszych.

W dziedzinie uczenia głębokiego możliwe jest tworzenie bardzo skutecznych modeli świetnie radzących sobie w obrębie jednego sprecyzowanego zadania. Przykładowo, utworzona sieć konwolucyjna, która z 99% prawdopodobieństwem wskazuje jaka marka samochodu jest na danym zdjęciu. Problem pojawia się w sytuacji, kiedy do rozpoznania trafia nowa marka auta, którego obrazy nie były załączone do zbioru treningowego. Samo zastosowanie starego modelu do klasyfikacji nowej marki znacząco obniżyłoby skuteczność modelu. Stary model dziedziczy obciążenie w postaci zbioru treningowego niezawierającego zdjęć nowych samochodów i nie jest wystarczająco dobrze zgeneralizowany. W tym miejscu pojawia się pole do zastosowania przeniesienia wiedzy.

Sposób w jaki wiedza z poprzednich sieci zostanie wykorzystana zależy od tego na ile pokrewne są dziedziny zadań i jak wyglądają zasilające je zbiory danych. Bazując na tych dwóch charakterystykach można wyznaczyć wstępne zalecenia, które pozwolą dobrać odpowiednią strategię do trensferu wiedzy:

  • zbiór danych zadania docelowego jest mały i dziedzinowo podobny do zbioru z zadania źródłowego – mały zbiór danych zwiększa ryzyko przeuczenia w przypadku strategii dostrajania, dlatego lepiej powinno sprawdzić się wykorzystanie sieci jako ekstraktora cech. Ponadto podobieństwo dziedzinowe zbiorów wskazuje na możliwość wykorzystania późniejszych warstw konwolucyjnych.

  • zbiór danych zadania docelowego jest duży i dziedzinowo podobny do zbioru z zadania źródłowego – duża ilość danych powinna uchronić przed nadmiernym dopasowaniem sieci. Podobnie jak wyżej, występuje możliwość korzystania z warstw przedstawiających bardziej złożone koncepty.

  • zbiór danych zadania docelowego jest mały i dziedzinowo różni się od zbioru z zadania źródłowego – na ogół skuteczniejsza powinna być ekstrakcja cech wykorzystująca wcześniejsze (uczące się bardziej generalnych idei) warstwy pretrenowanego modelu.

  • zbiór danych zadania docelowego jest duży i dziedzinowo różni się od zbioru z zadania źródłowego – duża ilość danych powinna pozwolić na dostrajanie całej sieci oraz dopasowanie jej do nowego typu wsadu.

Wspomniane strategie i podejścia to zaledwie przedsmak tego co oferuje szeroko rozumiany transfer wiedzy, którego popularność w dziedzinie uczenia głębokiego nabiera rozpędu. Podejście to pozwala na poprawienie jakości budowanych modeli, przyspieszenie czasu indywidualnych treningów, a w konsekwencji prowadzi do oszczędności zasobów obliczeniowych oraz zmniejszenia kosztów. W przypadku, gdy zbiór danych nie jest zbyt duży lub wiedza zawarta w danych nie wystarcza na stworzenie dobrze zgeneralizowanej sieci daje szansę na budowę skutecznego modelu. Transfer learning może być również konieczny jeśli myślimy o produkcjonalizacji i skalowaniu naszego rozwiązania.

Odpowiednie zaprojektowanie podejścia transferu zależy między innymi od ilości danych oraz ich podobieństwa do danych zadania źródłowego. Przeniesienie wiedzy nie jest zadaniem prostym. Wymaga dobrze zaplanowanych działań i wielu eksperymentów. Przed podjęciem decyzji na temat stosowanej strategii warto odpowiedzieć sobie na wspomniane wyżej pytania badawcze, które pomogą lepiej zrozumieć mocne i słabe strony możliwych rozwiązań.

Transfer Learning w różnych wariantach stosuje się obecnie w przypadku rozpoznawania obrazów i filmów, klasyfikacji tekstu i szeregów czasowych, wykrywania fraudów oraz wielu innych dziedzinach. Niezależnie czy motywacją jest skąpstwo, potrzeba przyspieszenia trenowania modeli, filozofia zero-waste czy zwyczajna chęć doskonalenia swoich rozwiązań, transfer learning jest zdecydowanie wart przetestowania.

Źródła:

Literatura naukowa:

  1. F. Zhuang et al., „A Comprehensive Survey on Transfer Learning,” in Proceedings of the IEEE, vol. 109, no. 1, pp. 43-76, Jan. 2021, doi: 10.1109/JPROC.2020.3004555.
  2. S. J. Pan and Q. Yang, „A Survey on Transfer Learning,” in IEEE Transactions on Knowledge and Data Engineering, vol. 22, no. 10, pp. 1345-1359, Oct. 2010, doi: 10.1109/TKDE.2009.191.
  3. R. Raina, A. Battle, H. Lee, B. Packer, A. Y. Ng, “Self-taught Learning: Transfer Learning from Unlabeled Data” in Proceedings of the 24th international conference on Machine Learning (ICML ’07). Association for Computing Machinery, New York, NY, USA, 759–766, doi: 10.1145/1273496.1273592.

Strony internetowe:

  1. https://en.wikipedia.org/wiki/Transfer_learning
  2. https://machinelearningmastery.com/transfer-learning-for-deep-learning/
  3. https://www.v7labs.com/blog/transfer-learning-guide
  4. https://cs231n.github.io/transfer-learning/
  5. https://ruder.io/transfer-learning/index.html#fn6

Symulacja Wyżarzania
Poprzedni aktykuł
Dni otwarte fabryki modeli
Następny artykuł

Digital Fingerprints © Copyright 2022
Created by <code-One>

Use Case

Bankowość i finanse
eCommerce i retail
Telekomunikacja i dostawcy mediów
Administracja
Opieka zdrowotna
Technologia i informatyka

Rozwiązania

Biometria behawioralna
Device Fingerprinting
PureSecure
MobileSecure
O nas
O grupie
Projekt unijny
Polityka prywatności
Kontakt

Digital Fingerprints S.A. ul. Żeliwna 38, 40-599 Katowice. KRS: 0000543443, Sąd Rejonowy Katowice-Wschód, VIII Wydział Gospodarczy, Kapitał zakładowy: 128 828,76 zł – opłacony w całości, NIP: 525-260-93-29

Biuro Informacji Kredytowej S.A., ul. Zygmunta Modzelewskiego 77a, 02-679 Warszawa. Numer KRS: 0000110015, Sąd Rejonowy m.st. Warszawy, XIII Wydział Gospodarczy, kapitał zakładowy 15.550.000 zł opłacony w całości, NIP: 951-177-86-33, REGON: 012845863.

Biuro Informacji Gospodarczej InfoMonitor S.A., ul. Zygmunta Modzelewskiego 77a, 02-679 Warszawa. Numer KRS: 0000201192, Sąd Rejonowy m.st. Warszawy, XIII Wydział Gospodarczy, kapitał zakładowy 7.105.000 zł opłacony w całości, NIP: 526-274-43-07, REGON: 015625240.

Zarządzaj zgodami plików cookie
Aby zapewnić jak najlepsze wrażenia, korzystamy z technologii, takich jak pliki cookie, do przechowywania i/lub uzyskiwania dostępu do informacji o urządzeniu. Zgoda na te technologie pozwoli nam przetwarzać dane, takie jak zachowanie podczas przeglądania lub unikalne identyfikatory na tej stronie. Brak wyrażenia zgody lub wycofanie zgody może niekorzystnie wpłynąć na niektóre cechy i funkcje.
Funkcjonalne Zawsze aktywne
Przechowywanie lub dostęp do danych technicznych jest ściśle konieczny do uzasadnionego celu umożliwienia korzystania z konkretnej usługi wyraźnie żądanej przez subskrybenta lub użytkownika, lub wyłącznie w celu przeprowadzenia transmisji komunikatu przez sieć łączności elektronicznej.
Preferencje
Przechowywanie lub dostęp techniczny jest niezbędny do uzasadnionego celu przechowywania preferencji, o które nie prosi subskrybent lub użytkownik.
Statystyka
Przechowywanie techniczne lub dostęp, który jest używany wyłącznie do celów statystycznych. Przechowywanie techniczne lub dostęp, który jest używany wyłącznie do anonimowych celów statystycznych. Bez wezwania do sądu, dobrowolnego podporządkowania się dostawcy usług internetowych lub dodatkowych zapisów od strony trzeciej, informacje przechowywane lub pobierane wyłącznie w tym celu zwykle nie mogą być wykorzystywane do identyfikacji użytkownika.
Marketing
Przechowywanie lub dostęp techniczny jest wymagany do tworzenia profili użytkowników w celu wysyłania reklam lub śledzenia użytkownika na stronie internetowej lub na kilku stronach internetowych w podobnych celach marketingowych.
Zarządzaj opcjami Zarządzaj serwisami Zarządzaj dostawcami Przeczytaj więcej o tych celach
Zobacz preferencje
{title} {title} {title}