Как се учи изкуственият интелект?

Как се учи изкуственият интелект?

„Как учи изкуственият интелект?“ , това ръководство разкрива основните идеи на разбираем език – с примери, малки отклонения и няколко несъвършени метафори, които все пак донякъде помагат. Нека да се задълбочим. 🙂

Статии, които може да ви харесат да прочетете след това:

🔗 Какво е предсказуем изкуствен интелект
Как прогнозните модели прогнозират резултатите, използвайки исторически данни и данни в реално време.

🔗 Кои индустрии ще промени ИИ
Секторите най-вероятно ще бъдат трансформирани от автоматизация, анализи и агенти.

🔗 Какво означава GPT
Ясно обяснение на акронима GPT и произхода му.

🔗 Какво представляват уменията за изкуствен интелект
Основни компетенции за изграждане, внедряване и управление на системи с изкуствен интелект.


И така, как се случва? ✅

Когато хората питат „Как учи изкуственият интелект?“ , те обикновено имат предвид: как моделите стават полезни, вместо просто фантастични математически играчки. Отговорът е рецепта:

  • Ясна цел - функция на загубата, която определя какво означава „добро“. [1]

  • Качествени данни - разнообразни, ясни и релевантни. Количеството помага; разнообразието помага още повече. [1]

  • Стабилна оптимизация - градиентно спускане с трикове за избягване на падане от скала. [1], [2]

  • Генерализация - успех с нови данни, не само с обучителния набор. [1]

  • Обратна връзка - оценка, анализ на грешки и итерация. [2], [3]

  • Безопасност и надеждност - предпазни мерки, тестване и документация, за да не се стигне до хаос. [4]

За достъпни основи, класическият текст за дълбоко обучение, визуално ориентираните бележки от курса и практическият ускорен курс обхващат основните неща, без да ви затрупват със символи. [1]–[3]


Как се учи изкуственият интелект? Краткият отговор на разбираем английски ✍️

Един ИИ модел започва със случайни стойности на параметрите. Той прави прогноза. Вие оценявате тази прогноза със загуба . След това променяте тези параметри, за да намалите загубата, използвайки градиенти . Повтаряйте този цикъл в много примери, докато моделът спре да се подобрява (или ви свършат закуските). Това е цикълът на обучение на един дъх. [1], [2]

Ако искате малко по-голяма прецизност, вижте разделите за градиентно спускане и обратно разпространение по-долу. За бърза и лесно смилаема информация, кратки лекции и лабораторни упражнения са широко достъпни. [2], [3]


Основи: данни, цели, оптимизация 🧩

  • Данни : Входни данни (x) и цели (y). Колкото по-обширни и по-чисти са данните, толкова по-голям е шансът ви за обобщение. Курирането на данни не е бляскаво, но е невъзпят герой. [1]

  • Модел : Функция (f_\theta(x)) с параметри (\theta). Невронните мрежи са подредби от прости единици, които се комбинират по сложни начини - тухлички от Лего, но по-меки. [1]

  • Цел : Загуба (L(f_\theta(x), y)), която измерва грешката. Примери: средноквадратична грешка (регресия) и кръстосана ентропия (класификация). [1]

  • Оптимизация : Използвайте (стохастичен) градиентен спуск за актуализиране на параметрите: (\theta \leftarrow \theta - \eta \nabla_\theta L). Скоростта на обучение (\eta): твърде голяма и подскачате; твърде малка и дремвате завинаги. [2]

За ясно въведение във функциите на загуба и оптимизацията, класическите бележки за трикове и капани за обучение са чудесен начин за преглед. [2]


Контролирано обучение: учете се от обозначени примери 🎯

Идея : Покажете на модела двойките вход и верен отговор. Моделът научава съпоставяне (x \rightarrow y).

  • Често срещани задачи : класификация на изображения, анализ на настроенията, таблично прогнозиране, разпознаване на реч.

  • Типични загуби : кръстосана ентропия за класификация, средноквадратична грешка за регресия. [1]

  • Капани : шум от етикети, дисбаланс на класове, изтичане на данни.

  • Корекции : стратифицирано вземане на проби, стабилни загуби, регуларизация и по-разнообразно събиране на данни. [1], [2]

Въз основа на десетилетия на бенчмаркове и производствена практика, контролираното обучение остава най-подходящият инструмент, защото резултатите са предвидими, а показателите са ясни. [1], [3]


Самостоятелно и самостоятелно обучение: научете структурата на данните 🔍

