Как сделать матрицу симметричной

Обновлено: 07.07.2024

Я пытался сгенерировать эту матрицу несколько раз, но только редко получал действительную матрицу корреляции.

Любая помощь с благодарностью!

Какова ваша мера редкости, которая установлена ​​для вас? Должны ли ваши данные быть двоичными или неотрицательными непрерывными?

Тогда почему бы сначала не сгенерировать матрицу корреляции. Затем создайте симметричный индекс для этой матрицы, в котором индексированные элементы равны нулю. Разница будет определяться размером индекса, и вы можете использовать случайную переменную с помощью функции, подобной sample в r. Независимо от того, сколько не диагональных элементов вы выставите в 0, matix все равно будет pd

Близко, но нет сигары для @Rodrigo de Azevedo.

Пример для матрицы 4 на 4 с использованием YALMIP под MATLAB

Это интересная интерпретация вопроса: она предполагает, что все ненулевые недиагональные коэффициенты равны (что значительно упрощает задачу). Неясно, была ли это предполагаемая интерпретация, или все ненулевые недиагональные коэффициенты должны быть независимыми реализациями из общего распределения.

Это интерпретация, которую я сделал. Теперь, когда вы упомянули это, я увидел, что возможна другая интерпретация. По крайней мере, моя интерпретация имеет то преимущество, что приводит к довольно четко определенной проблеме. Я полагаю, что можно сформулировать задачу, решение которой я не исследовал, найти максимальное значение ρ так, чтобы все ненулевые недиагональные элементы одного треугольника матрицы корреляции могли быть заполнены необязательно равными неотрицательными значениями ≤ это значение, и обязательно сделать полностью заполненную матрицу PSD.

Если у вас есть дополнительные ограничения, такие как ограничения по разреженности

Посмотрим, какое решение нашел CVX,

Является ли эта матрица положительной полуопределенной? Положительно определен?

Это положительно определенно, как и ожидалось. Мы можем найти положительные полуопределенные корреляционные матрицы, выбрав ненулевую (линейную) целевую функцию.


Это пост 2 из 3-х частей серии наАнализ основных компонентов - математика и интуиция, Если вы хотите прочитать интуитивное объяснение PCA с реальным примером, пожалуйста, перейдите наПост 1, Математика PCA включает в себя промежуточный уровень понятий линейной алгебры, которые будут рассмотрены здесь.

Линейная алгебра

Линейная алгебра - это раздел математики, который занимается линейными отношениями между числами. Рассмотрим следующие уравнения:

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


Векторы и матрицы являются условными обозначениями для компактного представления линейных уравнений. Если вектор является списком, матрица - это список списков.мИксNматрица представляет собой прямоугольный массив чисел смстроки иNколонны. Вектор также является матрицей, но с 1 строкой или 1 столбцом. Есть способы решить вышеупомянутое представление и определить значения x и y, в которые мы не будем углубляться. Концепция, которую необходимо понять в приведенном выше примере, заключается в том, что вектор в левой части уравнения преобразуется матрицей, чтобы получить вектор в правой части уравнения.

Специальные матрицы

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

Квадратная матрица

Матрица является квадратной, когда количество строк равно количеству столбцов. Просто?


Диагональная матрица

Основная диагональ матрицы - это та, которая идет сверху вниз слева направо. Матрица является диагональной, если все ее недиагональные элементы равны 0. Ненулевые элементы находятся только вдоль главной диагонали. Главная диагональ может иметь или не иметь нули.


Единичная матрица

Идентификационная матрица - это специальная квадратная матрица. Идентификационная матрица ничего не делает с вектором при умножении на него. Рассмотрим этот эквивалент умножения скалярного числа на 1 (например, 5 x 1 = 5). Аналогично, умножение вектора на матрицу идентичности ничего не дает. Звучит глупо, но это делает некоторые операции намного проще. Тождественная матрица обычно обозначается как I.

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

