Выполните автоматизированную разработку функции для регрессии
genrfeatures функция позволяет вам автоматизировать процесс разработки функции в контексте рабочего процесса машинного обучения. Прежде, чем передать табличные обучающие данные модели регрессии, можно создать новые возможности из предикторов в данных при помощи genrfeatures. Используйте возвращенные данные, чтобы обучить модель регрессии.
genrfeatures позволяет вам генерировать признаки от переменных с типами данных — такими как datetimeдлительность, и различный int типы — которые не поддерживаются большинством функций обучения модели регрессии. Получившиеся функции имеют типы данных, которые поддерживаются этими учебными функциями.
Чтобы лучше изучить генерированные признаки, используйте describe функция возвращенного FeatureTransformer объект. Чтобы применить те же преобразования функции набора обучающих данных к набору тестов, используйте transform функция FeatureTransformer объект.
[ использование автоматизировало разработку функции, чтобы создать Transformer,NewTbl] = genrfeatures(Tbl,ResponseVarName,q)q функции от предикторов в Tbl. Программное обеспечение принимает что ResponseVarName переменная в Tbl ответ и не создает новые возможности из этой переменной. genrfeatures возвращает FeatureTransformer объект (Transformer) и новая таблица (NewTbl) это содержит преобразованные функции.
По умолчанию, genrfeatures принимает, что генерированные функции используются, чтобы обучить поддающуюся толкованию модель линейной регрессии. Если вы хотите генерировать признаки, чтобы улучшить точность уволенного ансамбля, задайте TargetLearner="bag".
[ принимает что векторный Transformer,NewTbl] = genrfeatures(Tbl,Y,q)Y переменная отклика и создает новые возможности из переменных в Tbl.
[ использует объяснительную модель Transformer,NewTbl] = genrfeatures(Tbl,formula,q)formula определить переменную отклика в Tbl и подмножество Tbl предикторы, из которых можно создать новые возможности.
[ задает опции с помощью одних или нескольких аргументов name-value в дополнение к любой из комбинаций входных аргументов в предыдущих синтаксисах. Например, можно изменить ожидаемый тип ученика, метод для выбора новых возможностей и метода стандартизации для преобразованных данных.Transformer,NewTbl] = genrfeatures(___,Name=Value)
Используйте автоматизированную разработку функции, чтобы генерировать новые признаки. Обучите модель линейной регрессии использование генерированных признаков. Интерпретируйте отношение между генерированными признаками и обученной моделью.
Загрузите patients набор данных. Составьте таблицу от подмножества переменных. Отобразите первые несколько строк таблицы.
load patients Tbl = table(Age,Diastolic,Gender,Height,SelfAssessedHealthStatus, ... Smoker,Weight,Systolic); head(Tbl)
ans=8×8 table
Age Diastolic Gender Height SelfAssessedHealthStatus Smoker Weight Systolic
___ _________ __________ ______ ________________________ ______ ______ ________
38 93 {'Male' } 71 {'Excellent'} true 176 124
43 77 {'Male' } 69 {'Fair' } false 163 109
38 83 {'Female'} 64 {'Good' } false 131 125
40 75 {'Female'} 67 {'Fair' } false 133 117
49 80 {'Female'} 64 {'Good' } false 119 122
46 70 {'Female'} 68 {'Good' } false 142 121
33 88 {'Female'} 64 {'Good' } true 142 130
40 82 {'Male' } 68 {'Good' } false 180 115
Генерируйте 10 новых признаков от переменных в Tbl. Задайте Systolic переменная как ответ. По умолчанию, genrfeatures принимает, что новые функции будут использованы, чтобы обучить модель линейной регрессии.
rng("default") % For reproducibility [T,NewTbl] = genrfeatures(Tbl,"Systolic",10)
T =
FeatureTransformer with properties:
Type: 'regression'
TargetLearner: 'linear'
NumEngineeredFeatures: 10
NumOriginalFeatures: 0
TotalNumFeatures: 10
NewTbl=100×11 table
zsc(d(Smoker)) q8(Age) eb8(Age) zsc(sin(Height)) zsc(kmd8) q6(Height) eb8(Diastolic) q8(Diastolic) zsc(fenc(c(SelfAssessedHealthStatus))) q10(Weight) Systolic
______________ _______ ________ ________________ _________ __________ ______________ _____________ ______________________________________ ___________ ________
1.3863 4 5 1.1483 -0.56842 6 8 8 0.27312 7 124
-0.71414 6 6 -0.3877 -2.0772 5 2 2 -1.4682 6 109
-0.71414 4 5 1.1036 -0.21519 2 4 5 0.82302 3 125
-0.71414 5 6 -1.4552 -0.32389 4 2 2 -1.4682 4 117
-0.71414 8 8 1.1036 1.2302 2 3 4 0.82302 1 122
-0.71414 7 7 -1.5163 -0.88497 4 1 1 0.82302 5 121
1.3863 3 3 1.1036 -1.1434 2 6 6 0.82302 5 130
-0.71414 5 6 -1.5163 -0.3907 4 4 5 0.82302 8 115
-0.71414 1 2 -1.5163 0.4278 4 3 3 0.27312 9 115
-0.71414 2 3 -0.26055 -0.092621 3 5 6 0.27312 3 118
-0.71414 7 7 -1.5163 0.16737 4 2 2 0.27312 2 114
-0.71414 6 6 -0.26055 -0.32104 3 1 1 -1.8348 5 115
-0.71414 1 1 1.1483 -0.051074 6 1 1 -1.8348 7 127
1.3863 5 5 0.14351 2.3695 6 8 8 0.27312 10 130
-0.71414 3 4 0.96929 0.092962 2 3 4 0.82302 3 114
1.3863 8 8 1.1483 -0.049336 6 7 8 0.82302 8 130
⋮
T FeatureTransformer объект, который может использоваться, чтобы преобразовать новые данные и newTbl содержит новые признаки, генерированные от Tbl данные.
Чтобы лучше изучить генерированные признаки, используйте describe объектная функция FeatureTransformer объект. Например, смотрите первые два генерированных признака.
describe(T,1:2)
Type IsOriginal InputVariables Transformations
___________ __________ ______________ ___________________________________________________________
zsc(d(Smoker)) Numeric false Smoker Variable of type double converted from an integer data type
Standardization with z-score (mean = 0.34, std = 0.4761)
q8(Age) Categorical false Age Equiprobable binning (number of bins = 8)
Первая функция в newTbl числовая переменная, созданная первым преобразованием значений Smoker переменная к числовой переменной типа double и затем преобразовывая результаты к z-баллам. Вторая функция в newTbl категориальная переменная, созданная раскладыванием значения Age переменная в 8 равновероятных интервалов.
Используйте генерированные признаки, чтобы подбирать модель линейной регрессии без любой регуляризации.
Mdl = fitrlinear(NewTbl,"Systolic",Lambda=0);Постройте коэффициенты предикторов, используемых, чтобы обучить Mdl. Обратите внимание на то, что fitrlinear расширяет категориальные предикторы прежде, чем подобрать модель.
p = length(Mdl.Beta); [sortedCoefs,expandedIndex] = sort(Mdl.Beta,ComparisonMethod="abs"); sortedExpandedPreds = Mdl.ExpandedPredictorNames(expandedIndex); bar(sortedCoefs,Horizontal="on") yticks(1:2:p) yticklabels(sortedExpandedPreds(1:2:end)) xlabel("Coefficient") ylabel("Expanded Predictors") title("Coefficients for Expanded Predictors")

