[{"data":1,"prerenderedAt":6483},["ShallowReactive",2],{"topic:aidt-iot-mii:topic-06":3},{"content":4,"pz":6412,"lr":6412,"additional":6412,"courseMeta":6424},{"id":5,"title":6,"body":7,"course_slug":6411,"description":17,"env_label":6412,"env_url":6412,"extension":6413,"group":6412,"is_course_project":6414,"is_index":6414,"level":6412,"meta":6415,"navigation":6416,"path":6417,"section":6418,"seo":6419,"stem":6420,"topic_number":6421,"topic_slug":6422,"__hash__":6423},"courses\u002Fcourses\u002Faidt-iot-mii\u002Ftopic-06-content.md","Тема 6. Обучение без учителя",{"type":8,"value":9,"toc":6393},"minimark",[10,14,18,21,26,31,344,666,669,686,690,694,1615,1628,1940,2258,2306,2404,2491,2495,2541,2694,2703,2735,2883,3157,3161,3178,3489,3499,3731,3734,3738,3755,4907,4916,5416,5431,5434,5438,5455,6198,6207,6216,6344,6347,6351],[11,12,6],"h1",{"id":13},"тема-6-обучение-без-учителя",[15,16,17],"p",{},"В предыдущих темах мы строили модели, для которых обучающая выборка приходила «с ответом»: классификатор знал метку каждого объекта, регрессор — числовое значение целевой переменной. На этом фундаменте удобно изучать методологию — функцию потерь, разделение данных, метрики, — но реальная практика чаще выглядит иначе. У аналитика на руках оказывается таблица, в которой целевой столбец отсутствует: журналы датчиков с производственной линии, логи поведения пользователей, фотографии без подписей, тексты обращений в техподдержку без рубрикатора. Размечать всё это вручную дорого, иногда невозможно, а действовать как-то надо.",[15,19,20],{},"Обучение без учителя — это семейство методов, которые ищут в данных структуру без подсказок извне. Модели не получают «правильного ответа» и оптимизируют не точность предсказаний, а внутренние свойства решения: компактность кластеров, долю сохранённой дисперсии, согласованность локальных соседств. В этой теме мы рассмотрим две большие линии: кластеризацию и снижение размерности. К концу темы у нас будет инструментарий для того, чтобы по неразмеченной таблице ответить на два вопроса: «есть ли в данных естественные группы?» и «можно ли сжать пространство признаков, не теряя сути?».",[22,23,25],"h2",{"id":24},"задачи-обучения-без-учителя","Задачи обучения без учителя",[27,28,30],"h3",{"id":29},"постановка-проблемы","Постановка проблемы",[15,32,33,34,268,269,343],{},"Формально задача обучения без учителя выглядит проще, чем обучение с учителем: задано множество объектов ",[35,36,39,100],"span",{"className":37},[38],"katex",[35,40,43],{"className":41},[42],"katex-mathml",[44,45,47],"math",{"xmlns":46},"http:\u002F\u002Fwww.w3.org\u002F1998\u002FMath\u002FMathML",[48,49,50,95],"semantics",{},[51,52,53,58,68,88,91],"mrow",{},[54,55,57],"mo",{"stretchy":56},"false","{",[59,60,61,65],"msub",{},[62,63,64],"mi",{},"x",[62,66,67],{},"i",[69,70,71,74,85],"msubsup",{},[54,72,73],{"stretchy":56},"}",[51,75,76,78,81],{},[62,77,67],{},[54,79,80],{},"=",[82,83,84],"mn",{},"1",[62,86,87],{},"n",[54,89,90],{},"⊂",[62,92,94],{"mathvariant":93},"script","X",[96,97,99],"annotation",{"encoding":98},"application\u002Fx-tex","\\{x_i\\}_{i=1}^{n} \\subset \\mathcal{X}",[35,101,105,256],{"className":102,"ariaHidden":104},[103],"katex-html","true",[35,106,109,114,118,176,245,250,253],{"className":107},[108],"base",[35,110],{"className":111,"style":113},[112],"strut","height:1.0087em;vertical-align:-0.2587em;",[35,115,57],{"className":116},[117],"mopen",[35,119,122,126],{"className":120},[121],"mord",[35,123,64],{"className":124},[121,125],"mathnormal",[35,127,130],{"className":128},[129],"msupsub",[35,131,135,167],{"className":132},[133,134],"vlist-t","vlist-t2",[35,136,139,162],{"className":137},[138],"vlist-r",[35,140,144],{"className":141,"style":143},[142],"vlist","height:0.3117em;",[35,145,147,152],{"style":146},"top:-2.55em;margin-left:0em;margin-right:0.05em;",[35,148],{"className":149,"style":151},[150],"pstrut","height:2.7em;",[35,153,159],{"className":154},[155,156,157,158],"sizing","reset-size6","size3","mtight",[35,160,67],{"className":161},[121,125,158],[35,163,166],{"className":164},[165],"vlist-s","​",[35,168,170],{"className":169},[138],[35,171,174],{"className":172,"style":173},[142],"height:0.15em;",[35,175],{},[35,177,180,183],{"className":178},[179],"mclose",[35,181,73],{"className":182},[179],[35,184,186],{"className":185},[129],[35,187,189,236],{"className":188},[133,134],[35,190,192,233],{"className":191},[138],[35,193,196,218],{"className":194,"style":195},[142],"height:0.6644em;",[35,197,199,202],{"style":198},"top:-2.4413em;margin-left:0em;margin-right:0.05em;",[35,200],{"className":201,"style":151},[150],[35,203,205],{"className":204},[155,156,157,158],[35,206,208,211,215],{"className":207},[121,158],[35,209,67],{"className":210},[121,125,158],[35,212,80],{"className":213},[214,158],"mrel",[35,216,84],{"className":217},[121,158],[35,219,221,224],{"style":220},"top:-3.063em;margin-right:0.05em;",[35,222],{"className":223,"style":151},[150],[35,225,227],{"className":226},[155,156,157,158],[35,228,230],{"className":229},[121,158],[35,231,87],{"className":232},[121,125,158],[35,234,166],{"className":235},[165],[35,237,239],{"className":238},[138],[35,240,243],{"className":241,"style":242},[142],"height:0.2587em;",[35,244],{},[35,246],{"className":247,"style":249},[248],"mspace","margin-right:0.2778em;",[35,251,90],{"className":252},[214],[35,254],{"className":255,"style":249},[248],[35,257,259,263],{"className":258},[108],[35,260],{"className":261,"style":262},[112],"height:0.6833em;",[35,264,94],{"className":265,"style":267},[121,266],"mathcal","margin-right:0.1464em;",", и требуется построить модель, описывающую структуру этого множества. Целевой переменной нет — нет ни функции ",[35,270,272,300],{"className":271},[38],[35,273,275],{"className":274},[42],[44,276,277],{"xmlns":46},[48,278,279,297],{},[51,280,281,284,286,289,292,294],{},[62,282,283],{},"y",[54,285,80],{},[62,287,288],{},"f",[54,290,291],{"stretchy":56},"(",[62,293,64],{},[54,295,296],{"stretchy":56},")",[96,298,299],{"encoding":98},"y = f(x)",[35,301,303,323],{"className":302,"ariaHidden":104},[103],[35,304,306,310,314,317,320],{"className":305},[108],[35,307],{"className":308,"style":309},[112],"height:0.625em;vertical-align:-0.1944em;",[35,311,283],{"className":312,"style":313},[121,125],"margin-right:0.0359em;",[35,315],{"className":316,"style":249},[248],[35,318,80],{"className":319},[214],[35,321],{"className":322,"style":249},[248],[35,324,326,330,334,337,340],{"className":325},[108],[35,327],{"className":328,"style":329},[112],"height:1em;vertical-align:-0.25em;",[35,331,288],{"className":332,"style":333},[121,125],"margin-right:0.1076em;",[35,335,291],{"className":336},[117],[35,338,64],{"className":339},[121,125],[35,341,296],{"className":342},[179],", ни обучающей пары «вход — ответ», к которой можно подгонять параметры. Простота постановки обманчива: именно из-за отсутствия эталона у задачи нет однозначного критерия успеха. Кластер из двадцати клиентов можно одновременно интерпретировать как «активные пользователи мобильного приложения» и как «студенты технического вуза», и оба варианта будут согласованы с одними и теми же данными.",[15,345,346,347,351,352,356,357,351,360,363,364,576,577,665],{},"У задачи обучения без учителя есть два магистральных направления. ",[348,349,350],"strong",{},"Кластеризация"," (англ. ",[353,354,355],"em",{},"clustering",") разбивает объекты на группы так, чтобы внутри группы объекты были похожи, а между группами — различны. ",[348,358,359],{},"Снижение размерности",[353,361,362],{},"dimensionality reduction",") ищет компактное представление выборки: ",[35,365,367,415],{"className":366},[38],[35,368,370],{"className":369},[42],[44,371,372],{"xmlns":46},[48,373,374,412],{},[51,375,376,378,381,391,394,397,399],{},[62,377,64],{},[54,379,380],{},"∈",[382,383,384,388],"msup",{},[62,385,387],{"mathvariant":386},"double-struck","R",[62,389,390],{},"d",[54,392,393],{},"↦",[62,395,396],{},"z",[54,398,380],{},[382,400,401,403],{},[62,402,387],{"mathvariant":386},[382,404,405,407],{},[62,406,390],{},[54,408,411],{"mathvariant":409,"lspace":410,"rspace":410},"normal","0em","′",[96,413,414],{"encoding":98},"x \\in \\mathbb{R}^d \\mapsto z \\in \\mathbb{R}^{d'}",[35,416,418,437,484,503],{"className":417,"ariaHidden":104},[103],[35,419,421,425,428,431,434],{"className":420},[108],[35,422],{"className":423,"style":424},[112],"height:0.5782em;vertical-align:-0.0391em;",[35,426,64],{"className":427},[121,125],[35,429],{"className":430,"style":249},[248],[35,432,380],{"className":433},[214],[35,435],{"className":436,"style":249},[248],[35,438,440,444,475,478,481],{"className":439},[108],[35,441],{"className":442,"style":443},[112],"height:0.8601em;vertical-align:-0.011em;",[35,445,447,451],{"className":446},[121],[35,448,387],{"className":449},[121,450],"mathbb",[35,452,454],{"className":453},[129],[35,455,457],{"className":456},[133],[35,458,460],{"className":459},[138],[35,461,464],{"className":462,"style":463},[142],"height:0.8491em;",[35,465,466,469],{"style":220},[35,467],{"className":468,"style":151},[150],[35,470,472],{"className":471},[155,156,157,158],[35,473,390],{"className":474},[121,125,158],[35,476],{"className":477,"style":249},[248],[35,479,393],{"className":480},[214],[35,482],{"className":483,"style":249},[248],[35,485,487,490,494,497,500],{"className":486},[108],[35,488],{"className":489,"style":424},[112],[35,491,396],{"className":492,"style":493},[121,125],"margin-right:0.044em;",[35,495],{"className":496,"style":249},[248],[35,498,380],{"className":499},[214],[35,501],{"className":502,"style":249},[248],[35,504,506,510],{"className":505},[108],[35,507],{"className":508,"style":509},[112],"height:0.9425em;",[35,511,513,516],{"className":512},[121],[35,514,387],{"className":515},[121,450],[35,517,519],{"className":518},[129],[35,520,522],{"className":521},[133],[35,523,525],{"className":524},[138],[35,526,528],{"className":527,"style":509},[142],[35,529,530,533],{"style":220},[35,531],{"className":532,"style":151},[150],[35,534,536],{"className":535},[155,156,157,158],[35,537,539],{"className":538},[121,158],[35,540,542,545],{"className":541},[121,158],[35,543,390],{"className":544},[121,125,158],[35,546,548],{"className":547},[129],[35,549,551],{"className":550},[133],[35,552,554],{"className":553},[138],[35,555,558],{"className":556,"style":557},[142],"height:0.8278em;",[35,559,561,565],{"style":560},"top:-2.931em;margin-right:0.0714em;",[35,562],{"className":563,"style":564},[150],"height:2.5em;",[35,566,570],{"className":567},[155,568,569,158],"reset-size3","size1",[35,571,573],{"className":572},[121,158],[35,574,411],{"className":575},[121,158]," при ",[35,578,580,603],{"className":579},[38],[35,581,583],{"className":582},[42],[44,584,585],{"xmlns":46},[48,586,587,600],{},[51,588,589,595,598],{},[382,590,591,593],{},[62,592,390],{},[54,594,411],{"mathvariant":409,"lspace":410,"rspace":410},[54,596,597],{},"≪",[62,599,390],{},[96,601,602],{"encoding":98},"d' \\ll d",[35,604,606,655],{"className":605,"ariaHidden":104},[103],[35,607,609,613,646,649,652],{"className":608},[108],[35,610],{"className":611,"style":612},[112],"height:0.791em;vertical-align:-0.0391em;",[35,614,616,619],{"className":615},[121],[35,617,390],{"className":618},[121,125],[35,620,622],{"className":621},[129],[35,623,625],{"className":624},[133],[35,626,628],{"className":627},[138],[35,629,632],{"className":630,"style":631},[142],"height:0.7519em;",[35,633,634,637],{"style":220},[35,635],{"className":636,"style":151},[150],[35,638,640],{"className":639},[155,156,157,158],[35,641,643],{"className":642},[121,158],[35,644,411],{"className":645},[121,158],[35,647],{"className":648,"style":249},[248],[35,650,597],{"className":651},[214],[35,653],{"className":654,"style":249},[248],[35,656,658,662],{"className":657},[108],[35,659],{"className":660,"style":661},[112],"height:0.6944em;",[35,663,390],{"className":664},[121,125],", сохраняющее ключевые свойства данных. Эти две задачи часто решают совместно: понижение размерности готовит данные к кластеризации (избавляя её от проклятия размерности) или, наоборот, кластеризация даёт оси, по которым потом строится визуализация.",[15,667,668],{},"Прикладных сюжетов, в которых работает этот аппарат, много. Маркетинговая сегментация ищет однородные группы клиентов, чтобы построить для них целевые предложения; биоинформатика группирует образцы по экспрессии генов; служба безопасности банка использует обнаружение аномалий, чтобы выделять подозрительные транзакции — точки, не вписывающиеся ни в один из обнаруженных кластеров. Визуализация многомерных данных в двумерной плоскости — отдельный жанр: исследователь хочет «увидеть» структуру датасета, прежде чем выбрать модель.",[15,670,671,672,351,675,678,679,351,682,685],{},"Особое слово об оценке. В обучении с учителем мы оцениваем модель тестовой ошибкой; в обучении без учителя тестовой ошибки в строгом смысле нет — нет «правильного» разбиения. На практике используют ",[348,673,674],{},"внутренние метрики",[353,676,677],{},"internal metrics","), такие как силуэтный коэффициент или индекс Калинского — Харабаса, опирающиеся на расстояния между объектами без обращения к меткам, и ",[348,680,681],{},"внешние метрики",[353,683,684],{},"external metrics","), требующие пусть и небольшой эталонной разметки — индекс Ранда, нормализованная взаимная информация. Подробнее о метриках мы поговорим в теме 7; здесь достаточно понимать, что результат кластеризации почти всегда оценивается косвенно и допускает несколько правомерных интерпретаций.",[22,687,689],{"id":688},"методы-кластеризации","Методы кластеризации",[27,691,693],{"id":692},"k-means","K-Means",[15,695,696,697,727,728,739,740,768,769,797,798,949,950,1434,1435,1506,1507,351,1510,1513,1514,1585,1586,1614],{},"Алгоритм ",[35,698,700,714],{"className":699},[38],[35,701,703],{"className":702},[42],[44,704,705],{"xmlns":46},[48,706,707,712],{},[51,708,709],{},[62,710,711],{},"k",[96,713,711],{"encoding":98},[35,715,717],{"className":716,"ariaHidden":104},[103],[35,718,720,723],{"className":719},[108],[35,721],{"className":722,"style":661},[112],[35,724,711],{"className":725,"style":726},[121,125],"margin-right:0.0315em;","-средних — самый известный метод кластеризации, и причины его популярности прозаичны: он простой, быстрый и в большинстве учебников приводится как первый пример. Идея сформулирована ещё в работе ",[729,730,733],"sup",{"className":731},[732],"cite",[734,735,737],"a",{"href":736},"#ref-1",[35,738,84],{},": задано число кластеров ",[35,741,743,756],{"className":742},[38],[35,744,746],{"className":745},[42],[44,747,748],{"xmlns":46},[48,749,750,754],{},[51,751,752],{},[62,753,711],{},[96,755,711],{"encoding":98},[35,757,759],{"className":758,"ariaHidden":104},[103],[35,760,762,765],{"className":761},[108],[35,763],{"className":764,"style":661},[112],[35,766,711],{"className":767,"style":726},[121,125],", и требуется разбить выборку на ",[35,770,772,785],{"className":771},[38],[35,773,775],{"className":774},[42],[44,776,777],{"xmlns":46},[48,778,779,783],{},[51,780,781],{},[62,782,711],{},[96,784,711],{"encoding":98},[35,786,788],{"className":787,"ariaHidden":104},[103],[35,789,791,794],{"className":790},[108],[35,792],{"className":793,"style":661},[112],[35,795,711],{"className":796,"style":726},[121,125]," непересекающихся групп ",[35,799,801,834],{"className":800},[38],[35,802,804],{"className":803},[42],[44,805,806],{"xmlns":46},[48,807,808,831],{},[51,809,810,817,820,823,825],{},[59,811,812,815],{},[62,813,814],{},"C",[82,816,84],{},[54,818,819],{"separator":104},",",[54,821,822],{},"…",[54,824,819],{"separator":104},[59,826,827,829],{},[62,828,814],{},[62,830,711],{},[96,832,833],{"encoding":98},"C_1, \\ldots, C_k",[35,835,837],{"className":836,"ariaHidden":104},[103],[35,838,840,844,887,891,895,899,902,905,908],{"className":839},[108],[35,841],{"className":842,"style":843},[112],"height:0.8778em;vertical-align:-0.1944em;",[35,845,847,851],{"className":846},[121],[35,848,814],{"className":849,"style":850},[121,125],"margin-right:0.0715em;",[35,852,854],{"className":853},[129],[35,855,857,879],{"className":856},[133,134],[35,858,860,876],{"className":859},[138],[35,861,864],{"className":862,"style":863},[142],"height:0.3011em;",[35,865,867,870],{"style":866},"top:-2.55em;margin-left:-0.0715em;margin-right:0.05em;",[35,868],{"className":869,"style":151},[150],[35,871,873],{"className":872},[155,156,157,158],[35,874,84],{"className":875},[121,158],[35,877,166],{"className":878},[165],[35,880,882],{"className":881},[138],[35,883,885],{"className":884,"style":173},[142],[35,886],{},[35,888,819],{"className":889},[890],"mpunct",[35,892],{"className":893,"style":894},[248],"margin-right:0.1667em;",[35,896,822],{"className":897},[898],"minner",[35,900],{"className":901,"style":894},[248],[35,903,819],{"className":904},[890],[35,906],{"className":907,"style":894},[248],[35,909,911,914],{"className":910},[121],[35,912,814],{"className":913,"style":850},[121,125],[35,915,917],{"className":916},[129],[35,918,920,941],{"className":919},[133,134],[35,921,923,938],{"className":922},[138],[35,924,927],{"className":925,"style":926},[142],"height:0.3361em;",[35,928,929,932],{"style":866},[35,930],{"className":931,"style":151},[150],[35,933,935],{"className":934},[155,156,157,158],[35,936,711],{"className":937,"style":726},[121,125,158],[35,939,166],{"className":940},[165],[35,942,944],{"className":943},[138],[35,945,947],{"className":946,"style":173},[142],[35,948],{}," так, чтобы минимизировать сумму квадратов расстояний от каждого объекта до центра его кластера:\n",[35,951,953,1044],{"className":952},[38],[35,954,956],{"className":955},[42],[44,957,958],{"xmlns":46},[48,959,960,1041],{},[51,961,962,965,967,969,971,974,976,978,994,1014,1017,1023,1026,1032,1039],{},[62,963,964],{},"J",[54,966,291],{"stretchy":56},[62,968,814],{},[54,970,819],{"separator":104},[62,972,973],{},"μ",[54,975,296],{"stretchy":56},[54,977,80],{},[69,979,980,983,992],{},[54,981,982],{},"∑",[51,984,985,988,990],{},[62,986,987],{},"j",[54,989,80],{},[82,991,84],{},[62,993,711],{},[59,995,996,998],{},[54,997,982],{},[51,999,1000,1006,1008],{},[59,1001,1002,1004],{},[62,1003,64],{},[62,1005,67],{},[54,1007,380],{},[59,1009,1010,1012],{},[62,1011,814],{},[62,1013,987],{},[62,1015,1016],{"mathvariant":409},"∥",[59,1018,1019,1021],{},[62,1020,64],{},[62,1022,67],{},[54,1024,1025],{},"−",[59,1027,1028,1030],{},[62,1029,973],{},[62,1031,987],{},[382,1033,1034,1036],{},[62,1035,1016],{"mathvariant":409},[82,1037,1038],{},"2",[54,1040,819],{"separator":104},[96,1042,1043],{"encoding":98},"J(C, \\mu) = \\sum_{j=1}^{k} \\sum_{x_i \\in C_j} \\|x_i - \\mu_j\\|^2,",[35,1045,1047,1084,1353],{"className":1046,"ariaHidden":104},[103],[35,1048,1050,1053,1057,1060,1063,1066,1069,1072,1075,1078,1081],{"className":1049},[108],[35,1051],{"className":1052,"style":329},[112],[35,1054,964],{"className":1055,"style":1056},[121,125],"margin-right:0.0962em;",[35,1058,291],{"className":1059},[117],[35,1061,814],{"className":1062,"style":850},[121,125],[35,1064,819],{"className":1065},[890],[35,1067],{"className":1068,"style":894},[248],[35,1070,973],{"className":1071},[121,125],[35,1073,296],{"className":1074},[179],[35,1076],{"className":1077,"style":249},[248],[35,1079,80],{"className":1080},[214],[35,1082],{"className":1083,"style":249},[248],[35,1085,1087,1091,1163,1166,1296,1299,1302,1342,1346,1350],{"className":1086},[108],[35,1088],{"className":1089,"style":1090},[112],"height:1.486em;vertical-align:-0.497em;",[35,1092,1095,1101],{"className":1093},[1094],"mop",[35,1096,982],{"className":1097,"style":1100},[1094,1098,1099],"op-symbol","small-op","position:relative;top:0em;",[35,1102,1104],{"className":1103},[129],[35,1105,1107,1154],{"className":1106},[133,134],[35,1108,1110,1151],{"className":1109},[138],[35,1111,1114,1136],{"className":1112,"style":1113},[142],"height:0.989em;",[35,1115,1117,1120],{"style":1116},"top:-2.4003em;margin-left:0em;margin-right:0.05em;",[35,1118],{"className":1119,"style":151},[150],[35,1121,1123],{"className":1122},[155,156,157,158],[35,1124,1126,1130,1133],{"className":1125},[121,158],[35,1127,987],{"className":1128,"style":1129},[121,125,158],"margin-right:0.0572em;",[35,1131,80],{"className":1132},[214,158],[35,1134,84],{"className":1135},[121,158],[35,1137,1139,1142],{"style":1138},"top:-3.2029em;margin-right:0.05em;",[35,1140],{"className":1141,"style":151},[150],[35,1143,1145],{"className":1144},[155,156,157,158],[35,1146,1148],{"className":1147},[121,158],[35,1149,711],{"className":1150,"style":726},[121,125,158],[35,1152,166],{"className":1153},[165],[35,1155,1157],{"className":1156},[138],[35,1158,1161],{"className":1159,"style":1160},[142],"height:0.4358em;",[35,1162],{},[35,1164],{"className":1165,"style":894},[248],[35,1167,1169,1172],{"className":1168},[1094],[35,1170,982],{"className":1171,"style":1100},[1094,1098,1099],[35,1173,1175],{"className":1174},[129],[35,1176,1178,1287],{"className":1177},[133,134],[35,1179,1181,1284],{"className":1180},[138],[35,1182,1185],{"className":1183,"style":1184},[142],"height:0.1786em;",[35,1186,1187,1190],{"style":1116},[35,1188],{"className":1189,"style":151},[150],[35,1191,1193],{"className":1192},[155,156,157,158],[35,1194,1196,1239,1242],{"className":1195},[121,158],[35,1197,1199,1202],{"className":1198},[121,158],[35,1200,64],{"className":1201},[121,125,158],[35,1203,1205],{"className":1204},[129],[35,1206,1208,1230],{"className":1207},[133,134],[35,1209,1211,1227],{"className":1210},[138],[35,1212,1215],{"className":1213,"style":1214},[142],"height:0.3281em;",[35,1216,1218,1221],{"style":1217},"top:-2.357em;margin-left:0em;margin-right:0.0714em;",[35,1219],{"className":1220,"style":564},[150],[35,1222,1224],{"className":1223},[155,568,569,158],[35,1225,67],{"className":1226},[121,125,158],[35,1228,166],{"className":1229},[165],[35,1231,1233],{"className":1232},[138],[35,1234,1237],{"className":1235,"style":1236},[142],"height:0.143em;",[35,1238],{},[35,1240,380],{"className":1241},[214,158],[35,1243,1245,1248],{"className":1244},[121,158],[35,1246,814],{"className":1247,"style":850},[121,125,158],[35,1249,1251],{"className":1250},[129],[35,1252,1254,1275],{"className":1253},[133,134],[35,1255,1257,1272],{"className":1256},[138],[35,1258,1260],{"className":1259,"style":1214},[142],[35,1261,1263,1266],{"style":1262},"top:-2.357em;margin-left:-0.0715em;margin-right:0.0714em;",[35,1264],{"className":1265,"style":564},[150],[35,1267,1269],{"className":1268},[155,568,569,158],[35,1270,987],{"className":1271,"style":1129},[121,125,158],[35,1273,166],{"className":1274},[165],[35,1276,1278],{"className":1277},[138],[35,1279,1282],{"className":1280,"style":1281},[142],"height:0.2819em;",[35,1283],{},[35,1285,166],{"className":1286},[165],[35,1288,1290],{"className":1289},[138],[35,1291,1294],{"className":1292,"style":1293},[142],"height:0.497em;",[35,1295],{},[35,1297],{"className":1298,"style":894},[248],[35,1300,1016],{"className":1301},[121],[35,1303,1305,1308],{"className":1304},[121],[35,1306,64],{"className":1307},[121,125],[35,1309,1311],{"className":1310},[129],[35,1312,1314,1334],{"className":1313},[133,134],[35,1315,1317,1331],{"className":1316},[138],[35,1318,1320],{"className":1319,"style":143},[142],[35,1321,1322,1325],{"style":146},[35,1323],{"className":1324,"style":151},[150],[35,1326,1328],{"className":1327},[155,156,157,158],[35,1329,67],{"className":1330},[121,125,158],[35,1332,166],{"className":1333},[165],[35,1335,1337],{"className":1336},[138],[35,1338,1340],{"className":1339,"style":173},[142],[35,1341],{},[35,1343],{"className":1344,"style":1345},[248],"margin-right:0.2222em;",[35,1347,1025],{"className":1348},[1349],"mbin",[35,1351],{"className":1352,"style":1345},[248],[35,1354,1356,1360,1401,1431],{"className":1355},[108],[35,1357],{"className":1358,"style":1359},[112],"height:1.1002em;vertical-align:-0.2861em;",[35,1361,1363,1366],{"className":1362},[121],[35,1364,973],{"className":1365},[121,125],[35,1367,1369],{"className":1368},[129],[35,1370,1372,1392],{"className":1371},[133,134],[35,1373,1375,1389],{"className":1374},[138],[35,1376,1378],{"className":1377,"style":143},[142],[35,1379,1380,1383],{"style":146},[35,1381],{"className":1382,"style":151},[150],[35,1384,1386],{"className":1385},[155,156,157,158],[35,1387,987],{"className":1388,"style":1129},[121,125,158],[35,1390,166],{"className":1391},[165],[35,1393,1395],{"className":1394},[138],[35,1396,1399],{"className":1397,"style":1398},[142],"height:0.2861em;",[35,1400],{},[35,1402,1404,1407],{"className":1403},[121],[35,1405,1016],{"className":1406},[121],[35,1408,1410],{"className":1409},[129],[35,1411,1413],{"className":1412},[133],[35,1414,1416],{"className":1415},[138],[35,1417,1420],{"className":1418,"style":1419},[142],"height:0.8141em;",[35,1421,1422,1425],{"style":220},[35,1423],{"className":1424,"style":151},[150],[35,1426,1428],{"className":1427},[155,156,157,158],[35,1429,1038],{"className":1430},[121,158],[35,1432,819],{"className":1433},[890],"\nгде ",[35,1436,1438,1456],{"className":1437},[38],[35,1439,1441],{"className":1440},[42],[44,1442,1443],{"xmlns":46},[48,1444,1445,1453],{},[51,1446,1447],{},[59,1448,1449,1451],{},[62,1450,973],{},[62,1452,987],{},[96,1454,1455],{"encoding":98},"\\mu_j",[35,1457,1459],{"className":1458,"ariaHidden":104},[103],[35,1460,1462,1466],{"className":1461},[108],[35,1463],{"className":1464,"style":1465},[112],"height:0.7167em;vertical-align:-0.2861em;",[35,1467,1469,1472],{"className":1468},[121],[35,1470,973],{"className":1471},[121,125],[35,1473,1475],{"className":1474},[129],[35,1476,1478,1498],{"className":1477},[133,134],[35,1479,1481,1495],{"className":1480},[138],[35,1482,1484],{"className":1483,"style":143},[142],[35,1485,1486,1489],{"style":146},[35,1487],{"className":1488,"style":151},[150],[35,1490,1492],{"className":1491},[155,156,157,158],[35,1493,987],{"className":1494,"style":1129},[121,125,158],[35,1496,166],{"className":1497},[165],[35,1499,1501],{"className":1500},[138],[35,1502,1504],{"className":1503,"style":1398},[142],[35,1505],{}," — ",[348,1508,1509],{},"центроид",[353,1511,1512],{},"centroid",") кластера ",[35,1515,1517,1535],{"className":1516},[38],[35,1518,1520],{"className":1519},[42],[44,1521,1522],{"xmlns":46},[48,1523,1524,1532],{},[51,1525,1526],{},[59,1527,1528,1530],{},[62,1529,814],{},[62,1531,987],{},[96,1533,1534],{"encoding":98},"C_j",[35,1536,1538],{"className":1537,"ariaHidden":104},[103],[35,1539,1541,1545],{"className":1540},[108],[35,1542],{"className":1543,"style":1544},[112],"height:0.9694em;vertical-align:-0.2861em;",[35,1546,1548,1551],{"className":1547},[121],[35,1549,814],{"className":1550,"style":850},[121,125],[35,1552,1554],{"className":1553},[129],[35,1555,1557,1577],{"className":1556},[133,134],[35,1558,1560,1574],{"className":1559},[138],[35,1561,1563],{"className":1562,"style":143},[142],[35,1564,1565,1568],{"style":866},[35,1566],{"className":1567,"style":151},[150],[35,1569,1571],{"className":1570},[155,156,157,158],[35,1572,987],{"className":1573,"style":1129},[121,125,158],[35,1575,166],{"className":1576},[165],[35,1578,1580],{"className":1579},[138],[35,1581,1583],{"className":1582,"style":1398},[142],[35,1584],{},", среднее всех его точек. Минимизация ",[35,1587,1589,1602],{"className":1588},[38],[35,1590,1592],{"className":1591},[42],[44,1593,1594],{"xmlns":46},[48,1595,1596,1600],{},[51,1597,1598],{},[62,1599,964],{},[96,1601,964],{"encoding":98},[35,1603,1605],{"className":1604,"ariaHidden":104},[103],[35,1606,1608,1611],{"className":1607},[108],[35,1609],{"className":1610,"style":262},[112],[35,1612,964],{"className":1613,"style":1056},[121,125]," — задача NP-трудная, но у неё есть простая эвристика, известная как алгоритм Ллойда: выбрать начальные центроиды случайно, потом итеративно повторять два шага. На шаге назначения каждый объект приписывается ближайшему центроиду; на шаге пересчёта каждый центроид заменяется средним точек своего кластера. Итерации продолжаются, пока назначения не перестанут меняться (или меняться меньше заданного порога). Сходимость к локальному минимуму гарантирована, причём обычно за десятки итераций.",[1616,1617,1618,1619,1618,1624],"figure",{},"\n  ",[1620,1621],"img",{"src":1622,"alt":1623},"\u002Fimg\u002Faidt-iot-mii\u002Ftopic-06\u002Fkmeans_iterations.svg","Четыре итерации алгоритма k-средних: инициализация, назначение, пересчёт центроидов, сходимость",[1625,1626,1627],"figcaption",{},"Четыре итерации алгоритма k-средних на двумерной выборке с тремя кластерами",[15,1629,1630,1631,1659,1660,351,1663,1666,1667,1711,1712,1740,1741,1769,1770,351,1773,1776,1777,1848,1849,1893,1894,1939],{},"Главный практический вопрос — выбор числа кластеров ",[35,1632,1634,1647],{"className":1633},[38],[35,1635,1637],{"className":1636},[42],[44,1638,1639],{"xmlns":46},[48,1640,1641,1645],{},[51,1642,1643],{},[62,1644,711],{},[96,1646,711],{"encoding":98},[35,1648,1650],{"className":1649,"ariaHidden":104},[103],[35,1651,1653,1656],{"className":1652},[108],[35,1654],{"className":1655,"style":661},[112],[35,1657,711],{"className":1658,"style":726},[121,125],". У задачи нет «правильного» ответа: можно разбить выборку на 2 группы, на 5, на 50. Помогают полуэмпирические индикаторы. ",[348,1661,1662],{},"Метод локтя",[353,1664,1665],{},"elbow method",") строит зависимость ",[35,1668,1670,1690],{"className":1669},[38],[35,1671,1673],{"className":1672},[42],[44,1674,1675],{"xmlns":46},[48,1676,1677,1687],{},[51,1678,1679,1681,1683,1685],{},[62,1680,964],{},[54,1682,291],{"stretchy":56},[62,1684,711],{},[54,1686,296],{"stretchy":56},[96,1688,1689],{"encoding":98},"J(k)",[35,1691,1693],{"className":1692,"ariaHidden":104},[103],[35,1694,1696,1699,1702,1705,1708],{"className":1695},[108],[35,1697],{"className":1698,"style":329},[112],[35,1700,964],{"className":1701,"style":1056},[121,125],[35,1703,291],{"className":1704},[117],[35,1706,711],{"className":1707,"style":726},[121,125],[35,1709,296],{"className":1710},[179]," от ",[35,1713,1715,1728],{"className":1714},[38],[35,1716,1718],{"className":1717},[42],[44,1719,1720],{"xmlns":46},[48,1721,1722,1726],{},[51,1723,1724],{},[62,1725,711],{},[96,1727,711],{"encoding":98},[35,1729,1731],{"className":1730,"ariaHidden":104},[103],[35,1732,1734,1737],{"className":1733},[108],[35,1735],{"className":1736,"style":661},[112],[35,1738,711],{"className":1739,"style":726},[121,125]," и ищет на ней излом: при увеличении ",[35,1742,1744,1757],{"className":1743},[38],[35,1745,1747],{"className":1746},[42],[44,1748,1749],{"xmlns":46},[48,1750,1751,1755],{},[51,1752,1753],{},[62,1754,711],{},[96,1756,711],{"encoding":98},[35,1758,1760],{"className":1759,"ariaHidden":104},[103],[35,1761,1763,1766],{"className":1762},[108],[35,1764],{"className":1765,"style":661},[112],[35,1767,711],{"className":1768,"style":726},[121,125]," внутрикластерная сумма квадратов монотонно падает, но в какой-то момент скорость падения резко уменьшается. Точка излома — кандидат на оптимальное число кластеров. ",[348,1771,1772],{},"Силуэтный коэффициент",[353,1774,1775],{},"silhouette score",") для каждого объекта ",[35,1778,1780,1798],{"className":1779},[38],[35,1781,1783],{"className":1782},[42],[44,1784,1785],{"xmlns":46},[48,1786,1787,1795],{},[51,1788,1789],{},[59,1790,1791,1793],{},[62,1792,64],{},[62,1794,67],{},[96,1796,1797],{"encoding":98},"x_i",[35,1799,1801],{"className":1800,"ariaHidden":104},[103],[35,1802,1804,1808],{"className":1803},[108],[35,1805],{"className":1806,"style":1807},[112],"height:0.5806em;vertical-align:-0.15em;",[35,1809,1811,1814],{"className":1810},[121],[35,1812,64],{"className":1813},[121,125],[35,1815,1817],{"className":1816},[129],[35,1818,1820,1840],{"className":1819},[133,134],[35,1821,1823,1837],{"className":1822},[138],[35,1824,1826],{"className":1825,"style":143},[142],[35,1827,1828,1831],{"style":146},[35,1829],{"className":1830,"style":151},[150],[35,1832,1834],{"className":1833},[155,156,157,158],[35,1835,67],{"className":1836},[121,125,158],[35,1838,166],{"className":1839},[165],[35,1841,1843],{"className":1842},[138],[35,1844,1846],{"className":1845,"style":173},[142],[35,1847],{}," сравнивает среднее расстояние до точек своего кластера ",[35,1850,1852,1872],{"className":1851},[38],[35,1853,1855],{"className":1854},[42],[44,1856,1857],{"xmlns":46},[48,1858,1859,1869],{},[51,1860,1861,1863,1865,1867],{},[62,1862,734],{},[54,1864,291],{"stretchy":56},[62,1866,67],{},[54,1868,296],{"stretchy":56},[96,1870,1871],{"encoding":98},"a(i)",[35,1873,1875],{"className":1874,"ariaHidden":104},[103],[35,1876,1878,1881,1884,1887,1890],{"className":1877},[108],[35,1879],{"className":1880,"style":329},[112],[35,1882,734],{"className":1883},[121,125],[35,1885,291],{"className":1886},[117],[35,1888,67],{"className":1889},[121,125],[35,1891,296],{"className":1892},[179]," со средним расстоянием до точек ближайшего чужого кластера ",[35,1895,1897,1918],{"className":1896},[38],[35,1898,1900],{"className":1899},[42],[44,1901,1902],{"xmlns":46},[48,1903,1904,1915],{},[51,1905,1906,1909,1911,1913],{},[62,1907,1908],{},"b",[54,1910,291],{"stretchy":56},[62,1912,67],{},[54,1914,296],{"stretchy":56},[96,1916,1917],{"encoding":98},"b(i)",[35,1919,1921],{"className":1920,"ariaHidden":104},[103],[35,1922,1924,1927,1930,1933,1936],{"className":1923},[108],[35,1925],{"className":1926,"style":329},[112],[35,1928,1908],{"className":1929},[121,125],[35,1931,291],{"className":1932},[117],[35,1934,67],{"className":1935},[121,125],[35,1937,296],{"className":1938},[179],":",[15,1941,1942],{},[35,1943,1945,2040],{"className":1944},[38],[35,1946,1948],{"className":1947},[42],[44,1949,1950],{"xmlns":46},[48,1951,1952,2037],{},[51,1953,1954,1957,1959,1961,1963,1965,2018,2020,2023,2025,2027,2029,2031,2034],{},[62,1955,1956],{},"s",[54,1958,291],{"stretchy":56},[62,1960,67],{},[54,1962,296],{"stretchy":56},[54,1964,80],{},[1966,1967,1968,1988],"mfrac",{},[51,1969,1970,1972,1974,1976,1978,1980,1982,1984,1986],{},[62,1971,1908],{},[54,1973,291],{"stretchy":56},[62,1975,67],{},[54,1977,296],{"stretchy":56},[54,1979,1025],{},[62,1981,734],{},[54,1983,291],{"stretchy":56},[62,1985,67],{},[54,1987,296],{"stretchy":56},[51,1989,1990,1993,1996,1998,2000,2002,2004,2006,2008,2010,2012,2014,2016],{},[62,1991,1992],{},"max",[54,1994,1995],{},"⁡",[54,1997,291],{"stretchy":56},[62,1999,734],{},[54,2001,291],{"stretchy":56},[62,2003,67],{},[54,2005,296],{"stretchy":56},[54,2007,819],{"separator":104},[62,2009,1908],{},[54,2011,291],{"stretchy":56},[62,2013,67],{},[54,2015,296],{"stretchy":56},[54,2017,296],{"stretchy":56},[54,2019,380],{},[54,2021,2022],{"stretchy":56},"[",[54,2024,1025],{},[82,2026,84],{},[54,2028,819],{"separator":104},[82,2030,84],{},[54,2032,2033],{"stretchy":56},"]",[62,2035,2036],{"mathvariant":409},".",[96,2038,2039],{"encoding":98},"s(i) = \\frac{b(i) - a(i)}{\\max(a(i), b(i))} \\in [-1, 1].",[35,2041,2043,2070,2228],{"className":2042,"ariaHidden":104},[103],[35,2044,2046,2049,2052,2055,2058,2061,2064,2067],{"className":2045},[108],[35,2047],{"className":2048,"style":329},[112],[35,2050,1956],{"className":2051},[121,125],[35,2053,291],{"className":2054},[117],[35,2056,67],{"className":2057},[121,125],[35,2059,296],{"className":2060},[179],[35,2062],{"className":2063,"style":249},[248],[35,2065,80],{"className":2066},[214],[35,2068],{"className":2069,"style":249},[248],[35,2071,2073,2077,2219,2222,2225],{"className":2072},[108],[35,2074],{"className":2075,"style":2076},[112],"height:1.53em;vertical-align:-0.52em;",[35,2078,2080,2084,2216],{"className":2079},[121],[35,2081],{"className":2082},[117,2083],"nulldelimiter",[35,2085,2087],{"className":2086},[1966],[35,2088,2090,2207],{"className":2089},[133,134],[35,2091,2093,2204],{"className":2092},[138],[35,2094,2097,2154,2165],{"className":2095,"style":2096},[142],"height:1.01em;",[35,2098,2100,2104],{"style":2099},"top:-2.655em;",[35,2101],{"className":2102,"style":2103},[150],"height:3em;",[35,2105,2107],{"className":2106},[155,156,157,158],[35,2108,2110,2123,2126,2129,2132,2135,2138,2141,2144,2147,2150],{"className":2109},[121,158],[35,2111,2113,2117,2120],{"className":2112},[1094,158],[35,2114,2116],{"className":2115},[158],"m",[35,2118,734],{"className":2119},[158],[35,2121,64],{"className":2122},[158],[35,2124,291],{"className":2125},[117,158],[35,2127,734],{"className":2128},[121,125,158],[35,2130,291],{"className":2131},[117,158],[35,2133,67],{"className":2134},[121,125,158],[35,2136,296],{"className":2137},[179,158],[35,2139,819],{"className":2140},[890,158],[35,2142,1908],{"className":2143},[121,125,158],[35,2145,291],{"className":2146},[117,158],[35,2148,67],{"className":2149},[121,125,158],[35,2151,2153],{"className":2152},[179,158],"))",[35,2155,2157,2160],{"style":2156},"top:-3.23em;",[35,2158],{"className":2159,"style":2103},[150],[35,2161],{"className":2162,"style":2164},[2163],"frac-line","border-bottom-width:0.04em;",[35,2166,2168,2171],{"style":2167},"top:-3.485em;",[35,2169],{"className":2170,"style":2103},[150],[35,2172,2174],{"className":2173},[155,156,157,158],[35,2175,2177,2180,2183,2186,2189,2192,2195,2198,2201],{"className":2176},[121,158],[35,2178,1908],{"className":2179},[121,125,158],[35,2181,291],{"className":2182},[117,158],[35,2184,67],{"className":2185},[121,125,158],[35,2187,296],{"className":2188},[179,158],[35,2190,1025],{"className":2191},[1349,158],[35,2193,734],{"className":2194},[121,125,158],[35,2196,291],{"className":2197},[117,158],[35,2199,67],{"className":2200},[121,125,158],[35,2202,296],{"className":2203},[179,158],[35,2205,166],{"className":2206},[165],[35,2208,2210],{"className":2209},[138],[35,2211,2214],{"className":2212,"style":2213},[142],"height:0.52em;",[35,2215],{},[35,2217],{"className":2218},[179,2083],[35,2220],{"className":2221,"style":249},[248],[35,2223,380],{"className":2224},[214],[35,2226],{"className":2227,"style":249},[248],[35,2229,2231,2234,2237,2240,2243,2246,2249,2252,2255],{"className":2230},[108],[35,2232],{"className":2233,"style":329},[112],[35,2235,2022],{"className":2236},[117],[35,2238,1025],{"className":2239},[121],[35,2241,84],{"className":2242},[121],[35,2244,819],{"className":2245},[890],[35,2247],{"className":2248,"style":894},[248],[35,2250,84],{"className":2251},[121],[35,2253,2033],{"className":2254},[179],[35,2256,2036],{"className":2257},[121],[15,2259,2260,2261,2305],{},"Среднее ",[35,2262,2264,2284],{"className":2263},[38],[35,2265,2267],{"className":2266},[42],[44,2268,2269],{"xmlns":46},[48,2270,2271,2281],{},[51,2272,2273,2275,2277,2279],{},[62,2274,1956],{},[54,2276,291],{"stretchy":56},[62,2278,67],{},[54,2280,296],{"stretchy":56},[96,2282,2283],{"encoding":98},"s(i)",[35,2285,2287],{"className":2286,"ariaHidden":104},[103],[35,2288,2290,2293,2296,2299,2302],{"className":2289},[108],[35,2291],{"className":2292,"style":329},[112],[35,2294,1956],{"className":2295},[121,125],[35,2297,291],{"className":2298},[117],[35,2300,67],{"className":2301},[121,125],[35,2303,296],{"className":2304},[179]," по выборке даёт интегральный показатель: значения, близкие к 1, говорят о хорошо разделённых кластерах, значения, близкие к нулю — о размытых границах. На практике обе методики дают подсказку, а не приговор: финальное число кластеров обычно фиксируется с учётом содержательных соображений — например, бюджета на персонализацию или числа сегментов, которые продукт-менеджер готов поддерживать.",[15,2307,2308,2309,2337,2338,2341,2342,2370,2371,2374,2375,2403],{},"У ",[35,2310,2312,2325],{"className":2311},[38],[35,2313,2315],{"className":2314},[42],[44,2316,2317],{"xmlns":46},[48,2318,2319,2323],{},[51,2320,2321],{},[62,2322,711],{},[96,2324,711],{"encoding":98},[35,2326,2328],{"className":2327,"ariaHidden":104},[103],[35,2329,2331,2334],{"className":2330},[108],[35,2332],{"className":2333,"style":661},[112],[35,2335,711],{"className":2336,"style":726},[121,125],"-средних есть три принципиальных ограничения. Первое — ",[348,2339,2340],{},"чувствительность к инициализации",": разные начальные центроиды приводят к разным локальным минимумам ",[35,2343,2345,2358],{"className":2344},[38],[35,2346,2348],{"className":2347},[42],[44,2349,2350],{"xmlns":46},[48,2351,2352,2356],{},[51,2353,2354],{},[62,2355,964],{},[96,2357,964],{"encoding":98},[35,2359,2361],{"className":2360,"ariaHidden":104},[103],[35,2362,2364,2367],{"className":2363},[108],[35,2365],{"className":2366,"style":262},[112],[35,2368,964],{"className":2369,"style":1056},[121,125],", и плохая инициализация может «зажать» один кластер в углу выборки, оставив остальные плохо разделёнными. Второе — ",[348,2372,2373],{},"сферическая форма кластеров",": метод неявно предполагает, что точки кластера расположены симметрично вокруг своего центра, и плохо работает на вытянутых или вложенных структурах. Третье — необходимость задавать ",[35,2376,2378,2391],{"className":2377},[38],[35,2379,2381],{"className":2380},[42],[44,2382,2383],{"xmlns":46},[48,2384,2385,2389],{},[51,2386,2387],{},[62,2388,711],{},[96,2390,711],{"encoding":98},[35,2392,2394],{"className":2393,"ariaHidden":104},[103],[35,2395,2397,2400],{"className":2396},[108],[35,2398],{"className":2399,"style":661},[112],[35,2401,711],{"className":2402,"style":726},[121,125]," заранее, что мы только что обсудили.",[15,2405,2406,2407,2410,2411,2419,2420,2482,2483,2487,2488,2490],{},"С инициализацией борются эвристикой ",[348,2408,2409],{},"k-means++"," ",[729,2412,2414],{"className":2413},[732],[734,2415,2417],{"href":2416},"#ref-2",[35,2418,1038],{},": первый центроид выбирается случайно, каждый следующий — с вероятностью, пропорциональной квадрату расстояния до ближайшего уже выбранного центроида. Идея в том, чтобы стартовые центроиды были «разнесены» по выборке. Авторы показали, что такая инициализация в среднем даёт решение, отличающееся от глобального оптимума не более чем в ",[35,2421,2423,2449],{"className":2422},[38],[35,2424,2426],{"className":2425},[42],[44,2427,2428],{"xmlns":46},[48,2429,2430,2446],{},[51,2431,2432,2435,2437,2440,2442,2444],{},[62,2433,2434],{},"O",[54,2436,291],{"stretchy":56},[62,2438,2439],{},"log",[54,2441,1995],{},[62,2443,711],{},[54,2445,296],{"stretchy":56},[96,2447,2448],{"encoding":98},"O(\\log k)",[35,2450,2452],{"className":2451,"ariaHidden":104},[103],[35,2453,2455,2458,2462,2465,2473,2476,2479],{"className":2454},[108],[35,2456],{"className":2457,"style":329},[112],[35,2459,2434],{"className":2460,"style":2461},[121,125],"margin-right:0.0278em;",[35,2463,291],{"className":2464},[117],[35,2466,2468,2469],{"className":2467},[1094],"lo",[35,2470,2472],{"style":2471},"margin-right:0.0139em;","g",[35,2474],{"className":2475,"style":894},[248],[35,2477,711],{"className":2478,"style":726},[121,125],[35,2480,296],{"className":2481},[179]," раз — слабее, чем хотелось бы в теории, но на порядок надёжнее случайного старта на практике. По умолчанию в ",[2484,2485,2486],"code",{},"scikit-learn"," используется именно ",[2484,2489,2409],{},"; «чистого» случайного запуска без особых причин стоит избегать.",[27,2492,2494],{"id":2493},"dbscan","DBSCAN",[15,2496,2497,2498,2526,2527,2530,2531,2540],{},"Когда кластеры имеют сложную форму — вытянутые, изогнутые, концентрические — ",[35,2499,2501,2514],{"className":2500},[38],[35,2502,2504],{"className":2503},[42],[44,2505,2506],{"xmlns":46},[48,2507,2508,2512],{},[51,2509,2510],{},[62,2511,711],{},[96,2513,711],{"encoding":98},[35,2515,2517],{"className":2516,"ariaHidden":104},[103],[35,2518,2520,2523],{"className":2519},[108],[35,2521],{"className":2522,"style":661},[112],[35,2524,711],{"className":2525,"style":726},[121,125],"-средние работают плохо: они разрезают такие структуры по прямой. Алгоритм DBSCAN (англ. ",[353,2528,2529],{},"Density-Based Spatial Clustering of Applications with Noise",") подходит к задаче с другой стороны ",[729,2532,2534],{"className":2533},[732],[734,2535,2537],{"href":2536},"#ref-3",[35,2538,2539],{},"3",": кластер — это плотная область пространства, отделённая от других плотных областей разреженной зоной. Никакой сферичности не предполагается, число кластеров не задаётся — оно определяется самой структурой данных.",[15,2542,2543,2544,2575,2576,2611,2612,351,2615,2618,2619,2647,2648,2679,2680,351,2683,2686,2687,351,2690,2693],{},"Алгоритм опирается на два параметра. Радиус ",[35,2545,2547,2562],{"className":2546},[38],[35,2548,2550],{"className":2549},[42],[44,2551,2552],{"xmlns":46},[48,2553,2554,2559],{},[51,2555,2556],{},[62,2557,2558],{},"ε",[96,2560,2561],{"encoding":98},"\\varepsilon",[35,2563,2565],{"className":2564,"ariaHidden":104},[103],[35,2566,2568,2572],{"className":2567},[108],[35,2569],{"className":2570,"style":2571},[112],"height:0.4306em;",[35,2573,2558],{"className":2574},[121,125]," задаёт окрестность точки; число ",[35,2577,2579,2595],{"className":2578},[38],[35,2580,2582],{"className":2581},[42],[44,2583,2584],{"xmlns":46},[48,2585,2586,2592],{},[51,2587,2588],{},[2589,2590,2591],"mtext",{},"minPts",[96,2593,2594],{"encoding":98},"\\text{minPts}",[35,2596,2598],{"className":2597,"ariaHidden":104},[103],[35,2599,2601,2604],{"className":2600},[108],[35,2602],{"className":2603,"style":262},[112],[35,2605,2608],{"className":2606},[121,2607],"text",[35,2609,2591],{"className":2610},[121]," — минимальное число соседей, при котором точка считается «плотной». На основе этих параметров вводятся три типа точек. ",[348,2613,2614],{},"Ядровая точка",[353,2616,2617],{},"core point",") — точка, в ",[35,2620,2622,2635],{"className":2621},[38],[35,2623,2625],{"className":2624},[42],[44,2626,2627],{"xmlns":46},[48,2628,2629,2633],{},[51,2630,2631],{},[62,2632,2558],{},[96,2634,2561],{"encoding":98},[35,2636,2638],{"className":2637,"ariaHidden":104},[103],[35,2639,2641,2644],{"className":2640},[108],[35,2642],{"className":2643,"style":2571},[112],[35,2645,2558],{"className":2646},[121,125],"-окрестности которой не менее ",[35,2649,2651,2664],{"className":2650},[38],[35,2652,2654],{"className":2653},[42],[44,2655,2656],{"xmlns":46},[48,2657,2658,2662],{},[51,2659,2660],{},[2589,2661,2591],{},[96,2663,2594],{"encoding":98},[35,2665,2667],{"className":2666,"ariaHidden":104},[103],[35,2668,2670,2673],{"className":2669},[108],[35,2671],{"className":2672,"style":262},[112],[35,2674,2676],{"className":2675},[121,2607],[35,2677,2591],{"className":2678},[121]," объектов выборки, включая саму точку. ",[348,2681,2682],{},"Граничная точка",[353,2684,2685],{},"border point",") — точка, попадающая в окрестность какой-то ядровой, но сама ядровой не являющаяся. Остальные точки — ",[348,2688,2689],{},"шум",[353,2691,2692],{},"noise",") — не принадлежат ни одному кластеру.",[1616,2695,1618,2696,1618,2700],{},[1620,2697],{"src":2698,"alt":2699},"\u002Fimg\u002Faidt-iot-mii\u002Ftopic-06\u002Fdbscan_concepts.svg","Точки трёх типов в DBSCAN: ядровые, граничные и шум; ε-окрестность и связи плотностной достижимости",[1625,2701,2702],{},"Типы точек в DBSCAN: ядровые, граничные и шум; пунктиром показаны ε-окрестности",[15,2704,2705,2706,2734],{},"Кластер строится как максимальный связный по плотности набор точек: две ядровые точки попадают в один кластер, если до одной можно добраться от другой цепочкой ",[35,2707,2709,2722],{"className":2708},[38],[35,2710,2712],{"className":2711},[42],[44,2713,2714],{"xmlns":46},[48,2715,2716,2720],{},[51,2717,2718],{},[62,2719,2558],{},[96,2721,2561],{"encoding":98},[35,2723,2725],{"className":2724,"ariaHidden":104},[103],[35,2726,2728,2731],{"className":2727},[108],[35,2729],{"className":2730,"style":2571},[112],[35,2732,2558],{"className":2733},[121,125],"-шагов через ядровые точки; граничные точки присоединяются к ближайшему кластеру. Алгоритм линеен по числу объектов при использовании пространственного индекса (например, KD-дерева) для поиска соседей.",[15,2736,2737,2738,2766,2767,2795,2796,2848,2849,2882],{},"Преимущества DBSCAN перед ",[35,2739,2741,2754],{"className":2740},[38],[35,2742,2744],{"className":2743},[42],[44,2745,2746],{"xmlns":46},[48,2747,2748,2752],{},[51,2749,2750],{},[62,2751,711],{},[96,2753,711],{"encoding":98},[35,2755,2757],{"className":2756,"ariaHidden":104},[103],[35,2758,2760,2763],{"className":2759},[108],[35,2761],{"className":2762,"style":661},[112],[35,2764,711],{"className":2765,"style":726},[121,125],"-средними хорошо видны на синтетических примерах. На двух концентрических кольцах ",[35,2768,2770,2783],{"className":2769},[38],[35,2771,2773],{"className":2772},[42],[44,2774,2775],{"xmlns":46},[48,2776,2777,2781],{},[51,2778,2779],{},[62,2780,711],{},[96,2782,711],{"encoding":98},[35,2784,2786],{"className":2785,"ariaHidden":104},[103],[35,2787,2789,2792],{"className":2788},[108],[35,2790],{"className":2791,"style":661},[112],[35,2793,711],{"className":2794,"style":726},[121,125],"-средние с ",[35,2797,2799,2817],{"className":2798},[38],[35,2800,2802],{"className":2801},[42],[44,2803,2804],{"xmlns":46},[48,2805,2806,2814],{},[51,2807,2808,2810,2812],{},[62,2809,711],{},[54,2811,80],{},[82,2813,1038],{},[96,2815,2816],{"encoding":98},"k = 2",[35,2818,2820,2838],{"className":2819,"ariaHidden":104},[103],[35,2821,2823,2826,2829,2832,2835],{"className":2822},[108],[35,2824],{"className":2825,"style":661},[112],[35,2827,711],{"className":2828,"style":726},[121,125],[35,2830],{"className":2831,"style":249},[248],[35,2833,80],{"className":2834},[214],[35,2836],{"className":2837,"style":249},[248],[35,2839,2841,2845],{"className":2840},[108],[35,2842],{"className":2843,"style":2844},[112],"height:0.6444em;",[35,2846,1038],{"className":2847},[121]," разрежут плоскость пополам; DBSCAN правильно отделит внешнее кольцо от внутреннего. Шум — точки, далёкие от любого кластера, — алгоритм явно помечает как ",[35,2850,2852,2866],{"className":2851},[38],[35,2853,2855],{"className":2854},[42],[44,2856,2857],{"xmlns":46},[48,2858,2859,2863],{},[51,2860,2861],{},[2589,2862,2692],{},[96,2864,2865],{"encoding":98},"\\text{noise}",[35,2867,2869],{"className":2868,"ariaHidden":104},[103],[35,2870,2872,2876],{"className":2871},[108],[35,2873],{"className":2874,"style":2875},[112],"height:0.6679em;",[35,2877,2879],{"className":2878},[121,2607],[35,2880,2692],{"className":2881},[121],", что напрямую полезно для обнаружения аномалий: подозрительные транзакции, выбросы в сенсорных данных, опечатки в адресной базе оказываются именно в этой категории. Число кластеров определяется автоматически и может равняться нулю, если данные слишком разрежены.",[15,2884,2885,2886,2914,2915,2946,2947,2975,2976,3004,3005,3033,3034,3088,3089,3117,3118,3146,3147,3156],{},"Слабые места тоже есть. Главное — чувствительность к выбору ",[35,2887,2889,2902],{"className":2888},[38],[35,2890,2892],{"className":2891},[42],[44,2893,2894],{"xmlns":46},[48,2895,2896,2900],{},[51,2897,2898],{},[62,2899,2558],{},[96,2901,2561],{"encoding":98},[35,2903,2905],{"className":2904,"ariaHidden":104},[103],[35,2906,2908,2911],{"className":2907},[108],[35,2909],{"className":2910,"style":2571},[112],[35,2912,2558],{"className":2913},[121,125]," и ",[35,2916,2918,2931],{"className":2917},[38],[35,2919,2921],{"className":2920},[42],[44,2922,2923],{"xmlns":46},[48,2924,2925,2929],{},[51,2926,2927],{},[2589,2928,2591],{},[96,2930,2594],{"encoding":98},[35,2932,2934],{"className":2933,"ariaHidden":104},[103],[35,2935,2937,2940],{"className":2936},[108],[35,2938],{"className":2939,"style":262},[112],[35,2941,2943],{"className":2942},[121,2607],[35,2944,2591],{"className":2945},[121],": слишком маленький ",[35,2948,2950,2963],{"className":2949},[38],[35,2951,2953],{"className":2952},[42],[44,2954,2955],{"xmlns":46},[48,2956,2957,2961],{},[51,2958,2959],{},[62,2960,2558],{},[96,2962,2561],{"encoding":98},[35,2964,2966],{"className":2965,"ariaHidden":104},[103],[35,2967,2969,2972],{"className":2968},[108],[35,2970],{"className":2971,"style":2571},[112],[35,2973,2558],{"className":2974},[121,125]," оставит всё в шуме, слишком большой склеит кластеры в один. Стандартная эвристика — построить ",[35,2977,2979,2992],{"className":2978},[38],[35,2980,2982],{"className":2981},[42],[44,2983,2984],{"xmlns":46},[48,2985,2986,2990],{},[51,2987,2988],{},[62,2989,711],{},[96,2991,711],{"encoding":98},[35,2993,2995],{"className":2994,"ariaHidden":104},[103],[35,2996,2998,3001],{"className":2997},[108],[35,2999],{"className":3000,"style":661},[112],[35,3002,711],{"className":3003,"style":726},[121,125],"-distance plot: упорядочить все точки выборки по расстоянию до своего ",[35,3006,3008,3021],{"className":3007},[38],[35,3009,3011],{"className":3010},[42],[44,3012,3013],{"xmlns":46},[48,3014,3015,3019],{},[51,3016,3017],{},[62,3018,711],{},[96,3020,711],{"encoding":98},[35,3022,3024],{"className":3023,"ariaHidden":104},[103],[35,3025,3027,3030],{"className":3026},[108],[35,3028],{"className":3029,"style":661},[112],[35,3031,711],{"className":3032,"style":726},[121,125],"-го ближайшего соседа (где ",[35,3035,3037,3055],{"className":3036},[38],[35,3038,3040],{"className":3039},[42],[44,3041,3042],{"xmlns":46},[48,3043,3044,3052],{},[51,3045,3046,3048,3050],{},[62,3047,711],{},[54,3049,80],{},[2589,3051,2591],{},[96,3053,3054],{"encoding":98},"k = \\text{minPts}",[35,3056,3058,3076],{"className":3057,"ariaHidden":104},[103],[35,3059,3061,3064,3067,3070,3073],{"className":3060},[108],[35,3062],{"className":3063,"style":661},[112],[35,3065,711],{"className":3066,"style":726},[121,125],[35,3068],{"className":3069,"style":249},[248],[35,3071,80],{"className":3072},[214],[35,3074],{"className":3075,"style":249},[248],[35,3077,3079,3082],{"className":3078},[108],[35,3080],{"className":3081,"style":262},[112],[35,3083,3085],{"className":3084},[121,2607],[35,3086,2591],{"className":3087},[121],") и взять ",[35,3090,3092,3105],{"className":3091},[38],[35,3093,3095],{"className":3094},[42],[44,3096,3097],{"xmlns":46},[48,3098,3099,3103],{},[51,3100,3101],{},[62,3102,2558],{},[96,3104,2561],{"encoding":98},[35,3106,3108],{"className":3107,"ariaHidden":104},[103],[35,3109,3111,3114],{"className":3110},[108],[35,3112],{"className":3113,"style":2571},[112],[35,3115,2558],{"className":3116},[121,125]," в точке излома кривой. Второе ограничение принципиальнее: DBSCAN исходит из единой плотности всех кластеров, а если в выборке плотные и разреженные группы соседствуют, общий ",[35,3119,3121,3134],{"className":3120},[38],[35,3122,3124],{"className":3123},[42],[44,3125,3126],{"xmlns":46},[48,3127,3128,3132],{},[51,3129,3130],{},[62,3131,2558],{},[96,3133,2561],{"encoding":98},[35,3135,3137],{"className":3136,"ariaHidden":104},[103],[35,3138,3140,3143],{"className":3139},[108],[35,3141],{"className":3142,"style":2571},[112],[35,3144,2558],{"className":3145},[121,125]," либо «съест» разреженные, либо склеит плотные. Эту проблему адресуют расширения вроде OPTICS ",[729,3148,3150],{"className":3149},[732],[734,3151,3153],{"href":3152},"#ref-4",[35,3154,3155],{},"4",", строящие иерархическую плотностную структуру вместо одного разбиения.",[27,3158,3160],{"id":3159},"иерархическая-кластеризация","Иерархическая кластеризация",[15,3162,3163,3164,351,3167,3170,3171,351,3174,3177],{},"Третий подход — иерархический — даёт не одно разбиение, а целое семейство, упорядоченное по числу кластеров: от каждого объекта в своём кластере до всех объектов в одном. Различают ",[348,3165,3166],{},"агломеративную",[353,3168,3169],{},"agglomerative",") кластеризацию, идущую снизу вверх (объекты последовательно сливаются в группы), и ",[348,3172,3173],{},"дивизивную",[353,3175,3176],{},"divisive",") — сверху вниз, рекурсивно разбивающую один общий кластер. На практике агломеративная встречается чаще — у неё проще реализация и понятнее интерпретация.",[15,3179,3180,3181,2914,3210,3240,3241,3244,3245,3447,3448,3451,3452,3455,3456,3459,3460,3488],{},"Алгоритм агломеративной кластеризации лаконичен. На старте каждая точка — отдельный кластер. На каждом шаге сливаются два ближайших кластера, после чего расстояния пересчитываются. Процесс продолжается, пока не останется один кластер. Главный выбор — как именно определять расстояние между двумя кластерами ",[35,3182,3184,3198],{"className":3183},[38],[35,3185,3187],{"className":3186},[42],[44,3188,3189],{"xmlns":46},[48,3190,3191,3196],{},[51,3192,3193],{},[62,3194,3195],{},"A",[96,3197,3195],{"encoding":98},[35,3199,3201],{"className":3200,"ariaHidden":104},[103],[35,3202,3204,3207],{"className":3203},[108],[35,3205],{"className":3206,"style":262},[112],[35,3208,3195],{"className":3209},[121,125],[35,3211,3213,3227],{"className":3212},[38],[35,3214,3216],{"className":3215},[42],[44,3217,3218],{"xmlns":46},[48,3219,3220,3225],{},[51,3221,3222],{},[62,3223,3224],{},"B",[96,3226,3224],{"encoding":98},[35,3228,3230],{"className":3229,"ariaHidden":104},[103],[35,3231,3233,3236],{"className":3232},[108],[35,3234],{"className":3235,"style":262},[112],[35,3237,3224],{"className":3238,"style":3239},[121,125],"margin-right:0.0502em;",", состоящими более чем из одной точки. Стандартных метрик четыре. ",[348,3242,3243],{},"Single linkage"," берёт минимум попарных расстояний: ",[35,3246,3248,3309],{"className":3247},[38],[35,3249,3251],{"className":3250},[42],[44,3252,3253],{"xmlns":46},[48,3254,3255,3306],{},[51,3256,3257,3259,3261,3263,3265,3267,3269,3271,3296,3298,3300,3302,3304],{},[62,3258,390],{},[54,3260,291],{"stretchy":56},[62,3262,3195],{},[54,3264,819],{"separator":104},[62,3266,3224],{},[54,3268,296],{"stretchy":56},[54,3270,80],{},[59,3272,3273,3280],{},[51,3274,3275,3278],{},[62,3276,3277],{},"min",[54,3279,1995],{},[51,3281,3282,3284,3286,3288,3290,3292,3294],{},[62,3283,734],{},[54,3285,380],{},[62,3287,3195],{},[54,3289,819],{"separator":104},[62,3291,1908],{},[54,3293,380],{},[62,3295,3224],{},[62,3297,1016],{"mathvariant":409},[62,3299,734],{},[54,3301,1025],{},[62,3303,1908],{},[62,3305,1016],{"mathvariant":409},[96,3307,3308],{"encoding":98},"d(A, B) = \\min_{a \\in A, b \\in B} \\|a - b\\|",[35,3310,3312,3348,3435],{"className":3311,"ariaHidden":104},[103],[35,3313,3315,3318,3321,3324,3327,3330,3333,3336,3339,3342,3345],{"className":3314},[108],[35,3316],{"className":3317,"style":329},[112],[35,3319,390],{"className":3320},[121,125],[35,3322,291],{"className":3323},[117],[35,3325,3195],{"className":3326},[121,125],[35,3328,819],{"className":3329},[890],[35,3331],{"className":3332,"style":894},[248],[35,3334,3224],{"className":3335,"style":3239},[121,125],[35,3337,296],{"className":3338},[179],[35,3340],{"className":3341,"style":249},[248],[35,3343,80],{"className":3344},[214],[35,3346],{"className":3347,"style":249},[248],[35,3349,3351,3355,3417,3420,3423,3426,3429,3432],{"className":3350},[108],[35,3352],{"className":3353,"style":3354},[112],"height:1.0361em;vertical-align:-0.2861em;",[35,3356,3358,3361],{"className":3357},[1094],[35,3359,3277],{"className":3360},[1094],[35,3362,3364],{"className":3363},[129],[35,3365,3367,3409],{"className":3366},[133,134],[35,3368,3370,3406],{"className":3369},[138],[35,3371,3373],{"className":3372,"style":926},[142],[35,3374,3376,3379],{"style":3375},"top:-2.55em;margin-right:0.05em;",[35,3377],{"className":3378,"style":151},[150],[35,3380,3382],{"className":3381},[155,156,157,158],[35,3383,3385,3388,3391,3394,3397,3400,3403],{"className":3384},[121,158],[35,3386,734],{"className":3387},[121,125,158],[35,3389,380],{"className":3390},[214,158],[35,3392,3195],{"className":3393},[121,125,158],[35,3395,819],{"className":3396},[890,158],[35,3398,1908],{"className":3399},[121,125,158],[35,3401,380],{"className":3402},[214,158],[35,3404,3224],{"className":3405,"style":3239},[121,125,158],[35,3407,166],{"className":3408},[165],[35,3410,3412],{"className":3411},[138],[35,3413,3415],{"className":3414,"style":1398},[142],[35,3416],{},[35,3418],{"className":3419,"style":894},[248],[35,3421,1016],{"className":3422},[121],[35,3424,734],{"className":3425},[121,125],[35,3427],{"className":3428,"style":1345},[248],[35,3430,1025],{"className":3431},[1349],[35,3433],{"className":3434,"style":1345},[248],[35,3436,3438,3441,3444],{"className":3437},[108],[35,3439],{"className":3440,"style":329},[112],[35,3442,1908],{"className":3443},[121,125],[35,3445,1016],{"className":3446},[121]," — даёт длинные «цепочки», склонные к эффекту хвоста. ",[348,3449,3450],{},"Complete linkage"," — максимум: даёт компактные шарообразные кластеры, плохо адаптируется к вытянутым формам. ",[348,3453,3454],{},"Average linkage"," — среднее: компромисс между крайностями. ",[348,3457,3458],{},"Ward"," минимизирует прирост внутрикластерной суммы квадратов при слиянии — даёт сбалансированные кластеры одинакового размера, по духу близок к ",[35,3461,3463,3476],{"className":3462},[38],[35,3464,3466],{"className":3465},[42],[44,3467,3468],{"xmlns":46},[48,3469,3470,3474],{},[51,3471,3472],{},[62,3473,711],{},[96,3475,711],{"encoding":98},[35,3477,3479],{"className":3478,"ariaHidden":104},[103],[35,3480,3482,3485],{"className":3481},[108],[35,3483],{"className":3484,"style":661},[112],[35,3486,711],{"className":3487,"style":726},[121,125],"-средним.",[15,3490,3491,3492,351,3495,3498],{},"Иерархия слияний представляется в виде ",[348,3493,3494],{},"дендрограммы",[353,3496,3497],{},"dendrogram",") — древовидной диаграммы, в которой по горизонтальной оси расположены объекты, а вертикальная ось показывает расстояние, на котором происходило слияние. Высокие «развилки» соответствуют слияниям между сильно различающимися группами; горизонтальный срез дендрограммы на заданной высоте даёт конкретное разбиение. Дендрограмма — удобный диагностический инструмент: глядя на неё, аналитик видит, в каком диапазоне число кластеров устойчиво (большой вертикальный «зазор» между слияниями), а где разбиение случайно (несколько слияний подряд на одной высоте).",[15,3500,3501,3502,3530,3531,3626,3627,3701,3702,3730],{},"В отличие от ",[35,3503,3505,3518],{"className":3504},[38],[35,3506,3508],{"className":3507},[42],[44,3509,3510],{"xmlns":46},[48,3511,3512,3516],{},[51,3513,3514],{},[62,3515,711],{},[96,3517,711],{"encoding":98},[35,3519,3521],{"className":3520,"ariaHidden":104},[103],[35,3522,3524,3527],{"className":3523},[108],[35,3525],{"className":3526,"style":661},[112],[35,3528,711],{"className":3529,"style":726},[121,125],"-средних, иерархическая кластеризация не требует фиксировать число кластеров заранее; в отличие от DBSCAN, она не требует выбора плотностных параметров. Расплата — вычислительная сложность ",[35,3532,3534,3564],{"className":3533},[38],[35,3535,3537],{"className":3536},[42],[44,3538,3539],{"xmlns":46},[48,3540,3541,3561],{},[51,3542,3543,3545,3547,3553,3555,3557,3559],{},[62,3544,2434],{},[54,3546,291],{"stretchy":56},[382,3548,3549,3551],{},[62,3550,87],{},[82,3552,1038],{},[62,3554,2439],{},[54,3556,1995],{},[62,3558,87],{},[54,3560,296],{"stretchy":56},[96,3562,3563],{"encoding":98},"O(n^2 \\log n)",[35,3565,3567],{"className":3566,"ariaHidden":104},[103],[35,3568,3570,3574,3577,3580,3609,3612,3617,3620,3623],{"className":3569},[108],[35,3571],{"className":3572,"style":3573},[112],"height:1.0641em;vertical-align:-0.25em;",[35,3575,2434],{"className":3576,"style":2461},[121,125],[35,3578,291],{"className":3579},[117],[35,3581,3583,3586],{"className":3582},[121],[35,3584,87],{"className":3585},[121,125],[35,3587,3589],{"className":3588},[129],[35,3590,3592],{"className":3591},[133],[35,3593,3595],{"className":3594},[138],[35,3596,3598],{"className":3597,"style":1419},[142],[35,3599,3600,3603],{"style":220},[35,3601],{"className":3602,"style":151},[150],[35,3604,3606],{"className":3605},[155,156,157,158],[35,3607,1038],{"className":3608},[121,158],[35,3610],{"className":3611,"style":894},[248],[35,3613,2468,3615],{"className":3614},[1094],[35,3616,2472],{"style":2471},[35,3618],{"className":3619,"style":894},[248],[35,3621,87],{"className":3622},[121,125],[35,3624,296],{"className":3625},[179]," в обычной реализации и ",[35,3628,3630,3654],{"className":3629},[38],[35,3631,3633],{"className":3632},[42],[44,3634,3635],{"xmlns":46},[48,3636,3637,3651],{},[51,3638,3639,3641,3643,3649],{},[62,3640,2434],{},[54,3642,291],{"stretchy":56},[382,3644,3645,3647],{},[62,3646,87],{},[82,3648,1038],{},[54,3650,296],{"stretchy":56},[96,3652,3653],{"encoding":98},"O(n^2)",[35,3655,3657],{"className":3656,"ariaHidden":104},[103],[35,3658,3660,3663,3666,3669,3698],{"className":3659},[108],[35,3661],{"className":3662,"style":3573},[112],[35,3664,2434],{"className":3665,"style":2461},[121,125],[35,3667,291],{"className":3668},[117],[35,3670,3672,3675],{"className":3671},[121],[35,3673,87],{"className":3674},[121,125],[35,3676,3678],{"className":3677},[129],[35,3679,3681],{"className":3680},[133],[35,3682,3684],{"className":3683},[138],[35,3685,3687],{"className":3686,"style":1419},[142],[35,3688,3689,3692],{"style":220},[35,3690],{"className":3691,"style":151},[150],[35,3693,3695],{"className":3694},[155,156,157,158],[35,3696,1038],{"className":3697},[121,158],[35,3699,296],{"className":3700},[179]," по памяти на матрицу расстояний, что ограничивает применение десятками тысяч объектов. Для больших датасетов используют разреженные приближения или предварительную кластеризацию ",[35,3703,3705,3718],{"className":3704},[38],[35,3706,3708],{"className":3707},[42],[44,3709,3710],{"xmlns":46},[48,3711,3712,3716],{},[51,3713,3714],{},[62,3715,711],{},[96,3717,711],{"encoding":98},[35,3719,3721],{"className":3720,"ariaHidden":104},[103],[35,3722,3724,3727],{"className":3723},[108],[35,3725],{"className":3726,"style":661},[112],[35,3728,711],{"className":3729,"style":726},[121,125],"-средними с последующей агломерацией центроидов.",[22,3732,359],{"id":3733},"снижение-размерности",[27,3735,3737],{"id":3736},"метод-главных-компонент-pca","Метод главных компонент (PCA)",[15,3739,3740,3741,3744,3745,3754],{},"Кластеризация искала структуру в виде «групп объектов»; метод главных компонент (англ. ",[353,3742,3743],{},"Principal Component Analysis, PCA",") ищет структуру в виде «направлений вариации». Идея сформулирована Пирсоном ещё в 1901 году ",[729,3746,3748],{"className":3747},[732],[734,3749,3751],{"href":3750},"#ref-5",[35,3752,3753],{},"5",": найти такое подпространство меньшей размерности, проекция на которое сохраняет максимально возможную долю дисперсии исходных данных. Геометрически это означает поворот системы координат: новые оси (главные компоненты) выбираются так, чтобы первая ось «смотрела» в направлении наибольшего разброса точек, вторая — в направление наибольшего разброса среди ортогональных первой, и так далее.",[15,3756,3757,3758,3925,3926,4020,4021,4050,4051,4296,4297,4325,4326,4467,4468,4538,4539,4609,4610,4638,4639,4887,4888,4897,4898,2036],{},"Положим, что данные центрированы — из каждого признака вычтено его среднее. Тогда матрица ковариаций ",[35,3759,3761,3793],{"className":3760},[38],[35,3762,3764],{"className":3763},[42],[44,3765,3766],{"xmlns":46},[48,3767,3768,3790],{},[51,3769,3770,3773,3775,3781,3788],{},[62,3771,3772],{"mathvariant":409},"Σ",[54,3774,80],{},[1966,3776,3777,3779],{},[82,3778,84],{},[62,3780,87],{},[382,3782,3783,3785],{},[62,3784,94],{},[62,3786,3787],{"mathvariant":409},"⊤",[62,3789,94],{},[96,3791,3792],{"encoding":98},"\\Sigma = \\frac{1}{n} X^\\top X",[35,3794,3796,3814],{"className":3795,"ariaHidden":104},[103],[35,3797,3799,3802,3805,3808,3811],{"className":3798},[108],[35,3800],{"className":3801,"style":262},[112],[35,3803,3772],{"className":3804},[121],[35,3806],{"className":3807,"style":249},[248],[35,3809,80],{"className":3810},[214],[35,3812],{"className":3813,"style":249},[248],[35,3815,3817,3821,3892,3922],{"className":3816},[108],[35,3818],{"className":3819,"style":3820},[112],"height:1.1941em;vertical-align:-0.345em;",[35,3822,3824,3827,3889],{"className":3823},[121],[35,3825],{"className":3826},[117,2083],[35,3828,3830],{"className":3829},[1966],[35,3831,3833,3880],{"className":3832},[133,134],[35,3834,3836,3877],{"className":3835},[138],[35,3837,3840,3854,3862],{"className":3838,"style":3839},[142],"height:0.8451em;",[35,3841,3842,3845],{"style":2099},[35,3843],{"className":3844,"style":2103},[150],[35,3846,3848],{"className":3847},[155,156,157,158],[35,3849,3851],{"className":3850},[121,158],[35,3852,87],{"className":3853},[121,125,158],[35,3855,3856,3859],{"style":2156},[35,3857],{"className":3858,"style":2103},[150],[35,3860],{"className":3861,"style":2164},[2163],[35,3863,3865,3868],{"style":3864},"top:-3.394em;",[35,3866],{"className":3867,"style":2103},[150],[35,3869,3871],{"className":3870},[155,156,157,158],[35,3872,3874],{"className":3873},[121,158],[35,3875,84],{"className":3876},[121,158],[35,3878,166],{"className":3879},[165],[35,3881,3883],{"className":3882},[138],[35,3884,3887],{"className":3885,"style":3886},[142],"height:0.345em;",[35,3888],{},[35,3890],{"className":3891},[179,2083],[35,3893,3895,3899],{"className":3894},[121],[35,3896,94],{"className":3897,"style":3898},[121,125],"margin-right:0.0785em;",[35,3900,3902],{"className":3901},[129],[35,3903,3905],{"className":3904},[133],[35,3906,3908],{"className":3907},[138],[35,3909,3911],{"className":3910,"style":463},[142],[35,3912,3913,3916],{"style":220},[35,3914],{"className":3915,"style":151},[150],[35,3917,3919],{"className":3918},[155,156,157,158],[35,3920,3787],{"className":3921},[121,158],[35,3923,94],{"className":3924,"style":3898},[121,125]," симметрична и положительно полуопределена, и её можно разложить по собственным векторам: ",[35,3927,3929,3957],{"className":3928},[38],[35,3930,3932],{"className":3931},[42],[44,3933,3934],{"xmlns":46},[48,3935,3936,3954],{},[51,3937,3938,3940,3942,3945,3948],{},[62,3939,3772],{"mathvariant":409},[54,3941,80],{},[62,3943,3944],{},"U",[62,3946,3947],{"mathvariant":409},"Λ",[382,3949,3950,3952],{},[62,3951,3944],{},[62,3953,3787],{"mathvariant":409},[96,3955,3956],{"encoding":98},"\\Sigma = U \\Lambda U^\\top",[35,3958,3960,3978],{"className":3959,"ariaHidden":104},[103],[35,3961,3963,3966,3969,3972,3975],{"className":3962},[108],[35,3964],{"className":3965,"style":262},[112],[35,3967,3772],{"className":3968},[121],[35,3970],{"className":3971,"style":249},[248],[35,3973,80],{"className":3974},[214],[35,3976],{"className":3977,"style":249},[248],[35,3979,3981,3984,3988,3991],{"className":3980},[108],[35,3982],{"className":3983,"style":463},[112],[35,3985,3944],{"className":3986,"style":3987},[121,125],"margin-right:0.109em;",[35,3989,3947],{"className":3990},[121],[35,3992,3994,3997],{"className":3993},[121],[35,3995,3944],{"className":3996,"style":3987},[121,125],[35,3998,4000],{"className":3999},[129],[35,4001,4003],{"className":4002},[133],[35,4004,4006],{"className":4005},[138],[35,4007,4009],{"className":4008,"style":463},[142],[35,4010,4011,4014],{"style":220},[35,4012],{"className":4013,"style":151},[150],[35,4015,4017],{"className":4016},[155,156,157,158],[35,4018,3787],{"className":4019},[121,158],", где ",[35,4022,4024,4038],{"className":4023},[38],[35,4025,4027],{"className":4026},[42],[44,4028,4029],{"xmlns":46},[48,4030,4031,4035],{},[51,4032,4033],{},[62,4034,3947],{"mathvariant":409},[96,4036,4037],{"encoding":98},"\\Lambda",[35,4039,4041],{"className":4040,"ariaHidden":104},[103],[35,4042,4044,4047],{"className":4043},[108],[35,4045],{"className":4046,"style":262},[112],[35,4048,3947],{"className":4049},[121]," — диагональная матрица собственных значений ",[35,4052,4054,4099],{"className":4053},[38],[35,4055,4057],{"className":4056},[42],[44,4058,4059],{"xmlns":46},[48,4060,4061,4096],{},[51,4062,4063,4070,4073,4079,4081,4083,4085,4091,4093],{},[59,4064,4065,4068],{},[62,4066,4067],{},"λ",[82,4069,84],{},[54,4071,4072],{},"≥",[59,4074,4075,4077],{},[62,4076,4067],{},[82,4078,1038],{},[54,4080,4072],{},[54,4082,822],{},[54,4084,4072],{},[59,4086,4087,4089],{},[62,4088,4067],{},[62,4090,390],{},[54,4092,4072],{},[82,4094,4095],{},"0",[96,4097,4098],{"encoding":98},"\\lambda_1 \\geq \\lambda_2 \\geq \\ldots \\geq \\lambda_d \\geq 0",[35,4100,4102,4158,4213,4232,4287],{"className":4101,"ariaHidden":104},[103],[35,4103,4105,4109,4149,4152,4155],{"className":4104},[108],[35,4106],{"className":4107,"style":4108},[112],"height:0.8444em;vertical-align:-0.15em;",[35,4110,4112,4115],{"className":4111},[121],[35,4113,4067],{"className":4114},[121,125],[35,4116,4118],{"className":4117},[129],[35,4119,4121,4141],{"className":4120},[133,134],[35,4122,4124,4138],{"className":4123},[138],[35,4125,4127],{"className":4126,"style":863},[142],[35,4128,4129,4132],{"style":146},[35,4130],{"className":4131,"style":151},[150],[35,4133,4135],{"className":4134},[155,156,157,158],[35,4136,84],{"className":4137},[121,158],[35,4139,166],{"className":4140},[165],[35,4142,4144],{"className":4143},[138],[35,4145,4147],{"className":4146,"style":173},[142],[35,4148],{},[35,4150],{"className":4151,"style":249},[248],[35,4153,4072],{"className":4154},[214],[35,4156],{"className":4157,"style":249},[248],[35,4159,4161,4164,4204,4207,4210],{"className":4160},[108],[35,4162],{"className":4163,"style":4108},[112],[35,4165,4167,4170],{"className":4166},[121],[35,4168,4067],{"className":4169},[121,125],[35,4171,4173],{"className":4172},[129],[35,4174,4176,4196],{"className":4175},[133,134],[35,4177,4179,4193],{"className":4178},[138],[35,4180,4182],{"className":4181,"style":863},[142],[35,4183,4184,4187],{"style":146},[35,4185],{"className":4186,"style":151},[150],[35,4188,4190],{"className":4189},[155,156,157,158],[35,4191,1038],{"className":4192},[121,158],[35,4194,166],{"className":4195},[165],[35,4197,4199],{"className":4198},[138],[35,4200,4202],{"className":4201,"style":173},[142],[35,4203],{},[35,4205],{"className":4206,"style":249},[248],[35,4208,4072],{"className":4209},[214],[35,4211],{"className":4212,"style":249},[248],[35,4214,4216,4220,4223,4226,4229],{"className":4215},[108],[35,4217],{"className":4218,"style":4219},[112],"height:0.7719em;vertical-align:-0.136em;",[35,4221,822],{"className":4222},[898],[35,4224],{"className":4225,"style":249},[248],[35,4227,4072],{"className":4228},[214],[35,4230],{"className":4231,"style":249},[248],[35,4233,4235,4238,4278,4281,4284],{"className":4234},[108],[35,4236],{"className":4237,"style":4108},[112],[35,4239,4241,4244],{"className":4240},[121],[35,4242,4067],{"className":4243},[121,125],[35,4245,4247],{"className":4246},[129],[35,4248,4250,4270],{"className":4249},[133,134],[35,4251,4253,4267],{"className":4252},[138],[35,4254,4256],{"className":4255,"style":926},[142],[35,4257,4258,4261],{"style":146},[35,4259],{"className":4260,"style":151},[150],[35,4262,4264],{"className":4263},[155,156,157,158],[35,4265,390],{"className":4266},[121,125,158],[35,4268,166],{"className":4269},[165],[35,4271,4273],{"className":4272},[138],[35,4274,4276],{"className":4275,"style":173},[142],[35,4277],{},[35,4279],{"className":4280,"style":249},[248],[35,4282,4072],{"className":4283},[214],[35,4285],{"className":4286,"style":249},[248],[35,4288,4290,4293],{"className":4289},[108],[35,4291],{"className":4292,"style":2844},[112],[35,4294,4095],{"className":4295},[121],", а столбцы ",[35,4298,4300,4313],{"className":4299},[38],[35,4301,4303],{"className":4302},[42],[44,4304,4305],{"xmlns":46},[48,4306,4307,4311],{},[51,4308,4309],{},[62,4310,3944],{},[96,4312,3944],{"encoding":98},[35,4314,4316],{"className":4315,"ariaHidden":104},[103],[35,4317,4319,4322],{"className":4318},[108],[35,4320],{"className":4321,"style":262},[112],[35,4323,3944],{"className":4324,"style":3987},[121,125]," — соответствующие собственные векторы ",[35,4327,4329,4360],{"className":4328},[38],[35,4330,4332],{"className":4331},[42],[44,4333,4334],{"xmlns":46},[48,4335,4336,4357],{},[51,4337,4338,4345,4347,4349,4351],{},[59,4339,4340,4343],{},[62,4341,4342],{},"u",[82,4344,84],{},[54,4346,819],{"separator":104},[54,4348,822],{},[54,4350,819],{"separator":104},[59,4352,4353,4355],{},[62,4354,4342],{},[62,4356,390],{},[96,4358,4359],{"encoding":98},"u_1, \\ldots, u_d",[35,4361,4363],{"className":4362,"ariaHidden":104},[103],[35,4364,4366,4369,4409,4412,4415,4418,4421,4424,4427],{"className":4365},[108],[35,4367],{"className":4368,"style":309},[112],[35,4370,4372,4375],{"className":4371},[121],[35,4373,4342],{"className":4374},[121,125],[35,4376,4378],{"className":4377},[129],[35,4379,4381,4401],{"className":4380},[133,134],[35,4382,4384,4398],{"className":4383},[138],[35,4385,4387],{"className":4386,"style":863},[142],[35,4388,4389,4392],{"style":146},[35,4390],{"className":4391,"style":151},[150],[35,4393,4395],{"className":4394},[155,156,157,158],[35,4396,84],{"className":4397},[121,158],[35,4399,166],{"className":4400},[165],[35,4402,4404],{"className":4403},[138],[35,4405,4407],{"className":4406,"style":173},[142],[35,4408],{},[35,4410,819],{"className":4411},[890],[35,4413],{"className":4414,"style":894},[248],[35,4416,822],{"className":4417},[898],[35,4419],{"className":4420,"style":894},[248],[35,4422,819],{"className":4423},[890],[35,4425],{"className":4426,"style":894},[248],[35,4428,4430,4433],{"className":4429},[121],[35,4431,4342],{"className":4432},[121,125],[35,4434,4436],{"className":4435},[129],[35,4437,4439,4459],{"className":4438},[133,134],[35,4440,4442,4456],{"className":4441},[138],[35,4443,4445],{"className":4444,"style":926},[142],[35,4446,4447,4450],{"style":146},[35,4448],{"className":4449,"style":151},[150],[35,4451,4453],{"className":4452},[155,156,157,158],[35,4454,390],{"className":4455},[121,125,158],[35,4457,166],{"className":4458},[165],[35,4460,4462],{"className":4461},[138],[35,4463,4465],{"className":4464,"style":173},[142],[35,4466],{},". Эти векторы и есть главные компоненты, упорядоченные по убыванию объяснённой дисперсии: ",[35,4469,4471,4489],{"className":4470},[38],[35,4472,4474],{"className":4473},[42],[44,4475,4476],{"xmlns":46},[48,4477,4478,4486],{},[51,4479,4480],{},[59,4481,4482,4484],{},[62,4483,4067],{},[62,4485,67],{},[96,4487,4488],{"encoding":98},"\\lambda_i",[35,4490,4492],{"className":4491,"ariaHidden":104},[103],[35,4493,4495,4498],{"className":4494},[108],[35,4496],{"className":4497,"style":4108},[112],[35,4499,4501,4504],{"className":4500},[121],[35,4502,4067],{"className":4503},[121,125],[35,4505,4507],{"className":4506},[129],[35,4508,4510,4530],{"className":4509},[133,134],[35,4511,4513,4527],{"className":4512},[138],[35,4514,4516],{"className":4515,"style":143},[142],[35,4517,4518,4521],{"style":146},[35,4519],{"className":4520,"style":151},[150],[35,4522,4524],{"className":4523},[155,156,157,158],[35,4525,67],{"className":4526},[121,125,158],[35,4528,166],{"className":4529},[165],[35,4531,4533],{"className":4532},[138],[35,4534,4536],{"className":4535,"style":173},[142],[35,4537],{}," — дисперсия данных вдоль направления ",[35,4540,4542,4560],{"className":4541},[38],[35,4543,4545],{"className":4544},[42],[44,4546,4547],{"xmlns":46},[48,4548,4549,4557],{},[51,4550,4551],{},[59,4552,4553,4555],{},[62,4554,4342],{},[62,4556,67],{},[96,4558,4559],{"encoding":98},"u_i",[35,4561,4563],{"className":4562,"ariaHidden":104},[103],[35,4564,4566,4569],{"className":4565},[108],[35,4567],{"className":4568,"style":1807},[112],[35,4570,4572,4575],{"className":4571},[121],[35,4573,4342],{"className":4574},[121,125],[35,4576,4578],{"className":4577},[129],[35,4579,4581,4601],{"className":4580},[133,134],[35,4582,4584,4598],{"className":4583},[138],[35,4585,4587],{"className":4586,"style":143},[142],[35,4588,4589,4592],{"style":146},[35,4590],{"className":4591,"style":151},[150],[35,4593,4595],{"className":4594},[155,156,157,158],[35,4596,67],{"className":4597},[121,125,158],[35,4599,166],{"className":4600},[165],[35,4602,4604],{"className":4603},[138],[35,4605,4607],{"className":4606,"style":173},[142],[35,4608],{},". Проекция объекта на первые ",[35,4611,4613,4626],{"className":4612},[38],[35,4614,4616],{"className":4615},[42],[44,4617,4618],{"xmlns":46},[48,4619,4620,4624],{},[51,4621,4622],{},[62,4623,711],{},[96,4625,711],{"encoding":98},[35,4627,4629],{"className":4628,"ariaHidden":104},[103],[35,4630,4632,4635],{"className":4631},[108],[35,4633],{"className":4634,"style":661},[112],[35,4636,711],{"className":4637,"style":726},[121,125]," компонент даёт сжатое представление ",[35,4640,4642,4684],{"className":4641},[38],[35,4643,4645],{"className":4644},[42],[44,4646,4647],{"xmlns":46},[48,4648,4649,4681],{},[51,4650,4651,4657,4659,4667,4673,4675],{},[59,4652,4653,4655],{},[62,4654,396],{},[62,4656,67],{},[54,4658,80],{},[69,4660,4661,4663,4665],{},[62,4662,3944],{},[62,4664,711],{},[62,4666,3787],{"mathvariant":409},[59,4668,4669,4671],{},[62,4670,64],{},[62,4672,67],{},[54,4674,380],{},[382,4676,4677,4679],{},[62,4678,387],{"mathvariant":386},[62,4680,711],{},[96,4682,4683],{"encoding":98},"z_i = U_k^\\top x_i \\in \\mathbb{R}^k",[35,4685,4687,4743,4852],{"className":4686,"ariaHidden":104},[103],[35,4688,4690,4693,4734,4737,4740],{"className":4689},[108],[35,4691],{"className":4692,"style":1807},[112],[35,4694,4696,4699],{"className":4695},[121],[35,4697,396],{"className":4698,"style":493},[121,125],[35,4700,4702],{"className":4701},[129],[35,4703,4705,4726],{"className":4704},[133,134],[35,4706,4708,4723],{"className":4707},[138],[35,4709,4711],{"className":4710,"style":143},[142],[35,4712,4714,4717],{"style":4713},"top:-2.55em;margin-left:-0.044em;margin-right:0.05em;",[35,4715],{"className":4716,"style":151},[150],[35,4718,4720],{"className":4719},[155,156,157,158],[35,4721,67],{"className":4722},[121,125,158],[35,4724,166],{"className":4725},[165],[35,4727,4729],{"className":4728},[138],[35,4730,4732],{"className":4731,"style":173},[142],[35,4733],{},[35,4735],{"className":4736,"style":249},[248],[35,4738,80],{"className":4739},[214],[35,4741],{"className":4742,"style":249},[248],[35,4744,4746,4750,4803,4843,4846,4849],{"className":4745},[108],[35,4747],{"className":4748,"style":4749},[112],"height:1.1322em;vertical-align:-0.2831em;",[35,4751,4753,4756],{"className":4752},[121],[35,4754,3944],{"className":4755,"style":3987},[121,125],[35,4757,4759],{"className":4758},[129],[35,4760,4762,4794],{"className":4761},[133,134],[35,4763,4765,4791],{"className":4764},[138],[35,4766,4768,4780],{"className":4767,"style":463},[142],[35,4769,4771,4774],{"style":4770},"top:-2.4169em;margin-left:-0.109em;margin-right:0.05em;",[35,4772],{"className":4773,"style":151},[150],[35,4775,4777],{"className":4776},[155,156,157,158],[35,4778,711],{"className":4779,"style":726},[121,125,158],[35,4781,4782,4785],{"style":220},[35,4783],{"className":4784,"style":151},[150],[35,4786,4788],{"className":4787},[155,156,157,158],[35,4789,3787],{"className":4790},[121,158],[35,4792,166],{"className":4793},[165],[35,4795,4797],{"className":4796},[138],[35,4798,4801],{"className":4799,"style":4800},[142],"height:0.2831em;",[35,4802],{},[35,4804,4806,4809],{"className":4805},[121],[35,4807,64],{"className":4808},[121,125],[35,4810,4812],{"className":4811},[129],[35,4813,4815,4835],{"className":4814},[133,134],[35,4816,4818,4832],{"className":4817},[138],[35,4819,4821],{"className":4820,"style":143},[142],[35,4822,4823,4826],{"style":146},[35,4824],{"className":4825,"style":151},[150],[35,4827,4829],{"className":4828},[155,156,157,158],[35,4830,67],{"className":4831},[121,125,158],[35,4833,166],{"className":4834},[165],[35,4836,4838],{"className":4837},[138],[35,4839,4841],{"className":4840,"style":173},[142],[35,4842],{},[35,4844],{"className":4845,"style":249},[248],[35,4847,380],{"className":4848},[214],[35,4850],{"className":4851,"style":249},[248],[35,4853,4855,4858],{"className":4854},[108],[35,4856],{"className":4857,"style":463},[112],[35,4859,4861,4864],{"className":4860},[121],[35,4862,387],{"className":4863},[121,450],[35,4865,4867],{"className":4866},[129],[35,4868,4870],{"className":4869},[133],[35,4871,4873],{"className":4872},[138],[35,4874,4876],{"className":4875,"style":463},[142],[35,4877,4878,4881],{"style":220},[35,4879],{"className":4880,"style":151},[150],[35,4882,4884],{"className":4883},[155,156,157,158],[35,4885,711],{"className":4886,"style":726},[121,125,158],". Изложение с алгебраическими деталями есть в монографии ",[729,4889,4891],{"className":4890},[732],[734,4892,4894],{"href":4893},"#ref-6",[35,4895,4896],{},"6","; теоретический фундамент собран в ",[729,4899,4901],{"className":4900},[732],[734,4902,4904],{"href":4903},"#ref-7",[35,4905,4906],{},"7",[1616,4908,1618,4909,1618,4913],{},[1620,4910],{"src":4911,"alt":4912},"\u002Fimg\u002Faidt-iot-mii\u002Ftopic-06\u002Fpca_projection.svg","Главные компоненты двумерной выборки: PC1 указывает направление максимальной дисперсии, проекция на PC1 сжимает данные в одномерное представление",[1625,4914,4915],{},"Главные компоненты двумерной выборки и проекция на первую компоненту",[15,4917,4918,4919,351,4922,4925,4926,4954,4955,5242,5243,5271,5272,5341,5342,5345,5346,5415],{},"Главный вопрос применения PCA — сколько компонент оставить. Доля ",[348,4920,4921],{},"объяснённой дисперсии",[353,4923,4924],{},"explained variance ratio",") первых ",[35,4927,4929,4942],{"className":4928},[38],[35,4930,4932],{"className":4931},[42],[44,4933,4934],{"xmlns":46},[48,4935,4936,4940],{},[51,4937,4938],{},[62,4939,711],{},[96,4941,711],{"encoding":98},[35,4943,4945],{"className":4944,"ariaHidden":104},[103],[35,4946,4948,4951],{"className":4947},[108],[35,4949],{"className":4950,"style":661},[112],[35,4952,711],{"className":4953,"style":726},[121,125]," компонент равна ",[35,4956,4958,5013],{"className":4957},[38],[35,4959,4961],{"className":4960},[42],[44,4962,4963],{"xmlns":46},[48,4964,4965,5010],{},[51,4966,4967,4981,4987,4990,5004],{},[69,4968,4969,4971,4979],{},[54,4970,982],{},[51,4972,4973,4975,4977],{},[62,4974,67],{},[54,4976,80],{},[82,4978,84],{},[62,4980,711],{},[59,4982,4983,4985],{},[62,4984,4067],{},[62,4986,67],{},[62,4988,4989],{"mathvariant":409},"\u002F",[69,4991,4992,4994,5002],{},[54,4993,982],{},[51,4995,4996,4998,5000],{},[62,4997,67],{},[54,4999,80],{},[82,5001,84],{},[62,5003,390],{},[59,5005,5006,5008],{},[62,5007,4067],{},[62,5009,67],{},[96,5011,5012],{"encoding":98},"\\sum_{i=1}^{k} \\lambda_i \u002F \\sum_{i=1}^{d} \\lambda_i",[35,5014,5016],{"className":5015,"ariaHidden":104},[103],[35,5017,5019,5023,5087,5090,5130,5133,5136,5199,5202],{"className":5018},[108],[35,5020],{"className":5021,"style":5022},[112],"height:1.2887em;vertical-align:-0.2997em;",[35,5024,5026,5029],{"className":5025},[1094],[35,5027,982],{"className":5028,"style":1100},[1094,1098,1099],[35,5030,5032],{"className":5031},[129],[35,5033,5035,5078],{"className":5034},[133,134],[35,5036,5038,5075],{"className":5037},[138],[35,5039,5041,5061],{"className":5040,"style":1113},[142],[35,5042,5043,5046],{"style":1116},[35,5044],{"className":5045,"style":151},[150],[35,5047,5049],{"className":5048},[155,156,157,158],[35,5050,5052,5055,5058],{"className":5051},[121,158],[35,5053,67],{"className":5054},[121,125,158],[35,5056,80],{"className":5057},[214,158],[35,5059,84],{"className":5060},[121,158],[35,5062,5063,5066],{"style":1138},[35,5064],{"className":5065,"style":151},[150],[35,5067,5069],{"className":5068},[155,156,157,158],[35,5070,5072],{"className":5071},[121,158],[35,5073,711],{"className":5074,"style":726},[121,125,158],[35,5076,166],{"className":5077},[165],[35,5079,5081],{"className":5080},[138],[35,5082,5085],{"className":5083,"style":5084},[142],"height:0.2997em;",[35,5086],{},[35,5088],{"className":5089,"style":894},[248],[35,5091,5093,5096],{"className":5092},[121],[35,5094,4067],{"className":5095},[121,125],[35,5097,5099],{"className":5098},[129],[35,5100,5102,5122],{"className":5101},[133,134],[35,5103,5105,5119],{"className":5104},[138],[35,5106,5108],{"className":5107,"style":143},[142],[35,5109,5110,5113],{"style":146},[35,5111],{"className":5112,"style":151},[150],[35,5114,5116],{"className":5115},[155,156,157,158],[35,5117,67],{"className":5118},[121,125,158],[35,5120,166],{"className":5121},[165],[35,5123,5125],{"className":5124},[138],[35,5126,5128],{"className":5127,"style":173},[142],[35,5129],{},[35,5131,4989],{"className":5132},[121],[35,5134],{"className":5135,"style":894},[248],[35,5137,5139,5142],{"className":5138},[1094],[35,5140,982],{"className":5141,"style":1100},[1094,1098,1099],[35,5143,5145],{"className":5144},[129],[35,5146,5148,5191],{"className":5147},[133,134],[35,5149,5151,5188],{"className":5150},[138],[35,5152,5154,5174],{"className":5153,"style":1113},[142],[35,5155,5156,5159],{"style":1116},[35,5157],{"className":5158,"style":151},[150],[35,5160,5162],{"className":5161},[155,156,157,158],[35,5163,5165,5168,5171],{"className":5164},[121,158],[35,5166,67],{"className":5167},[121,125,158],[35,5169,80],{"className":5170},[214,158],[35,5172,84],{"className":5173},[121,158],[35,5175,5176,5179],{"style":1138},[35,5177],{"className":5178,"style":151},[150],[35,5180,5182],{"className":5181},[155,156,157,158],[35,5183,5185],{"className":5184},[121,158],[35,5186,390],{"className":5187},[121,125,158],[35,5189,166],{"className":5190},[165],[35,5192,5194],{"className":5193},[138],[35,5195,5197],{"className":5196,"style":5084},[142],[35,5198],{},[35,5200],{"className":5201,"style":894},[248],[35,5203,5205,5208],{"className":5204},[121],[35,5206,4067],{"className":5207},[121,125],[35,5209,5211],{"className":5210},[129],[35,5212,5214,5234],{"className":5213},[133,134],[35,5215,5217,5231],{"className":5216},[138],[35,5218,5220],{"className":5219,"style":143},[142],[35,5221,5222,5225],{"style":146},[35,5223],{"className":5224,"style":151},[150],[35,5226,5228],{"className":5227},[155,156,157,158],[35,5229,67],{"className":5230},[121,125,158],[35,5232,166],{"className":5233},[165],[35,5235,5237],{"className":5236},[138],[35,5238,5240],{"className":5239,"style":173},[142],[35,5241],{},". На практике выбирают ",[35,5244,5246,5259],{"className":5245},[38],[35,5247,5249],{"className":5248},[42],[44,5250,5251],{"xmlns":46},[48,5252,5253,5257],{},[51,5254,5255],{},[62,5256,711],{},[96,5258,711],{"encoding":98},[35,5260,5262],{"className":5261,"ariaHidden":104},[103],[35,5263,5265,5268],{"className":5264},[108],[35,5266],{"className":5267,"style":661},[112],[35,5269,711],{"className":5270,"style":726},[121,125]," так, чтобы покрыть 90–95% общей дисперсии — этот критерий гибче, чем абсолютная отсечка по ",[35,5273,5275,5292],{"className":5274},[38],[35,5276,5278],{"className":5277},[42],[44,5279,5280],{"xmlns":46},[48,5281,5282,5290],{},[51,5283,5284],{},[59,5285,5286,5288],{},[62,5287,4067],{},[62,5289,67],{},[96,5291,4488],{"encoding":98},[35,5293,5295],{"className":5294,"ariaHidden":104},[103],[35,5296,5298,5301],{"className":5297},[108],[35,5299],{"className":5300,"style":4108},[112],[35,5302,5304,5307],{"className":5303},[121],[35,5305,4067],{"className":5306},[121,125],[35,5308,5310],{"className":5309},[129],[35,5311,5313,5333],{"className":5312},[133,134],[35,5314,5316,5330],{"className":5315},[138],[35,5317,5319],{"className":5318,"style":143},[142],[35,5320,5321,5324],{"style":146},[35,5322],{"className":5323,"style":151},[150],[35,5325,5327],{"className":5326},[155,156,157,158],[35,5328,67],{"className":5329},[121,125,158],[35,5331,166],{"className":5332},[165],[35,5334,5336],{"className":5335},[138],[35,5337,5339],{"className":5338,"style":173},[142],[35,5340],{},", и не зависит от шкалы признаков. Альтернатива — график «осыпи» (англ. ",[353,5343,5344],{},"scree plot","): отсортированные ",[35,5347,5349,5366],{"className":5348},[38],[35,5350,5352],{"className":5351},[42],[44,5353,5354],{"xmlns":46},[48,5355,5356,5364],{},[51,5357,5358],{},[59,5359,5360,5362],{},[62,5361,4067],{},[62,5363,67],{},[96,5365,4488],{"encoding":98},[35,5367,5369],{"className":5368,"ariaHidden":104},[103],[35,5370,5372,5375],{"className":5371},[108],[35,5373],{"className":5374,"style":4108},[112],[35,5376,5378,5381],{"className":5377},[121],[35,5379,4067],{"className":5380},[121,125],[35,5382,5384],{"className":5383},[129],[35,5385,5387,5407],{"className":5386},[133,134],[35,5388,5390,5404],{"className":5389},[138],[35,5391,5393],{"className":5392,"style":143},[142],[35,5394,5395,5398],{"style":146},[35,5396],{"className":5397,"style":151},[150],[35,5399,5401],{"className":5400},[155,156,157,158],[35,5402,67],{"className":5403},[121,125,158],[35,5405,166],{"className":5406},[165],[35,5408,5410],{"className":5409},[138],[35,5411,5413],{"className":5412,"style":173},[142],[35,5414],{}," откладываются по оси ординат, и берётся точка перегиба, как в методе локтя у кластеризации.",[15,5417,5418,5419,5422,5423,5426,5427,5430],{},"Применений у PCA три основных. Первое — ",[348,5420,5421],{},"визуализация",": проекция многомерной выборки на первые две-три компоненты даёт картину, на которой глаз ловит структуру быстрее, чем формальные метрики. Второе — ",[348,5424,5425],{},"борьба с проклятием размерности",": модели на 200 признаках часто работают хуже моделей на 20 главных компонентах, потому что в большом пространстве расстояния теряют смысл, а число параметров растёт. Третье — ",[348,5428,5429],{},"предобработка",": PCA устраняет мультиколлинеарность и шум, что особенно полезно перед линейными моделями.",[15,5432,5433],{},"Ограничения PCA вытекают из его линейности. Если структура данных нелинейна — скажем, точки лежат на свёрнутой двумерной поверхности в трёхмерном пространстве, — никакая проекция на прямые оси не «развернёт» её обратно. Кроме того, направления максимальной дисперсии не обязаны совпадать с «полезными» для дальнейшей задачи: если классы различаются по слабому, но содержательному признаку, его дисперсия может оказаться меньше, чем у шумного, и PCA его отбросит. Для подобных случаев существуют нелинейные обобщения (kernel PCA, автоэнкодеры) и методы, заточенные под визуализацию, к одному из которых мы перейдём.",[27,5435,5437],{"id":5436},"t-sne","t-SNE",[15,5439,5440,5441,5444,5445,5454],{},"Если PCA — линейный метод глобальной структуры, то t-SNE (англ. ",[353,5442,5443],{},"t-distributed Stochastic Neighbor Embedding",") — нелинейный метод локальной структуры ",[729,5446,5448],{"className":5447},[732],[734,5449,5451],{"href":5450},"#ref-8",[35,5452,5453],{},"8",". Алгоритм был предложен ван дер Маатеном и Хинтоном специально для двумерной визуализации многомерных датасетов и быстро стал стандартом в задачах исследовательского анализа: scatter-плот, полученный с помощью t-SNE на 50 000 рукописных цифр MNIST, отчётливо показывает десять кластеров, в то время как PCA на тех же данных даёт перекрывающиеся облака.",[15,5456,5457,5458,5592,5593,5683,5684,5754,5755,5824,5825,5854,5855,5989,5990,6070,6071,6141,6142,2914,6170,2036],{},"Принцип t-SNE — сохранять локальные соседства. Для каждой пары объектов ",[35,5459,5461,5491],{"className":5460},[38],[35,5462,5464],{"className":5463},[42],[44,5465,5466],{"xmlns":46},[48,5467,5468,5488],{},[51,5469,5470,5472,5478,5480,5486],{},[54,5471,291],{"stretchy":56},[59,5473,5474,5476],{},[62,5475,64],{},[62,5477,67],{},[54,5479,819],{"separator":104},[59,5481,5482,5484],{},[62,5483,64],{},[62,5485,987],{},[54,5487,296],{"stretchy":56},[96,5489,5490],{"encoding":98},"(x_i, x_j)",[35,5492,5494],{"className":5493,"ariaHidden":104},[103],[35,5495,5497,5500,5503,5543,5546,5549,5589],{"className":5496},[108],[35,5498],{"className":5499,"style":3354},[112],[35,5501,291],{"className":5502},[117],[35,5504,5506,5509],{"className":5505},[121],[35,5507,64],{"className":5508},[121,125],[35,5510,5512],{"className":5511},[129],[35,5513,5515,5535],{"className":5514},[133,134],[35,5516,5518,5532],{"className":5517},[138],[35,5519,5521],{"className":5520,"style":143},[142],[35,5522,5523,5526],{"style":146},[35,5524],{"className":5525,"style":151},[150],[35,5527,5529],{"className":5528},[155,156,157,158],[35,5530,67],{"className":5531},[121,125,158],[35,5533,166],{"className":5534},[165],[35,5536,5538],{"className":5537},[138],[35,5539,5541],{"className":5540,"style":173},[142],[35,5542],{},[35,5544,819],{"className":5545},[890],[35,5547],{"className":5548,"style":894},[248],[35,5550,5552,5555],{"className":5551},[121],[35,5553,64],{"className":5554},[121,125],[35,5556,5558],{"className":5557},[129],[35,5559,5561,5581],{"className":5560},[133,134],[35,5562,5564,5578],{"className":5563},[138],[35,5565,5567],{"className":5566,"style":143},[142],[35,5568,5569,5572],{"style":146},[35,5570],{"className":5571,"style":151},[150],[35,5573,5575],{"className":5574},[155,156,157,158],[35,5576,987],{"className":5577,"style":1129},[121,125,158],[35,5579,166],{"className":5580},[165],[35,5582,5584],{"className":5583},[138],[35,5585,5587],{"className":5586,"style":1398},[142],[35,5588],{},[35,5590,296],{"className":5591},[179]," в исходном пространстве вычисляется условная вероятность ",[35,5594,5596,5621],{"className":5595},[38],[35,5597,5599],{"className":5598},[42],[44,5600,5601],{"xmlns":46},[48,5602,5603,5618],{},[51,5604,5605],{},[59,5606,5607,5609],{},[62,5608,15],{},[51,5610,5611,5613,5616],{},[62,5612,987],{},[62,5614,5615],{"mathvariant":409},"∣",[62,5617,67],{},[96,5619,5620],{"encoding":98},"p_{j|i}",[35,5622,5624],{"className":5623,"ariaHidden":104},[103],[35,5625,5627,5631],{"className":5626},[108],[35,5628],{"className":5629,"style":5630},[112],"height:0.7858em;vertical-align:-0.3552em;",[35,5632,5634,5637],{"className":5633},[121],[35,5635,15],{"className":5636},[121,125],[35,5638,5640],{"className":5639},[129],[35,5641,5643,5674],{"className":5642},[133,134],[35,5644,5646,5671],{"className":5645},[138],[35,5647,5650],{"className":5648,"style":5649},[142],"height:0.3448em;",[35,5651,5653,5656],{"style":5652},"top:-2.5198em;margin-left:0em;margin-right:0.05em;",[35,5654],{"className":5655,"style":151},[150],[35,5657,5659],{"className":5658},[155,156,157,158],[35,5660,5662,5665,5668],{"className":5661},[121,158],[35,5663,987],{"className":5664,"style":1129},[121,125,158],[35,5666,5615],{"className":5667},[121,158],[35,5669,67],{"className":5670},[121,125,158],[35,5672,166],{"className":5673},[165],[35,5675,5677],{"className":5676},[138],[35,5678,5681],{"className":5679,"style":5680},[142],"height:0.3552em;",[35,5682],{}," того, что ",[35,5685,5687,5705],{"className":5686},[38],[35,5688,5690],{"className":5689},[42],[44,5691,5692],{"xmlns":46},[48,5693,5694,5702],{},[51,5695,5696],{},[59,5697,5698,5700],{},[62,5699,64],{},[62,5701,987],{},[96,5703,5704],{"encoding":98},"x_j",[35,5706,5708],{"className":5707,"ariaHidden":104},[103],[35,5709,5711,5714],{"className":5710},[108],[35,5712],{"className":5713,"style":1465},[112],[35,5715,5717,5720],{"className":5716},[121],[35,5718,64],{"className":5719},[121,125],[35,5721,5723],{"className":5722},[129],[35,5724,5726,5746],{"className":5725},[133,134],[35,5727,5729,5743],{"className":5728},[138],[35,5730,5732],{"className":5731,"style":143},[142],[35,5733,5734,5737],{"style":146},[35,5735],{"className":5736,"style":151},[150],[35,5738,5740],{"className":5739},[155,156,157,158],[35,5741,987],{"className":5742,"style":1129},[121,125,158],[35,5744,166],{"className":5745},[165],[35,5747,5749],{"className":5748},[138],[35,5750,5752],{"className":5751,"style":1398},[142],[35,5753],{}," — сосед ",[35,5756,5758,5775],{"className":5757},[38],[35,5759,5761],{"className":5760},[42],[44,5762,5763],{"xmlns":46},[48,5764,5765,5773],{},[51,5766,5767],{},[59,5768,5769,5771],{},[62,5770,64],{},[62,5772,67],{},[96,5774,1797],{"encoding":98},[35,5776,5778],{"className":5777,"ariaHidden":104},[103],[35,5779,5781,5784],{"className":5780},[108],[35,5782],{"className":5783,"style":1807},[112],[35,5785,5787,5790],{"className":5786},[121],[35,5788,64],{"className":5789},[121,125],[35,5791,5793],{"className":5792},[129],[35,5794,5796,5816],{"className":5795},[133,134],[35,5797,5799,5813],{"className":5798},[138],[35,5800,5802],{"className":5801,"style":143},[142],[35,5803,5804,5807],{"style":146},[35,5805],{"className":5806,"style":151},[150],[35,5808,5810],{"className":5809},[155,156,157,158],[35,5811,67],{"className":5812},[121,125,158],[35,5814,166],{"className":5815},[165],[35,5817,5819],{"className":5818},[138],[35,5820,5822],{"className":5821,"style":173},[142],[35,5823],{},", по гауссовскому ядру с шириной, индивидуально подобранной для каждого ",[35,5826,5828,5841],{"className":5827},[38],[35,5829,5831],{"className":5830},[42],[44,5832,5833],{"xmlns":46},[48,5834,5835,5839],{},[51,5836,5837],{},[62,5838,67],{},[96,5840,67],{"encoding":98},[35,5842,5844],{"className":5843,"ariaHidden":104},[103],[35,5845,5847,5851],{"className":5846},[108],[35,5848],{"className":5849,"style":5850},[112],"height:0.6595em;",[35,5852,67],{"className":5853},[121,125],". В целевом низкоразмерном пространстве для пары ",[35,5856,5858,5888],{"className":5857},[38],[35,5859,5861],{"className":5860},[42],[44,5862,5863],{"xmlns":46},[48,5864,5865,5885],{},[51,5866,5867,5869,5875,5877,5883],{},[54,5868,291],{"stretchy":56},[59,5870,5871,5873],{},[62,5872,396],{},[62,5874,67],{},[54,5876,819],{"separator":104},[59,5878,5879,5881],{},[62,5880,396],{},[62,5882,987],{},[54,5884,296],{"stretchy":56},[96,5886,5887],{"encoding":98},"(z_i, z_j)",[35,5889,5891],{"className":5890,"ariaHidden":104},[103],[35,5892,5894,5897,5900,5940,5943,5946,5986],{"className":5893},[108],[35,5895],{"className":5896,"style":3354},[112],[35,5898,291],{"className":5899},[117],[35,5901,5903,5906],{"className":5902},[121],[35,5904,396],{"className":5905,"style":493},[121,125],[35,5907,5909],{"className":5908},[129],[35,5910,5912,5932],{"className":5911},[133,134],[35,5913,5915,5929],{"className":5914},[138],[35,5916,5918],{"className":5917,"style":143},[142],[35,5919,5920,5923],{"style":4713},[35,5921],{"className":5922,"style":151},[150],[35,5924,5926],{"className":5925},[155,156,157,158],[35,5927,67],{"className":5928},[121,125,158],[35,5930,166],{"className":5931},[165],[35,5933,5935],{"className":5934},[138],[35,5936,5938],{"className":5937,"style":173},[142],[35,5939],{},[35,5941,819],{"className":5942},[890],[35,5944],{"className":5945,"style":894},[248],[35,5947,5949,5952],{"className":5948},[121],[35,5950,396],{"className":5951,"style":493},[121,125],[35,5953,5955],{"className":5954},[129],[35,5956,5958,5978],{"className":5957},[133,134],[35,5959,5961,5975],{"className":5960},[138],[35,5962,5964],{"className":5963,"style":143},[142],[35,5965,5966,5969],{"style":4713},[35,5967],{"className":5968,"style":151},[150],[35,5970,5972],{"className":5971},[155,156,157,158],[35,5973,987],{"className":5974,"style":1129},[121,125,158],[35,5976,166],{"className":5977},[165],[35,5979,5981],{"className":5980},[138],[35,5982,5984],{"className":5983,"style":1398},[142],[35,5985],{},[35,5987,296],{"className":5988},[179]," вводится аналогичная вероятность ",[35,5991,5993,6016],{"className":5992},[38],[35,5994,5996],{"className":5995},[42],[44,5997,5998],{"xmlns":46},[48,5999,6000,6013],{},[51,6001,6002],{},[59,6003,6004,6007],{},[62,6005,6006],{},"q",[51,6008,6009,6011],{},[62,6010,67],{},[62,6012,987],{},[96,6014,6015],{"encoding":98},"q_{ij}",[35,6017,6019],{"className":6018,"ariaHidden":104},[103],[35,6020,6022,6025],{"className":6021},[108],[35,6023],{"className":6024,"style":1465},[112],[35,6026,6028,6031],{"className":6027},[121],[35,6029,6006],{"className":6030,"style":313},[121,125],[35,6032,6034],{"className":6033},[129],[35,6035,6037,6062],{"className":6036},[133,134],[35,6038,6040,6059],{"className":6039},[138],[35,6041,6043],{"className":6042,"style":143},[142],[35,6044,6046,6049],{"style":6045},"top:-2.55em;margin-left:-0.0359em;margin-right:0.05em;",[35,6047],{"className":6048,"style":151},[150],[35,6050,6052],{"className":6051},[155,156,157,158],[35,6053,6055],{"className":6054},[121,158],[35,6056,6058],{"className":6057,"style":1129},[121,125,158],"ij",[35,6060,166],{"className":6061},[165],[35,6063,6065],{"className":6064},[138],[35,6066,6068],{"className":6067,"style":1398},[142],[35,6069],{},", но уже по распределению Стьюдента с одним степенью свободы — «толстохвостому», чтобы дальние пары не слишком «прижимались» друг к другу. Положения ",[35,6072,6074,6092],{"className":6073},[38],[35,6075,6077],{"className":6076},[42],[44,6078,6079],{"xmlns":46},[48,6080,6081,6089],{},[51,6082,6083],{},[59,6084,6085,6087],{},[62,6086,396],{},[62,6088,67],{},[96,6090,6091],{"encoding":98},"z_i",[35,6093,6095],{"className":6094,"ariaHidden":104},[103],[35,6096,6098,6101],{"className":6097},[108],[35,6099],{"className":6100,"style":1807},[112],[35,6102,6104,6107],{"className":6103},[121],[35,6105,396],{"className":6106,"style":493},[121,125],[35,6108,6110],{"className":6109},[129],[35,6111,6113,6133],{"className":6112},[133,134],[35,6114,6116,6130],{"className":6115},[138],[35,6117,6119],{"className":6118,"style":143},[142],[35,6120,6121,6124],{"style":4713},[35,6122],{"className":6123,"style":151},[150],[35,6125,6127],{"className":6126},[155,156,157,158],[35,6128,67],{"className":6129},[121,125,158],[35,6131,166],{"className":6132},[165],[35,6134,6136],{"className":6135},[138],[35,6137,6139],{"className":6138,"style":173},[142],[35,6140],{}," подбираются градиентным спуском по дивергенции Кульбака — Лейблера между распределениями ",[35,6143,6145,6158],{"className":6144},[38],[35,6146,6148],{"className":6147},[42],[44,6149,6150],{"xmlns":46},[48,6151,6152,6156],{},[51,6153,6154],{},[62,6155,15],{},[96,6157,15],{"encoding":98},[35,6159,6161],{"className":6160,"ariaHidden":104},[103],[35,6162,6164,6167],{"className":6163},[108],[35,6165],{"className":6166,"style":309},[112],[35,6168,15],{"className":6169},[121,125],[35,6171,6173,6186],{"className":6172},[38],[35,6174,6176],{"className":6175},[42],[44,6177,6178],{"xmlns":46},[48,6179,6180,6184],{},[51,6181,6182],{},[62,6183,6006],{},[96,6185,6006],{"encoding":98},[35,6187,6189],{"className":6188,"ariaHidden":104},[103],[35,6190,6192,6195],{"className":6191},[108],[35,6193],{"className":6194,"style":309},[112],[35,6196,6006],{"className":6197,"style":313},[121,125],[15,6199,6200,6201,351,6204,6206],{},"Главный гиперпараметр t-SNE — ",[348,6202,6203],{},"perplexity",[353,6205,6203],{},") — управляет шириной гауссовых ядер и интерпретируется как «эффективное число соседей», учитываемых при оценке локальной плотности. Типичные значения — от 5 до 50; на маленьких датасетах лучше работают значения поменьше, на больших — побольше. Чувствительность результата к perplexity иногда неожиданно высока: разные значения могут дать визуально разные «облака», и важно проверять устойчивость, прогоняя алгоритм с несколькими значениями параметра.",[1616,6208,1618,6209,1618,6213],{},[1620,6210],{"src":6211,"alt":6212},"\u002Fimg\u002Faidt-iot-mii\u002Ftopic-06\u002Ftsne_vs_pca.svg","Сравнение проекций на ту же двумерную плоскость: PCA сохраняет глобальные расстояния, но смешивает классы; t-SNE разносит классы, но искажает глобальную геометрию",[1625,6214,6215],{},"Один и тот же датасет в проекциях PCA и t-SNE: разные приоритеты — глобальная геометрия против локальных соседств",[15,6217,6218,6219,6222,6223,6226,6227,6333,6334,6343],{},"У t-SNE два принципиальных ограничения, о которых надо знать с самого начала. Первое — ",[348,6220,6221],{},"невоспроизводимость",": алгоритм стохастический, разные запуски с разной инициализацией дают разные карты. Это значит, что t-SNE — инструмент визуализации, а не координатной системы: на нём нельзя строить классификатор, ожидая что обученная модель применима к новым данным. Второе — ",[348,6224,6225],{},"непригодность для новых объектов",": t-SNE не строит функцию ",[35,6228,6230,6258],{"className":6229},[38],[35,6231,6233],{"className":6232},[42],[44,6234,6235],{"xmlns":46},[48,6236,6237,6255],{},[51,6238,6239,6242,6244,6246,6249],{},[62,6240,6241],{},"ϕ",[54,6243,1939],{},[62,6245,94],{"mathvariant":93},[54,6247,6248],{},"→",[382,6250,6251,6253],{},[62,6252,387],{"mathvariant":386},[82,6254,1038],{},[96,6256,6257],{"encoding":98},"\\phi: \\mathcal{X} \\to \\mathbb{R}^2",[35,6259,6261,6280,6298],{"className":6260,"ariaHidden":104},[103],[35,6262,6264,6268,6271,6274,6277],{"className":6263},[108],[35,6265],{"className":6266,"style":6267},[112],"height:0.8889em;vertical-align:-0.1944em;",[35,6269,6241],{"className":6270},[121,125],[35,6272],{"className":6273,"style":249},[248],[35,6275,1939],{"className":6276},[214],[35,6278],{"className":6279,"style":249},[248],[35,6281,6283,6286,6289,6292,6295],{"className":6282},[108],[35,6284],{"className":6285,"style":262},[112],[35,6287,94],{"className":6288,"style":267},[121,266],[35,6290],{"className":6291,"style":249},[248],[35,6293,6248],{"className":6294},[214],[35,6296],{"className":6297,"style":249},[248],[35,6299,6301,6304],{"className":6300},[108],[35,6302],{"className":6303,"style":1419},[112],[35,6305,6307,6310],{"className":6306},[121],[35,6308,387],{"className":6309},[121,450],[35,6311,6313],{"className":6312},[129],[35,6314,6316],{"className":6315},[133],[35,6317,6319],{"className":6318},[138],[35,6320,6322],{"className":6321,"style":1419},[142],[35,6323,6324,6327],{"style":220},[35,6325],{"className":6326,"style":151},[150],[35,6328,6330],{"className":6329},[155,156,157,158],[35,6331,1038],{"className":6332},[121,158],", которую можно было бы применить к точке вне обучающей выборки; алгоритм минимизирует расстановку конкретных точек, и для новой точки придётся пересчитывать всё с нуля. Если нужна именно «карта» с возможностью добавления данных, используют UMAP ",[729,6335,6337],{"className":6336},[732],[734,6338,6340],{"href":6339},"#ref-9",[35,6341,6342],{},"9"," — родственный по идее метод, который явно строит обобщающее отображение.",[15,6345,6346],{},"Ещё одна особенность, регулярно сбивающая интерпретацию: глобальные расстояния на t-SNE-карте не сохраняются. Если два кластера на картинке кажутся далёкими — это не значит, что в исходном пространстве они тоже далеки; алгоритм оптимизирует только локальные структуры. По этой же причине плотность точек в кластере на t-SNE-карте не отражает плотности в исходных данных. Карту следует читать как «есть ли локальные группы и какие точки в них объединены», а не как «насколько одни группы похожи на другие».",[22,6348,6350],{"id":6349},"литература","Литература",[6352,6353,6356,6361,6365,6369,6373,6377,6381,6385,6389],"ol",{"className":6354},[6355],"references",[6357,6358,6360],"li",{"id":6359},"ref-1","MacQueen J. Some Methods for Classification and Analysis of Multivariate Observations. — Proceedings of the Fifth Berkeley Symposium on Mathematical Statistics and Probability, 1967, С. 281–297.",[6357,6362,6364],{"id":6363},"ref-2","Arthur D., Vassilvitskii S. k-means++: The Advantages of Careful Seeding. — Proceedings of the Eighteenth Annual ACM-SIAM Symposium on Discrete Algorithms (SODA), 2007, С. 1027–1035, DOI: 10.5555\u002F1283383.1283494.",[6357,6366,6368],{"id":6367},"ref-3","Ester M., Kriegel H., Sander J., Xu X. A Density-Based Algorithm for Discovering Clusters in Large Spatial Databases with Noise. — Proceedings of the Second International Conference on Knowledge Discovery and Data Mining (KDD), 1996, С. 226–231.",[6357,6370,6372],{"id":6371},"ref-4","Ankerst M., Breunig M. M., Kriegel H., Sander J. OPTICS: Ordering Points to Identify the Clustering Structure. — Proceedings of the 1999 ACM SIGMOD International Conference on Management of Data, 1999, С. 49–60, DOI: 10.1145\u002F304182.304187.",[6357,6374,6376],{"id":6375},"ref-5","Pearson K. On Lines and Planes of Closest Fit to Systems of Points in Space. — Philosophical Magazine, 1901, С. 559–572, DOI: 10.1080\u002F14786440109462720.",[6357,6378,6380],{"id":6379},"ref-6","Jolliffe I. T. Principal Component Analysis. — Springer, 2002, DOI: 10.1007\u002Fb98835.",[6357,6382,6384],{"id":6383},"ref-7","Hastie T., Tibshirani R., Friedman J. The Elements of Statistical Learning: Data Mining, Inference, and Prediction. — Springer, 2009, DOI: 10.1007\u002F978-0-387-84858-7.",[6357,6386,6388],{"id":6387},"ref-8","van der Maaten L., Hinton G. Visualizing Data using t-SNE. — Journal of Machine Learning Research, 2008, С. 2579–2605.",[6357,6390,6392],{"id":6391},"ref-9","McInnes L., Healy J., Melville J. UMAP: Uniform Manifold Approximation and Projection for Dimension Reduction. — arXiv preprint arXiv:1802.03426, 2018, https:\u002F\u002Farxiv.org\u002Fabs\u002F1802.03426.",{"title":6394,"searchDepth":6395,"depth":6395,"links":6396},"",2,[6397,6401,6406,6410],{"id":24,"depth":6395,"text":25,"children":6398},[6399],{"id":29,"depth":6400,"text":30},3,{"id":688,"depth":6395,"text":689,"children":6402},[6403,6404,6405],{"id":692,"depth":6400,"text":693},{"id":2493,"depth":6400,"text":2494},{"id":3159,"depth":6400,"text":3160},{"id":3733,"depth":6395,"text":359,"children":6407},[6408,6409],{"id":3736,"depth":6400,"text":3737},{"id":5436,"depth":6400,"text":5437},{"id":6349,"depth":6395,"text":6350},"aidt-iot-mii",null,"md",false,{},true,"\u002Fcourses\u002Faidt-iot-mii\u002Ftopic-06-content","content",{"title":6,"description":17},"courses\u002Faidt-iot-mii\u002Ftopic-06-content",6,"topic-06","wfkvDKiit16m33lVAh86fMmYBtwZFW0ID_EEWbrHyOE",{"id":6425,"title":6426,"body":6427,"course_slug":6411,"description":6394,"env_label":6412,"env_url":6412,"extension":6413,"group":6453,"is_course_project":6414,"is_index":6416,"level":6454,"meta":6455,"navigation":6416,"path":6479,"section":6412,"seo":6480,"stem":6481,"topic_number":6412,"topic_slug":6412,"__hash__":6482},"courses\u002Fcourses\u002Faidt-iot-mii\u002Findex.md","Методы искусственного интеллекта",{"type":8,"value":6428,"toc":6450},[6429,6433],[22,6430,6432],{"id":6431},"документы","Документы",[6434,6435,6436,6443],"ul",{},[6357,6437,6438,6439,2036],{},"Требования к содержанию и оформлению — ",[734,6440,6442],{"href":6441},".\u002Fshared\u002FSTYLEGUIDE","shared\u002FSTYLEGUIDE.md",[6357,6444,6445,6446,2036],{},"Содержание курса — ",[734,6447,6449],{"href":6448},".\u002Ftopics","topics.md",{"title":6394,"searchDepth":6395,"depth":6395,"links":6451},[6452],{"id":6431,"depth":6395,"text":6432},"iot","бакалавриат",{"topics_count":6456,"has_lr":6416,"has_pz":6416,"has_course_project":6414,"final_assessment":6394,"tech_focus":6457,"kind":6458,"authors":6459,"publication":6470,"annotation":6478},9,"scikit-learn, Keras\u002FTensorFlow, Hugging Face","Учебное пособие",[6460,6465],{"last_name":6461,"first_name":6462,"patronymic":6463,"role":6464,"affiliation":6394},"Корчагин","Сергей","Геннадьевич","автор",{"last_name":6466,"first_name":6467,"patronymic":6468,"role":6464,"affiliation":6469},"Рындин","Никита","Александрович","ВГТУ",{"city":6471,"year":6472,"founder":6473,"publisher":6474,"udk":6394,"bbk":6394,"shelf_mark":6394,"isbn":6394,"approval_body":6477},"Воронеж",2026,"Министерство науки и высшего образования Российской Федерации",{"short":6469,"full":6475,"address":6476},"Федеральное государственное бюджетное образовательное учреждение высшего образования «Воронежский государственный технический университет»\n","394026, Воронеж, Московский проспект, 14","Издается по решению редакционно-издательского совета\nВоронежского государственного технического университета\n","Учебное пособие охватывает основные методы искусственного интеллекта:\nклассические алгоритмы поиска и логического вывода, постановку задач\nмашинного обучения, классические алгоритмы классификации и регрессии,\nобучение без учителя, методологию оценки и выбора моделей, нейронные\nсети и обработку естественного языка с применением современных\nпредобученных моделей.\n\nПредназначено для студентов бакалавриата, изучающих дисциплины\n«Методы искусственного интеллекта» и смежные курсы по машинному\nобучению. Предполагается базовое владение языком Python и навыки\nпредварительной обработки данных.","\u002Fcourses\u002Faidt-iot-mii",{"title":6426,"description":6394},"courses\u002Faidt-iot-mii\u002Findex","piE67Aq1EFie5slrRu4oHnVNvzYsc6XAWuF13eVVSic",1779455410591]