Сеть Кохонена. Кластеризация
Вставка
- Опубліковано 9 лют 2025
- Теория кластеризации дана на примере пяти образцов, которые надо распределить по трем кластерам. Первоначально кластеры (векторы с четырьмя координатами) берутся произвольно - случайно. Векторы X_k (четыре независимых свойства у каждого, т.е. 4 координаты) заданы. Оценивается близость векторов и кластеров. Если вектор с номером k оказывается ближе всего к кластеру W_i, то этот кластер подвигается к вектору- образцу по формуле W_i'=W_i+eta (X_i-W_i), где eta - коэффициент обучения (от 0 до 1). Процесс описан для одного цикла, но таких циклов должно быть много - до установившейся картины кластеров. Показывается, как ввести штрафные санкции на кластера-победителя, чтобы дать шанс другим кластерам.
The clustering theory is based on the example of five samples that need to be distributed across three clusters. Initially, clusters (vectors with four coordinates) are taken randomly. The X_k vectors (four independent properties for each, i.e. 4 coordinates) are set. The proximity of vectors and clusters is estimated. If the vector with the number k is closest to the cluster W_i, then this cluster moves to the sample vector by the formula W_i'=W_i+eta (X_i-W_i), where eta is the learning coefficient (from 0 to 1). The process is described for a single cycle, but there should be many such cycles - until the cluster pattern is established. Shows how to impose penalties on the winning cluster to give other clusters a chance.
Как я рада, что нашла вас!!! Очень доступно доносите информацию!!! Благодарю за ваш бесценный труд.
Могу ли я меру близости использовать, например квадрат евклид. Расстояния?
В математике много мер (еще Жордана, Лебега, Хаусдорфа...). Главное не перепутать близость и удаленность для алгоритма. Я рад, что Вы рады! Экспериментируйте. В этой науке, что ни сделаешь - все открытие. Главное - делать.
Вы очень хороший учитель!
Спасибо! Однозначно подписываюсь.
Вот только мысль покоя не дает - ведь если кластеры "эволюционируют", то получается, что на выходе будем иметь совершенно новые, и их смысл может быть не совсем понятен. Например, если координаты наших векторов-кластеров выбирались по системе [скорость, масса, цена] (например, для сортировки автомобилей), и были:
[1, 0, 0] для скоростных,
[0, 1, 0] для тяжелых (не знаю, карьерный самосвал, к примеру) и
[0, 0, 1] для дорогих,
то в конце кластеры превратятся во что-то типа [0.3, 0.36, 0.6], т.е., "слегка быстрый, не очень тяжелый, но дороговатый". Т.е., получается, что новые группы (кластеры), по которым мы рассортируем машины, окажутся довольно непрактичными. Я понимаю, что это происходит по большей части из-за набора наших автомобилей, на которых мы тренируем карту Кохонена. Выбрали бы только дорогие легкие суперкары и применили те же кластеры - получили бы совершенно другой результат. Но все равно, как-то... досадно. Вот было бы здорово, если бы скормил аглоритму все свои "автомобили", а на выходе - "кластер гоночных", "кластер тяжелой техники", "кластер антикварных".....
Хотя... может, как раз [0.2, 0.15, 0.9] и окажутся "антикварными" автомобилями. Медленные, легкие, очень дорогие.
А еще получается, что есть вероятность того, что кластеризация будет не уникальна. Выберем другие начальные значения кластеров - можем получить какую-то иную выходную совокупность кластеров.
Очень интересная тема. Еще раз спасибо!
Замечательно! Очень подходит к кластеризации земель. На сегодняшний день готовится всесторонняя оценка стоимости земель в странах СНГ, где до сих пор не было рынка земли. Надо оценить сколько стоит земля (на продажу, для налогообложения) . Оценивается количество жителей, доходность рабочих мест, наличие коммуникаций, чистота воды, воздуха, наличие подъездных путей и пр.
Огромное спасибо за Ваши видео!
Размышляя о примере с телевизорами (или вообще любыми товарами), которые классифицируются по сортам (высший, средний, худший), совсем не понятно, откуда возникает отношение порядка на множестве получившихся кластеров и почему вообще мы ожидаем, что на этом множестве какой-то порядок должен быть (а в случае сортов мы точно знаем, какой из пары сортов лучше/хуже). Интуитивно кажется, что этот алгоритм для множества телевизоров может просто найти некоторое нужное число категорий и разбить телевизоры по категориям. Но алгоритм не дает никакого однозначного способа для произвольной пары категорий (кластеров) выявить, какой лучше, а какой хуже (т.е. сравнить), а равно как и не гарантирует, что если мы и найдем способ сравнивать между собой категории, то это сравнение будет обладать транзитивностью (что необходимо для упорядочивания/ранжирования). Т.е. мы получим 3 или сколько угодно категорий, но это будут какие-то абстрактные категории, и мы не сможем сказать, какая из них лучшая, какая худшая. Алгоритм решает задачу разбиения объектов по семействам (собирая в каждом семействе элементы с максимально возможной похожестью), но совершенно не решает задачу ранжирования семейств.
Тогда, если я правильно понял, примеры с сортами продукции или ранжированию людей по характеристикам -- неудачны. Зато разбиение людей на психоморфотипы или формирование групп с обеспечением того, чтобы в каждой группе собрались как можно более схожие друг с другом представители (что может быть полезным для минимизации конфликтов к коллективах/командах), он, по всей видимости решает хорошо. При этом мы не сможем сказать, что из полученных категорий какая-то лучше другой.
Другой практический пример, который кажется удачным, это постеризация изображений. У нас есть изображение состоящее из пикселей, цвет каждого пикселя кодируется одним (для монохромных) или несколькими (тремя для RGB-модели, четырьмя для CMYK) скалярными значениями. Нужно передать изображение, используя палитру из ограниченного количества цветов/красок, например палитру из 8 цветов. Какие именно цвета оптиальнее выбрать?
Благодарю за интересные мысли. Приму на вооружение. А людей я тоже имел в виду ранжировать не по качеству - лучше хуже (это аморально) , а именно по типам. Как расы или группы крови. Или психоморфотипы (новое для меня слово).
Вот уж нейросетевых алгоритмов здесь не ожидал увидеть. Спасибо.
Посему же? Уже есть несколько в прошлые годы
ua-cam.com/video/sg8fezJYJ5E/v-deo.html&feature=player_detailpage
ua-cam.com/video/W7ux1RfOQeM/v-deo.html&feature=player_detailpage
и др.
Спасибо Вам! Очень интересный канал.
круто!
А входов разве не 4 должно быть? Характеристики то у нас 4 а обзцов 5.
алгоритмы везде есть а вот такие простые "на пальцах" объяснения как оно работает как раз ютюбу не хватает
Жаль что учился не в вашем вузе :-)