Хорошо бы в этой теме как-то договориться о терминах. Иначе возникает путаница. Есть понятие ранга тензора (для скаляра - 0, для вектора - 1, для мартицы - 2), а есть ранг матрицы - максимальный размер ненулевого минора. Есть размерность матрицы (например NxM) и есть размерность массива ( 1 - для вектора, 2 для матрицы). Дело не в том, что какие-то термины простые, а какие-то сложные. Должно быть понятно читателю, терминологию можно зафиксировать в начале статьи или сослаться на источник, например что-то по линейной алгебре.
Тема, конечно, интересная и полезная. Я решил у нее углубиться, посмотрел выступление Оселедеца на ДатаФесте, и сразу возник вопрос по азам Вашей публикации. В первом абзаце главы Тензорный Поезд Вы называете множители разложения трех-мерными тензорами (не будем спорить о терминах, только о размерностях). Но ведь это 2-мерные матрицы, каждая из которых аналитически зависит от своего индекса. Или я что-то не понял?
Мы углубляемся в дискуссию в стиле рассказов Шукшина. ОК. Количество элементов линейного пространства - несчетно, как несчетно множество действительных чисел. Далее буду ссылаться Википедию и прочие познавательные сайты по всем вопросам.
Альтернативных формулировок можно придумать множество, но если автор хочет, чтобы его поняли и внятно подискутировали, надо пользоваться общепринятой терминологией.
Зачем называть тензором то, что тензором не является? Называйте это 3-хмерной или N-мерной матрицей или, как Вы правильно отметили, массивом, и вас все поймут. А что означает Ваша фраза, что массив это и есть пространство, вообще не пойму. Пространство - это множество точек, причем несчетное (надеюсь, термин "несчетное множество" программистам понятен понятен), в котором есть система координат, или векторный базис. А массив - конечный набор чисел, кстати говоря, в программировании всегда одномерный (!).
Вообще-то в тензорном исчислении существует общепринятая терминология (см.Википедию). У тензора есть ранг и размерность (пространства в котором тензор существует). В частности, вектор - это тензор ранга 1, при этом может быть любой конечной размерности. Соответственно, то, что все называют матрицей и задается 2- мерной таблицей (причем квадратной NxN), можно назвать тезором ранга 2, причем только в том случае, если компоненты определенным образом зависят от изменения системы координат. Термины типа "размерность тензора" очень сбивают с толку, особенно если Вы имеете в виду именно ранг или около того. Любовь разработчиков ПО к громким названиям естественна, поскольку это на деньги влияет, но человеку, у которого понятие тензора в крови, читать очень тяжело.
Да, только не очень понятно, что у того самого метода опорных векторов "под капотом". По-моему, такая задача решается чисто геометрически: строятся выпуклые линейные оболочки двух разделяемых множеств. Если эти оболочки не пересекаются, то между ними существует полоса, опирающаяся на N+1 (или меньше) граничную точку при размерности пространства N. Соответственно, на 2-мерной плоскости существует 3 или меньше ( возможно, 2) "опорных векторов", задающих разделяющую полосу максимальной ширины.
В библиотеках python по численным методам много подводных камней. Начиная с того, что в python нет нормальной процедуры даже нахождения первой производной функции, заданной именно численно. т.е. набором данных. Библиотека на эту тему удалена из scipy, видимо, из-за безысходности. Два предлагаемых взамен репозитория https://github.com/pbrod/numdifftools и https://github.com/maroba/findiff/ - не о том. Особой проблемы посчитать по 3- или 5- точечной схеме, конечно, нет, но никто не делает как полагается из соображений наилучшей аппроксимации.
В scipy для диффуров первого порядка нет никакого упоминания про неединственность решения, ничего про условие Липшица.
С задачей Коши все выглядит более-менее, а вот с краевыми задачами для диффуров второго порядка в scipy.integrate, как-то черезчур наворочено.
Что касается уравнений в частных производных, особенно в 2 или 3 размерных координатах, то либо профессиональные CAD-средства типа solidworks, либо ничего. Про МКЭ вообще никто не вспоминает.
Мое мнение - в python нормальных готовых решений нет, все самим придется писать. Учите численные методы и диффуры с функаном.
Я исхожу из соображений классической теории вероятностей, хотя, возможно, здесь только терминологический казус.
Независимо от количества классов, если Вы рассматриваете пространство событий типа "статья принадлежит к такому-то классу", то эти события очевидно зависимы. Даже если они не являются взаимоисключающими, вероятность принадлежности к классу 1 с вероятностью 95% ограничивает вероятность принадлежности к другому классу уровнем в 5%. Вот Вам и зависимость.
Хотя, повторю, возможно, Вы имели в виду что-то другое.
А вообще задача, при кажущейся простоте на словах, нетривиальна уже на уровне постановки. Очень много возникает моментов для обсуждения.
Что можете посоветовать из курсов для людей с математическим образованием? А то как-то странно, когда формулу Байеса позиционируют как что-то удивительное.
Потерялся после тезиса о том что вероятности релевантности и нерелевантности независимы. Если у Вас всего два этих класса, то сумма их вероятностей =1.
Я проскочил статью «по диагонали», и у меня ощущение, что автор пытается найти метод «оцифровки» непрерывных функций для последующего численного решения каких-нибудь интегро-диффуров. Возможно, может быть продуктивным «поковыряться» с сопряженными аппроксимациями. Это точно лучше чем тупые ряды Тейлора, причем функции можно рассматривать не в окрестности нуля, а на отрезках. Возможно, в сопряженных аппроксимациях будут сохраняться основные свойства операций над функциями (произведение, дифференцирование и т.п.). Это предположение, основанное на моем личном опыте численного дифференцирования скалярных полей.
Почему ранг матрицы рамен числу ненулевых сингулярных значений? По-моему, это не очевидно, где-то должно быть доказательство.
Интересно, это действительно так? Ссылку пришлете?
Хорошо бы в этой теме как-то договориться о терминах. Иначе возникает путаница. Есть понятие ранга тензора (для скаляра - 0, для вектора - 1, для мартицы - 2), а есть ранг матрицы - максимальный размер ненулевого минора. Есть размерность матрицы (например NxM) и есть размерность массива ( 1 - для вектора, 2 для матрицы). Дело не в том, что какие-то термины простые, а какие-то сложные. Должно быть понятно читателю, терминологию можно зафиксировать в начале статьи или сослаться на источник, например что-то по линейной алгебре.
Тема, конечно, интересная и полезная. Я решил у нее углубиться, посмотрел выступление Оселедеца на ДатаФесте, и сразу возник вопрос по азам Вашей публикации. В первом абзаце главы Тензорный Поезд Вы называете множители разложения трех-мерными тензорами (не будем спорить о терминах, только о размерностях). Но ведь это 2-мерные матрицы, каждая из которых аналитически зависит от своего индекса. Или я что-то не понял?
Мы углубляемся в дискуссию в стиле рассказов Шукшина. ОК. Количество элементов линейного пространства - несчетно, как несчетно множество действительных чисел. Далее буду ссылаться Википедию и прочие познавательные сайты по всем вопросам.
Пространство: https://ru.wikipedia.org/wiki/Векторное_пространство
Как располагается и адресуется массив в памяти компьютера: https://foxford.ru/wiki/informatika/dvumernye-massivy-v-s
Определение тензора: https://ru.wikipedia.org/wiki/Тензор
Альтернативных формулировок можно придумать множество, но если автор хочет, чтобы его поняли и внятно подискутировали, надо пользоваться общепринятой терминологией.
Здесь нет никакой тензорной алгебры, как нет и собственно тензоров. Это все - просто матрицы, поэтому кроме линейной алгебры ничего не нужно.
Вот именно, ранг матрицы и ранг тензора - абсолютно разные вещи. Как и ранг капитана ВМФ :))
Зачем называть тензором то, что тензором не является? Называйте это 3-хмерной или N-мерной матрицей или, как Вы правильно отметили, массивом, и вас все поймут. А что означает Ваша фраза, что массив это и есть пространство, вообще не пойму. Пространство - это множество точек, причем несчетное (надеюсь, термин "несчетное множество" программистам понятен понятен), в котором есть система координат, или векторный базис. А массив - конечный набор чисел, кстати говоря, в программировании всегда одномерный (!).
Вообще-то в тензорном исчислении существует общепринятая терминология (см.Википедию). У тензора есть ранг и размерность (пространства в котором тензор существует). В частности, вектор - это тензор ранга 1, при этом может быть любой конечной размерности. Соответственно, то, что все называют матрицей и задается 2- мерной таблицей (причем квадратной NxN), можно назвать тезором ранга 2, причем только в том случае, если компоненты определенным образом зависят от изменения системы координат. Термины типа "размерность тензора" очень сбивают с толку, особенно если Вы имеете в виду именно ранг или около того. Любовь разработчиков ПО к громким названиям естественна, поскольку это на деньги влияет, но человеку, у которого понятие тензора в крови, читать очень тяжело.
Да, только не очень понятно, что у того самого метода опорных векторов "под капотом". По-моему, такая задача решается чисто геометрически: строятся выпуклые линейные оболочки двух разделяемых множеств. Если эти оболочки не пересекаются, то между ними существует полоса, опирающаяся на N+1 (или меньше) граничную точку при размерности пространства N. Соответственно, на 2-мерной плоскости существует 3 или меньше ( возможно, 2) "опорных векторов", задающих разделяющую полосу максимальной ширины.
Рунге-Кутт он же только для задачи Коши. Для краевых задач в scipy ничего нет кроме странного solve_bvp.
В библиотеках python по численным методам много подводных камней. Начиная с того, что в python нет нормальной процедуры даже нахождения первой производной функции, заданной именно численно. т.е. набором данных. Библиотека на эту тему удалена из scipy, видимо, из-за безысходности. Два предлагаемых взамен репозитория https://github.com/pbrod/numdifftools и https://github.com/maroba/findiff/ - не о том. Особой проблемы посчитать по 3- или 5- точечной схеме, конечно, нет, но никто не делает как полагается из соображений наилучшей аппроксимации.
В scipy для диффуров первого порядка нет никакого упоминания про неединственность решения, ничего про условие Липшица.
С задачей Коши все выглядит более-менее, а вот с краевыми задачами для диффуров второго порядка в scipy.integrate, как-то черезчур наворочено.
Что касается уравнений в частных производных, особенно в 2 или 3 размерных координатах, то либо профессиональные CAD-средства типа solidworks, либо ничего. Про МКЭ вообще никто не вспоминает.
Мое мнение - в python нормальных готовых решений нет, все самим придется писать. Учите численные методы и диффуры с функаном.
Здравствуйте. Спасибо за ответ.
Я исхожу из соображений классической теории вероятностей, хотя, возможно, здесь только терминологический казус.
Независимо от количества классов, если Вы рассматриваете пространство событий типа "статья принадлежит к такому-то классу", то эти события очевидно зависимы. Даже если они не являются взаимоисключающими, вероятность принадлежности к классу 1 с вероятностью 95% ограничивает вероятность принадлежности к другому классу уровнем в 5%. Вот Вам и зависимость.
Хотя, повторю, возможно, Вы имели в виду что-то другое.
А вообще задача, при кажущейся простоте на словах, нетривиальна уже на уровне постановки. Очень много возникает моментов для обсуждения.
Что можете посоветовать из курсов для людей с математическим образованием? А то как-то странно, когда формулу Байеса позиционируют как что-то удивительное.
Потерялся после тезиса о том что вероятности релевантности и нерелевантности независимы. Если у Вас всего два этих класса, то сумма их вероятностей =1.