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
17973
Москва
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  След.

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



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

Сейчас этот форум просматривают: нет зарегистрированных пользователей


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

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