заглушки 10 найкращих алгоритмів машинного навчання (2024) - Unite.AI
Зв'язатися з нами

Best Of

10 найкращих алгоритмів машинного навчання

mm
оновлений on

Хоча ми переживаємо час надзвичайних інновацій у машинному навчанні з прискоренням GPU, останні дослідницькі статті часто (і помітно) містять алгоритми, яким десятиліття, а в деяких випадках 70 років.

Дехто може стверджувати, що багато з цих старих методів належать до «статистичного аналізу», а не до машинного навчання, і вважають за краще датувати появу сектора лише 1957 роком, з винайдення перцептрона.

З огляду на те, якою мірою ці старі алгоритми підтримують і заплутані в останніх тенденціях і привертають увагу розробках машинного навчання, це суперечлива позиція. Отже, давайте подивимося на деякі з «класичних» будівельних блоків, що лежать в основі останніх інновацій, а також на деякі нові записи, які роблять першу заявку на зал слави ШІ.

1: Трансформери

У 2017 році Google Research очолила дослідницьку співпрацю, кульмінацією якої стало папір Увага – це все, що вам потрібно. У творі була намічена нова архітектура, яка сприяла механізми уваги від «конвеєрів» у моделях кодера/декодера та рекурентних мереж до центральної трансформаційної технології самостійно.

Підхід був озвучений Трансформатор, і з тих пір стала революційною методологією в обробці природної мови (NLP), застосовуючи, серед багатьох інших прикладів, авторегресійну модель мови та штучний інтелект GPT-3.

Трансформери елегантно вирішили проблему трансдукція послідовності, також званий «перетворенням», який займається обробкою вхідних послідовностей у вихідні послідовності. Трансформатор також отримує та обробляє дані безперервно, а не послідовними пакетами, що забезпечує «постійність пам’яті», для отримання якої архітектури RNN не призначені. Для більш детального огляду трансформерів подивіться наша довідкова стаття.

На відміну від повторюваних нейронних мереж (RNN), які почали домінувати в дослідженнях машинного навчання в епоху CUDA, архітектуру Transformer також можна було легко паралельно, що відкриває шлях до продуктивної роботи з набагато більшим масивом даних, ніж RNN.

Популярне використання

Трансформери захопили уяву публіки у 2020 році випуском GPT-3 від OpenAI, який на той час мав рекордну кількість 175 мільярдів параметрів. Це, очевидно, приголомшливе досягнення, зрештою, було затьмарене пізнішими проектами, такими як проект 2021 року. звільнити Megatron-Turing NLG 530B від Microsoft, який (як випливає з назви) містить понад 530 мільярдів параметрів.

Хронологія гіпермасштабних NLP-проектів Transformer. Джерело: Microsoft

Хронологія гіпермасштабних NLP-проектів Transformer. джерело: Microsoft

Трансформаторна архітектура також перейшла від НЛП до комп’ютерного зору, забезпечуючи живлення a нове покоління фреймворків синтезу зображень, таких як OpenAI CLIP та DALL-E, які використовують відображення домену текст>зображення для завершення неповних зображень і синтезу нових зображень із навчених доменів серед зростаючої кількості пов’язаних програм.

DALL-E намагається завершити часткове зображення бюста Платона. Джерело: https://openai.com/blog/dall-e/

DALL-E намагається завершити часткове зображення бюста Платона. Джерело: https://openai.com/blog/dall-e/

2. Генеративні змагальні мережі (GAN)

Незважаючи на те, що трансформери отримали надзвичайне висвітлення в ЗМІ завдяки випуску та прийняттю GPT-3, Генеральна змагальна мережа (GAN) стала впізнаваним брендом сама по собі, і може з часом приєднатися глибокий розбір як дієслово.

Перший запропонований У 2014 і в основному використовується для синтезу зображень, Generative Adversarial Network архітектура складається з а Generator і Дискримінатор. Генератор перебирає тисячі зображень у наборі даних, постійно намагаючись їх реконструювати. Для кожної спроби Дискримінатор оцінює роботу Генератора та повертає Генератору, щоб він став кращим, але без будь-якого розуміння того, як помилилася попередня реконструкція.