Идентифицируйте предикторы, коэффициенты которых имеют большие абсолютные значения.
bigCoefs = abs(sortedCoefs) >= 4; flip(sortedExpandedPreds(bigCoefs))
ans = 1x6 cell
Columns 1 through 3
{'eb8(Diastolic)...'} {'zsc(d(Smoker))'} {'q8(Age) >= 2'}
Columns 4 through 6
{'q10(Weight) >= 9'} {'q6(Height) >= 5'} {'eb8(Diastolic)...'}
Можно использовать частичные графики зависимости анализировать категориальные функции, уровни которых имеют большие коэффициенты в терминах абсолютного значения. Например, смотрите частичный график зависимости для eb8(Diastolic) переменная, чьи уровни eb8(Diastolic) >= 5 и eb8(Diastolic) >= 6 имейте коэффициенты с большими абсолютными значениями. Эти два уровня соответствуют значимым изменениям в предсказанном Systolic значения.
plotPartialDependence(Mdl,"eb8(Diastolic)",NewTbl);
Генерируйте новые признаки, чтобы улучшать прогнозирующую производительность поддающейся толкованию модели линейной регрессии. Сравните эффективность набора тестов линейной модели, обученной на исходных данных к эффективности набора тестов линейной модели, обученной на преобразованных функциях.
Загрузите carbig набор данных, который содержит измерения автомобилей, сделанных в 1970-х и в начале 1980-х.
load carbigПреобразуйте Origin переменная к категориальной переменной. Затем составьте таблицу, содержащую переменные предикторы Acceleration, Displacement, и так далее, а также переменная отклика MPG. Каждая строка содержит измерения для одного автомобиля. Удалите строки, которые имеют отсутствующие значения.
Origin = categorical(cellstr(Origin));
cars = table(Acceleration,Displacement,Horsepower, ...
Model_Year,Origin,Weight,MPG);
Tbl = rmmissing(cars);Разделите данные в наборы обучающих данных и наборы тестов. Используйте приблизительно 70% наблюдений как обучающие данные и 30% наблюдений как тестовые данные. Разделите данные с помощью cvpartition.
rng("default") % For reproducibility of the partition c = cvpartition(size(Tbl,1),Holdout=0.3); trainIdx = training(c); trainTbl = Tbl(trainIdx,:); testIdx = test(c); testTbl = Tbl(testIdx,:);
Используйте обучающие данные, чтобы генерировать 45 новых признаков. Смотрите возвращенный FeatureTransformer объект.
[T,newTrainTbl] = genrfeatures(trainTbl,"MPG",45);
TT =
FeatureTransformer with properties:
Type: 'regression'
TargetLearner: 'linear'
NumEngineeredFeatures: 43
NumOriginalFeatures: 2
TotalNumFeatures: 45
Обратите внимание на то, что T.NumOriginalFeatures 2, что означает, что функция сохраняет два из исходных предикторов.
Примените преобразования, сохраненные в объекте T к тестовым данным.
newTestTbl = transform(T,testTbl);
Сравните эффективность набора тестов линейной модели, обученной на исходных функциях и линейной модели, обученной на новых возможностях.
Обучите модель линейной регрессии использование исходного набора обучающих данных trainTbl, и вычислите среднеквадратическую ошибку (MSE) модели на исходном наборе тестов testTbl. Затем обучите модель линейной регрессии использование преобразованного набора обучающих данных newTrainTbl, и вычислите MSE модели на преобразованном наборе тестов newTestTbl.
originalMdl = fitrlinear(trainTbl,"MPG"); originalTestMSE = loss(originalMdl,testTbl,"MPG")
originalTestMSE = 65.9916
newMdl = fitrlinear(newTrainTbl,"MPG"); newTestMSE = loss(newMdl,newTestTbl,"MPG")
newTestMSE = 12.1628
newTestMSE меньше originalTestMSE, который предполагает, что линейная модель, обученная на преобразованных данных, выполняет лучше, чем линейная модель, обученная на исходных данных.
Сравните предсказанные значения отклика набора тестов с истинными значениями отклика для обеих моделей. Постройте предсказанные мили на галлон (MPG) вдоль вертикальной оси и истинный MPG вдоль горизонтальной оси. Точки на ссылочной линии указывают на правильные предсказания. Хорошая модель производит предсказания, которые рассеиваются около линии.
predictedTestY = predict(originalMdl,testTbl); newPredictedTestY = predict(newMdl,newTestTbl); plot(testTbl.MPG,predictedTestY,".") hold on plot(testTbl.MPG,newPredictedTestY,".") hold on plot(testTbl.MPG,testTbl.MPG) hold off xlabel("True Miles Per Gallon (MPG)") ylabel("Predicted Miles Per Gallon (MPG)") legend(["Original Model Results","New Model Results","Reference Line"])