Без надзор се учи на модели без етикети.

  • Клъстериране : групирането на подобни точки — k-средни стойности е просто и изненадващо полезно.

  • Намаляване на размерността : компресиране на данните до основни посоки – PCA е инструментът за вход.

  • Моделиране на плътност/генеративно моделиране : изучаване на самото разпределение на данните. [1]

Самостоятелното наблюдение е съвременният двигател: моделите създават собствено наблюдение (маскирано предсказване, контрастно обучение), което ви позволява да тренирате предварително върху океани от немаркирани данни и да ги настройвате по-късно. [1]


Обучение с подсилване: учете се чрез правене и получаване на обратна връзка 🕹️

Агентът взаимодейства със среда , получава награди и научава политика , която максимизира дългосрочната награда.

  • Основни елементи : състояние, действие, награда, политика, ценностна функция.

  • Алгоритми : Q-обучение, градиенти на политики, актьор-критик.

  • Проучване срещу експлоатация : опитвайте нови неща или използвайте повторно това, което работи.

  • Присвояване на кредит : кое действие е довело до какъв резултат?

Човешката обратна връзка може да насочва обучението, когато наградите са хаотични – класирането или предпочитанията помагат за оформянето на поведението, без да се кодира ръчно перфектната награда. [5]


Дълбоко обучение, обратно пропиране и градиентен спускане - биещото сърце 🫀

Невронните мрежи са композиции от прости функции. За да се учат, те разчитат на обратно разпространение :

  1. Напредно преминаване : изчисляване на прогнози от входните данни.

  2. Загуба : измерване на грешката между прогнозите и целите.

  3. Обратно преминаване : прилага се верижното правило, за да се изчислят градиентите на загубата спрямо всеки параметър.

  4. Актуализация : настройте параметрите спрямо градиента, използвайки оптимизатор.

Варианти като momentum, RMSProp и Adam правят обучението по-малко темпераментно. Методите за регуларизация, като dropout , weight decay и ранно спиране, помагат на моделите да обобщават, вместо да ги запомнят. [1], [2]


Трансформърс и внимание: защо съвременните модели се чувстват умни 🧠✨

Трансформаторите замениха много повтарящи се настройки в езика и визията. Ключовият трик е самовниманието , което позволява на модела да претегля различни части от входните си данни в зависимост от контекста. Позиционните кодирания управляват реда, а многоглавото внимание позволява на модела да се фокусира върху различни взаимоотношения едновременно. Мащабирането - по-разнообразни данни, повече параметри, по-дълго обучение - често помага, с намаляваща възвръщаемост и нарастващи разходи. [1], [2]


Генерализация, свръхнапасване и танцът на отклонението и дисперсията 🩰

Един модел може да се справи отлично с обучителния набор и въпреки това да се провали в реалния свят.

  • Преобучение : запаметява шума. Грешката при обучение е намаляла, грешката при тестване е нагоре.

  • Недостатъчно напасване : твърде просто; пропуска сигнала.

  • Компромис между отклонение и дисперсия : сложността намалява отклонението, но може да увеличи дисперсията.

Как да обобщаваме по-добре:

  • По-разнообразни данни - различни източници, области и гранични случаи.

  • Регуларизация - отпадане, намаляване на теглото, увеличаване на данните.

  • Правилна валидация - чисти тестови набори, кръстосана валидация за малки данни.

  • Мониторинг на дрейфа - разпределението на данните ви ще се променя с течение на времето.

Практиката, осъзнаваща риска, ги определя като дейности по целия жизнен цикъл – управление, картографиране, измерване и управление, а не като еднократни контролни списъци. [4]


Показатели, които имат значение: как знаем, че обучението се е случило 📈

  • Класификация : точност, прецизност, пълнота на отчитане, F1, ROC AUC. Небалансираните данни изискват криви на прецизност-пълнота на отчитане. [3]

  • Регресия : MSE, MAE, (R^2). [1]

  • Класиране/извличане : MAP, NDCG, recall@K. [1]

  • Генеративни модели : объркване (език), BLEU/ROUGE/CIDEr (текст), CLIP-базирани оценки (мултимодални) и - от решаващо значение - човешки оценки. [1], [3]

Изберете показатели, които съответстват на въздействието върху потребителите. Дори и малко подобрение в точността може да е без значение, ако истинската цена са фалшивите положителни резултати. [3]