Джерело: https://developers.google.com/machine-learning/gan/gan_structure

Джерело: https://developers.google.com/machine-learning/gan/gan_structure

Це змушує Генератор досліджувати безліч шляхів, замість того, щоб йти потенційними тупиками, які б утворилися, якби Дискримінатор сказав йому, де він пішов не так (див. №8 нижче). На момент завершення навчання Генератор має детальну та повну карту взаємозв’язків між точками в наборі даних.

Уривок із супровідного відео дослідників (див. вбудовування в кінці статті). Зауважте, що користувач маніпулює перетвореннями за допомогою курсора «захоплення» (верхній лівий кут). Джерело: https://www.youtube.com/watch?v=k7sG4XY5rIc

З паперу Покращення рівноваги GAN шляхом підвищення просторової обізнаності: новий фреймворк обертається іноді таємничим латентним простором GAN, забезпечуючи чутливий інструментарій для архітектури синтезу зображень. Джерело: https://genforce.github.io/eqgan/

За аналогією, це різниця між тим, щоб навчитися одній буднійній поїздці до центру Лондона чи старанним навчанням Знання.

Результатом є набір функцій високого рівня в прихованому просторі навченої моделі. Семантичним індикатором ознаки високого рівня може бути «людина», тоді як спуск через специфічність, пов’язану з ознакою, може виявити інші вивчені характеристики, такі як «чоловічий» і «жіночий». На нижчих рівнях суб-функції можуть розбиватися на «блондинка», «кавказька» тощо.

Заплутування є помітне питання у латентному просторі GAN та кодувальників/декодерів: посмішка на створеному GAN жіночому обличчі є заплутаною рисою її «ідентичності» в латентному просторі чи це паралельна гілка?

Обличчя цієї особи, створені GAN, не існують. Джерело: https://this-person-does-not-exist.com/en

Обличчя цієї особи, створені GAN, не існують. Джерело: https://this-person-does-not-exist.com/en

За останні кілька років було з’явилося все більше нових дослідницьких ініціатив у цьому відношенні, можливо, відкривши шлях для редагування на рівні функцій у стилі Photoshop для латентного простору GAN, але на даний момент багато трансформацій ефективно ' пакети "все або нічого". Примітно, що випуск EditGAN від NVIDIA наприкінці 2021 року досягає a високий рівень інтерпретованості в латентному просторі за допомогою масок семантичної сегментації.

Популярне використання

Окрім участі (насправді досить обмеженого) у популярних відеороликах deepfake, GAN, орієнтовані на зображення/відео, поширилися протягом останніх чотирьох років, захоплюючи дослідників і громадськість. Не відставати від запаморочливої ​​швидкості та частоти нових випусків є викликом, хоча репозиторій GitHub Чудові програми GAN має на меті надати вичерпний список.

Теоретично генеративні суперницькі мережі можуть отримувати функції з будь-якого чітко оформленого домену, включаючи текст.

3: SVM

Породжений У 1963, Підтримка векторної машини (SVM) — це основний алгоритм, який часто виникає в нових дослідженнях. У SVM вектори відображають відносне розташування точок даних у наборі даних, а підтримка вектори окреслюють межі між різними групами, особливостями чи ознаками.

Опорні вектори визначають межі між групами. Джерело: https://www.kdnuggets.com/2016/07/support-vector-machines-simple-explanation.html

Опорні вектори визначають межі між групами. Джерело: https://www.kdnuggets.com/2016/07/support-vector-machines-simple-explanation.html

Похідна межа називається а гіперплощина.

На низьких рівнях функцій SVM є двовимірний (зображення вище), але там, де існує більша кількість розпізнаних груп або типів, вона стає тривимірний.

Більш глибокий масив точок і груп потребує тривимірної SVM. Джерело: https://cml.rhul.ac.uk/svm.html

Більш глибокий масив точок і груп потребує тривимірної SVM. Джерело: https://cml.rhul.ac.uk/svm.html

Популярне використання

Оскільки допоміжні векторні машини можуть ефективно та агностично адресувати багатовимірні дані багатьох видів, вони широко поширені в різноманітних секторах машинного навчання, у тому числі виявлення глибоких фейків, класифікація зображень, класифікація мови ворожнечі, ДНК-аналіз та прогнозування структури населення, Серед багатьох інших.