Взаимное скалярное число 5 равно 1/5 или 5 ^ -1. Обратная матрица - это та же идея, что и матрицы. Умножение матрицы A на ее обратную матрицу A ^ -1 дает матрицу идентичности (которая подобна 1 для матриц), концепцию, широко используемую в операциях линейной алгебры.


Транспонировать операцию

Применение операции транспонирования к матрице превращает все ее строки в столбцы и наоборот. Транспонирование матрицы A обозначается через A ^ T.


Ортогональные и ортонормированные матрицы

Ортогональная матрица - это тип квадратной матрицы, столбцы и строки которой представляют собой ортонормированные единичные векторы, которые перпендикулярны и имеют величину 1. Теорема 1:ЕслиA является ортогональной матрицей, ее обратная величина равна транспонированию, то есть A ^ T = A ^ -1

Симметричная матрица

Симметричные матрицы - это специальные квадратные матрицы. Матрица A является симметричной, если она равна ее транспонированию A ^ T. Ось симметрии всегда является главной диагональю симметричной матрицы. Теорема 2:Если A - любая матрица, то (A ^ T) A и A (A ^ T) симметричны.

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

Основа изменения

Рассмотрим векторрв 2-мерном пространстве R². Пространство R² может быть определено произвольным набором ортогональных векторов единичной длины e1 и e2.

Теперь, глядя на векторротносительно координат e1 и e2 это можно представить следующим образом:



Как мы определяем числа врб?

Поскольку мы знаем векторы нового координатного множества b относительно базиса e, у нас есть матрица преобразования, чтобы изменить любой вектор из базиса b в базис e. Назовем эту матрицу преобразования как B.


Таким образом, определить номера векторарв базисе b все, что нам теперь нужно сделать, это умножить обратную матрицу B на векторрв основе е.


Я не вдавался в детали расчетов, так как это тривиально.

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

Давайте сделаем еще один шаг вперед. Вы хотите применить матрицу преобразования R, описанную с базой e на векторерb (вектор r с базисом b). Поскольку мы не знаем матрицы преобразования R в базисе b, мы сначала применили бы ее к векторуре, а затем преобразовать его обратно в базу б. Это можно сделать в 3 этапа следующим образом

Шаг 1: Изменить основу векторарбре


Шаг 2: Применить матрицу преобразования R


Шаг 3: Преобразование обратно в базу b


Подводя итог, если вы хотите применить матрицу преобразования, описанную в одном наборе координат (матрица R в базисе e) к вектору, описанному в другом наборе координат (векторрв основе б), с которым вы часто сталкиваетесь в линейной алгебре; это можно сделать, обернув R в B (обратный) и B.

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

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


Давайте применим матрицу преобразования T, которая масштабирует это квадратное подпространство до прямоугольной формы.


Обратите внимание, что некоторые векторы остаются неизменными в своем диапазоне, а другие нет. Горизонтальный вектор в красном указывает в том же направлении и не изменяется по своей величине. Вертикальный зеленый вектор указывает в том же направлении, но масштабируется в 2 раза. Диагональный синий вектор указывает на какое-то другое направление, а также увеличился по величине. На самом деле, кроме горизонтальных и вертикальных векторов; все векторы в нашем подпространстве изменились, применяя это преобразование вертикального масштабирования.

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


где векторvявляется собственным вектором, связанным с матрицей преобразования T. он изменяется скалярным числом λ, которое является собственным значением, связанным с векторомv,

Итак, мы узнали, что собственные векторы - это векторы, которые мало меняются при преобразовании. Они могут масштабироваться или сжиматься, указывать в одном направлении или переворачиваться; но они всегда остаются в одном диапазоне. Собственные векторы являются характеристиками конкретной матрицы преобразования, и причина их важности заключается в том, что они создают интересные базисные векторы или координаты, как мы вскоре увидим.

Переход на Eigenbasis

