Самокероване навчання

Самокеро́ване навча́ння (СКН, англ. self-supervised learning, SSL) — це парадигма машинного навчання для обробки даних нижчої якості, а не для покращення кінцевих результатів. Самокероване навчання точніше імітує те, як вчаться класифікувати об'єкти люди.[1]

Типовий метод СКН ґрунтується на штучній нейронній мережі або іншій моделі, як-от перелік рішень[en].[2] Модель навчається у два етапи. По-перше, завдання розв'язується на основі допоміжної або зачіпкової задачі класифікування з використанням псевдоміток, які допомагають встановити початковий стан параметрів моделі.[3][4] По-друге, фактичне завдання виконується з керованим або некерованим навчанням.[5][6][7] До інших допоміжних завдань належать доповнювання замаскованих вхідних образів (пауз тиші в мовленні або замаскованих чорним частин зображення).

Останніми роками самокероване навчання дало обнадійливі результати й знайшло практичне застосування в обробці звуку[en], і Facebook та інші використовують його для розпізнавання мовлення.[8]

Типи ред.

Для задачі бінарного класифікування тренувальні дані можливо розділити на позитивні та негативні приклади. Позитивні приклади — це ті, які відповідають меті. Наприклад, якщо ви вчитеся розпізнавати птахів, то позитивні тренувальні дані — це ті зображення, що містять птахів. Негативні приклади — ті, що не містять.[9]

Контрастове самокероване навчання ред.

Контрастове самокероване навчання (англ. contrastive self-supervised learning) використовує як позитивні, так і негативні приклади. Функція втрат контрастового навчання мінімізує відстань із позитивними зразками, водночас максимізуючи відстань із негативними.[9]

Неконтрастове самокероване навчання ред.

Неконтрастове самокероване навчання (НКСКН, англ. non-contrastive self-supervised learning, NCSSL) використовує лише позитивні приклади. Всупереч очікуванням, НКСКЛ збігається до корисного локального мінімуму, замість досягати тривіального розв'язку з нульовими втратами. Для прикладу бінарного класифікування воно навчилося би тривіально класифікувати кожен приклад як позитивний. Для ефективного НКСКН потрібен додатковий передбачувач з інтерактивного боку, який не має зворотного поширення з цільового боку.[9]

Порівняння з іншими видами машинного навчання ред.

СКН належить до методів керованого навчання, оскільки мета полягає у породженні класифікованого виходу із входу. Проте водночас воно не вимагає явного використання мічених пар входів-виходів. Натомість кореляції, вбудовані в дані метадані, та знання предметної області, присутні в даних входу, виділяються з даних неявно й автономно. Ці керівні сигнали, породжені з даних, можливо відтак використовувати для тренування.[1]

СКН подібне до некерованого навчання тим, що не потребує міток у зразках даних. Проте, на відміну від некерованого навчання, воно не здійснюється з використанням притаманних структур даних.

Напівкероване навчання поєднує кероване та некероване навчання, вимагаючи міченості[en] лише невеликої частини тренувальних даних.[4]

У передавальнім навчанні модель, розроблену для одного завдання, повторно використовують для іншого.[10]

Тренування автокодувальника за своєю суттю становить самокерований процес, оскільки образ на виході повинен стати оптимальною відбудовою власне образу на вході. Проте в сучасному жаргоні термін «самокероване» став асоціюватися із завданнями класифікування, які ґрунтуються на постановці тренування із зачіпковим завданням (англ. pretext task). Вона включає розробку (людиною) такого зачіпкового завдання (завдань), на відміну від випадку повністю самодостатнього тренування автокодувальника.[11]

У навчанні з підкріпленням самокероване навчання з поєднання втрат може створювати абстрактні подання, де у стисненому вигляді зберігається лише найважливіша інформація про стан.[12]

Приклади ред.

Самокероване навчання особливо підходить для розпізнавання мовлення. Наприклад, Facebook розробила самокерований алгоритм wav2vec для розпізнавання мовлення за допомогою двох глибоких згорткових нейронних мереж, які будуються одна з одної.[8]

Модель Bidirectional Encoder Representations from Transformers (двоспрямовані кодувальні подання з трансформерів, BERT) Google використовують для кращого розуміння контексту пошукових запитів.[13]

GPT-3 OpenAI — це авторегресійна мовна модель, яку можливо використовувати в обробці мови. Її можливо використовувати, серед іншого, для перекладу текстів та відповідей на питання.[14]

Bootstrap Your Own Latent («натягни своє власне латентне», BYOL) — це НКСКН, яке дало чудові результати в ImageNet[en], а також в еталонних передавальних та напівкерованих перевірках.[15]

Алгоритм Яровського[en] — це приклад самокерованого навчання в обробці природної мови. З невеликої кількості мічених прикладів він навчається передбачувати, в якому сенсі[en] вжито багатозначне слово в певному місці тексту.

DirectPred — це НКСКН, яке встановлює ваги передбачувачів безпосередньо, замість того, щоби навчатися їх за допомогою уточнення градієнтом.[9]