Работен процес на обучение в реалния свят: прост план 🛠️

  1. Формулирайте проблема - дефинирайте входни данни, изходни данни, ограничения и критерии за успех.

  2. Канва на данни - събиране, етикетиране, почистване, разделяне, допълване.

  3. Базова линия - започнете просто; линейните или дървовидните базови линии са шокиращо конкурентни.

  4. Моделиране - опитайте няколко семейства: градиентно-усилени дървета (таблични), CNN (изображения), трансформатори (текст).

  5. Обучение - график, стратегии за скорост на обучение, контролни точки, смесена прецизност, ако е необходимо.

  6. Оценка - аблации и анализ на грешките. Разгледайте грешките, не само средната стойност.

  7. Разгръщане - конвейер за извод, наблюдение, регистриране, план за връщане към предишни промени.

  8. Итерация - по-добри данни, фина настройка или промени в архитектурата.

Мини случай : проект за класификатор на имейли започна с проста линейна базова линия, след което предварително обучен трансформатор беше прецизиран. Най-голямата победа не беше моделът, а затягането на рубриките за етикетиране и добавянето на недостатъчно представени „гранични“ категории. След като те бяха обхванати, валидирането F1 най-накрая проследи реалната производителност. (Вашето бъдещо аз: много съм благодарен.)


Качество на данните, етикетиране и финото изкуство да не лъжеш себе си 🧼

Боклукът е вътре, съжалението е навън. Указанията за етикетиране трябва да бъдат последователни, измерими и преразглеждани. Съгласието между анотаторите е важно.

  • Напишете рубрики с примери, категорични случаи и решения за решаване на тайбрека.

  • Одитирайте наборите от данни за дубликати и почти дубликати.

  • Проследете произхода - откъде е всеки пример и защо е включен.

  • Измерете покритието на данните спрямо реални потребителски сценарии, а не само спрямо чист бенчмарк.

Те се вписват идеално в по-широки рамки за осигуряване и управление, които можете реално да приложите на практика. [4]


Трансфер на обучение, фина настройка и адаптери - използвайте повторно тежката работа ♻️

Предварително обучените модели изучават общи представяния; фината настройка ги адаптира към вашата задача с по-малко данни.

  • Извличане на характеристики : замразяване на гръбначния стълб, трениране на малка глава.

  • Пълна фина настройка : актуализирайте всички параметри за максимален капацитет.

  • Параметрично ефективни методи : адаптери, нискорангови актуализации в стил LoRA - подходящи, когато изчислителните мощности са ограничени.

  • Адаптация на домейн : подравняване на вгражданията в различните домейни; малки промени, големи ползи. [1], [2]

Този модел на повторно използване е причината съвременните проекти да могат да се развиват бързо без героични бюджети.


Безопасност, надеждност и подравняване - задължителните елементи 🧯

Ученето не е само въпрос на точност. Искате също така модели, които са надеждни, справедливи и съобразени с предназначението.

  • Устойчивост на враждебност : малки смущения могат да заблудят моделите.

  • Пристрастие и справедливост : измервайте представянето на подгрупите, а не само общите средни стойности.

  • Интерпретируемост : приписването на характеристиките и сондирането ви помагат да разберете защо .

  • Човекът в цикъла : пътища за ескалация за двусмислени или силно въздействащи решения. [4], [5]

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


Често задавани въпроси за една минута - бърз огън ⚡

  • И така, как всъщност се учи изкуственият интелект? Чрез итеративна оптимизация срещу загуба, с градиенти, насочващи параметрите към по-добри прогнози. [1], [2]

  • Винаги ли помагат повече данни? Обикновено, докато възвръщаемостта намалява. Разнообразието често е по-добро от суровия обем. [1]

  • Ами ако етикетите са объркани? Използвайте методи, устойчиви на шум, по-добри рубрики и помислете за самостоятелно предварително обучение. [1]

  • Защо трансформаторите доминират? Вниманието се мащабира добре и обхваща дългосрочни зависимости; инструментариумът е зрял. [1], [2]

  • Как да разбера, че съм приключил с обучението? Загубата на валидация се стабилизира, показателите се стабилизират и новите данни се държат според очакванията - след това следете за отклонения. [3], [4]


Сравнителна таблица - инструменти, които всъщност можете да използвате днес 🧰

Леко странно нарочно. Цените са за основни библиотеки - обучението в голям мащаб очевидно има разходи за инфраструктура.

