Набор опций для tunefis функция
Использование tunefisOptions объект, чтобы задать опции для настройки нечетких систем с помощью tunefis функция. Можно задать такие опции, как метод оптимизации, тип оптимизации и метрика расстояния для вычисления затрат на оптимизацию.
создает набор опций по умолчанию для настройки системы нечеткого вывода с помощью opt = tunefisOptionstunefis функция. Чтобы изменить свойства этого набора опций для вашего конкретного приложения, используйте запись через точку.
создает набор опций с параметрами Свойства, заданными с помощью одного или нескольких аргументов пары "имя-значение".opt = tunefisOptions(Name,Value)
Method - Алгоритм настройки"ga" (по умолчанию) | "particleswarm" | "patternsearch" | "simulannealbnd" | "anfis"Алгоритм настройки, заданный как один из следующих:
"ga" - генетический алгоритм
"particleswarm" - рой частиц
"patternsearch" - поиск шаблона
"simulannealbnd" - моделируемый алгоритм отжига
"anfis" - адаптивная нейро-нечеткая
Эти алгоритмы настройки используют решатели из программного обеспечения Global Optimization Toolbox, кроме "anfis". The MethodOptions свойство отличается для каждого алгоритма и соответствует входному параметру опций для соответствующего решателя. Если вы задаете MethodOptions без указания Method, затем метод настройки определяется на основе MethodOptions.
The "anfis" метод настройки поддерживает настройку только систем нечеткого вывода типа 1 Sugeno с одной выходной переменной.
MethodOptions - Опции алгоритма настройкиoptimoptionsОпции алгоритма настройки, заданные как объект опции для алгоритма настройки, заданного Method. Это свойство отличается для каждого алгоритма и создается с помощью optimoptions. Если вы не задаете MethodOptions, tunefis создает объект опции по умолчанию для метода настройки, заданного в Method. Изменение опций в MethodOptions, используйте запись через точку.
OptimizationType - Тип оптимизации"tuning" (по умолчанию) | "learning"Тип оптимизации, заданный как один из следующих:
"tuning" - Оптимизируйте существующие входные, выходные параметры и параметры правил, не изучая новые правила.
"learning" - Изучение новых правил до максимального количества правил, заданных NumMaxRules.
The "anfis" алгоритм поддерживает только "tuning" оптимизация.
NumMaxRules - Максимальное количество правил в FISInf (по умолчанию) | целое числоМаксимальное количество правил в FIS после оптимизации, заданное в виде целого числа. Количество правил в FIS (после оптимизации) может быть меньше NumMaxRules, поскольку повторяющиеся правила с такими же предшествующими значениями удаляются из основы правил.
Когда NumMaxRules является Inf, tunefis устанавливает NumMaxRules к максимальному количеству возможных правил для FIS. Это максимальное значение вычисляется на основе количества входных переменных и количества функций принадлежности для каждой входной переменной.
При настройке параметров fistree объект, NumMaxRules указывает максимальное количество правил для каждой FIS в fistree.
The "anfis" метод настройки игнорирует эту опцию.
IgnoreInvalidParameters - Флаг для игнорирования недопустимых параметровtrue (по умолчанию) | falseФлаг для игнорирования недопустимых параметров, заданный как true или false. Когда IgnoreInvalideParameters является true, tunefis функция игнорирует недопустимые значения параметров, сгенерированные в процессе настройки.
The "anfis" метод настройки игнорирует эту опцию.
DistanceMetric - Тип метрики расстояния"rmse" (по умолчанию) | "norm1" | "norm2"Тип метрики расстояния, используемой для вычисления стоимости для оптимизированных значений параметров относительно обучающих данных, заданный как одно из следующего:
"rmse" - Среднеквадратичная ошибка
"norm1" - Вектор 1-норма
"norm2" - Вектор 2-норма
Для получения дополнительной информации о векторных нормах см. norm.
The "anfis" метод настройки поддерживает только "rmse" метрический.
UseParallel - Флаг для использования параллельных вычисленийfalse (по умолчанию) | trueФлаг для использования параллельных вычислений, заданный как true или false. Когда UseParallel является true, tunefis функция использует параллельные расчеты в процессе оптимизации. Для использования параллельных вычислений требуется программное обеспечение Parallel Computing Toolbox™.
The "anfis" метод настройки не поддерживает параллельные расчеты.
KFoldValue - Количество перекрестных валидаций для выполнения0 (по умолчанию) | неотрицательное целое числоКоличество выполняемых перекрестных валидаций, заданное как неотрицательное целое число, меньше или равное количеству строк в обучающих данных.
Когда KFoldValue является 0 или 1, tunefis использует весь набор входных данных для обучения и не выполняет валидацию.
В противном случае, tunefis случайным образом разделяет входные данные на KFoldValue подмножества приблизительно равного размера. Затем функция выполняет KFoldValue итерации проверки-обучения. Для каждой итерации один подмножество данных используется как данные валидации, а остальные подмножества используются как обучающие данные. Следующий рисунок показывает раздел данных и итерации для KFoldValue = 4.