Примітки ред.

  1. а б Bouchard, Louis (25 листопада 2020). What is Self-Supervised Learning? | Will machines ever be able to learn like humans?. Medium (англ.). Процитовано 9 червня 2021.
  2. Yarowsky, David (1995). Unsupervised Word Sense Disambiguation Rivaling Supervised Methods. Proceedings of the 33rd Annual Meeting of the Association for Computational Linguistics (англ.). Cambridge, MA: Association for Computational Linguistics: 189—196. doi:10.3115/981658.981684. Процитовано 1 November 2022.
  3. Doersch, Carl; Zisserman, Andrew (October 2017). Multi-task Self-Supervised Visual Learning. 2017 IEEE International Conference on Computer Vision (ICCV) (англ.). IEEE. с. 2070—2079. arXiv:1708.07860. doi:10.1109/iccv.2017.226. ISBN 978-1-5386-1032-9. S2CID 473729.
  4. а б Beyer, Lucas; Zhai, Xiaohua; Oliver, Avital; Kolesnikov, Alexander (October 2019). S4L: Self-Supervised Semi-Supervised Learning. 2019 IEEE/CVF International Conference on Computer Vision (ICCV) (англ.). IEEE. с. 1476—1485. arXiv:1905.03670. doi:10.1109/iccv.2019.00156. ISBN 978-1-7281-4803-8. S2CID 167209887.
  5. Doersch, Carl; Gupta, Abhinav; Efros, Alexei A. (December 2015). Unsupervised Visual Representation Learning by Context Prediction. 2015 IEEE International Conference on Computer Vision (ICCV) (англ.). IEEE. с. 1422—1430. arXiv:1505.05192. doi:10.1109/iccv.2015.167. ISBN 978-1-4673-8391-2. S2CID 9062671.
  6. Zheng, Xin; Wang, Yong; Wang, Guoyou; Liu, Jianguo (April 2018). Fast and robust segmentation of white blood cell images by self-supervised learning. Micron (англ.). 107: 55—71. doi:10.1016/j.micron.2018.01.010. ISSN 0968-4328. PMID 29425969. S2CID 3796689.
  7. Gidaris, Spyros; Bursuc, Andrei; Komodakis, Nikos; Perez, Patrick Perez; Cord, Matthieu (October 2019). Boosting Few-Shot Visual Learning with Self-Supervision. 2019 IEEE/CVF International Conference on Computer Vision (ICCV) (англ.). IEEE. с. 8058—8067. arXiv:1906.05186. doi:10.1109/iccv.2019.00815. ISBN 978-1-7281-4803-8. S2CID 186206588.
  8. а б Wav2vec: State-of-the-art speech recognition through self-supervision. ai.facebook.com (англ.). Процитовано 9 червня 2021.
  9. а б в г Demystifying a key self-supervised learning technique: Non-contrastive learning. ai.facebook.com (англ.). Процитовано 5 жовтня 2021.
  10. Littwin, Etai; Wolf, Lior (June 2016). The Multiverse Loss for Robust Transfer Learning. 2016 IEEE Conference on Computer Vision and Pattern Recognition (CVPR) (англ.). IEEE. с. 3957—3966. arXiv:1511.09033. doi:10.1109/cvpr.2016.429. ISBN 978-1-4673-8851-1. S2CID 6517610.
  11. Kramer, Mark A. (1991). Nonlinear principal component analysis using autoassociative neural networks (PDF). AIChE Journal (англ.). 37 (2): 233—243. doi:10.1002/aic.690370209.
  12. Francois-Lavet, Vincent; Bengio, Yoshua; Precup, Doina; Pineau, Joelle (2019). Combined Reinforcement Learning via Abstract Representations. Proceedings of the AAAI Conference on Artificial Intelligence (англ.). arXiv:1809.04506.
  13. Open Sourcing BERT: State-of-the-Art Pre-training for Natural Language Processing. Google AI Blog (англ.). 2 листопада 2018. Процитовано 9 червня 2021.
  14. Wilcox, Ethan; Qian, Peng; Futrell, Richard; Kohita, Ryosuke; Levy, Roger; Ballesteros, Miguel (2020). Structural Supervision Improves Few-Shot Learning and Syntactic Generalization in Neural Language Models. Proceedings of the 2020 Conference on Empirical Methods in Natural Language Processing (EMNLP) (англ.). Stroudsburg, PA, USA: Association for Computational Linguistics: 4640—4652. arXiv:2010.05725. doi:10.18653/v1/2020.emnlp-main.375. S2CID 222291675.
  15. Grill, Jean-Bastien; Strub, Florian; Altché, Florent; Tallec, Corentin; Richemond, Pierre H.; Buchatskaya, Elena; Doersch, Carl; Pires, Bernardo Avila; Guo, Zhaohan Daniel; Azar, Mohammad Gheshlaghi; Piot, Bilal (10 вересня 2020). Bootstrap your own latent: A new approach to self-supervised Learning (англ.). arXiv:2006.07733 [cs.LG].

Література ред.

  • Balestriero, Randall; Ibrahim, Mark; Sobal, Vlad; Morcos, Ari; Shekhar, Shashank; Goldstein, Tom; Bordes, Florian; Bardes, Adrien; Mialon, Gregoire; Tian, Yuandong; Schwarzschild, Avi; Wilson, Andrew Gordon; Geiping, Jonas; Garrido, Quentin; Fernandez, Pierre (24 квітня 2023). A Cookbook of Self-Supervised Learning (англ.). arXiv:2304.12210 [cs.LG].

Посилання ред.