Предскажите ошибочное значение в наборе точек
Этот пример показывает оптимизацию функции, которая выдает ошибку, когда точка оценки имеет норму, больше, чем 2. Ошибочная модель для целевой функции изучает это поведение.
Создайте переменные под названием x1 и x2 тот диапазон от -5 к 5.
var1 = optimizableVariable('x1',[-5,5]); var2 = optimizableVariable('x2',[-5,5]); vars = [var1,var2];
Следующая целевая функция выдает ошибку когда норма x = [x1,x2] превышает 2:
function f = makeanerror(x)
f = x.x1 - x.x2 - sqrt(4-x.x1^2-x.x2^2);
fun = @makeanerror;
Постройте ошибочную модель и минимальную цель, в то время как оптимизация продолжает. Оптимизируйте для 60 итераций, таким образом, ошибочная модель становится хорошо обученной. Для воспроизводимости, набор случайный seed и использование 'expected-improvement-plus' функция приобретения.
rng default results = bayesopt(fun,vars,'Verbose',0,'MaxObjectiveEvaluations',60,... 'AcquisitionFunctionName','expected-improvement-plus',... 'PlotFcn',{@plotMinObjective,@plotConstraintModels});



Предскажите ошибку в точках на линии x1 = x2. Если бы ошибочная модель была совершенна, она имела бы значение -1 в каждой точке, где норма x не больше, чем 2, и значение 1 во всех других точках.
x1 = (-5:0.5:5)'; x2 = x1; XTable = table(x1,x2); error = predictError(results,XTable); normx = sqrt(x1.^2 + x2.^2); [XTable,table(normx,error)]
ans =
21x4 table
x1 x2 normx error
____ ____ _______ _________
-5 -5 7.0711 0.94663
-4.5 -4.5 6.364 0.97396
-4 -4 5.6569 0.99125
-3.5 -3.5 4.9497 1.0033
-3 -3 4.2426 1.0018
-2.5 -2.5 3.5355 0.99627
-2 -2 2.8284 1.0043
-1.5 -1.5 2.1213 0.89886
-1 -1 1.4142 0.4746
-0.5 -0.5 0.70711 0.0042389
0 0 0 -0.16004
0.5 0.5 0.70711 -0.012397
1 1 1.4142 0.30187
1.5 1.5 2.1213 0.88588
2 2 2.8284 1.0872
2.5 2.5 3.5355 0.997
3 3 4.2426 0.99861
3.5 3.5 4.9497 0.98894
4 4 5.6569 0.98941
4.5 4.5 6.364 0.98956
5 5 7.0711 0.95549
results — Байесовы результаты оптимизацииBayesianOptimization объектБайесовы результаты оптимизации, заданные как BayesianOptimization объект.
XTable — Точки прогнозаТочки прогноза, заданные как таблица со столбцами D, где D является количеством переменных в проблеме. Функция выполняет свои прогнозы на этих точках.
Типы данных: table
error — Среднее значение ошибки связало ограничениеN- 1 векторСреднее значение ошибки, связанной ограничение, возвратилось как N- 1 вектор, где N количество строк XTable. Среднее значение является следующим средним значением связанного ограничения ошибки в точках в XTable.
bayesopt считает вашу целевую функцию, чтобы возвратить ошибку, если она возвращает что-нибудь кроме конечного действительного скаляра. Смотрите Ошибки Целевой функции.
sigma — Стандартное отклонение ошибки связало ограничениеN- 1 векторСтандартное отклонение ошибки, связанной ограничение, возвратилось как N- 1 вектор, где N количество строк XTable.
У вас есть модифицированная версия этого примера. Вы хотите открыть этот пример со своими редактированиями?
1. Если смысл перевода понятен, то лучше оставьте как есть и не придирайтесь к словам, синонимам и тому подобному. О вкусах не спорим.
2. Не дополняйте перевод комментариями “от себя”. В исправлении не должно появляться дополнительных смыслов и комментариев, отсутствующих в оригинале. Такие правки не получится интегрировать в алгоритме автоматического перевода.
3. Сохраняйте структуру оригинального текста - например, не разбивайте одно предложение на два.
4. Не имеет смысла однотипное исправление перевода какого-то термина во всех предложениях. Исправляйте только в одном месте. Когда Вашу правку одобрят, это исправление будет алгоритмически распространено и на другие части документации.
5. По иным вопросам, например если надо исправить заблокированное для перевода слово, обратитесь к редакторам через форму технической поддержки.