Для примера, который настраивает систему нечеткого вывода с помощью перекрестной валидации k-fold, смотрите Оптимизируйте параметры FIS с помощью Перекрестной валидации k-Fold.
The "anfis" метод настройки игнорирует эту опцию.
ValidationTolerance - Максимально допустимое увеличение стоимости валидации0.1 (по умолчанию) | значение в области значений [0,1]Максимально допустимое увеличение затрат на валидацию при использовании k-кратной перекрестной валидации, заданное как скалярное значение в области значений [0,1]. Более высокий ValidationTolerance значение создает более длительную итерацию обучения-валидации с повышенной возможностью сверхподбора кривой данных.
Увеличение затрат на валидацию, ΔC, является различием между средней стоимостью валидации и минимальной стоимостью валидации, Cmin, для текущей итерации обучения-валидации. Средняя стоимость валидации является скользящим средним значением с размером окна, равным ValidationWindowSize.
tunefis останавливает текущую итерацию обучения-валидации, когда отношение между ΔC и Cmin превышает ValidationTolerance.
ValidationTolerance игнорируется, когда KFoldValue является 0 или 1.
The "anfis" метод настройки игнорирует эту опцию.
ValidationWindowSize - Размер окна для вычисления средних затрат на валидацию5 (по умолчанию) | положительное целое числоРазмер окна для вычисления средней стоимости валидации, заданный как положительное целое число. Скользящее среднее значение стоимости валидации вычисляется по последним N значениям затрат на валидацию, где N равно ValidationWindowSize. Более высокий ValidationWindowSize значение создает более длительную итерацию обучения-валидации с повышенной возможностью сверхподбора кривой данных. Более низкий размер окна может вызвать раннее завершение процесса настройки, когда обучающие данные зашумлены.
ValidationWindowSize игнорируется, когда KFoldValue является 0 или 1.
The "anfis" метод настройки игнорирует эту опцию.
Display - Данные для отображения в командном окне во время обучения"all" (по умолчанию) | "tuningonly" | "validationonly" | "none"Данные для отображения в командном окне во время обучения, заданные как одно из следующих значений.
"all" - отображение результатов обучения и валидации.
"tuningonly" - Отображать только результаты обучения.
"validationonly" - Отображать только результаты валидации.
"none" - Не отображать ни результаты обучения, ни результаты валидации.
Создайте набор опций по умолчанию с помощью алгоритма настройки роя частиц.
opt = tunefisOptions("Method","particleswarm")
opt =
tunefisOptions with properties:
Method: "particleswarm"
MethodOptions: [1x1 optim.options.Particleswarm]
OptimizationType: "tuning"
NumMaxRules: Inf
IgnoreInvalidParameters: 1
DistanceMetric: "rmse"
UseParallel: 0
KFoldValue: 0
ValidationTolerance: 0.1000
ValidationWindowSize: 5
Display: "all"
Можно изменить опции с помощью записи через точку. Для примера установите максимальное количество итераций равным 20.
opt.MethodOptions.MaxIterations = 20;
Можно также задать другие опции при создании набора опций. В этом примере установите OptimizationType на "learning" чтобы узнать новые правила.
opt2 = tunefisOptions("Method","particleswarm","OptimizationType","learning")
opt2 =
tunefisOptions with properties:
Method: "particleswarm"
MethodOptions: [1x1 optim.options.Particleswarm]
OptimizationType: "learning"
NumMaxRules: Inf
IgnoreInvalidParameters: 1
DistanceMetric: "rmse"
UseParallel: 0
KFoldValue: 0
ValidationTolerance: 0.1000
ValidationWindowSize: 5
Display: "all"
У вас есть измененная версия этого примера. Вы хотите открыть этот пример с вашими правками?
1. Если смысл перевода понятен, то лучше оставьте как есть и не придирайтесь к словам, синонимам и тому подобному. О вкусах не спорим.
2. Не дополняйте перевод комментариями “от себя”. В исправлении не должно появляться дополнительных смыслов и комментариев, отсутствующих в оригинале. Такие правки не получится интегрировать в алгоритме автоматического перевода.
3. Сохраняйте структуру оригинального текста - например, не разбивайте одно предложение на два.
4. Не имеет смысла однотипное исправление перевода какого-то термина во всех предложениях. Исправляйте только в одном месте. Когда Вашу правку одобрят, это исправление будет алгоритмически распространено и на другие части документации.
5. По иным вопросам, например если надо исправить заблокированное для перевода слово, обратитесь к редакторам через форму технической поддержки.