Математические основы машинного обучения: линейная алгебра

машинное обучение
Математические основы машинного обучения: линейная алгебра

 

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

1. Основные концепции символов

1.1 Скаляр (скаляр)

Скаляр — это величина, которая имеет только величину, без направления и может быть представлена ​​действительным числом.

 

1.2 Вектор (вектор)

Вектор — это геометрический объект, который имеет размер и направление. Вектор может быть представлен как вектор-строка или вектор-столбец.

a=[abc]\vec{a} = \begin{bmatrix} a&b&c \end{bmatrix}

or

a=[abc]\vec{a} = \begin{bmatrix} a \\ b \\ c \end{bmatrix}

 

1.3 Матрица

Матрица представляет собой прямоугольный массив из m строк и n столбцов элементов. Обычно обозначается заглавными буквами, матрицаAAномер сверху слеваiiрядjjЭлементы столбца называютсяi,ji, jэлемент, обычно обозначаемый какAijA_{ij}. Ниже представлена ​​матрица с 3 строками и 4 столбцами:

A=[144912480911]A= \begin{bmatrix} 1 & 4& 4 & 9 \\ -1 & 2& 4 & 8 \\ 0& 9 & -1 & 1 \end{bmatrix}

фаланга: Матрица с одинаковым количеством строк и столбцов называется квадратной матрицей.

диагональная матрица: Если только элементы на главной диагонали квадратной матрицы не равны 0, а остальные равны 0, то она называется диагональной матрицей.

единичная матрица: Если все элементы главной диагонали диагональной матрицы равны 1, то матрица является единичной матрицей

 

1.4 Тензор (тензор)

Тензоры можно рассматривать как многомерные массивы, которые являются многомерными обобщениями скаляров, одномерных векторов и двумерных матриц. Ссылаясь на документацию TensorFlow, можно считать, что:

  • Скаляр можно назвать тензором «ранга 0», содержащим одно значение и не имеющим осей.
  • Скаляр можно назвать тензором «ранга 1», содержащим список значений с одной осью.
  • Матрицу можно назвать тензором «ранга 2» с двумя осями.

Следующий рисунок очень наглядно иллюстрирует сказанное выше:

Для визуализации тензоров на следующем рисунке показаны три метода визуализации одного и того же трехосного тензора:

 

2. Операция

2.1 Векторный внутренний продукт

Внутренний продукт (точечный продукт), также известный как скалярный продукт, количественный продукт, результат является скаляром два вектораa=[a1,a2,,an]{\displaystyle {\vec {a}}=[a_{1},a_{2},\cdots ,a_{n}]}иb=[b1,b2,,bn]{\displaystyle {\vec {b}}=[b_{1},b_{2},\cdots ,b_{n}]}Скалярный продукт определяется как:

ab=i=1naibi=a1b1+a2b2++anbn{\displaystyle {\vec {a}}\cdot {\vec {b}}=\sum _{i=1}^{n}a_{i}b_{i}=a_{1}b_{1}+a_{2}b_{2}+\cdots +a_{n}b_{n}}

 

2.2 Векторное внешнее произведение

Внешний продукт в линейной алгебре обычно относится к тензорному произведению двух векторов, результатом которого является матрица, например:

[b1b2b3b4][a1a2a3]=[a1b1a2b1a3b1a1b2a2b2a3b2a1b3a2b3a3b3a1b4a2b4a3b4]\begin{bmatrix}b_1 \\ b_2 \\ b_3 \\ b_4\end{bmatrix} \otimes \begin{bmatrix}a_1 & a_2 & a_3\end{bmatrix} = \begin{bmatrix}a_1b_1 & a_2b_1 & a_3b_1 \\ a_1b_2 & a_2b_2 & a_3b_2 \\ a_1b_3 & a_2b_3 & a_3b_3 \\ a_1b_4 & a_2b_4 & a_3b_4\end{bmatrix}

 

2.3 Умножение матриц

какA{\displaystyle A}заm×n{\displaystyle m\times n}матрица,B{\displaystyle B}заn×p{\displaystyle n\times p}матрица, то их произведениеAB{\displaystyle AB}было быm×p{\displaystyle m\times p}матрица. Элементы матрицы его произведения получаются следующим образом:

(AB)ij=r=1nairbrj=ai1b1j+ai2b2j++ainbnj{\displaystyle (AB)_{ij}=\sum _{r=1}^{n}a_{ir}b_{rj}=a_{i1}b_{1j}+a_{i2}b_{2j}+\cdots +a_{in}b_{nj}}

Это представлено графически как:

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

 

2.4 Транспонирование матрицы

Транспонировать (транспонировать), выраженный какATA^T, то есть матрицаAAГоризонтальная строка записывается как ее столбец, аAAСтолбец записывается как его строка. Математически выражается как:

AijT=AjiA_{ij}^{\mathrm {T} }=A_{ji}