Рассмотрим сценарий, в котором необходимо применить матрицу 3 T 3 преобразования T к вектору x, затем применить его снова и снова до n раз, где n = 1 миллион


Существует несколько реальных приложений, в которых вам, возможно, придется выполнять умножение матриц в еще большем масштабе, что делает эти задачи вычислительно сложными. Однако есть аккуратное исключение из этой проблемы, и именно тогда T является диагональной матрицей. Диагональная матрица - это матрица, имеющая ненулевые элементы только по диагонали, идущей от левого верхнего до правого нижнего угла Умножение диагональной матрицы на себя n раз так же хорошо, как увеличение диагональных элементов в n раз!


Что если матрица T не является диагональной? Именно здесь концепции изменения базиса и собственных векторов, которые мы изучили до сих пор, могут быть применены в сценарии реального мира. Давайте вернемся к нашей проблеме здесь. Мы хотим применить матрицу преобразования T к вектору n раз, что требует умножения T на себя n раз или увеличения T до степени n. Простое и элегантное решение нашей проблемы - изменить базис на собственный; используя матрицу собственных преобразований. Если столбцы матрицы C являются линейно независимыми собственными векторами матрицы T, мы можем применить матрицу C (обратную), чтобы перейти к собственному базису. Это переносит нас в мир, где матрица T представлена ​​диагональной матрицей, назовем ее D. Диагональ в матрице D состоит из собственных значений, связанных с соответствующими собственными векторами. Теперь применение этого преобразования n раз - это просто чистое масштабирование или эффективное повышение собственных значений в главной диагонали до степени n, что делает вычислительный процесс более эффективным. Все, что нам нужно сделать сейчас, это изменить базу обратно на исходные координаты, и вуаля! Мы имеем матрицу T, возведенную в степень n.


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

Спектральная теорема

Все, что мы узнали до сих пор, приводит нас к спектральной теореме.

Пусть A - матрица вещественных чисел m × n, а A ^ T - ее транспонирование.

Теорема 3Если A симметричен (имеется в виду A ^ T = A), то A ортогонально диагонализуем и имеет только действительные собственные значения. Другими словами, существуют действительные числа λ1, λ2. , , λn (собственные значения) и ортогональные ненулевые вещественные векторыv1,v2,…vn (собственные векторы) такие, что для каждого i = 1,2,…, n:


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

Однако, если вы вспомните теорему 2 (изложенную в разделе Симметричная матрица):Если A - любая матрица, то (A ^ T) A и A (A ^ T) симметричны.Это означает, что спектральная теорема может быть применена к матрицам (A ^ T) A и A (A ^ T). Спектральная теорема лежит в основе PCA; что, возможно, является одним из наиболее важных приложений.

И это все! Вы создали прочную основу в линейной алгебре и знаете достаточно математики, чтобы понять математику PCA. Я боюсь, что это был изнурительный пост, но концепции, которые вы узнали здесь, помогут вам не только в разгадывании PCA; но несколько других приложений в науке о данных.

Отлично, следите за последним и последним постом в этой серии наПодключение точек к PCA,

Звезда активна
Звезда активна
Звезда активна
Звезда активна
Звезда активна

Литература: Сборник задач по математике. Часть 1. Под ред А. В. Ефимова, Б. П. Демидовича.

Квадратная матрица $A$ называется симметричной, если $A^T=A.$ Квадратная матрица $B$ называется кососимметричной, если $B^T=-B.$

Квадратная матрица $A$ называется вырожденной (особенной), если ее определитель равен нулю, и невырожденной (неособенной) в противном случае. Если $A$ - невырожденная матрица, то существует и притом единственная матрица $A^$ такая, что $AA^=A^A=E,$ где $E-$ единичная матрица (то есть такая, на главной диагонали которой стоят единицы, а все остальные элементы равны нулю). Матрица $A^$ называется обратной к матрице $A.$

