Набор опций для genfis
команда
создает набор опций по умолчанию для генерации структуры системы нечеткого вывода с помощью opt
= genfisOptions(clusteringType
)genfis
. Набор опций, opt
, содержит различные опции, которые зависят от заданного алгоритма кластеризации, clusteringType
. Используйте запись через точку, чтобы изменить этот набор опций для вашего конкретного приложения. Опции, которые вы не изменяете, сохраняют значения по умолчанию.
создает набор опций с опциями, заданными одним или несколькими opt
= genfisOptions(clusteringType
,Name,Value
)Name,Value
аргументы в виде пар.
Создайте набор опций по умолчанию для метода генерации секционирования сетки.
opt = genfisOptions('GridPartition');
Измените опции с помощью записи через точку. Для примера задайте 3
функции членства для первого входа и 4
функции принадлежности для второго входа.
opt.NumMembershipFunctions = [3 4];
Можно также задать опции при создании набора опций. Например, создайте набор опций для кластеризации FCM с помощью 4
кластеры.
opt2 = genfisOptions('FCMClustering','NumClusters',4);
clusteringType
- Метод кластеризации'GridPartition'
| 'SubtractiveClustering'
| 'FCMClustering'
Метод кластеризации для определения функций принадлежности и нечетких правил, заданный как одно из следующего:
'GridPartition'
- Сгенерируйте входные функции принадлежности путем равномерного разбиения входных областей значений переменных и создайте одноотводную систему Sugeno fuzzy. Основа нечеткого правила содержит одно правило для каждой комбинации функций принадлежности входа.
'SubtractiveClustering'
- Сгенерируйте нечеткую систему Sugeno с помощью функций принадлежности и правил, полученных из кластеров данных, найденных с помощью вычитающей кластеризации входных и выходных данных. Для получения дополнительной информации о вычитании кластеризации см. subclust
.
'FCMClustering'
- Сгенерируйте нечеткую систему с помощью функции принадлежности и правил, полученных из кластеров данных, найденных с помощью FCM-кластеризации входных и выходных данных. Для получения дополнительной информации о кластеризации FCM см. fcm
.
Задайте необязательные разделенные разделенными запятой парами Name,Value
аргументы. Name
- имя аргумента и Value
- соответствующее значение. Name
должны находиться внутри кавычек. Можно задать несколько аргументов в виде пар имен и значений в любом порядке Name1,Value1,...,NameN,ValueN
.
'InputMembershipFunctionType','trimf'
устанавливает треугольные функции входа принадлежности для алгоритма разделения сетки.'NumMembershipFunctions'
- Количество входных функций членства2
(по умолчанию) | целое число более 1 | вектор из целых чисел более 1Количество входа функций членства для каждого переменного входа, заданное как разделенная запятой пара, состоящее из 'NumMembershipFunctions'
и одно из следующих:
Целое число, больше 1 - задает одинаковое количество функций принадлежности для всех входов.
Вектор целого числа больше 1 с длиной, равной количеству входов - Задайте разное количество функций принадлежности для каждого входа.
'InputMembershipFunctionType'
- Входной тип функции принадлежности'gbellmf'
(по умолчанию) | 'gaussmf'
| 'trimf'
| 'trapmf'
| вектор символов | строковые массивы |...Входной тип функции принадлежности, заданный как разделенная разделенными запятой парами, состоящая из 'InputMembershipFunctionType'
и одно из следующих:
Вектор символов - задайте один из следующих типов функций принадлежности для всех входов.
Тип функции принадлежности | Описание | Для получения дополнительной информации |
---|---|---|
'gbellmf' | Обобщенная функция принадлежности в форме колокола | gbellmf |
'gaussmf' | Функция Гауссова членства | gaussmf |
'gauss2mf' | Комбинация Гауссов | gauss2mf |
'trimf' | Треугольная функция принадлежности | trimf |
'trapmf' | Функция трапеций членства | trapmf |
'sigmf' | Функция Sigmoidal принадлежности | sigmf |
'dsigmf' | Различие между двумя сигмоидальными функциями принадлежности | dsigmf |
'psigmf' | Продукт двух сигмоидальных функций принадлежности | psigmf |
'zmf' | Z-образная функция принадлежности | zmf |
'pimf' | Функция Pi-образного членства | pimf |
'smf' | S-образная функция принадлежности | smf |
Вектор символов или строка | Имя пользовательской функции членства в текущей рабочей папке или в MATLAB® путь | Создайте нечеткие системы с помощью пользовательских функций |
Символьный массив или строковые массивы - задайте другой тип функции принадлежности для каждого входного сигнала. Для примера задайте различные функции членства для системы с тремя входами:
["gbellmf","gaussmf","trimf"]
'OutputMembershipFunctionType'
- Тип функции выхода принадлежности'linear'
(по умолчанию) | 'constant'
Тип функции вывода принадлежности для системы Sugeno с одним выходом, заданный как разделенная разделенными запятой парами, состоящая из 'OutputMembershipFunctionType'
и одно из следующих:
'linear'
- выход каждого правила является линейной функцией входных переменных, масштабируемой на предшествующее значение результата.
'constant'
- выход каждого правила является константой, масштабируемой предшествующим значением результата.
'ClusterInfluenceRange'
- Область значений влияния кластерного центра0.5
(по умолчанию) | скалярное значение в области значений [0
, 1
] | векторОбласть значений влияния центра кластера на каждый вход и выход при условии, что данные попадают в модуль гипербокс, заданный как разделенная запятой пара, состоящий из 'ClusterInfluenceRange'
одно из следующих:
Скалярное значение в области значений [0
1
] - Используйте ту же область значений влияния для всех входов и выходов.
Вектор - используйте различные области значений влияния для каждого входа и выхода.
Определение меньшей области значений влияния обычно создает все большие и меньшие кластеры данных, создавая более нечеткие правила.
'DataScale'
- Масштабные коэффициенты данных'auto'
(по умолчанию) | массив 2 байта NКоэффициенты шкалы данных для нормализации входных и выходных данных в модули гипербокс, заданные как разделенная запятой пара, состоящий из 'DataScale'
и массив 2 байта N, где N - общее количество входов и выходов. Каждый столбец DataScale
задает минимальное значение в первой строке и максимальное значение во второй строке для соответствующего входа или выходных данных.
Когда DataScale
является 'auto'
, genfis
команда использует фактические минимальные и максимальные значения в данных, которые будут кластеризованы.
'SquashFactor'
- Коэффициент сквоша1.25
(по умолчанию) | положительная скалярная величинаКоэффициент сквоша для масштабирования области значений влияния центров кластера, заданный как разделенная разделенными запятой парами, состоящая из 'SquashFactor'
и положительная скалярная величина. Меньший коэффициент сквоша уменьшает вероятность того, что отдаленные точки будут рассматриваться как часть кластера, что обычно создает больше и меньше кластеров данных.
'AcceptRatio'
- Коэффициент приемки0.5
(по умолчанию) | скалярное значение в области значений [0
, 1
]Коэффициент принятия, заданный как часть потенциала первого центра кластера, выше которого в качестве центра кластера принимается другая точка данных, заданная как разделенная разделенными запятой парами, состоящая из 'AcceptRatio'
и скалярное значение в области значений [0
, 1
]. Коэффициент принятия должен быть больше коэффициента отклонения.
'RejectRatio'
- Коэффициент отклонения0.15
(по умолчанию) | скалярное значение в области значений [0
, 1
]Коэффициент отклонения, заданный как часть потенциала первого центра кластера, ниже которого другая точка данных отклоняется как центр кластера, заданная как разделенная разделенными запятой парами, состоящая из 'RejectRatio'
и скалярное значение в области значений [0
, 1
]. Коэффициент отклонения должен быть меньше коэффициента приемки.
'Verbose'
- Флаг отображения информацииfalse
(по умолчанию) | true
Флаг отображения информации, указывающий, отображать ли информацию о прогрессе во время кластеризации, задается как разделенная разделенными запятой парами, состоящая из 'Verbose'
и одно из следующих:
false
- Не отображать информацию о прогрессе.
true
- отображение информации о прогрессе.
'CustomClusterCenters'
- Пользовательские центры кластеров[]
(по умолчанию) | C -by - N массивПользовательские центры кластеров, задающие разделенную разделенными запятой парами, состоящую из 'CustomClusterCenters'
и как C -by - N массив, где C - количество кластеров, а N - общее количество входов и выходов.
'FISType'
- тип системы нечеткого вывода'sugeno'
(по умолчанию) | 'mamdani'
Тип системы нечеткого вывода, заданный как разделенная разделенными запятой парами, состоящая из 'FISType'
и одно из следующих:
'sugeno'
- Нечеткая система типа Sugeno
'mamdani'
- нечеткая система типа Мамдани
Для получения дополнительной информации о типах систем нечеткого вывода см. Mamdani и Sugeno Fuzzy Inference Systems.
'NumClusters'
- Количество кластеров'auto'
| целое число, больше 1
Количество созданных кластеров, заданное как разделенная разделенными запятой парами, состоящая из 'NumClusters'
и 'auto'
или целое число, больше 1
. Когда NumClusters
является 'auto'
, genfis
команда оценивает количество кластеров, использующих вычитающую кластеризацию с областью значений влияния кластеров 0.5
.
NumClusters
определяет количество правил и функций членства в сгенерированной FIS.
'Exponent'
- Экспонента для нечеткой матрицы разбиения2.0
(по умолчанию) | скаляром больше 1.0
Экспонента для нечеткой матрицы разбиения, заданная как разделенная разделенными запятой парами, состоящая из 'Exponent'
и скаляром, большим 1.0
. Эта опция управляет количеством нечеткого перекрытия между кластерами с большими значениями, указывающими на большую степень перекрытия.
Если ваш набор данных широк со значительным перекрытием между потенциальными кластерами, то вычисленные центры кластеров могут быть очень близки друг к другу. В этом случае каждая точка данных имеет примерно одинаковую степень принадлежности ко всем кластерам. Чтобы улучшить результаты кластеризации, уменьшите это значение, что ограничивает количество нечеткого перекрытия во время кластеризации.
Пример регулировки нечеткого перекрытия см. в разделе Настройка нечеткого перекрытия в нечеткой кластеризации C-Means.
'MaxNumIteration'
- Максимальное количество итераций100
(по умолчанию) | положительное целое числоМаксимальное количество итераций, заданное как разделенная разделенными запятой парами, состоящая из 'MaxNumIteration'
и положительное целое число.
'MinImprovement'
- Минимальное улучшение целевой функции1e-5
(по умолчанию) | положительная скалярная величинаМинимальное улучшение целевой функции между двумя последовательными итерациями, заданное как разделенная разделенными запятой парами, состоящая из 'MinImprovement'
и положительная скалярная величина.
'Verbose'
- Флаг отображения информацииtrue
(по умолчанию) | false
Флаг отображения информации, указывающий, отображать ли значение целевой функции после каждой итерации, заданный как разделенная разделенными запятой парами, состоящая из 'Verbose'
и одно из следующих:
true
- Отобразите целевую функцию.
false
- Не отображать целевую функцию.
opt
- Набор опций для genfis
командаgenfisOptions
набор опцийНабор опций для genfis
команда, возвращенная как genfisOptions
набор опций. Опции в наборе опций зависят от заданного clusteringType
.
У вас есть измененная версия этого примера. Вы хотите открыть этот пример с вашими правками?
1. Если смысл перевода понятен, то лучше оставьте как есть и не придирайтесь к словам, синонимам и тому подобному. О вкусах не спорим.
2. Не дополняйте перевод комментариями “от себя”. В исправлении не должно появляться дополнительных смыслов и комментариев, отсутствующих в оригинале. Такие правки не получится интегрировать в алгоритме автоматического перевода.
3. Сохраняйте структуру оригинального текста - например, не разбивайте одно предложение на два.
4. Не имеет смысла однотипное исправление перевода какого-то термина во всех предложениях. Исправляйте только в одном месте. Когда Вашу правку одобрят, это исправление будет алгоритмически распространено и на другие части документации.
5. По иным вопросам, например если надо исправить заблокированное для перевода слово, обратитесь к редакторам через форму технической поддержки.