4: Кластеризація K-середніх

Кластеризація загалом є непідконтрольне навчання підхід, який прагне класифікувати точки даних за допомогою оцінка щільності, створюючи карту розподілу досліджуваних даних.

K-означає кластеризацію божественних сегментів, груп і спільнот у даних. Джерело: https://aws.amazon.com/blogs/machine-learning/k-means-clustering-with-amazon-sagemaker/

K-означає кластеризацію божественних сегментів, груп і спільнот у даних. Джерело: https://aws.amazon.com/blogs/machine-learning/k-means-clustering-with-amazon-sagemaker/

Кластеризація K-середніх стала найпопулярнішою реалізацією цього підходу, розподіляючи точки даних у характерні «К-групи», які можуть вказувати на демографічні сектори, онлайн-спільноти або будь-яке інше можливе таємне агрегування, яке очікує на відкриття в необроблених статистичних даних.

Кластери формуються в аналізі K-Means. Джерело: https://www.geeksforgeeks.org/ml-determine-the-optimal-value-of-k-in-k-means-clustering/

Кластери формуються в аналізі K-Means. Джерело: https://www.geeksforgeeks.org/ml-determine-the-optimal-value-of-k-in-k-means-clustering/

Саме значення K є визначальним фактором корисності процесу та встановлення оптимального значення для кластера. Спочатку значення K призначається випадковим чином, а його характеристики та векторні характеристики порівнюються з сусідніми. Ті сусіди, які найбільше нагадують точку даних із випадково призначеним значенням, призначаються до її кластера ітеративно, доки дані не дадуть усіх групувань, які дозволяє процес.

Графік квадратичної помилки або «вартості» різних значень серед кластерів покаже ліктьова точка для даних:

«Точка ліктя» на кластерному графіку. Джерело: https://www.scikit-yb.org/en/latest/api/cluster/elbow.html

«Точка ліктя» на кластерному графіку. Джерело: https://www.scikit-yb.org/en/latest/api/cluster/elbow.html

Точка ліктя подібна за концепцією до того, як втрати зводяться до зменшення віддачі в кінці сеансу навчання для набору даних. Він представляє точку, в якій більше не стане очевидною відмінність між групами, вказуючи на момент переходу до наступних етапів конвеєра даних або звіту про результати.

Популярне використання

Зі зрозумілих причин K-Means Clustering є основною технологією в аналізі клієнтів, оскільки вона пропонує чітку та зрозумілу методологію для перетворення великої кількості комерційних записів у демографічні дані та «ліди».

За межами цієї програми також використовується кластеризація K-Means прогнозування зсувів, сегментація медичного зображення, синтез зображення з GAN, класифікація документів та містобудування, серед багатьох інших потенційних і реальних застосувань.

5: Випадковий ліс

Випадковий ліс - це ансамблеве навчання метод, який усереднює результат із масиву дерева рішень для встановлення загального прогнозу результату.

Джерело: https://www.tutorialandexample.com/wp-content/uploads/2019/10/Decision-Trees-Root-Node.png

Джерело: https://www.tutorialandexample.com/wp-content/uploads/2019/10/Decision-Trees-Root-Node.png

Якщо ви досліджували це навіть так мало, як переглядаючи Назад в майбутнє Трилогія, саме дерево рішень досить легко концептуалізувати: перед вами лежить кілька шляхів, і кожен шлях розгалужується до нового результату, який, у свою чергу, містить подальші можливі шляхи.

In навчання, ви можете відступити від шляху та почати знову з попередньої позиції, тоді як дерева рішень зобов’язуються продовжувати свої подорожі.

Таким чином, алгоритм Random Forest, по суті, є ставкою на спред для рішень. Алгоритм називається "випадковим", оскільки він робить спеціальний вибірки та спостереження, щоб зрозуміти медіана сума результатів з масиву дерева рішень.

Оскільки він враховує безліч факторів, підхід випадкового лісу може бути важче перетворити на значущі графіки, ніж дерево рішень, але, ймовірно, він буде значно продуктивнішим.