Основные методы вычисления обратной матрицы:

Метод присоедененной матрицы. Присоедененная матрица $A^*$ определяется как транспонированная к матрице, составленной из алгебраических дополнений соответствующих элементов матрицы $A.$ Таким образом,

Отсюда следует, что если $A-$ невырожденная матрица, то

Примеры:

Методом присоедененной матрицы найти обратные для следующих матриц:

Решение.

Поскольку определитель не равен нулю, то данная матрица невырождена и обратная матрица существует.

Найдем алгебраические дополнения соответствующих элементов матрицы $A:$

Отсюда находим присоедененную матрицу:

Решение.

Поскольку определитель не равен нулю, то данная матрица невырождена и обратная матрица существует.

R = chol( A ) разлагает на множители симметричный положительный определенный матричный A в верхний треугольный R это удовлетворяет A = R'*R . Если A несимметрично, затем chol обрабатывает матрицу как симметричную и использует только диагональный и верхний треугольник A .

R = chol( A , triangle ) задает который треугольный множитель A использовать в вычислении факторизации. Например, если triangle 'lower' то chol использование только диагональный и нижний треугольный фрагмент A произвести нижний треугольный матричный R это удовлетворяет A = R*R' . Значение по умолчанию triangle 'upper' .

[ R , flag ] = chol( ___ ) также возвращает выход flag указание, ли A симметричен положительный определенный. Можно использовать любую из комбинаций входных аргументов в предыдущих синтаксисах. Когда вы задаете flag вывод , chol не генерирует ошибку, если входная матрица не симметрична положительный определенный.

Если flag = 0 затем входная матрица симметрична положительный определенный, и факторизация была успешна.

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

[ R , flag , P ] = chol( S ) дополнительно возвращает матрицу перестановок P , который является предварительным упорядоченным расположением разреженной матрицы S полученный amd . Если flag = 0 , затем S симметричен положительный определенный и R верхняя треугольная матрица, удовлетворяющая R'*R = P'*S*P .

[ R , flag , P ] = chol( ___ , outputForm ) задает, возвратить ли информацию о сочетании P как матрица или вектор, с помощью любой из комбинаций входных аргументов в предыдущих синтаксисах. Эта опция только доступна для входных параметров разреженной матрицы. Например, если outputForm isvector и flag = 0 , затем S(p,p) = R'*R . Значение по умолчанию outputForm ismatrix таким образом, что R'*R = P'*S*P .

Примеры

Решите линейную систему с симметричной положительной определенной матрицей

Используйте chol разложить на множители симметричную матрицу коэффициентов, и затем решить линейную систему с помощью Фактора Холецкого.

Создайте симметрическую матрицу с положительными значениями на диагонали.

Вычислите Фактор Холецкого матрицы.

Создайте вектор для правой стороны уравнения Ax = b .

С тех пор A = R T R с разложением Холесского линейное уравнение становится R T R x = b . Решите для x использование оператора обратной косой черты.

Факторизация Холесского матрицы

Вычислите верхние и более низкие факторизации Холецкого матрицы и проверьте результаты.

Создайте 6 6 симметричную положительную определенную тестовую матрицу использование gallery функция.

Вычислите Фактор Холецкого с помощью верхнего треугольника A .

Проверьте, что верхний треугольный множитель удовлетворяет R'*R - A = 0 , в ошибке округления.

Теперь задайте 'lower' опция, чтобы вычислить Фактор Холецкого с помощью более низкого треугольника A .

Проверьте, что нижний треугольный фактор удовлетворяет L*L' - A = 0 , в ошибке округления.

Подавите ошибки для несимметричных положительных определенных матриц

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

Создайте матрицу 5 на 5 биномиальных коэффициентов. Эта матрица симметрична положительный определенный, поэтому вычтите 1 из последнего элемента, чтобы гарантировать, что это более не положительно определенный.

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

