Создайте смешанную гауссовскую модель
gmdistribution объектно-ориентированная память Гауссово распределение смеси, также названное смешанной гауссовской моделью (GMM), которая является многомерным распределением, которое состоит из многомерных компонентов Распределения Гаусса. Каждый компонент задан его средним значением и ковариацией. Смесь задана вектором смешивания пропорций, где каждая пропорция смешивания представляет часть населения, описанного соответствующим компонентом.
Можно создать gmdistribution объект модели двумя способами.
Используйте gmdistribution функция (описанный здесь), чтобы создать gmdistribution объект модели путем определения параметров распределения.
Используйте fitgmdist функционируйте, чтобы соответствовать gmdistribution объект модели к данным, учитывая постоянное число компонентов.
mu — Средние значенияСредние значения многомерных компонентов Распределения Гаусса в виде k-by-m числовая матрица, где k является количеством компонентов и m, являются количеством переменных в каждом компоненте. mu(i,:) среднее значение i компонента.
Типы данных: single | double
sigma — КовариацииКовариации многомерных компонентов Распределения Гаусса в виде числового вектора, матрицы или массива.
Учитывая, что k является количеством компонентов, и m является количеством переменных в каждом компоненте, sigma одно из значений в этой таблице.
| Значение | Описание |
|---|---|
| m-by-m-by-k массив | sigma(:,:,i) ковариационная матрица i компонента. |
| 1 m k массивом | Ковариационные матрицы являются диагональными. sigma(1,:,i) содержит диагональные элементы ковариационной матрицы i компонента. |
| m-by-m матрица | Ковариационные матрицы являются тем же самым через компоненты. |
| 1 m вектором | Ковариационные матрицы являются диагональными и то же самое через компоненты. |
Типы данных: single | double
p — Смешивание пропорций компонентов смесиСмешивание пропорций компонентов смеси в виде числового вектора длины k, где k является количеством компонентов. Значением по умолчанию является вектор-строка из (1/k) s, который устанавливает равные пропорции. Если p не суммирует к 1, gmdistribution нормирует его.
Типы данных: single | double
mu — Средние значенияЭто свойство доступно только для чтения.
Средние значения многомерных компонентов Распределения Гаусса в виде k-by-m числовая матрица, где k является количеством компонентов и m, являются количеством переменных в каждом компоненте. mu(i,:) среднее значение i компонента.
Типы данных: single | double
Sigma — КовариацииЭто свойство доступно только для чтения.
Ковариации многомерных компонентов Распределения Гаусса в виде числового вектора, матрицы или массива.
Учитывая, что k является количеством компонентов, и m является количеством переменных в каждом компоненте, Sigma одно из значений в этой таблице.
| Значение | Описание |
|---|---|
| m-by-m-by-k массив | Sigma(:,:,i) ковариационная матрица i компонента. |
| 1 m k массивом | Ковариационные матрицы являются диагональными. Sigma(1,:,i) содержит диагональные элементы ковариационной матрицы i компонента. |
| m-by-m матрица | Ковариационные матрицы являются тем же самым через компоненты. |
| 1 m вектором | Ковариационные матрицы являются диагональными и то же самое через компоненты. |
Типы данных: single | double
ComponentProportion — Смешивание пропорций компонентов смесиЭто свойство доступно только для чтения.
Смешивание пропорций компонентов смеси в виде 1 k числовым вектором.
Типы данных: single | double
CovarianceType — Тип ковариационных матриц'diagonal' | 'full'Это свойство доступно только для чтения.
Тип ковариационных матриц в виде любого 'diagonal' или 'full'.
Если вы создаете gmdistribution объект при помощи gmdistribution функция, затем тип ковариационных матриц в sigma входной параметр gmdistribution наборы это свойство.
Если вы соответствуете gmdistribution возразите против данных при помощи fitgmdist функция, затем 'CovarianceType' аргумент пары "имя-значение" fitgmdist наборы это свойство.
DistributionName — Имя распределения'gaussian mixture distribution' (значение по умолчанию)Это свойство доступно только для чтения.
Имя распределения в виде 'gaussian mixture distribution'.
NumComponents — Количество компонентов смесиЭто свойство доступно только для чтения.
Количество компонентов смеси, k в виде положительного целого числа.
Если вы создаете gmdistribution объект при помощи gmdistribution функция, затем входные параметры mu\sigma, и p из gmdistribution установите это свойство.
Если вы соответствуете gmdistribution возразите против данных при помощи fitgmdist функция, затем k входной параметр fitgmdist наборы это свойство.
Типы данных: single | double
NumVariables — Количество переменныхЭто свойство доступно только для чтения.
Количество переменных в многомерных компонентах Распределения Гаусса, m в виде положительного целого числа.
Если вы создаете gmdistribution объект при помощи gmdistribution функция, затем входные параметры mu\sigma, и p из gmdistribution установите это свойство.
Если вы соответствуете gmdistribution возразите против данных при помощи fitgmdist функция, затем входные данные X из fitgmdist наборы это свойство.
Типы данных: double
SharedCovariance — Отметьте указание на разделяемую ковариациюtrue | falseЭто свойство доступно только для чтения.
Отметьте указание, совместно используется ли ковариационная матрица через компоненты смеси в виде true или false.
Если вы создаете gmdistribution объект при помощи gmdistribution функция, затем тип ковариационных матриц в sigma входной параметр gmdistribution наборы это свойство.
Если вы соответствуете gmdistribution возразите против данных при помощи fitgmdist функция, затем 'SharedCovariance' аргумент пары "имя-значение" fitgmdist наборы это свойство.
Типы данных: логический
Следующие свойства применяются только к подходящему объекту, который вы создаете при помощи fitgmdist. Значения этих свойств пусты, если вы создаете gmdistribution объект при помощи gmdistribution функция.
AIC — Критерий информации о AkaikeЭто свойство доступно только для чтения.
Критерий информации о Akaike (AIC) в виде скаляра. AIC = 2*NlogL + 2*p, где NlogL отрицательная логарифмическая правдоподобность (NegativeLogLikelihood свойство) и p количество предполагаемых параметров.
AIC является инструментом выбора модели, который можно использовать, чтобы сравнить подгонку многоуровневых моделей к тем же данным. AIC является основанной на вероятности мерой подгонки модели, которая включает штраф за сложность, а именно, количество параметров. Когда вы сравниваете многоуровневые модели, модель с меньшим значением AIC лучше.
Это свойство пусто, если вы создаете gmdistribution объект при помощи gmdistribution функция.
Типы данных: single | double
BIC — Байесов информационный критерийЭто свойство доступно только для чтения.
Байесов информационный критерий (BIC) в виде скаляра. BIC = 2*NlogL + p*log(n), где NlogL отрицательная логарифмическая правдоподобность (NegativeLogLikelihood свойство), n количество наблюдений и p количество предполагаемых параметров.
BIC является инструментом выбора модели, который можно использовать, чтобы сравнить подгонку многоуровневых моделей к тем же данным. BIC является основанной на вероятности мерой подгонки модели, которая включает штраф за сложность, а именно, количество параметров. Когда вы сравниваете многоуровневые модели, модель с самым низким значением BIC является моделью оптимальной подгонки.
Это свойство пусто, если вы создаете gmdistribution объект при помощи gmdistribution функция.
Типы данных: single | double
Converged — Отметьте указание на сходимостьtrue | falseЭто свойство доступно только для чтения.
Отметьте указание, сходится ли алгоритм Максимизации ожидания (EM) при подборе кривой смешанной гауссовской модели в виде true или false.
Можно изменить опции оптимизации при помощи 'Options' аргумент пары "имя-значение" fitgmdist.
Это свойство пусто, если вы создаете gmdistribution объект при помощи gmdistribution функция.
Типы данных: логический
NegativeLogLikelihood — Отрицательная логарифмическая правдоподобностьЭто свойство доступно только для чтения.
Отрицательная логарифмическая правдоподобность подходящей смешанной гауссовской модели, учитывая входные данные X из fitgmdistВ виде скаляра.
Это свойство пусто, если вы создаете gmdistribution объект при помощи gmdistribution функция.
Типы данных: single | double
NumIterations — Количество итерацийЭто свойство доступно только для чтения.
Количество итераций в алгоритме Максимизации ожидания (EM) в виде положительного целого числа.
Можно изменить опции оптимизации, включая максимальное количество позволенных итераций, при помощи 'Options' аргумент пары "имя-значение" fitgmdist.
Это свойство пусто, если вы создаете gmdistribution объект при помощи gmdistribution функция.
Типы данных: double
ProbabilityTolerance — Допуск к апостериорным вероятностям[0,1e-6]Это свойство доступно только для чтения.
Допуск к апостериорным вероятностям в виде неотрицательного скалярного значения в области значений [0,1e-6].
'ProbabilityTolerance' аргумент пары "имя-значение" fitgmdist наборы это свойство.
Это свойство пусто, если вы создаете gmdistribution объект при помощи gmdistribution функция.
Типы данных: single | double
RegularizationValue — Значение параметров регуляризацииЭто свойство доступно только для чтения.
Значение параметров регуляризации в виде неотрицательного скаляра.
'RegularizationValue' аргумент пары "имя-значение" fitgmdist наборы это свойство.
Это свойство пусто, если вы создаете gmdistribution объект при помощи gmdistribution функция.
Типы данных: single | double
cdf | Кумулятивная функция распределения для Гауссова распределения смеси |
cluster | Создайте кластеры из Гауссова распределения смеси |
mahal | Расстояние Mahalanobis до Гауссова компонента смеси |
pdf | Функция плотности вероятности для Гауссова распределения смеси |
posterior | Апостериорная вероятность Гауссова компонента смеси |
random | Случайная варьируемая величина от Гауссова распределения смеси |
gmdistributionСоздайте двухкомпонентное двумерное Гауссово распределение смеси при помощи gmdistribution функция.
Задайте параметры распределения (средние значения и ковариации) двух двумерных Гауссовых компонентов смеси.
mu = [1 2;-3 -5];
sigma = cat(3,[2 .5],[1 1]) % 1-by-2-by-2 arraysigma =
sigma(:,:,1) =
2.0000 0.5000
sigma(:,:,2) =
1 1
cat функция конкатенирует ковариации вдоль третьего измерения массива. Заданные ковариационные матрицы являются диагональными матрицами. sigma(1,:,i) содержит диагональные элементы ковариационной матрицы i компонента.
Создайте gmdistribution объект. По умолчанию, gmdistribution функция создает равную смесь пропорции.
gm = gmdistribution(mu,sigma)
gm = Gaussian mixture distribution with 2 components in 2 dimensions Component 1: Mixing proportion: 0.500000 Mean: 1 2 Component 2: Mixing proportion: 0.500000 Mean: -3 -5
Перечислите свойства gm объект.
properties(gm)
Properties for class gmdistribution:
NumVariables
DistributionName
NumComponents
ComponentProportion
SharedCovariance
NumIterations
RegularizationValue
NegativeLogLikelihood
CovarianceType
mu
Sigma
AIC
BIC
Converged
ProbabilityTolerance
Можно получить доступ к этим свойствам при помощи записи через точку. Например, получите доступ к ComponentProportion свойство, которое представляет смесительные пропорции компонентов смеси.
gm.ComponentProportion
ans = 1×2
0.5000 0.5000
gmdistribution объект имеет свойства, которые применяются только к подходящему объекту. Подходящими свойствами объектов является AIC, BIC, Converged, NegativeLogLikelihood'NumIterations' , ProbabilityTolerance, и RegularizationValue. Значения подходящих свойств объектов пусты, если вы создаете объект при помощи gmdistribution функционируйте и задающий параметры распределения. Например, получите доступ к NegativeLogLikelihood свойство при помощи записи через точку.
gm.NegativeLogLikelihood
ans =
[]
После того, как вы создаете gmdistribution объект, можно использовать объектные функции. Используйте cdf и pdf вычислить значения кумулятивной функции распределения (cdf) и функции плотности вероятности (PDF). Используйте random сгенерировать случайные векторы. Используйте cluster, mahal, и posterior для кластерного анализа.
Визуализируйте объект при помощи pdf и fsurf.
fsurf(@(x,y)reshape(pdf(gm,[x(:) y(:)]),size(x)),[-10 10])