Дерева рішень підлягають переобладнанню, коли отримані результати є специфічними для даних і не мають узагальнення. Довільний вибір точок даних Random Forest бореться з цією тенденцією, детально досліджуючи значущі та корисні репрезентативні тенденції в даних.

Регресія дерева рішень. Джерело: https://scikit-learn.org/stable/auto_examples/tree/plot_tree_regression.html

Регресія дерева рішень. Джерело: https://scikit-learn.org/stable/auto_examples/tree/plot_tree_regression.html

Популярне використання

Як і багато інших алгоритмів у цьому списку, Random Forest зазвичай працює як «ранній» сортувальник і фільтр даних, і як такий постійно з’являється в нових наукових роботах. Деякі приклади використання випадкового лісу включають Магнітно-резонансний синтез зображення, Прогноз цін на біткойн, сегментація перепису, класифікація тексту та виявлення шахрайства з кредитними картками.

Оскільки Random Forest є низькорівневим алгоритмом в архітектурах машинного навчання, він також може сприяти продуктивності інших низькорівневих методів, а також алгоритмів візуалізації, у тому числі Індуктивна кластеризація, Трансформації функцій, класифікація текстових документів використання розріджених функцій та відображення трубопроводів.

6: Наївний Байєс

У поєднанні з оцінкою щільності (див 4, вище), a наївний Байєс Класифікатор — це потужний, але відносно легкий алгоритм, здатний оцінювати ймовірності на основі обчислених характеристик даних.

Відносини ознак у простому класифікаторі Байєса. Джерело: https://www.sciencedirect.com/topics/computer-science/naive-bayes-model

Відносини ознак у простому класифікаторі Байєса. Джерело: https://www.sciencedirect.com/topics/computer-science/naive-bayes-model

Термін «наївний» відноситься до припущення в Теорема Байєса що функції не пов’язані, відомі як умовна незалежність. Якщо ви приймете цю точку зору, ходити та говорити, як качка, недостатньо, щоб переконатися, що ми маємо справу з качкою, і жодні «очевидні» припущення не приймаються передчасно.

Такий рівень академічної та дослідницької ретельності був би надмірним, якщо доступний «здоровий глузд», але він є цінним стандартом під час проходження багатьох неоднозначностей і потенційно непов’язаних кореляцій, які можуть існувати в наборі даних машинного навчання.

В оригінальній байєсівській мережі функції підлягають скорингові функції, включаючи мінімальну довжину опису та Байєсівська оцінка, що може накладати обмеження на дані з точки зору передбачуваних зв’язків, знайдених між точками даних, і напрямку, в якому ці зв’язки протікають.

Наївний класифікатор Байєса, навпаки, працює, припускаючи, що ознаки даного об’єкта незалежні, згодом використовуючи теорему Байєса для обчислення ймовірності даного об’єкта на основі його характеристик.

Популярне використання

Наївні фільтри Байєса добре представлені в прогноз захворювання та категоризація документів, фільтрація спаму, класифікація настроїв, рекомендаційні системи та виявлення шахрайства, серед інших додатків.

7: K- найближчі сусіди (KNN)

Вперше запропоновано Школою авіаційної медицини ВПС США У 1951, і змушений пристосуватися до найсучаснішого комп’ютерного обладнання середини 20 століття, K-найближчі сусіди (KNN) — це економічний алгоритм, який досі займає важливе місце в академічних статтях і дослідницьких ініціативах машинного навчання в приватному секторі.

KNN називають «ледачим учнем», оскільки він ретельно сканує набір даних, щоб оцінити зв’язки між точками даних, замість того, щоб вимагати навчання повноцінної моделі машинного навчання.

Угруповання KNN. Джерело: https://scikit-learn.org/stable/modules/neighbors.html

Угруповання KNN. Джерело: https://scikit-learn.org/stable/modules/neighbors.html

Незважаючи на те, що KNN має струнку архітектуру, його системний підхід вимагає значних операцій читання/запису, і його використання у дуже великих наборах даних може бути проблематичним без додаткових технологій, таких як аналіз основних компонентів (PCA), які можуть трансформувати складні та великі набори даних. в представницькі угруповання що KNN може пройти з меншими зусиллями.