Пример выглядит следующим образом:

[123456]T=[135246]{\displaystyle {\begin{bmatrix}1&2\\3&4\\5&6\end{bmatrix}}^{\mathrm {T} }={\begin{bmatrix}1&3&5\\2&4&6\end{bmatrix}}}

 

2.5 Обратная матрица

Обратная матрица для заданной квадратной матрицы порядка nA{{A} }, если существует квадратная матрица порядка nB{{B} }, так что:

AB=BA=In{{AB} = {BA} = {I} _{n}},

вIn{\displaystyle {I} _{n}} заnnединичная матрица порядка, тогдаA{\displaystyle {A} } является обратимым, иB{\displaystyle {B} } даA{\displaystyle {A} }Обратная матрица , обозначаемая какA1{\displaystyle {A} ^{-1}} Только квадратная матрица (n×nп × пматрица) может иметь обратную матрицу. Если квадратA{\displaystyle {A} }Обратная матрица существует, то она называетсяA {\displaystyle {A} }является неособой квадратной матрицей или обратимой квадратной матрицей

 

3. Разложение матрицы

3.1 Собственные значения и собственные векторы

дана квадратная матрицаAA,λ\lambdaназываетсяAAсобственное значение , когда есть векторvvудовлетворитьAv=λv{\displaystyle Av=\lambda v}, В настоящее время,vvдаAAсобственный вектор

 

3.2 Разложение по сингулярным числам

Разложение по сингулярным числам (SVD) может использоваться для любогоm×n{\displaystyle m\times n}матрица, а собственное разложение может применяться только к определенным типам квадратных матриц, поэтому диапазон применения разложения по сингулярным числам шире.

ПредположениеAAЯвляетсяm×nм×пматрица порядка, мы определяемAAСингулярное разложениеA=UΣV*,{\displaystyle A=U\Sigma V^{*},\,} вUU – матрица порядка m×m;Σ\Sigmaимеет порядок m×n;V*V^{*} – матрица порядка n×n;UUиV*V^{*} все матрицы вождей, т.е. удовлетворяющиеUTU=IU^TU=I , V*TV*=IV^{*T}V^{*}=I,Σ\Sigmaвсе равны 0, за исключением элементов на главной диагонали, которые называются сингулярными значениями.

На следующем рисунке очень наглядно показана СВД:В машинном обучении очень часто используется алгоритм PCA для уменьшения размерности, и его можно преобразовать в SVD в процессе расчета, тем самым уменьшив вычислительную сложность. Кроме того, SVD практически незаменим в рекомендательных системах.

 

3.3 Расчет сингулярного разложения

учитываяMMСингулярное разложение , согласно приведенному выше обсуждению, отношение между ними следующее (гдеM*M^{*} даMM Сопряженная транспонированная матрица (матрица транспонирования обобщается на комплексные числа)):

  • M*M=VΣ*U*UΣV*=V(Σ*Σ)V*{\displaystyle M^{*}M=V\Sigma ^{*}U^{*}\,U\Sigma V^{*}=V(\Sigma ^{*}\Sigma )V^{*}\,}

  • MM*=UΣV*VΣ*U*=U(ΣΣ*)U*{\displaystyle MM^{*}=U\Sigma V^{*}\,V\Sigma ^{*}U^{*}=U(\Sigma \Sigma ^{*})U^{*}\,}

Правая часть соотношения описывает разложение по собственным значениям левой части соотношения. тогда:

  • V{\displaystyle V}Вектор-столбец (правый сингулярный вектор) равенM*M{\displaystyle M^{*}M}собственные векторы .

  • U{\displaystyle U} Вектор-столбец (левый сингулярный вектор) равенMM*{\displaystyle MM^{*}}собственные векторы .

  • Σ{\displaystyle \Sigma } Ненулевые диагональные элементы (ненулевые сингулярные значения)M*M{\displaystyle M^{*}M}илиMM*{\displaystyle MM^{*}} Квадратный корень из ненулевых собственных значений .

Поэтому, вычисливM*MM^{*}M Собственные векторы и собственные значения ,MM*MM^{*}Собственные векторы и собственные значения , то есть спариваниеMM сингулярное разложение

 

4. Метрики расстояния и подобия

4.1 Манхэттенское расстояние

То есть норма L1, определяемая как:

x=i=1nxi {\displaystyle \|{\boldsymbol {x}}\|=\sum_{i=1}^{n}|x_i|} ,

Его наиболее распространенным применением в машинном обучении являетсяL1L1Регуляризация, также известная как Лассо

 

4.2 Евклидово расстояние

Также известная как норма L2, она определяется как сумма квадратов каждого элемента, выраженная как:

x2=i=1nxi2=x12++xn2{\displaystyle \|{\boldsymbol {x}}\|_{2}= \sqrt{\sum_{i=1}^{n}{x_i}^2}= {\sqrt {x_{1}^{2}+\cdots +x_{n}^{2}}}} ,