fitgmdistСгенерируйте случайные варьируемые величины, которые следуют за смесью двух двумерных Распределений Гаусса при помощи mvnrnd функция. Соответствуйте смешанной гауссовской модели (GMM) к сгенерированным данным при помощи fitgmdist функция.
Задайте параметры распределения (средние значения и ковариации) двух двумерных Гауссовых компонентов смеси.
mu1 = [1 2]; % Mean of the 1st component sigma1 = [2 0; 0 .5]; % Covariance of the 1st component mu2 = [-3 -5]; % Mean of the 2nd component sigma2 = [1 0; 0 1]; % Covariance of the 2nd component
Сгенерируйте равное количество случайных варьируемых величин от каждого компонента и объедините два набора случайных варьируемых величин.
rng('default') % For reproducibility r1 = mvnrnd(mu1,sigma1,1000); r2 = mvnrnd(mu2,sigma2,1000); X = [r1; r2];
Объединенный набор данных X содержит случайные варьируемые величины после смеси двух двумерных Распределений Гаусса.
Соответствуйте двухкомпонентному GMM к X.
gm = fitgmdist(X,2)
gm = Gaussian mixture distribution with 2 components in 2 dimensions Component 1: Mixing proportion: 0.500000 Mean: -2.9617 -4.9727 Component 2: Mixing proportion: 0.500000 Mean: 0.9539 2.0261
Перечислите свойства gm объект.
properties(gm)
Properties for class gmdistribution:
NumVariables
DistributionName
NumComponents
ComponentProportion
SharedCovariance
NumIterations
RegularizationValue
NegativeLogLikelihood
CovarianceType
mu
Sigma
AIC
BIC
Converged
ProbabilityTolerance
Можно получить доступ к этим свойствам при помощи записи через точку. Например, получите доступ к NegativeLogLikelihood свойство, которое представляет отрицательную логарифмическую правдоподобность данных X учитывая подобранную модель.
gm.NegativeLogLikelihood
ans = 7.0584e+03
После того, как вы создаете gmdistribution объект, можно использовать объектные функции. Используйте cdf и pdf вычислить значения кумулятивной функции распределения (cdf) и функции плотности вероятности (PDF). Используйте random сгенерировать случайные варьируемые величины. Используйте cluster, mahal, и posterior для кластерного анализа.
Постройте X при помощи scatter. Визуализируйте подобранную модель gm при помощи pdf и fcontour.
scatter(X(:,1),X(:,2),10,'.') % Scatter plot with points of size 10 hold on gmPDF = @(x,y)reshape(pdf(gm,[x(:) y(:)]),size(x)); fcontour(gmPDF,[-8 6])

[1] Маклахлан, G. и D. Кожица. Конечные модели смеси. Хобокен, NJ: John Wiley & Sons, Inc., 2000.
У вас есть модифицированная версия этого примера. Вы хотите открыть этот пример со своими редактированиями?
1. Если смысл перевода понятен, то лучше оставьте как есть и не придирайтесь к словам, синонимам и тому подобному. О вкусах не спорим.
2. Не дополняйте перевод комментариями “от себя”. В исправлении не должно появляться дополнительных смыслов и комментариев, отсутствующих в оригинале. Такие правки не получится интегрировать в алгоритме автоматического перевода.
3. Сохраняйте структуру оригинального текста - например, не разбивайте одно предложение на два.
4. Не имеет смысла однотипное исправление перевода какого-то термина во всех предложениях. Исправляйте только в одном месте. Когда Вашу правку одобрят, это исправление будет алгоритмически распространено и на другие части документации.
5. По иным вопросам, например если надо исправить заблокированное для перевода слово, обратитесь к редакторам через форму технической поддержки.