A Недавнє дослідження оцінив ефективність та економічність низки алгоритмів, яким було поставлено завдання передбачити, чи звільниться працівник з компанії, виявивши, що сімдесятирічний KNN залишався вищим за більш сучасні суперники з точки зору точності та ефективності прогнозування.

Популярне використання

Попри всю свою популярну простоту концепції та виконання, KNN не застряг у 1950-х роках – його було адаптовано до більш орієнтований на DNN підхід у пропозиції 2018 року Університету штату Пенсільванія, і залишається центральним процесом ранньої стадії (або аналітичним інструментом постобробки) у багатьох набагато складніших структурах машинного навчання.

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

Система розпізнавання обличчя на основі KNN у навчанні. Джерело: https://pdfs.semanticscholar.org/6f3d/d4c5ffeb3ce74bf57342861686944490f513.pdf

Система розпізнавання обличчя на основі KNN у навчанні. Source: https://pdfs.semanticscholar.org/6f3d/d4c5ffeb3ce74bf57342861686944490f513.pdf

8: Марковський процес прийняття рішень (MDP)

Математична основа, представлена ​​американським математиком Річардом Беллманом У 1957, Марковський процес прийняття рішень (MDP) є одним із основних блоків навчання архітектури. Концептуальний алгоритм сам по собі, він був адаптований до великої кількості інших алгоритмів і часто повторюється в поточних дослідженнях AI/ML.

MDP досліджує середовище даних, використовуючи оцінку його поточного стану (тобто «де» воно знаходиться в даних), щоб вирішити, який вузол даних досліджувати наступним.

Джерело: https://www.sciencedirect.com/science/article/abs/pii/S0888613X18304420

Джерело: https://www.sciencedirect.com/science/article/abs/pii/S0888613X18304420

Базовий марковський процес прийняття рішень віддасть пріоритет короткостроковій перевагі над більш бажаними довгостроковими цілями. З цієї причини воно зазвичай вбудовується в контекст більш комплексної архітектури політики навчання з підкріпленням і часто піддається обмежуючим факторам, таким як винагорода зі знижкоюта інші модифікуючі змінні навколишнього середовища, які перешкоджатимуть поспішному досягненню найближчої мети без урахування ширшого бажаного результату.

Популярне використання

Концепція низького рівня MDP широко поширена як у дослідженнях, так і в активному розгортанні машинного навчання. Це було запропоновано для Системи захисту безпеки IoT, вилов риби та прогнозування ринку.

Крім свого очевидна застосовність для шахів та інших суворо послідовних ігор, MDP також є природним претендентом на процедурне навчання робототехнічних систем, як ми бачимо на відео нижче.

Глобальний планувальник із використанням марковського процесу прийняття рішень – мобільна промислова робототехніка

 

9: Частота терміну – зворотна частота документа

Термін Частота (TF) ділить кількість разів, коли слово з’являється в документі, на загальну кількість слів у цьому документі. Таким чином слово запечатати який з’являється один раз у статті з тисячі слів, має частоту термінів 0.001. Сам по собі TF є марним індикатором важливості терміна через те, що безглузді статті (наприклад, a, та , та it) переважають.

Щоб отримати значуще значення для терміна, Inverse Document Frequency (IDF) обчислює TF слова в кількох документах у наборі даних, призначаючи низьку оцінку дуже високій частоті стоп-слова, наприклад статті. Отримані вектори ознак нормалізуються до цілих значень, причому кожному слову присвоюється відповідна вага.

TF-IDF оцінює релевантність термінів на основі їх частоти в ряді документів, причому рідше трапляється показник помітності. Джерело: https://moz.com/blog/inverse-document-frequency-and-the-importance-of-uniqueness

TF-IDF оцінює релевантність термінів на основі їх частоти в ряді документів, причому рідше трапляється показник помітності. Джерело: https://moz.com/blog/inverse-document-frequency-and-the-importance-of-uniqueness

Хоча такий підхід запобігає втраті семантично важливих слів чужинці, інвертування частотної ваги не означає автоматично, що низькочастотний термін є НЕ випадок, тому що деякі речі є рідкісними та нічого не варто. Тому термін з низькою частотою потребує довести свою цінність у ширшому архітектурному контексті, показуючи (навіть з низькою частотою на документ) у кількох документах у наборі даних.

