2014 dxdy logo

Научный форум dxdy

Математика, Физика, Computer Science, Machine Learning, LaTeX, Механика и Техника, Химия,
Биология и Медицина, Экономика и Финансовая Математика, Гуманитарные науки


Правила форума


Посмотреть правила форума



Начать новую тему Ответить на тему На страницу 1, 2  След.
 
 Разложение тензоров для реком. систем
Сообщение09.07.2017, 10:55 


07/06/17
19
Я хочу разобраться для чего разлагают тензоры кроме уменьшения размера. В частности, мне интересно следущее: можно ли находить какие-либо скрытые переменные разложением? можно ли предсказывать отсутствующее значение и как? потому что я читал и видел в видеолекции(https://www.youtube.com/watch?v=OeJnJfcj6aw), что разложение также используется в рекоммендательных системах, но не совсем понял как. Точнее понимаю, что разложив любую матрицу/тензор и потом обратно её/его собрав(умножением) мы получим новые значения, но в пустых клетках мы же получим необязательно числа, сильно отличающиеся от нуля. Так как же сделать так чтобы в каком-либо конкретном месте было появлялось значение, соответствующее какой-либо общей модели.

P.S. под словом "тензор" я имею в виду многомерный массив

 Профиль  
                  
 
 Re: Разложение тензоров для реком. систем
Сообщение10.07.2017, 08:21 


07/06/17
19
Также, меня интересует как разложение тензоров помогает в обнаружении новых скрытых переменных или как помогает в уменьшении размерности.

 Профиль  
                  
 
 Re: Разложение тензоров для реком. систем
Сообщение10.07.2017, 11:57 
Заслуженный участник
Аватара пользователя


30/01/06
72407
qwarck в сообщении #1232370 писал(а):
под словом "тензор" я имею в виду многомерный массив

Под словом "бутерброд" я имею в виду селёдку.

Боюсь, с таким подходом вы не найдёте много желающих ответить.

И вообще, многомерные массивы никак не раскладываются. В отличие от тензоров.

 Профиль  
                  
 
 Re: Разложение тензоров для реком. систем
Сообщение10.07.2017, 12:19 
Заслуженный участник
Аватара пользователя


06/10/08
6422
Munin в сообщении #1232543 писал(а):
И вообще, многомерные массивы никак не раскладываются. В отличие от тензоров.
Как же не раскладываются. Конечно, раскладываются. Или, по-вашему, в SVD тоже раскладываются не матрицы, а только операторы?

-- Пн июл 10, 2017 10:26:41 --

qwarck в сообщении #1232370 писал(а):
Я хочу разобраться для чего разлагают тензоры кроме уменьшения размера. В частности, мне интересно следущее: можно ли находить какие-либо скрытые переменные разложением? можно ли предсказывать отсутствующее значение и как? потому что я читал и видел в видеолекции(https://www.youtube.com/watch?v=OeJnJfcj6aw ), что разложение также используется в рекоммендательных системах, но не совсем понял как. Точнее понимаю, что разложив любую матрицу/тензор и потом обратно её/его собрав(умножением) мы получим новые значения, но в пустых клетках мы же получим необязательно числа, сильно отличающиеся от нуля.
Посмотрел видео, по-моему все очень понятно. Мы берем многомерный массив и раскладываем его в TT, предполагая, что "средние" размерности малы.
Почему Вы считаете, что в пустых клетках мы получим числа, слабо отличающиеся от нуля? Как раз наоборот, в среднем мы получим какую-то уследненную величину, а если данные в каких-то столбцах связаны, то они будут дополнены связанным образом.

 Профиль  
                  
 
 Re: Разложение тензоров для реком. систем
Сообщение10.07.2017, 22:37 


07/06/17
19
С этим почти разобрался. У меня возник другой вопрос, мне сложно понять физический смысл того, что получается. Вот, например, когда мы разлагаем массив по PARAFAC/CANDECOMP, если каждая получившаяся часть-однокомпонентная, каков физический смысл получившихся векторов? Допустим, у меня массив температур, измерения: длина x ширина x высота, размеры: 30 x 40 x 50, разлагая по PARAFAC, получаю векторы 30 x 1, 40 x 1, 50 x 1. Каков физический или математический смысл того, что у меня получается? Как получившееся может помочь в анализе данных? Я знаю, что PARAFAC используется для анализа данных, но мне не совсем понятно как.

 Профиль  
                  
 
 Re: Разложение тензоров для реком. систем
Сообщение11.07.2017, 00:06 
Заслуженный участник
Аватара пользователя


30/01/06
72407
Xaositect в сообщении #1232551 писал(а):
Как же не раскладываются. Конечно, раскладываются. Или, по-вашему, в SVD тоже раскладываются не матрицы, а только операторы?

Так массивы - это и не матрицы. На матрицах операции определены.

 Профиль  
                  
 
 Re: Разложение тензоров для реком. систем
Сообщение11.07.2017, 00:29 
Аватара пользователя


10/05/17

113

(Оффтоп)

Munin в сообщении #1232712 писал(а):
На матрицах операции определены.
Поделитесь, какие операции определены на матрицах ?

 Профиль  
                  
 
 Re: Разложение тензоров для реком. систем
Сообщение11.07.2017, 00:35 
Заслуженный участник
Аватара пользователя


23/07/05
18013
Москва
Z1X в сообщении #1232713 писал(а):
Поделитесь, какие операции определены на матрицах ?
На матрицах с действительными элементами? Умножение на число, сложение, умножение, транспонирование.

Множество матриц фиксированного размера $m\times n$ образует линейное пространство, а если $m=n$ — то даже алгебру с инволюцией.

 Профиль  
                  
 
 Re: Разложение тензоров для реком. систем
Сообщение11.07.2017, 00:47 
Аватара пользователя


10/05/17

113

(Оффтоп)

Someone в сообщении #1232716 писал(а):
На матрицах с действительными элементами? Умножение на число, сложение, умножение, транспонирование.
А на массивах с действительными компонентами? Уже нет?

 Профиль  
                  
 
 Re: Разложение тензоров для реком. систем
Сообщение11.07.2017, 00:55 
Заслуженный участник
Аватара пользователя


30/01/06
72407
Z1X в сообщении #1232717 писал(а):
Уже нет?

И никогда не было.

 Профиль  
                  
 
 Re: Разложение тензоров для реком. систем
Сообщение11.07.2017, 10:32 
Заслуженный участник
Аватара пользователя


06/10/08
6422
Munin в сообщении #1232712 писал(а):
Так массивы - это и не матрицы. На матрицах операции определены.
На массивах определена как минимум операция индексации, что уже позволяет записывать разложения типа $t_{ijk} = \sum_{p = 1}^r a_{ip} b_{jp} c_{kp}$.
А вообще матрица - это двумерный массив, а операции там определены исключительно потому, что матрица есть отражение оператора или формы.

-- Вт июл 11, 2017 08:48:29 --

qwarck в сообщении #1232702 писал(а):
С этим почти разобрался. У меня возник другой вопрос, мне сложно понять физический смысл того, что получается. Вот, например, когда мы разлагаем массив по PARAFAC/CANDECOMP, если каждая получившаяся часть-однокомпонентная, каков физический смысл получившихся векторов? Допустим, у меня массив температур, измерения: длина x ширина x высота, размеры: 30 x 40 x 50, разлагая по PARAFAC, получаю векторы 30 x 1, 40 x 1, 50 x 1. Каков физический или математический смысл того, что у меня получается? Как получившееся может помочь в анализе данных? Я знаю, что PARAFAC используется для анализа данных, но мне не совсем понятно как.
По-моему, интерпретировать компоненты CP-разложение можно, если есть физический смысл у самого разложения. Например, если есть несколько источников сигнала, и мы замеряем суммарный сигнал в нескольких позициях $i$ с разными фильтрами $j$ и в разное время $k$, то у нас получится модель $t_{ijk} = \sum\limits_p a_{pi} b_{pj} c_{pk}$, где $c$ - сигналы, $b$ - влияние фильтра, а $a$ - затухание с расстоянием, и все ее компоненты будут иметь физический смысл.
Или если у нас есть простая графовая можель в статистике: есть три зависимых дискретных случайных величины, и есть основания полагать, что они на самом деле зависимы от одной скрытой случайной величины, а если этот скрытый параметр фиксировать - то независимы. Тогда совместная вероятность будет $$\mathbb P(X = i, Y = j, Z = k) = \sum\limits_p \mathbb P(X = i | H = p) \mathbb P(Y = j | H = p) \mathbb P(Z = k | H = p)$$ и опять же можно применять CP-разложение.

 Профиль  
                  
 
 Re: Разложение тензоров для реком. систем
Сообщение11.07.2017, 18:41 
Заслуженный участник
Аватара пользователя


30/01/06
72407
Xaositect в сообщении #1232743 писал(а):
На массивах определена как минимум операция индексации, что уже позволяет записывать разложения типа $t_{ijk} = \sum_{p = 1}^r a_{ip} b_{jp} c_{kp}$.

А также
    $\begin{aligned} t_{ijk} &=\textstyle  \prod_{p = 1}^r a_{ip}{}^{b_{jp}{}^{c_{kp}}} \\  t_{ijk} &=\textstyle  \prod_{p = 1}^r (a_{ip}+b_{jp}+c_{kp}) \\ t_{ijk} &=\textstyle  \bigvee_{p = 1}^r a_{ip}\wedge b_{jp}\wedge c_{kp} \\ t_{ijk} &=\textstyle  \mathop{\scalebox{1.3}{\(\#\)}}_{p = 1}^r a_{ip}\# b_{jp}\# c_{kp}\end{aligned}$
и много других всяких глупостей. Из них то, что вы выписали, ничем не выделено. В отличие от матриц.

Xaositect в сообщении #1232743 писал(а):
А вообще матрица - это двумерный массив

Но в обратную сторону неверно. Всякая селёдка рыба, но не всякая рыба - селёдка.

 Профиль  
                  
 
 Re: Разложение тензоров для реком. систем
Сообщение11.07.2017, 21:04 
Заслуженный участник
Аватара пользователя


06/10/08
6422
Munin в сообщении #1232823 писал(а):
Из них то, что вы выписали, ничем не выделено.
Естественно. Но в некоторых ситуациях, например, в тех, что я привел в моем посте, оно выделено предметной областью.

И точно так же, пока мы не связали матрицы с операторами, умножение матриц ничем не выделено, я могу вместо него взять умножение по Адамару, если мне это полезно. Или я могу рассматривать разложения вида $a_{ij} = \sqrt[3]{b_{i} c_{j} d_{i+j}}$ (у меня такое вылезало один раз). Матрицы от этого не перестанут быть матрицами.

Munin в сообщении #1232823 писал(а):
Xaositect в сообщении #1232743 писал(а):
А вообще матрица - это двумерный массив

Но в обратную сторону неверно. Всякая селёдка рыба, но не всякая рыба - селёдка.
Верно в обе стороны. Меня учили, что по определению матрица над $R$ - это прямоугольная таблица, составленная из элементов $R$.

 Профиль  
                  
 
 Re: Разложение тензоров для реком. систем
Сообщение11.07.2017, 21:40 
Заслуженный участник
Аватара пользователя


30/01/06
72407
Xaositect в сообщении #1232857 писал(а):
Но в некоторых ситуациях, например, в тех, что я привел в моем посте, оно выделено предметной областью.

Ага. Вот только ТС о своей предметной области молчит как рыба об лёд.

Xaositect в сообщении #1232857 писал(а):
Верно в обе стороны. Меня учили, что по определению матрица над $R$ - это прямоугольная таблица, составленная из элементов $R$.

А меня учили, что матрица - это элемент алгебры матриц, с операциями сложения и умножения над полем. Конечно, можно вводить и другие операции, но вот эти - по определению есть.

 Профиль  
                  
 
 Re: Разложение тензоров для реком. систем
Сообщение11.07.2017, 21:59 
Аватара пользователя


10/05/17

113
Munin в сообщении #1232868 писал(а):
А меня учили, что матрица - это элемент алгебры матриц, с операциями сложения и умножения над полем. Конечно, можно вводить и другие операции, но вот эти - по определению есть.
Именно над полем? А вас учили, что наряду с этим частным случаем, матрицы бывают над кольцом, полукольцом и вообще просто над непустым множеством?

 Профиль  
                  
Показать сообщения за:  Поле сортировки  
Начать новую тему Ответить на тему  [ Сообщений: 22 ]  На страницу 1, 2  След.

Модераторы: Модераторы Математики, Супермодераторы



Кто сейчас на конференции

Сейчас этот форум просматривают: YandexBot [bot]


Вы не можете начинать темы
Вы не можете отвечать на сообщения
Вы не можете редактировать свои сообщения
Вы не можете удалять свои сообщения
Вы не можете добавлять вложения

Найти:
Powered by phpBB © 2000, 2002, 2005, 2007 phpBB Group