Инструмент Най-добро за Цена Защо работи добре
PyTorch Изследователи, строители Безплатно - отворен src Динамични графики, силна екосистема, страхотни уроци.
TensorFlow Производствени екипи Безплатно - отворен src Зряло обслужване, TF Lite за мобилни устройства; голяма общност.
scikit-learn Таблични данни, базови стойности Безплатно Чист API, бърз за итерация, страхотна документация.
Керас Бързи прототипи Безплатно API на високо ниво върху TF, четими слоеве.
JAX Потребители с опит, изследвания Безплатно Автоматична векторизация, XLA скорост, елегантни математически вибрации.
Трансформърс за прегръщащи лица НЛП, зрение, аудио Безплатно Предварително обучени модели, лесна фина настройка, страхотни хъбове.
Светкавица Работни процеси за обучение Свободно ядро Структура, регистриране, включени батерии за множество графични процесори.
XGBoost Табличен състезателен Безплатно Силни базови линии, често печелят при структурирани данни.
Тежести и отклонения Проследяване на експерименти Безплатно ниво Възпроизводимост, сравняване на изпълнения, по-бързи цикли на обучение.

Авторитетни документи, с които да започнете: PyTorch, TensorFlow и ръководството за потребителя на scikit-learn. (Изберете едно, създайте нещо малко, итерирайте.)


Дълбоко гмуркане: практични съвети, които ви спестяват реално време 🧭

  • Графики за скорост на обучение : косинусовото затихване или едноцикловото разпределение могат да стабилизират обучението.

  • Размер на партидата : по-голямото не винаги е по-добро - следете показателите за валидиране, не само пропускателната способност.

  • Тегло при инициализация : съвременните настройки по подразбиране са приемливи; ако обучението се забави, преразгледайте инициализацията или нормализирайте ранните слоеве.

  • Нормализация : партидната норма или слоевата норма може драстично да изглади оптимизацията.

  • Увеличаване на данните : обръщане/изрязване/трептене на цветовете за изображения; маскиране/разместване на маркери за текст.

  • Анализ на грешките : групирането на грешки по срез - един ръб може да повлече всичко надолу.

  • Възпроизвеждане : задаване на начални параметри, регистриране на хиперпараметри, запазване на контролни точки. В бъдеще ще бъдете благодарни, обещавам. [2], [3]

Когато се съмнявате, обърнете внимание на основите. Основите остават компасът. [1], [2]


Малка метафора, която почти работи 🪴

Обучението на модел е като поливане на растение със странна дюза. Твърде много вода - прекалено много локва. Твърде малко - недостатъчно суша. Правилната честота, със слънчева светлина от добри данни и хранителни вещества от чисти обективи, и получавате растеж. Да, леко банално, но се получава.


Как се учи изкуственият интелект? Обединявайки всичко 🧾

Моделът започва произволно. Чрез актуализации, базирани на градиенти, водени от загуба, той подравнява параметрите си с моделите в данните. Появяват се представяния, които улесняват прогнозирането. Оценката ви казва дали обучението е реално, а не случайно. А итерацията - с предпазни мерки за безопасност - превръща демо версията в надеждна система. Това е цялата история, с по-малко мистериозни вибрации, отколкото изглеждаше първоначално. [1]–[4]


Заключителни бележки - Твърде дълго, не прочетох 🎁

  • Как се учи изкуственият интелект? Чрез минимизиране на загубите с градиенти в множество примери. [1], [2]

  • Добрите данни, ясните цели и стабилната оптимизация правят наученото по-запомнящо се. [1]–[3]

  • Обобщението винаги е по-добро от запаметяването. [1]

  • Безопасността, оценката и итерацията превръщат умните идеи в надеждни продукти. [3], [4]

  • Започнете просто, измерете добре и подобрете чрез коригиране на данните, преди да се насочите към екзотични архитектури. [2], [3]


Референции

  1. Гудфелоу, Бенхио, Курвил - Дълбоко обучение (безплатен онлайн текст). Връзка

  2. Станфорд CS231n - Конволюционни невронни мрежи за визуално разпознаване (бележки от курса и задания). Връзка

  3. Google - Ускорен курс по машинно обучение: Метрики за класификация (точност, прецизност, извикване, ROC/AUC) . Връзка

  4. NIST - Рамка за управление на риска, свързан с изкуствения интелект (AI RMF 1.0) . Връзка

  5. OpenAI - Учене от човешки предпочитания (общ преглед на обучението, базирано на предпочитания). Връзка

Намерете най-новия изкуствен интелект в официалния магазин за асистенти с изкуствен интелект

За нас

Обратно към блога