Незважаючи на своє вікTF-IDF є потужним і популярним методом для початкових проходів фільтрації в рамках обробки природної мови.

Популярне використання

Оскільки TF-IDF зіграв принаймні певну роль у розробці значною мірою окультного алгоритму PageRank Google за останні двадцять років, він став дуже широко прийнятий як маніпулятивну тактику SEO, незважаючи на 2019 рік Джона Мюллера відмова його важливості для результатів пошуку.

Через секретність PageRank немає чітких доказів того, що TF-IDF є НЕ наразі ефективна тактика для підвищення в рейтингу Google. Запальна обговорення серед ІТ-фахівців останнім часом вказує на поширене розуміння, правильне чи ні, що зловживання терміном може призвести до покращення розміщення SEO (хоча додаткові звинувачення у зловживанні монополією та надмірна реклама розмиває межі цієї теорії).

10: Стохастичний градієнтний спуск

Стохастичний градієнтний спуск (SGD) стає все більш популярним методом оптимізації навчання моделей машинного навчання.

Градієнтний спуск сам по собі є методом оптимізації та подальшої кількісної оцінки вдосконалення моделі під час навчання.

У цьому сенсі «градієнт» вказує на нахил вниз (а не градацію на основі кольорів, див. зображення нижче), де найвища точка «пагорба» ліворуч представляє початок процесу тренування. На цьому етапі модель ще не бачила всіх даних жодного разу та не вивчила достатньо про зв’язки між даними, щоб здійснювати ефективні перетворення.

Градієнтний спуск під час навчання FaceSwap. Ми бачимо, що тренування деякий час досягло плато в другій половині, але зрештою відновилося вниз по градієнту до прийнятної конвергенції.

Градієнтний спуск під час навчання FaceSwap. Ми бачимо, що тренування деякий час досягло плато в другій половині, але зрештою відновилося вниз по градієнту до прийнятної конвергенції.

Найнижча точка, праворуч, представляє конвергенцію (точку, в якій модель настільки ефективна, наскільки вона коли-небудь збирається потрапити в рамках накладених обмежень і налаштувань).

Градієнт діє як запис і предиктор невідповідності між частотою помилок (наскільки точно модель наразі відобразила зв’язки даних) і вагами (налаштуваннями, які впливають на спосіб навчання моделі).

Цей запис прогресу можна використовувати для інформування a розклад курсу навчання, автоматичний процес, який повідомляє архітектурі, щоб вона ставала більш детальною та точною, оскільки перші нечіткі деталі перетворюються на чіткі зв’язки та відображення. По суті, втрата градієнта забезпечує своєчасну карту того, куди має йти навчання та як воно має відбуватися.

Інновація стохастичного градієнтного спуску полягає в тому, що він оновлює параметри моделі на кожному прикладі навчання за ітерацію, що загалом пришвидшує шлях до конвергенції. Завдяки появі гіпермасштабованих наборів даних останнім часом SGD набув популярності як один із можливих методів вирішення наступних логістичних проблем.

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

Популярне використання

Завдяки своїй конфігурованості та, незважаючи на свої недоліки, SGD став найпопулярнішим алгоритмом оптимізації для підгонки нейронних мереж. Однією з конфігурацій SGD, яка стає домінуючою в нових дослідницьких роботах AI/ML, є вибір оцінки адаптивного моменту (ADAM, представлений У 2015) оптимізатор.

ADAM динамічно адаптує швидкість навчання для кожного параметра («адаптивна швидкість навчання»), а також включає результати попередніх оновлень у наступну конфігурацію («імпульс»). Крім того, його можна налаштувати для використання пізніших інновацій, як-от Нестеров Імпульс.

Однак деякі стверджують, що використання імпульсу також може прискорити ADAM (і подібні алгоритми) до a неоптимальний висновок. Як і у випадку з більшістю дослідницького сектору машинного навчання, робота над SGD ще триває.

 

Вперше опубліковано 10 лютого 2022 р. Змінено 10 лютого 20.05 EET – форматування.