Используйте genrfeatures к новым возможностям инженера перед обучением сложенная в мешок модель регрессии ансамбля. Прежде, чем сделать предсказания на новых данных, примените те же преобразования функции к новому набору данных. Сравните эффективность набора тестов ансамбля, который использует спроектированные функции к эффективности набора тестов ансамбля, который использует исходные функции.
Считайте данные об отключении электроэнергии в рабочую область как таблица. Удалите наблюдения с отсутствующими значениями и отобразите первые несколько строк таблицы.
outages = readtable("outages.csv");
Tbl = rmmissing(outages);
head(Tbl)ans=8×6 table
Region OutageTime Loss Customers RestorationTime Cause
_____________ ________________ ______ __________ ________________ ___________________
{'SouthWest'} 2002-02-01 12:18 458.98 1.8202e+06 2002-02-07 16:50 {'winter storm' }
{'SouthEast'} 2003-02-07 21:15 289.4 1.4294e+05 2003-02-17 08:14 {'winter storm' }
{'West' } 2004-04-06 05:44 434.81 3.4037e+05 2004-04-06 06:10 {'equipment fault'}
{'MidWest' } 2002-03-16 06:18 186.44 2.1275e+05 2002-03-18 23:23 {'severe storm' }
{'West' } 2003-06-18 02:49 0 0 2003-06-18 10:54 {'attack' }
{'NorthEast'} 2003-07-16 16:23 239.93 49434 2003-07-17 01:12 {'fire' }
{'MidWest' } 2004-09-27 11:09 286.72 66104 2004-09-27 16:37 {'equipment fault'}
{'SouthEast'} 2004-09-05 17:48 73.387 36073 2004-09-05 20:46 {'equipment fault'}
Некоторые переменные, такие как OutageTime и RestorationTime, имейте типы данных, которые не поддерживаются функциями обучения модели регрессии как fitrensemble.
Разделите данные в наборы обучающих данных и наборы тестов. Используйте приблизительно 70% наблюдений как обучающие данные и 30% наблюдений как тестовые данные. Разделите данные с помощью cvpartition.
rng("default") % For reproducibility of the partition c = cvpartition(size(Tbl,1),Holdout=0.30); TrainTbl = Tbl(training(c),:); TestTbl = Tbl(test(c),:);
Используйте обучающие данные, чтобы генерировать 30 новых признаков, чтобы соответствовать уволенному ансамблю. По умолчанию 30 функций включают исходные функции, которые могут быть использованы как предикторы уволенным ансамблем.
[Transformer,NewTrainTbl] = genrfeatures(TrainTbl,"Loss",30, ... TargetLearner="bag"); Transformer
Transformer =
FeatureTransformer with properties:
Type: 'regression'
TargetLearner: 'bag'
NumEngineeredFeatures: 27
NumOriginalFeatures: 3
TotalNumFeatures: 30
Создайте NewTestTbl путем применения преобразований сохранен в объекте Transformer к тестовым данным.
NewTestTbl = transform(Transformer,TestTbl);
Обучите уволенный ансамбль, использующий исходный набор обучающих данных TrainTbl, и вычислите среднеквадратическую ошибку (MSE) модели на исходном наборе тестов TestTbl. Задайте только три переменных предиктора, которые могут использоваться fitrensemble (Region, Customers, и Cause), и не используйте два datetime переменные предикторы (OutageTime и RestorationTime). Затем обучите уволенный ансамбль, использующий преобразованный набор обучающих данных NewTrainTbl, и вычислите MSE модели на преобразованном наборе тестов NewTestTbl.
originalMdl = fitrensemble(TrainTbl,"Loss ~ Region + Customers + Cause", ... Method="bag"); originalTestMSE = loss(originalMdl,TestTbl)
originalTestMSE = 1.8999e+06
newMdl = fitrensemble(NewTrainTbl,"Loss",Method="bag"); newTestMSE = loss(newMdl,NewTestTbl)
newTestMSE = 1.8617e+06
newTestMSE меньше originalTestMSE, который предполагает, что уволенный ансамбль, обученный на преобразованных данных, выполняет немного лучше, чем уволенный ансамбль, обученный на исходных данных.
Сравните предсказанные значения отклика набора тестов с истинными значениями отклика для обеих моделей. Постройте журнал предсказанного ответа вдоль вертикальной оси и журнал истинного ответа (Loss) вдоль горизонтальной оси. Точки на ссылочной линии указывают на правильные предсказания. Хорошая модель производит предсказания, которые рассеиваются около линии.
predictedTestY = predict(originalMdl,TestTbl); newPredictedTestY = predict(newMdl,NewTestTbl); plot(log(TestTbl.Loss),log(predictedTestY),".") hold on plot(log(TestTbl.Loss),log(newPredictedTestY),".") hold on plot(log(TestTbl.Loss),log(TestTbl.Loss)) hold off xlabel("log(True Response)") ylabel("log(Predicted Response)") legend(["Original Model Results","New Model Results","Reference Line"], ... Location="southeast") xlim([-1 10]) ylim([-1 10])

