[{"data":1,"prerenderedAt":787},["ShallowReactive",2],{"article-id-ru-ml-basic-1":3},{"id":4,"title":5,"body":6,"description":675,"extension":770,"meta":771,"navigation":781,"path":25,"seo":782,"stem":785,"__hash__":786},"content/ru/blog/ml-basic-1.mdx","Ml Basic 1",{"type":7,"value":8,"toc":762},"minimark",[9,664],[10,11,12,16,33,36,39,44,47,50,53,60,71,75,78,85,155,195,260,301,374,449,465,472,479,537,540,546,549,556,559,563,566,573,583,590,597,603,606,609,620,626,633,637,644,650,657,661],"section-md",{},[13,14,15],"p",{},"Это статья из цикла про основы машинного обучения.",[17,18,19,27],"ul",{},[20,21,22],"li",{},[23,24,26],"a",{"href":25},"/ru/blog/ml-basic-1","Часть 1. О машинном обучении простым языком",[20,28,29],{},[23,30,32],{"href":31},"/ru/blog/ml-basic-2","Часть 2. Линейная регрессия проще некуда",[13,34,35],{},"В Интернете сейчас есть огромное количество статей об искусственном\nинтеллекте, машинном обучении и нейронных сетях. Причём самого разного\nуровня, от совсем простых до требующих серьезных математических\nпознаний. Поэтому, когда появляется желание написать еще одну (а точнее\n— не одну, а небольшой цикл), нужно сразу представлять, какую нишу во\nвсем этом многообразии займет статья.",[13,37,38],{},"И я решил попробовать сделать некий промежуточный вариант от простого к\nсложному. Предполагаю, что мой цикл статей рассчитан на читателя,\nобладающего познаниями в математике на уровне старших классов обычной\n(не физмат) школы и желающего достаточно глубоко разобраться в сфере ML.\nИтак, если эта тема вас заинтересовала, приступим.",[40,41,43],"h2",{"id":42},"алгоритмы-ml-и-торты","Алгоритмы, ML и торты",[13,45,46],{},"В первую очередь, необходимо понять, что же такое машинное обучение в\nцелом. А для этого придется пройти через неизбежное сравнение машинного\nобучения с классическими алгоритмами.",[13,48,49],{},"Классический алгоритм можно представить себе как инструкцию, каждый\nпункт которой строго исполняется. Например, легко представить себе\nрецепт приготовления торта: взять сколько-то граммов первого\nингредиента, добавить сколько-то второго, потом еще, потом выпекать\nопределенное время при определенной температуре. И, если рецепт\nсоставлен хорошо, а качество ингредиентов не меняется, при точном\nследовании рецепту будут получаться одинаковые торты.",[13,51,52],{},"Но в этом точном следовании заключается и большой минус классического\nподхода — отсутствие гибкости. Представим себе, что у нас поменялось\nкачество какого-то ингредиента, например муки. В результате, если мы\nкладем ее строго по рецепту, тесто будет слишком жидким или слишком\nгустым. Кондитер скорее всего это заметит и скорректирует рецепт. То\nесть получается, что исполнитель сам начинает менять параметры того\nалгоритма, по которому он работает. Это и есть основа машинного\nобучения.",[13,54,55,56],{},"Для человека такое изменение рецепта во многом интуитивно и\nбазируется на его опыте и здравом смысле. Для компьютера же существуют\nтолько инструкции. И по сути, чтобы реализовать машинное обучение, нам\nнужно сделать ",[57,58,59],"strong",{},"алгоритм изменения другого алгоритма.",[13,61,62,63,66,67,70],{},"Целевой алгоритм (который мы как раз меняем) обычно называют ",[57,64,65],{},"моделью","\nмашинного обучения. Процесс подстройки этой модели — это и есть\n",[57,68,69],{},"обучение",". Таким образом, мы, не выходя за рамки строгих инструкций,\nможем достичь нужной нам гибкости алгоритма.",[40,72,74],{"id":73},"с-учителем-или-без","С учителем или без?",[13,76,77],{},"Теперь нужно выяснить, а как именно мы производим обучение. И тут можно\nпровести аналогию с тем, как учатся люди, а точнее — дети.",[13,79,80,81,84],{},"Допустим, мы учим ребенка названиям животных. У нас есть набор картинок,\nмы показываем их ребенку и спрашиваем, кто на ней. Если ребенок называет\nживотное неправильно, мы подсказываем ему, кто там на самом деле. И\nтаким образом ребенок постепенно выучит названия всех. Такой вариант\nназывается ",[57,82,83],{},"обучением с учителем",". Иными словами, он подразумевает\nналичие того, кто знает все ответы и может проверять ответы\nобучающегося.",[13,86,87,88,111,112,126,130,131,154],{},"С точки зрения машинного обучения все будет очень похоже. Тут нам\nпридется впервые прибегнуть к математическим обозначениям. Итак, наша\nмодель (напомню, это тот алгоритм, который мы меняем при обучении) мы\nобозначим буквой ",[89,90,93],"span",{"className":91},[92],"katex",[94,95,97],"math",{"xmlns":96},"http://www.w3.org/1998/Math/MathML",[98,99,100,107],"semantics",{},[101,102,103],"mrow",{},[104,105,106],"mi",{},"F",[108,109,106],"annotation",{"encoding":110},"application/x-tex",". Входные данные (в нашем случае — картинка,\nкоторую мы показываем модели) — ",[89,113,115],{"className":114},[92],[94,116,117],{"xmlns":96},[98,118,119,124],{},[101,120,121],{},[104,122,123],{},"X",[108,125,123],{"encoding":110},[127,128,129],"em",{},"."," Для каждой картинки модель\nвыдает свое предсказание (что за животное на картинке). Обозначим такое\nпредсказание символом ",[89,132,134],{"className":133},[92],[94,135,136],{"xmlns":96},[98,137,138,151],{},[101,139,140],{},[141,142,144,147],"mover",{"accent":143},"true",[104,145,146],{},"y",[148,149,150],"mo",{"stretchy":143},"^",[108,152,153],{"encoding":110},"\\widehat{y}"," (читается как \"игрек с крышкой\"). В\nитоге мы получим:",[13,156,157],{},[89,158,160],{"className":159},[92],[94,161,162],{"xmlns":96},[98,163,164,192],{},[101,165,166,172,176,179,181,183,187,189],{},[141,167,168,170],{"accent":143},[104,169,146],{},[148,171,150],{"stretchy":143},[173,174,175],"mtext",{}," ",[148,177,178],{},"=",[173,180,175],{},[104,182,106],{},[148,184,186],{"stretchy":185},"false","(",[104,188,123],{},[148,190,191],{"stretchy":185},")",[108,193,194],{"encoding":110},"\\widehat{y}\\  = \\ F(X)",[13,196,197,198,211,212,225,226,229,230,244,245,259],{},"Также для каждого ",[89,199,201],{"className":200},[92],[94,202,203],{"xmlns":96},[98,204,205,209],{},[101,206,207],{},[104,208,123],{},[108,210,123],{"encoding":110}," мы знаем и правильный ответ ",[89,213,215],{"className":214},[92],[94,216,217],{"xmlns":96},[98,218,219,223],{},[101,220,221],{},[104,222,146],{},[108,224,146],{"encoding":110}," (игрек, но уже без\nкрышки). Теперь нам осталось сравнить их и понять, насколько далеко\nответ модели от истины. Для этого введем такое понятие, как ",[57,227,228],{},"функция\nпотерь."," Эта функция (обозначим ее ",[89,231,233],{"className":232},[92],[94,234,235],{"xmlns":96},[98,236,237,242],{},[101,238,239],{},[104,240,241],{},"L",[108,243,241],{"encoding":110},") сравнивает ответ модели с\nправильным и выдает число ",[89,246,248],{"className":247},[92],[94,249,250],{"xmlns":96},[98,251,252,257],{},[101,253,254],{},[104,255,256],{},"l",[108,258,256],{"encoding":110},":",[13,261,262],{},[89,263,265],{"className":264},[92],[94,266,267],{"xmlns":96},[98,268,269,298],{},[101,270,271,273,275,277,279,281,283,285,288,290,296],{},[104,272,256],{},[173,274,175],{},[148,276,178],{},[173,278,175],{},[104,280,241],{},[148,282,186],{"stretchy":185},[104,284,146],{},[148,286,287],{"separator":143},",",[173,289,175],{},[141,291,292,294],{"accent":143},[104,293,146],{},[148,295,150],{"stretchy":143},[148,297,191],{"stretchy":185},[108,299,300],{"encoding":110},"l\\  = \\ L(y,\\ \\widehat{y})",[13,302,303,304,317,318,331,332,345,346,359,360,373],{},"Если ответ модели совпадает с правильным, число ",[89,305,307],{"className":306},[92],[94,308,309],{"xmlns":96},[98,310,311,315],{},[101,312,313],{},[104,314,256],{},[108,316,256],{"encoding":110}," будет равно нулю. В\nпротивном случае оно будет тем больше, чем дальше ответ модели от\nправильного. Отсюда мы можем сделать вывод, что модель должна обучиться\nтак, чтобы ",[89,319,321],{"className":320},[92],[94,322,323],{"xmlns":96},[98,324,325,329],{},[101,326,327],{},[104,328,256],{},[108,330,256],{"encoding":110}," для любого ",[89,333,335],{"className":334},[92],[94,336,337],{"xmlns":96},[98,338,339,343],{},[101,340,341],{},[104,342,123],{},[108,344,123],{"encoding":110}," было как можно меньше, в идеале равным\nнулю. Для этого мы, согласно определенным правилам, меняем нашу модель,\nто есть функцию ",[89,347,349],{"className":348},[92],[94,350,351],{"xmlns":96},[98,352,353,357],{},[101,354,355],{},[104,356,106],{},[108,358,106],{"encoding":110},". То есть, если говорить языком математики, задача\nобучения с учителем сводится к подбору такой функции ",[89,361,363],{"className":362},[92],[94,364,365],{"xmlns":96},[98,366,367,371],{},[101,368,369],{},[104,370,106],{},[108,372,106],{"encoding":110},", чтобы сумма\nвсех потерь была минимальной:",[13,375,376],{},[89,377,379],{"className":378},[92],[94,380,381],{"xmlns":96},[98,382,383,446],{},[101,384,385,405,436,438,441,443],{},[386,387,388,391,402],"msubsup",{},[148,389,390],{},"∑",[101,392,393,396,398],{},[104,394,395],{},"i",[148,397,178],{},[399,400,401],"mn",{},"1",[104,403,404],{},"N",[101,406,407,409,411,418,420,422,424,426,432,434],{},[104,408,241],{},[148,410,186],{"stretchy":185},[412,413,414,416],"msub",{},[104,415,146],{},[104,417,395],{},[148,419,287],{"separator":143},[173,421,175],{},[104,423,106],{},[148,425,186],{"stretchy":185},[412,427,428,430],{},[104,429,123],{},[104,431,395],{},[148,433,191],{"stretchy":185},[148,435,191],{"stretchy":185},[173,437,175],{},[148,439,440],{},"→",[173,442,175],{},[399,444,445],{},"0",[108,447,448],{"encoding":110},"\\sum_{i = 1}^{N}{L(y_{i},\\ F(X_{i}))}\\  \\rightarrow \\ 0",[13,450,451,464],{},[89,452,454],{"className":453},[92],[94,455,456],{"xmlns":96},[98,457,458,462],{},[101,459,460],{},[104,461,404],{},[108,463,404],{"encoding":110}," в этой формуле - количество обучающих примеров (данные + правильный\nответ), которые у нас есть.",[13,466,467],{},[468,469],"img",{"alt":470,"src":471},"Общая компонентная схема обучения с учителем","/img/blog/ml-basic-1/image1.png",[13,473,474,475,478],{},"Однако есть и другой способ, который, правда, будет работать в несколько\nиной ситуации. Допустим, мы просим того же ребенка разложить карточки с\nрисунками животных в три разных коробки так, чтобы животные в одной\nкоробке были максимально похожи друг на друга. В этом случае заведомо\nправильного решения просто нет. Есть огромное количество способов решить\nзадачу и каждый будет в чем-то правильным (например, по размеру, по\nцвету, по видам, если ребенок уже знает, что это такое, и так далее).\nОбучение в таком виде — это ",[57,476,477],{},"обучение без учителя,"," то есть мы не\nпоказываем ребенку заведомо правильный вариант и просим повторить.\nВместо этого мы даем некие начальные условия и саму задачу. Повторюсь,\nэто подходит только для решения некоторых задач. Например, выучить\nназвания животных, как мы рассматривали выше, без знания правильных\nответов не очень возможно.",[13,480,481,482,502,503,520,522,523,536],{},"В случае обучения без учителя формально описать процесс чуть сложнее.\nОбозначения будут похожи на случай с учителем. У нас есть наша функция\n",[89,483,485],{"className":484},[92],[94,486,487],{"xmlns":96},[98,488,489,499],{},[101,490,491,493,495,497],{},[104,492,106],{},[148,494,186],{"stretchy":185},[104,496,123],{},[148,498,191],{"stretchy":185},[108,500,501],{"encoding":110},"F(X)",", которая выдает результат ",[89,504,506],{"className":505},[92],[94,507,508],{"xmlns":96},[98,509,510,518],{},[101,511,512],{},[141,513,514,516],{"accent":143},[104,515,146],{},[148,517,150],{"stretchy":143},[108,519,153],{"encoding":110},[127,521,129],{}," Но никакого заведомо\nправильного ",[89,524,526],{"className":525},[92],[94,527,528],{"xmlns":96},[98,529,530,534],{},[101,531,532],{},[104,533,146],{},[108,535,146],{"encoding":110}," у нас в этом случае нет. Что же нам в таком случае\nоптимизировать?",[13,538,539],{},"Ответ — некоторую внутреннюю функцию качества. Она может быть очень\nразной в зависимости от задачи. В примере выше про ребенка и карточки\nживотных — это некоторая мера похожести на взгляд ребенка, причем у\nразных детей она тоже разная. Мы стараемся минимизировать или\nмаксимизировать значение этой функции в зависимости от условий задачи.\nТо есть в этом случае все гораздо менее шаблонно и может сильно\nотличаться в зависимости от алгоритма.",[13,541,542],{},[468,543],{"alt":544,"src":545},"Общая компонентная схема обучения без учителя","/img/blog/ml-basic-1/image2.png",[13,547,548],{},"Есть еще третий вариант обучения. Но чтобы описать его, давайте перейдем\nот обучения ребенка к другому примеру (почему — сейчас поймете).\nДопустим, мы теперь ученые-биологи, и изучаем поведение мышей. В клетке\nу мыши есть две кнопки. Если мышь нажмет на первую, она получит корм.\nЕсли на вторую — ее ударит током. Понятное дело, что мышь через\nкакое-то время будет нажимать только на первую кнопку. Теперь поменяем\nусловие: корм будет появляться от нажатий на кнопки по очереди. Мышь\nпоначалу будет жать на первую, но, к своему удивлению, вместо корма\nполучит удар током. Через какое-то количество попыток мышь найдет\nвариант, как нужно нажимать кнопки.",[13,550,551,552,555],{},"Такой вариант обучения называется ",[57,553,554],{},"обучением с подкреплением.","\nОбратите внимание, этот метод отличается от рассмотренных выше. С одной\nстороны, мы не показываем мыши правильную последовательность нажатий, ее\nона находит сама. То есть учитель отсутствует. Но при этом мы\nвзаимодействуем с мышью, поощряя или наказывая ее. Это отличает метод от\nобучения без учителя. Там никакого взаимодействия у нас нет.",[13,557,558],{},"В рамках цикла статей обучение с подкреплением я затрагивать не буду,\nтак как это очень обширная сфера со множеством тонкостей. Поэтому\nограничимся только словесным описанием.",[40,560,562],{"id":561},"что-может-обучение-с-учителем","Что может обучение с учителем?",[13,564,565],{},"Теперь, когда мы разобрались, как можно научить алгоритм чему-либо,\nдавайте посмотрим, как это можно применить на практике.",[13,567,568,569,572],{},"И в первую очередь рассмотрим задачи, которые может решить обучение с\nучителем. Напомню, в этом случае у нас уже есть заведомо правильные\nответы. И первой такой задачей будет ",[57,570,571],{},"классификация."," На самом деле\nпро эту задачу мы уже говорили. Да, это то самое угадывание названий\nживотных. В случае классификации для каждого набора входных данных (это\nне обязательно картинка, может быть текст, видео, числа, граф и еще\nмного чего). Самая главная черта задачи — то, что мы ждем на выходе. А\nждем мы класс, то есть один элемент из конечного множества. Например, в\nслучае, описанном выше, это будут названия животных. Причём тут очень\nважна ограниченность множества. То есть классов может быть 10, 100,\n1000, но не бесконечность. И количество классов неизменно, мы не можем\nдобавить новый в процессе работы алгоритма. Обычно классы кодируются\nчислами. Для этого просто нумеруем классы от нуля до максимального\nзначения. Это делается, потому что с числом компьютеру работать гораздо\nлегче, чем с текстом.",[13,574,575,576,579,580,129],{},"Сама классификация тоже делится на виды в зависимости от того, сколько\nклассов и как могут быть определены. Самый простой вид классификации —\n",[57,577,578],{},"двухклассовая",". Название говорит само за себя. У нас выбор из двух\nвариантов. Например, да или нет. Если вариантов больше двух — это уже\n",[57,581,582],{},"многоклассовая классификация",[13,584,585,586,589],{},"И очень важно не путать с ней ",[57,587,588],{},"многометочную (multi-label)","\nклассификацию. Тут мы можем присвоить сразу несколько меток классов.\nПредставим себе ситуацию, когда нам нужно различать фотографии собак и\nкошек. У нас получается три класса (собака, кошка, никого нет). Но что\nделать, если на картинке есть и собака, и кошка? Можно ввести четвертый\nкласс (собака и кошка вместе). Но если бы вариантов было не два, как у\nнас, а больше, то число классов очень быстро превысило бы все разумные\nпределы (для трех видов — это уже 8 классов, для четырех — 16 и так\nдалее). Гораздо практичнее разрешить присваивать не только один класс, а\nсразу несколько (или ноль). Тогда нам достаточно всего двух меток\nклассов. Если на картинке никого нет, на выходе ноль меток. Если на\nкартинке собака или кошка, будет одна метка. Если оба — сразу две\nметки.",[13,591,592,593,596],{},"Следующая задача, которую мы рассмотрим — это ",[57,594,595],{},"регрессия",". Как\nпример можно привести определение веса животного по фотографии (хотя еще\nраз подчеркну, большинство методов машинного обучения применимы не\nтолько к фотографиям, а к любым входным данным). Здесь самое главное\nотличие от классификации — выход у нас теперь не дискретный (несколько\nвозможных вариантов), а непрерывный. То есть на выходе может быть вообще\nлюбое число, но чаще всего из заданного диапазона.",[13,598,599],{},[468,600],{"alt":601,"src":602},"Варианты классификации","/img/blog/ml-basic-1/image3.png",[13,604,605],{},"Кстати, стоит заметить, что задачу классификации можно представить в\nвиде регрессии. Например, у нас два класса. Тогда мы можем выдавать\nчисло от 0 до 1. Если число меньше 0.5 — это первый класс. Если больше\n— второй. Это число, по сути, вероятность того, что у нас класс 2.\nАналогично с multi-label. Только мы предсказываем не одно такое число, а\nнесколько, по одному на каждый класс. Если число больше порога (в нашем\nслучае 0.5), мы считаем, что этот класс есть.",[13,607,608],{},"Чуть сложнее с многоклассовой классификацией, когда нам нужен один класс\nиз нескольких. Тут можно поступить похожим способом. Мы предсказываем\nвероятности всех классов, а потом просто выбираем самый вероятный для\nнашего случая.",[13,610,611,612,615,616,619],{},"Следующие две задачи касаются по большей части обработки изображений и\nвидео. Это ",[57,613,614],{},"сегментация"," и ",[57,617,618],{},"детекция",". Здесь нам нужно не просто\nсказать, что объект есть на картинке, а показать, где он конкретно.\nРазница между ними в том, как мы показываем это. При детекции мы рисуем\nпрямоугольник вокруг объекта (так называемый bounding box). При\nсегментации мы закрашиваем весь объект целиком. То есть это более точное\nописание границ объекта. В случае детекции выходные данные — это\nцентры и размеры рамок, а также метки их классов. В случае сегментации\nпросто чисел нам недостаточно. Здесь выход уже другое изображение, на\nкотором закрашены области, где мы нашли объекты (это так называемая\nмаска сегментации).",[13,621,622],{},[468,623],{"alt":624,"src":625},"Различие сегментации и детекции","/img/blog/ml-basic-1/image4.png",[13,627,628,629,632],{},"Отдельно хочется отметить задачи ",[57,630,631],{},"распознавания",". Это уже гораздо\nболее сложная область, где на выходе не числа или картинки, а текст —\nсамая сложная для обработки категория данных. В основном есть два типа\nраспознавания: распознавание текста (картинка — текст) и распознавание\nречи (звук — текст). Такие задачи уже требуют гораздо более сложных\nподходов для их решения.",[40,634,636],{"id":635},"что-может-обучение-без-учителя","Что может обучение без учителя?",[13,638,639,640,643],{},"Исторически обучение без учителя чаще всего применялось для задач\nкластеризации и понижения размерности. ",[57,641,642],{},"Кластеризация"," — это\nгруппировка объектов по мере их похожести. То есть та задача, которую мы\nрассматривали, когда начинали говорить про обучение без учителя. Причем\nчисло кластеров (групп объектов) может быть как заданным заранее, так и\nопределяться самим алгоритмом в процессе.",[13,645,646,649],{},[57,647,648],{},"Понижение размерности"," — это достаточно близкая к кластеризации, но\nчуть более сложная для понимания задача. Здесь мы стараемся закодировать\nобъекты числами или наборами чисел так, чтобы расстояние (разница между\nчислами) было тем меньше, чем ближе объекты друг к другу. Допустим, мы\nкодируем слова. Пусть слово \"красный\" — это 1. Тогда \"алый\" кодируем\nкак 2 (близко к красному), \"розовый\" — 5 (чуть дальше), а \"синий\" —\n40 (далеко). То есть мы представляем наши объекты в более компактном\nвиде, но сохраняем связи между ними.",[13,651,652,653,656],{},"На сегодняшний день обучение без учителя активно используется в задачах\n",[57,654,655],{},"генерации",". Это и всем известные GPT-модели (расшифровывается как\nGenerative Pretrained Transformer, о трансформерах планируется отдельная\nстатья в будущем), и генераторы изображений, и генераторы видео. Стоит,\nоднако, заметить, что обучение таких моделей — это очень сложный\nпроцесс, и обучение без учителя может быть только одним из многих\nэтапов.",[40,658,660],{"id":659},"заключение","Заключение",[13,662,663],{},"В этой статье я лишь обзорно коснулся сферы машинного обучения. В\nпоследующих статьях я планирую углубиться в темы более подробно и\nрассказать не только, что делают алгоритмы машинного обучения, но и как\nони это делают. Постараюсь разобрать алгоритмы в деталях, начиная от\nсамых простых и заканчивая сложными, такими как нейронные сети различных\nархитектур.",[665,666,668,684,697,710,723,736,749],"faq",{"title":667},"Вопросы и ответы",[669,670,672,679],"faq-item",{"value":671},"item-1",[673,674,676],"template",{"v-slot:question":675},"",[13,677,678],{},"Чем машинное обучение отличается от обычного программирования?",[673,680,681],{"v-slot:answer":675},[13,682,683],{},"В классическом программировании разработчик прописывает все правила и\nинструкции вручную — алгоритм строго следует заданному рецепту. В\nмашинном обучении алгоритм сам подстраивает свои параметры на основе\nданных. Грубо говоря, вместо того чтобы писать правила, мы даём\nкомпьютеру примеры и просим его найти закономерности самостоятельно.",[669,685,687,692],{"value":686},"item-2",[673,688,689],{"v-slot:question":675},[13,690,691],{},"Что такое функция потерь и зачем она нужна?",[673,693,694],{"v-slot:answer":675},[13,695,696],{},"Функция потерь измеряет, насколько сильно предсказание модели отличается\nот правильного ответа. Чем больше ошибка — тем больше значение функции.\nЗадача обучения состоит в том, чтобы подобрать параметры модели так,\nчтобы суммарная величина потерь по всем примерам была минимальной.",[669,698,700,705],{"value":699},"item-3",[673,701,702],{"v-slot:question":675},[13,703,704],{},"Когда лучше использовать обучение с учителем, а когда без учителя?",[673,706,707],{"v-slot:answer":675},[13,708,709],{},"Если у вас есть размеченные данные, то есть для каждого входного примера\nизвестен правильный ответ — используйте обучение с учителем. Это задачи\nклассификации, регрессии, детекции и другие. Если правильных ответов\nнет, а нужно найти структуру в данных (например, сгруппировать похожие\nобъекты или сжать описание данных) — подойдёт обучение без учителя.",[669,711,713,718],{"value":712},"item-4",[673,714,715],{"v-slot:question":675},[13,716,717],{},"В чём разница между классификацией и регрессией?",[673,719,720],{"v-slot:answer":675},[13,721,722],{},"При классификации модель предсказывает один из заранее заданных классов\n— например, «кошка», «собака» или «птица».\nПри регрессии на выходе получается число из непрерывного диапазона —\nнапример, вес животного или стоимость квартиры.",[669,724,726,731],{"value":725},"item-5",[673,727,728],{"v-slot:question":675},[13,729,730],{},"Что такое сегментация и чем она отличается от детекции?",[673,732,733],{"v-slot:answer":675},[13,734,735],{},"Обе задачи работают с изображениями и определяют расположение объектов.\nПри детекции вокруг каждого объекта рисуется прямоугольник (bounding\nbox). При сегментации выделяется точный контур объекта попиксельно —\nэто даёт более точную информацию о его границах, но требует больших\nвычислительных ресурсов.",[669,737,739,744],{"value":738},"item-6",[673,740,741],{"v-slot:question":675},[13,742,743],{},"Можно ли решить задачу классификации методами регрессии?",[673,745,746],{"v-slot:answer":675},[13,747,748],{},"Да, это распространённый приём. Для двухклассовой классификации модель\nможет выдавать число от 0 до 1, которое интерпретируется как\nвероятность принадлежности ко второму классу. Если число меньше 0.5 —\nотносим к первому классу, если больше — ко второму. Аналогичный подход\nработает и для многометочной классификации.",[669,750,752,757],{"value":751},"item-7",[673,753,754],{"v-slot:question":675},[13,755,756],{},"Зачем нужно понижение размерности?",[673,758,759],{"v-slot:answer":675},[13,760,761],{},"Многие реальные данные описываются сотнями и тысячами признаков, что\nусложняет их обработку и визуализацию. Понижение размерности позволяет\nзакодировать данные меньшим числом чисел, сохраняя при этом важные\nсвязи между объектами. Близкие по смыслу объекты остаются близкими и в\nновом представлении.",{"title":675,"searchDepth":763,"depth":763,"links":764},2,[765,766,767,768,769],{"id":42,"depth":763,"text":43},{"id":73,"depth":763,"text":74},{"id":561,"depth":763,"text":562},{"id":635,"depth":763,"text":636},{"id":659,"depth":763,"text":660},"mdx",{"readTime":772,"image":773,"date":774,"dateModified":775,"tags":776,"authors":779},"15 минут","/img/blog/ml-basic-1/preview.png","2026-03-16","2026-04-20",[777,778],"Искусственный интеллект","Машинное обучение",[780],"vgorash",true,{"title":783,"description":784},"О машинном обучении простым языком","В этой статье мы начнем рассматривать сферу машинного обучения. Постараемся разобраться с тем, что это такое, каких видов бывает, и какие задачи может решить.","ru/blog/ml-basic-1","EjbkSNjJ2VfDqJTWTy3Q5xlyreNV4uc5TpRM43uInNU",1777111204415]