Его применениеL2L2Регуляризация, также известная как RidgeL1L1иL2L2Регуляризация широко используется в моделях машинного обучения, в основном для уменьшения сложности модели и уменьшения переобучения.

 

4,3 лп норма

LpLpНорма определяется как:

x=limp(i=1nxip)1/p=minixi{\displaystyle \lVert {\vec {x}}\rVert _{\infty }=\lim _{p\to -\infty }{\Bigl (}\sum \limits _{i=1}^{n}|x_{i}|^{p}{\Bigr )}^{1/p}=\min _{i}|x_{i}|}, когдаppПринимая разные значения, мы можем получить разные нормы

  • p=1{\displaystyle p=1}Время:x1=i=1nxi{\displaystyle \lVert {\vec {x}}\rVert _{1}=\sum \limits _{i=1}^{n}|x_{i}|},СейчасL1 {\displaystyle L_{1}}, норма представляет собой сумму абсолютных значений компонентов вектора, также известного как манхэттенское расстояние

  • p=2{\displaystyle p=2}Время:x2=i=1nxi2{\displaystyle \lVert {\vec {x}}\rVert _{2}={\sqrt {\sum \limits _{i=1}^{n}|x_{i}|^{2}}}}, которыйL2L2, что является евклидовым расстоянием

  • p=+{\displaystyle p=+\infty }Время:x=limp+(i=1nxip)1/p=maxixi{\displaystyle \lVert {\vec {x}}\rVert _{\infty }=\lim _{p\to +\infty }{\Bigl (}\sum \limits _{i=1}^{n}|x_{i}|^{p}{\Bigr )}^{1/p}=\max _{i}|x_{i}|} , что является максимальной нормой, также известной как расстояние Чебышева

 

4.4 Косинусное подобие

даны два вектораAAиBB, косинусное подобиеθ\thetaзадается скалярным произведением и длиной вектора следующим образом:

similarity=cos(θ)=ABAB=i=1nAi×Bii=1n(Ai)2×i=1n(Bi)2{\displaystyle {\text{similarity}}=\cos(\theta )={A\cdot B \over \|A\|\|B\|}={\frac {\sum \limits _{i=1}^{n}{A_{i}\times B_{i}}}{{\sqrt {\sum \limits _{i=1}^{n}{(A_{i})^{2}}}}\times {\sqrt {\sum \limits _{i=1}^{n}{(B_{i})^{2}}}}}}} ,

Диапазон сходства косинусов[1,1][-1, 1],1-1означает, что два вектора направлены в противоположные стороны,11означает, что их направление точно такое же,00Обычно означает, что они независимы, а значение между ними означает сходство или несходство посередине, чем больше значение, тем больше сходство

 

4.5 Расстояние Хэмминга

Расстояние Хэмминга — это количество символов, которые необходимо заменить, чтобы преобразовать строку в другую строку такой же длины. Например, расстояние Хэмминга между «прикосновением» и «обучением» равно 2.

 

4.6 Коэффициент подобия Жаккара

Он определяется как отношение размера пересечения двух множеств к размеру объединения:

J(A,B)=ABAB=ABA+BAB{\displaystyle J(A,B)={{|A\cap B|} \over {|A\cup B|}}={{|A\cap B|} \over {|A|+|B|-|A\cap B|}}}

Диапазон значений коэффициента подобия Жаккара составляет:0J(A,B)1{\displaystyle 0\leq J(A,B)\leq 1}

Расстояние Жаккара используется для измерения различия между наборами выборок, которое определяется как 1 минус коэффициент Жаккара, а именно:

dJ(A,B)=1J(A,B)=ABABAB{\displaystyle d_{J}(A,B)=1-J(A,B)={{|A\cup B|-|A\cap B|} \over |A\cup B|}}

 

4.7 Коэффициент корреляции Пирсона

Коэффициент корреляции Пирсона между двумя переменными определяется как ковариация двух переменных, деленная на произведение их стандартных отклонений:

рX,Y=cov(X,Y)оXоY=E[(XмюX)(YмюY)]оXоY{\displaystyle \rho _{X,Y}={\mathrm {cov} (X,Y) \over \sigma _{X}\sigma _{Y}}={E[(X-\mu _{X})(Y-\mu _{Y})] \over \sigma _{X}\sigma _{Y}}}

Диапазон изменения коэффициента корреляции Пирсона составляет[1,1][-1, 1].

Значение коэффициента11значитXXиYYможет быть хорошо описана уравнением прямой линии, все точки данных хорошо ложатся на прямую линию, иYYвместе сXXувеличивается с ростом.

Значение коэффициента1−1означает, что все точки данных падают на прямую линию, иYYвместе сXXувеличиваться и уменьшаться.

Значение коэффициента00означает, что между двумя переменными нет линейной зависимости

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