Генерируйте признаки, чтобы обучить модель линейной регрессии. Вычислите среднеквадратическую ошибку (MSE) перекрестной проверки модели при помощи crossval функция.
Загрузите patients набор данных, и составляет таблицу, содержащую данные о предикторе.
load patients Tbl = table(Age,Diastolic,Gender,Height,SelfAssessedHealthStatus, ... Smoker,Weight);
Создайте случайный раздел для 5-кратной перекрестной проверки.
rng("default") % For reproducibility of the partition cvp = cvpartition(size(Tbl,1),KFold=5);
Вычислите перекрестную проверку MSE для модели линейной регрессии, обученной на исходных функциях в Tbl и Systolic переменная отклика.
CVMdl = fitrlinear(Tbl,Systolic,CVPartition=cvp); cvloss = kfoldLoss(CVMdl)
cvloss = 45.2594
Создайте пользовательский функциональный myloss (показанный в конце этого примера). Эта функция генерирует 20 признаков от обучающих данных, и затем применяет те же преобразования набора обучающих данных к тестовым данным. Функция затем подбирает модель линейной регрессии к обучающим данным и вычисляет набор тестов MSE.
Примечание: Если вы используете файл live скрипта для этого примера, myloss функция уже включена в конце файла. В противном случае необходимо создать эту функцию в конце.m файла или добавить его как файл на пути MATLAB®.
Вычислите перекрестную проверку MSE для линейной модели, обученной на признаках, генерированных от предикторов в Tbl.
newcvloss = mean(crossval(@myloss,Tbl,Systolic,Partition=cvp))
newcvloss = 26.7663
function testloss = myloss(TrainTbl,trainY,TestTbl,testY) [Transformer,NewTrainTbl] = genrfeatures(TrainTbl,trainY,20); NewTestTbl = transform(Transformer,TestTbl); Mdl = fitrlinear(NewTrainTbl,trainY); testloss = loss(Mdl,NewTestTbl,testY); end
Tbl — Исходные функцииИсходные функции в виде таблицы. Каждая строка Tbl соответствует одному наблюдению, и каждый столбец соответствует одному переменному предиктору. Опционально, Tbl может содержать один дополнительный столбец для переменной отклика. Многостолбцовые переменные и массивы ячеек кроме массивов ячеек из символьных векторов не позволены, но datetimeдлительность, и различный int переменные предикторы позволены.
Если Tbl содержит переменную отклика, и вы хотите создать новые возможности из любой из остающихся переменных в Tbl, затем задайте переменную отклика при помощи ResponseVarName.
Если Tbl содержит переменную отклика, и вы хотите создать новые возможности только из подмножества остающихся переменных в Tbl, затем задайте формулу при помощи formula.
Если Tbl не содержит переменную отклика, затем задает переменную отклика при помощи Y. Длина переменной отклика и количество строк в Tbl должно быть равным.
Типы данных: table
ResponseVarName — Имя переменной откликаTblИмя переменной отклика в виде имени переменной в Tbl.
Необходимо задать ResponseVarName как вектор символов или строковый скаляр. Например, если переменная отклика Y хранится как Tbl.Y, затем задайте его как 'Y'. В противном случае программное обеспечение обрабатывает все столбцы Tbl как предикторы, и может создать новые возможности из Y.
Типы данных: char | string
q — Количество функцийКоличество функций в виде положительного целочисленного скаляра. Например, можно установить q приблизительно к 1.5*size(Tbl,2), который является приблизительно 1,5 раза количеством исходных функций.
Типы данных: single | double
Y — Переменная откликаПеременная отклика в виде числового вектор-столбца. Y и Tbl должен иметь одинаковое число строк.
Типы данных: single | double
formula — Объяснительная модель переменной отклика и подмножество переменных предикторовОбъяснительная модель переменной отклика и подмножество переменных предикторов в виде вектора символов или строкового скаляра в форме "Y~X1+X2+X3". В этой форме, Y представляет переменную отклика и X1x2 , и X3 представляйте переменные предикторы.
Создать новые возможности только из подмножества переменных предикторов в Tbl, используйте формулу. Если вы задаете формулу, то программное обеспечение не создает новые возможности ни из каких переменных в Tbl это не появляется в formula.
Имена переменных в формуле должны быть оба именами переменных в Tbl (Tbl.Properties.VariableNames) и допустимый MATLAB® идентификаторы. Можно проверить имена переменных в Tbl при помощи isvarname функция. Если имена переменных не допустимы, то можно преобразовать их при помощи matlab.lang.makeValidName функция.
Типы данных: char | string
Задайте дополнительные пары аргументов как Name1=Value1,...,NameN=ValueN, где Name имя аргумента и Value соответствующее значение. Аргументы name-value должны появиться после других аргументов, но порядок пар не имеет значения.
genrfeatures(Tbl,"Response",10,TargetLearner="bag",FeatureSelection="oob") указывает, что ожидаемый тип ученика является сложенной в мешок моделью регрессии ансамбля, и метод для выбора функций является методом важности предиктора из сумки.TargetLearner — Ожидаемый тип ученика"linear" (значение по умолчанию) | "bag"Ожидаемый тип ученика в виде "linear" или "bag". Программное обеспечение создает и выбирает новые возможности, принимающие, что они будут использоваться, чтобы обучить этот тип модели.
| Значение | Ожидаемая модель |
|---|---|
"linear" | RegressionLinear |
"bag" | RegressionBaggedEnsemble |
Пример: TargetLearner="bag"
IncludeInputVariables — Метод для включения исходных функций в Tbl"auto" (значение по умолчанию) | "include" | "select" | "omit"Метод для включения исходных функций в Tbl в новой таблице NewTblВ виде одного из значений в этой таблице.
| Значение | Описание |
|---|---|
"auto" | Это значение эквивалентно:
|
"include" | Программное обеспечение включает исходные функции, которые могут быть использованы как предикторы целевым учеником и исключают функции, которые являются:
|
"select" | Программное обеспечение включает исходные функции, которые поддерживаются целевым учеником и считали важным заданным методом выбора признаков (FeatureSelectionMethod). |
"omit" | Программное обеспечение не использует исходные функции. |
Обратите внимание на то, что программное обеспечение применяет метод стандартизации, заданный TransformedDataStandardization аргумент значения имени к исходным функциям включен в NewTbl.
Пример: IncludeInputVariables="include"
FeatureSelectionMethod — Метод для выбора новых возможностей"auto" (значение по умолчанию) | "oob" | "mrmr" | "lasso"Метод для выбора новых возможностей в виде одного из значений в этой таблице. Программное обеспечение генерирует много признаков и использует этот метод, чтобы выбрать важные функции, чтобы включать в NewTbl.
| Значение | Описание |
|---|---|
"auto" | Это значение эквивалентно:
|
"oob" | Из сумки важность предиктора оценивает сочетанием — Доступный когда TargetLearner "bag" |
"mrmr" | Минимальная уместность максимума сокращения (MRMR) — Доступный, когда TargetLearner "linear" или "bag" |
"lasso" | Ловите арканом регуляризацию — Доступный когда TargetLearner "linear" |
Пример: FeatureSelection="mrmr"
TransformedDataStandardization — Метод стандартизации для преобразованных данных"auto" (значение по умолчанию) | "none" | "zscore" | "mad" | "range"Метод стандартизации для преобразованных данных в виде одного из значений в этой таблице. Программное обеспечение применяет этот метод стандартизации и к спроектированным функциям и к исходным функциям.
| Значение | Описание |
|---|---|
"auto" | Это значение эквивалентно:
|
"none" | Используйте необработанные данные |
"zscore" | Центр и шкала, чтобы иметь среднее значение 0 и стандартное отклонение 1 |
"mad" | Центр и шкала, чтобы иметь средний 0 и среднее абсолютное отклонение 1 |
"range" | Диапазон шкалы данных к [0,1] |
Пример: TransformedDataStandardization="range"
CategoricalEncodingLimit — Максимальное количество категорий позволено в категориальном предиктореInfМаксимальное количество категорий позволено в категориальном предикторе в виде неотрицательного целочисленного скаляра. Если категориальный предиктор имеет больше, чем конкретное количество категорий, то genrfeatures не создает новые возможности из предиктора и исключает предиктор из новой таблицы NewTbl. Значением по умолчанию является 50 когда TargetLearner "linear" и Inf когда TargetLearner "bag".
Пример: CategoricalEncodingLimit=20
Типы данных: single | double
Transformer — Спроектированный трансформатор функцииFeatureTransformer объектСпроектированный трансформатор функции, возвращенный как FeatureTransformer объект. Чтобы лучше изучить спроектированные функции, используйте describe объектная функция Transformer. Чтобы применить те же преобразования функции на новый набор данных, используйте transform объектная функция Transformer.
NewTbl — Генерированные признакиГенерированные признаки, возвращенные как таблица. Каждая строка соответствует наблюдению, и каждый столбец соответствует генерированному признаку. Если переменная отклика включена в Tbl, затем NewTbl также включает переменную отклика. Используйте эту таблицу, чтобы обучить модель регрессии типа TargetLearner.
NewTbl содержит генерированные признаки в следующем порядке: исходные функции, спроектированные функции, как оценивается методом выбора признаков и переменной отклика.
По умолчанию, когда TargetLearner "linear", программное обеспечение генерирует новые признаки от числовых предикторов при помощи z-баллов (см. TransformedDataStandardization). Можно изменить тип стандартизации для преобразованных функций. Однако с помощью некоторого метода стандартизации, таким образом, избегая "none" спецификация, строго рекомендуется. Линейный подбор кривой модели работает лучше всего со стандартизированными данными.
FeatureTransformer | describe | transform | fitrlinear | fitrensemble | plotPartialDependence | gencfeatures
У вас есть модифицированная версия этого примера. Вы хотите открыть этот пример со своими редактированиями?
1. Если смысл перевода понятен, то лучше оставьте как есть и не придирайтесь к словам, синонимам и тому подобному. О вкусах не спорим.
2. Не дополняйте перевод комментариями “от себя”. В исправлении не должно появляться дополнительных смыслов и комментариев, отсутствующих в оригинале. Такие правки не получится интегрировать в алгоритме автоматического перевода.
3. Сохраняйте структуру оригинального текста - например, не разбивайте одно предложение на два.
4. Не имеет смысла однотипное исправление перевода какого-то термина во всех предложениях. Исправляйте только в одном месте. Когда Вашу правку одобрят, это исправление будет алгоритмически распространено и на другие части документации.
5. По иным вопросам, например если надо исправить заблокированное для перевода слово, обратитесь к редакторам через форму технической поддержки.