Начиная с flag является ненулевым, это дает индекс центра, где факторизация перестала работать. chol может вычислить q = flag-1 = 4 строки и столбцы правильно прежде, чем перестать работать, когда это сталкивается с частью матрицы, которая изменилась.

Проверьте тот R'*R возвращает четыре строки и столбца, которые соглашаются с A(1:q,1:q) .

Фактор Холецкого разреженной матрицы

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

Создайте разреженную положительную определенную матрицу на основе west0479 матрица.

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

Для каждого вычисления проверяйте тот flag = 0 подтвердить вычисление успешно.

Сравните количество ненулей в chol(S) по сравнению с переупорядоченным матричным chol(P'*S*P) . Лучшая практика должна использовать три выходных синтаксиса chol с разреженными матрицами, начиная с переупорядочения строк и столбцов может значительно сократить количество ненулей в Факторе Холецкого.

Figure contains 2 axes objects. Axes object 1 with title Nonzeros in chol(S) contains an object of type line. Axes object 2 with title Nonzeros in chol(P

Переупорядочьте разреженную матрицу с вектором сочетания

Используйте 'vector' опция chol возвратить информацию о сочетании как вектор, а не матрицу.

Создайте разреженную матрицу конечного элемента.

Figure contains an axes object. The axes object contains an object of type line.

Вычислите Фактор Холецкого для матрицы и задайте 'vector' опция, чтобы возвратить вектор сочетания p .

Проверьте тот flag = 0 , указание на вычисление успешно.

Проверьте тот S(p,p) = R'*R , в ошибке округления.

A — Введите матрицу
матрица

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

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

Типы данных: single | double
Поддержка комплексного числа: Да

S — Разреженная входная матрица
разреженная матрица

Разреженная входная матрица. S должно быть квадратным и симметричный положительный определенный.

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

Типы данных: double
Поддержка комплексного числа: Да

triangle — Треугольный множитель входной матрицы
'upper' (значение по умолчанию) | 'lower'

Треугольный множитель входной матрицы в виде 'upper' или 'lower' . Используйте эту опцию, чтобы задать это chol должен использовать верхний или более низкий треугольник входной матрицы, чтобы вычислить факторизацию. chol принимает, что входная матрица является симметричной для действительных матриц или Эрмитовой для комплексных матриц. chol использование только верхний или более низкий треугольник, чтобы выполнить его расчеты.

Используя 'lower' опция эквивалентна вызову chol с 'upper' опция и транспонирование входной матрицы и затем перемещение выхода R .

Пример: R = chol(A,'lower')

outputForm — Форма сочетания выводится
'matrix' (значение по умолчанию) | 'vector'

Форма сочетания выводится в виде 'matrix' или 'vector' . Этот флаг управляет ли сочетание выход P возвращен как вектор сочетания или матрица перестановок.

Если flag = 0 , затем S симметричен положительный определенный и P'*S*P = R'*R (если P матрица), или S(p,p) = R'*R (если p вектор).

Если flag не нуль, затем S не симметричен положительный определенный. R верхняя треугольная матрица размера q - n , где q = flag-1 . L-образная область первого q строки и первый q столбцы R'*R согласитесь с теми из P'*S*P (если P матрица), или S(p,p) (если p вектор).

Если 'lower' опция задана, затем R нижняя треугольная матрица, и можно заменить R'*R с R*R' в предыдущих тождествах.

Фактор Холецкого P'*S*P (если P матрица), или S(p,p) (если p вектор), имеет тенденцию быть более разреженным, чем Фактор Холецкого S .

Пример: [R,flag,p] = chol(S,'vector')

Выходные аргументы

R — Фактор Холецкого
матрица

Фактор Холецкого, возвращенный как матрица.

Если R верхний треугольный, затем A = R'*R . Если вы задаете P выведите для разреженных матриц, затем P'*S*P = R'*R или S(p,p) = R'*R , В зависимости от значения outputForm .

Если R является нижним треугольным, затем A = R*R' . Если вы задаете P выведите для разреженных матриц, затем P'*S*P = R*R' или S(p,p) = R*R' , В зависимости от значения outputForm ..

Каждый раз, когда flag не нуль, R содержит только частичные результаты. flag указывает на положение центра, где факторизация перестала работать, и R содержит частично завершенную факторизацию.

flag — Симметричный положительный определенный флаг
скаляр

Симметричный положительный определенный флаг, возвращенный как скаляр.

Если flag = 0 , затем входная матрица симметрична положительный определенный. R верхняя треугольная матрица, таким образом что R'*R = A .

Если A не симметричен положительный определенный, затем flag положительное целое число, указывающее на положение центра, где факторизация перестала работать, и MATLAB ® не генерирует ошибку. R верхняя треугольная матрица размера q = flag-1 таким образом, что R'*R = A(1:q,1:q) .

Если A разреженно, затем R верхняя треугольная матрица размера q - n таким образом, что L-образная область первого q строки и первый q столбцы R'*R согласитесь с теми из A или S .

Если 'lower' опция задана, затем R нижняя треугольная матрица, и можно заменить R'*R с R*R' в предыдущих тождествах.

P — Сочетание для разреженных матриц
матрица | вектор

Сочетание для разреженных матриц, возвращенных как матрица или вектор в зависимости от значения outputForm . Смотрите outputForm для описания тождеств, которым удовлетворяет этот выход.

Эта матрица перестановок основана на аппроксимированном минимальном упорядоченном расположении степени, вычисленном amd . Однако это предварительное упорядоченное расположение может отличаться от того, полученного непосредственно amd с тех пор chol немного изменяет упорядоченное расположение для увеличенной эффективности.

Больше о

Симметричная положительная определенная матрица

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

Для любой действительной обратимой матрицы A , можно создать симметричную положительную определенную матрицу с продуктом B = A'*A . Факторизация Холесского инвертирует эту формулу путем высказывания что любой симметричный положительный определенный матричный B может быть включен в продукт R'*R .

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

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

Советы

Использование chol (вместо eig ) эффективно определить, является ли матрица симметричной положительный определенный. Смотрите Определяют, Является ли Матрица Симметричной Положительный Определенный для получения дополнительной информации.

Расширенные возможности

Генерация кода C/C++
Генерация кода C и C++ с помощью MATLAB® Coder™.

Указания и ограничения по применению:

Для входных параметров разреженной матрицы стандарт языка должен быть C99 или позже. Только первые два синтаксиса chol(A) и chol(A,triangle) с одним выходным аргументом поддерживаются.

Генерация кода графического процессора
Сгенерируйте код CUDA® для NVIDIA® графические процессоры с помощью GPU Coder™.

Указания и ограничения по применению:

Только первые два синтаксиса chol(A) и chol(A,triangle) с одним выходным аргументом поддерживаются.

Основанная на потоке среда
Запустите код в фоновом режиме с помощью MATLAB® backgroundPool или ускорьте код с Parallel Computing Toolbox™ ThreadPool .

Эта функция полностью поддерживает основанные на потоке среды. Для получения дополнительной информации смотрите функции MATLAB Запуска в Основанной на потоке Среде.

Массивы графического процессора
Ускорьте код путем работы графического процессора (GPU) с помощью Parallel Computing Toolbox™.

Указания и ограничения по применению:

'vector' опция не поддерживается.

Для получения дополнительной информации смотрите функции MATLAB Запуска на графическом процессоре (Parallel Computing Toolbox) .

Распределенные массивы
Большие массивы раздела через объединенную память о вашем кластере с помощью Parallel Computing Toolbox™.

Указания и ограничения по применению:

'vector' опция не поддерживается.

Для получения дополнительной информации смотрите функции MATLAB Запуска с Распределенными Массивами (Parallel Computing Toolbox) .

Читайте также: