Примечания к простому обзору машинного обучения

алгоритм

Наверху написано: В этой статье не слишком много математических формул, но она похожа на обзорную заметку, читатели, обратите внимание! ! !

Простое понимание регуляризации

Еще это выглядит на простом примере:y=wx+by=wx+b.

Вообще говоря. x — это данные (функция), а y — метка. Возможно, опять же, мы можем назвать x знанием, y ответом, w вниманием, которое мы уделяем этому, и b простой корректировкой, которую мы делаем. Тогда можно назвать процесс обучения, мы максимально используем свои знания, чтобы дать правильный ответ. Самый простой способ сделать это - отступить! ! ! . Тогда вам нужно вложить немного энергии и уделить больше внимания этим знаниям. Похоже на это, w усложнится. Как мы все знаем, добавление штрафного члена λ перед w уменьшит w. Это как бы говорит о том, что мы не должны уделять слишком много внимания некоторым знаниям, и мы должны сдаться, когда должны.

Во время учебы, если вы хотите сохранить много контента в своих заметках, возможно, вам следует «упорядочить» его. Если вы король прокрутки и хотите многому научиться, возможно, вам следует «упорядочить» его. Вы также должны уделять внимание отдыху, когда вы вкатываетесь, и ваша жизнь не должна быть чрезмерной.

кластеризация

Существует много видов алгоритмов кластеризации, и самый простой из них — K-средних.

1. Кластеризация K-средних

Вход: набор данных X, количество центров кластеров K.

Выход: кластерный индикатор

Гиперпараметр: K (количество центров кластера)

1. Рабочий процесс К-средних

Во-первых, инициализируйте центр кластера случайным образом -> вычислите центр кластера, ближайший к точке выборки для каждой точки выборки (или просто вызовите это назначение класса процесса) -> вычислите центр кластера в каждом классе в соответствии с результатом, рассчитанным на предыдущем шаге Среднее всех точек выборки. Пусть центр кластера равен этому среднему (или просто назовите этот процесс перемещением центра кластера) -> продолжайте повторять процесс присвоения классов и перемещения центра кластера, пока модель не сойдется.

Случайная инициализация центров кластеров — очень важная задача, от решения которой во многом зависит, сможет ли модель сходиться к глобальному оптимуму. Чтобы получить как можно больше глобально оптимальных результатов кластеризации, распространенной стратегией является выполнение нескольких случайных инициализаций, а затем непрерывная итерация. Также можно понять, что если случайная инициализация центра кластера, а затем итеративная модель к сходимости рассматривается как одна кластеризация, то стратегия множественной случайной инициализации на самом деле является оптимальной моделью, полученной после многократной кластеризации.Это стратегия, максимально оптимальная в глобальном масштабе, но она не всегда работает.Например, если кластеризуемый класс слишком велик. Множественная кластеризация не обязательно может найти глобальный оптимум. Количество кластеризации обычно составляет 50-1000 раз.

2. Функция потерь K-средних

Вообще говоря, функция потерь K-средних представляет собой расстояние между всеми точками выборки и их соответствующими центрами кластеров (конкретную формулу см. в других материалах). Двусмысленность здесь заключается в следующем: как K-средние оптимизируют эту функцию потерь? Градиентный спуск здесь явно не используется. Во время назначения класса центр кластера, ближайший к точке выборки, рассчитывается для каждой точки выборки. Этот процесс заключается в минимизации функции потерь.

3. Правило выбора количества центров кластеров

Правило локтя:Выберите диапазон значений центра кластера, например: K=1..10. Кластер каждый K. Получите значение функции потерь после сходимости алгоритма. Затем визуализируйте эти функции потерь. Если до определенного К функция потерь сильно убывает, то после этого функция потерь убывает очень медленно. Весь образ выглядит как согнутый локоть.

Тогда это K обычно является лучшим значением. Однако во многих случаях получить такие изображения затруднительно. Затем выберите в соответствии с фактическим значением.

Выбирайте в соответствии со смыслом фактического сценария применения:Согласно конкретному анализу фактического сценария применения.

4. Принципиальная схема кластерного индикатора

ссылка от:CDIMC-net: Cognitive Deep Incomplete Multi-view Clustering Network

2. Метрики для оценки кластеризации

Снижение размерности

Хуа Луогенг однажды сказал: «Когда числам не хватает формы, они менее интуитивны, а когда у них мало формы, их трудно понять». Я второй раз обновляю этот блог и чувствую, что без математических формул сложно прикоснуться к сути теории. Вздох, читатели не должны удивляться.

Одним из наиболее классических методов уменьшения размерности является PCA. Суть ее должна заключаться в теории сингулярного разложения. Про теорию сингулярного разложения я забыл. Он будет добавлен позже. . .

1. Анализ основных компонентов (PCA)

Вход: набор данных X, измерение K.

Выход: набор данных Z после уменьшения размерности

Гиперпараметр: измерение K

1. Рабочий процесс ППШ

шаг 1. Предварительная обработка набора данныхОбычно на этапе предварительной обработки решаются две основные задачи. Одним из них является масштабирование функций, при котором все функции помещаются в одно и то же измерение. Например, некоторые функции данных имеют порядок величины 10, а некоторые — 1000. Масштабирование функций заключается в масштабировании их всех в диапазоне от 0 до 1. Другой — средняя нормализация, которая рассматривает среднее значение всех собственных значений как 0. Основной подход состоит в том, чтобы вычесть среднее значение столбца признаков из столбца признаков.

шаг 2. Разложение по сингулярным числамВ общем наборе данных, если набор данных рассматривается как матрица, то каждый столбец представляет выборку, а каждая строка представляет собой функцию (обратите внимание на размерность вектора в приведенной ниже формуле). Прежде чем выполнять разложение по сингулярным числам, нам нужно найти ковариационную матрицу. Эта ковариационная матрица имеет размер n×n. Формула выглядит следующим образом:

Затем выполните разложение по сингулярным числам на ковариационной матрице:[U, S, V]=svd(sigma). В результате получается три матрицы. U равно n×n, и первые K столбцов U извлекаются какUreduceU_{reduce}.

шаг 3. Проекция UreduceU_{reduce}Размер равен n×k (такой же, как предыдущий большой K). Задача проекции состоит в том, чтобы:Z=UreduceT*XZ=U_{reduce}^T * X(Умножение здесь — это матричное умножение). должен быть в курсеUreduceU_{reduce}является ортогональной матрицей. Он может представлять основу k-мерного подпространства в n-мерном пространстве.Умножая набор данных X на базу этого подпространства, можно завершить проекцию X в K-мерное подпространство.

также,Ureduce1=UreduceTU_{reduce}^{-1}=U_{reduce}^T. Таким образом, можно получить формулу:Ureduce*Z=XU_{reduce} * Z = X(Умножение здесь означает умножение матриц). Это формула для восстановления данных высокой размерности из данных низкой размерности.

шаг 4. Найдите эффект от этого уменьшения размерностиЯ также не понял основного смысла формулы. Перейдем непосредственно к формуле, благо это показатель для оценки. Установить ли его равным 0,99, зависит от индивидуальных потребностей. Если набор К на этот раз не дает ожидаемого эффекта, можно попробовать другие К.

Check  if  i=1kSi,ii=1nSi,i>=0.99Check\ \ if\ \ \frac{\sum_{i=1}^{k}S_{i,i}}{\sum_{i=1}^{n}S_{i,i}}>=0.99

2. Выбор гиперпараметров PCA

Что касается показателей оценки, я пока не понимаю. Вот краткое описание метода: брать K по очереди через определенный интервал [a, b], и повторять вышеописанные 4 шага для каждого K. Если вы встретите K, который соответствует требованиям к индексу шага 4, вы можете остановить итерацию. Но реальность жестока.

3. Применение СПС

Сжатие данных:Сжимайте многомерные данные в низкоразмерные. С одной стороны, можно уменьшить место для хранения. С другой стороны, это может ускорить расчет.

визуализация данных:Многомерные данные трудно визуализировать, и их можно свести к трем или двум измерениям. Используя график визуализации, вы можете помочь выбрать количество кластеров для кластеризации.

4. Небольшое предложение

1,Моделирование должно быть выполнено сначала с необработанными данными, и PCA не следует рассматривать в первый раз. Если исходный набор данных не работает должным образом или имеет другие проблемы, снова рассмотрите метод PCA.

2,Вычислить матрицу уменьшения размерностиUreduceU_{reduce}Можно использовать только обучающие данные, а данные проверки и тестовые данные использовать нельзя. Потому что последний подходит для выбора модели или проверки способности модели к обобщению. Если эти данные используются на этапе обучения, то модель видит тестовые данные во время обучения и, очевидно, обеспечивает производительность теста. Это похоже на утечку данных.