Выполните автоматизированную разработку функции для классификации
gencfeatures
функция позволяет вам автоматизировать процесс разработки функции в контексте рабочего процесса машинного обучения. Прежде, чем передать табличные обучающие данные классификатору, можно создать новые возможности из предикторов в данных при помощи gencfeatures
. Используйте возвращенные данные, чтобы обучить классификатор.
gencfeatures
позволяет вам генерировать признаки от переменных с типами данных — такими как datetime
длительность
, и различный int
типы — которые не поддерживаются большинством функций обучения классификатора. Получившиеся функции имеют типы данных, которые поддерживаются этими учебными функциями.
Чтобы лучше изучить генерированные признаки, используйте describe
функция возвращенного FeatureTransformer
объект. Чтобы применить те же преобразования функции набора обучающих данных к набору тестов, используйте transform
функция FeatureTransformer
объект.
[
использование автоматизировало разработку функции, чтобы создать Transformer
,NewTbl
] = gencfeatures(Tbl
,ResponseVarName
,q
)q
функции от предикторов в Tbl
. Программное обеспечение принимает что ResponseVarName
переменная в Tbl
ответ и не создает новые возможности из этой переменной. gencfeatures
возвращает FeatureTransformer
объект (Transformer
) и новая таблица (NewTbl
) это содержит преобразованные функции.
По умолчанию, gencfeatures
принимает, что генерированные функции используются, чтобы обучить поддающуюся толкованию линейную модель с бинарной переменной отклика. Если у вас есть переменная отклика мультикласса, и вы хотите генерировать признаки, чтобы улучшить точность уволенного ансамбля, задать TargetLearner="bag"
.
[
принимает что векторный Transformer
,NewTbl
] = gencfeatures(Tbl
,Y
,q
)Y
переменная отклика и создает новые возможности из переменных в Tbl
.
[
использует объяснительную модель Transformer
,NewTbl
] = gencfeatures(Tbl
,formula
,q
)formula
определить переменную отклика в Tbl
и подмножество Tbl
предикторы, из которых можно создать новые возможности.
[
задает опции с помощью одних или нескольких аргументов name-value в дополнение к любой из комбинаций входных аргументов в предыдущих синтаксисах. Например, можно изменить ожидаемый тип ученика, метод для выбора новых возможностей и метода стандартизации для преобразованных данных.Transformer
,NewTbl
] = gencfeatures(___,Name=Value
)
Используйте автоматизированную разработку функции, чтобы генерировать новые признаки. Обучите линейный классификатор, использующий генерированные признаки. Интерпретируйте отношение между генерированными признаками и обученной моделью.
Загрузите patients
набор данных. Составьте таблицу от подмножества переменных. Отобразите первые несколько строк таблицы.
load patients Tbl = table(Age,Diastolic,Gender,Height,SelfAssessedHealthStatus, ... Systolic,Weight,Smoker); head(Tbl)
ans=8×8 table
Age Diastolic Gender Height SelfAssessedHealthStatus Systolic Weight Smoker
___ _________ __________ ______ ________________________ ________ ______ ______
38 93 {'Male' } 71 {'Excellent'} 124 176 true
43 77 {'Male' } 69 {'Fair' } 109 163 false
38 83 {'Female'} 64 {'Good' } 125 131 false
40 75 {'Female'} 67 {'Fair' } 117 133 false
49 80 {'Female'} 64 {'Good' } 122 119 false
46 70 {'Female'} 68 {'Good' } 121 142 false
33 88 {'Female'} 64 {'Good' } 130 142 true
40 82 {'Male' } 68 {'Good' } 115 180 false
Генерируйте 10 новых признаков от переменных в Tbl
. Задайте Smoker
переменная как ответ. По умолчанию, gencfeatures
принимает, что новые функции будут использованы, чтобы обучить бинарный линейный классификатор.
rng("default") % For reproducibility [T,NewTbl] = gencfeatures(Tbl,"Smoker",10)
T = FeatureTransformer with properties: Type: 'classification' TargetLearner: 'linear' NumEngineeredFeatures: 10 NumOriginalFeatures: 0 TotalNumFeatures: 10
NewTbl=100×11 table
zsc(Systolic.^2) eb8(Diastolic) q8(Systolic) eb8(Systolic) q8(Diastolic) zsc(kmd9) zsc(sin(Age)) zsc(sin(Weight)) zsc(Height-Systolic) zsc(kmc1) Smoker
________________ ______________ ____________ _____________ _____________ _________ _____________ ________________ ____________________ _________ ______
0.15379 8 6 4 8 -1.7207 0.50027 0.19202 0.40418 0.76177 true
-1.9421 2 1 1 2 -0.22056 -1.1319 -0.4009 2.3431 1.1617 false
0.30311 4 6 5 5 0.57695 0.50027 -1.037 -0.78898 -1.4456 false
-0.85785 2 2 2 2 0.83391 1.1495 1.3039 0.85162 -0.010294 false
-0.14125 3 5 4 4 1.779 -1.3083 -0.42387 -0.34154 0.99368 false
-0.28697 1 4 3 1 0.67326 1.3761 -0.72529 0.40418 1.3755 false
1.0677 6 8 6 6 -0.42521 1.5181 -0.72529 -1.5347 -1.4456 true
-1.1361 4 2 2 5 -0.79995 1.1495 -1.0225 1.2991 1.1617 false
-1.1361 3 2 2 3 -0.80136 0.46343 1.0806 1.2991 -1.208 false
-0.71693 5 3 3 6 0.37961 -0.51304 0.16741 0.55333 -1.4456 false
-1.2734 2 1 1 2 1.2572 1.3025 1.0978 1.4482 -0.010294 false
-1.1361 1 2 2 1 1.001 -1.2545 -1.2194 1.0008 -0.010294 false
0.60534 1 6 5 1 -0.98493 -0.11998 -1.211 -0.043252 -1.208 false
1.0677 8 8 6 8 -0.27307 1.4659 1.2168 -0.34154 0.24706 true
-1.2734 3 1 1 4 0.93395 -1.3633 -0.17603 1.0008 -0.010294 false
1.0677 7 8 6 8 -0.91396 -1.04 -1.2109 -0.49069 0.24706 true
⋮
T
FeatureTransformer
объект, который может использоваться, чтобы преобразовать новые данные и newTbl
содержит новые признаки, генерированные от Tbl
данные.
Чтобы лучше изучить генерированные признаки, используйте describe
объектная функция FeatureTransformer
объект. Например, смотрите первые два генерированных признака.
describe(T,1:2)
Type IsOriginal InputVariables Transformations ___________ __________ ______________ _______________________________________________________________ zsc(Systolic.^2) Numeric false Systolic power( ,2) Standardization with z-score (mean = 15119.54, std = 1667.5858) eb8(Diastolic) Categorical false Diastolic Equal-width binning (number of bins = 8)
Первая функция в newTbl
числовая переменная, созданная первой обработкой на квадрат значениям Systolic
переменная и затем преобразование результатов к z-баллам. Вторая функция в newTbl
категориальная переменная, созданная раскладыванием значения Diastolic
переменная в 8 интервалов равной ширины.
Используйте генерированные признаки, чтобы соответствовать линейному классификатору без любой регуляризации.
Mdl = fitclinear(NewTbl,"Smoker",Lambda=0);
Постройте коэффициенты предикторов, используемых, чтобы обучить Mdl
. Обратите внимание на то, что fitclinear
расширяет категориальные предикторы прежде, чем подобрать модель.
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 = 1x7 cell
Columns 1 through 3
{'zsc(Systolic.^2)'} {'eb8(Systolic) ...'} {'q8(Diastolic) ...'}
Columns 4 through 6
{'eb8(Diastolic)...'} {'q8(Systolic) >= 6'} {'q8(Diastolic) ...'}
Column 7
{'zsc(Height-Sys...'}
Можно использовать частичные графики зависимости анализировать категориальные функции, уровни которых имеют большие коэффициенты в терминах абсолютного значения. Например, смотрите частичный график зависимости для q8(Diastolic)
переменная, чьи уровни q8(Diastolic) >= 3
и q8(Diastolic) >= 6
имейте коэффициенты с большими абсолютными значениями. Эти два уровня соответствуют значимым изменениям в предсказанных баллах.
plotPartialDependence(Mdl,"q8(Diastolic)",Mdl.ClassNames,NewTbl);
Генерируйте новые признаки, чтобы улучшить точность модели для поддающейся толкованию линейной модели. Сравните точность набора тестов линейной модели, обученной на исходных данных с точностью набора тестов линейной модели, обученной на преобразованных функциях.
Загрузите ionosphere
набор данных. Преобразуйте матрицу предикторов X
к таблице.
load ionosphere
tbl = array2table(X);
Разделите данные в наборы обучающих данных и наборы тестов. Используйте приблизительно 70% наблюдений как обучающие данные и 30% наблюдений как тестовые данные. Разделите данные с помощью cvpartition
.
rng("default") % For reproducibility of the partition cvp = cvpartition(Y,Holdout=0.3); trainIdx = training(cvp); trainTbl = tbl(training(cvp),:); trainY = Y(trainIdx); testIdx = test(cvp); testTbl = tbl(testIdx,:); testY = Y(testIdx);
Используйте обучающие данные, чтобы генерировать 45 новых признаков. Смотрите возвращенный FeatureTransformer
объект.
[T,newTrainTbl] = gencfeatures(trainTbl,trainY,45); T
T = FeatureTransformer with properties: Type: 'classification' TargetLearner: 'linear' NumEngineeredFeatures: 45 NumOriginalFeatures: 0 TotalNumFeatures: 45
Все генерированные признаки спроектированы функции, а не исходные функции в trainTbl
.
Примените преобразования, сохраненные в объекте T
к тестовым данным.
newTestTbl = transform(T,testTbl);
Сравните эффективность набора тестов линейного классификатора, обученного на исходных функциях и линейного классификатора, обученного на новых возможностях.
Подбирайте линейную модель, не преобразовывая данные. Проверяйте эффективность набора тестов модели с помощью матрицы беспорядка.
originalMdl = fitclinear(trainTbl,trainY); originalPredictedLabels = predict(originalMdl,testTbl); cm = confusionchart(testY,originalPredictedLabels);
confusionMatrix = cm.NormalizedValues;
originalTestAccuracy = sum(diag(confusionMatrix))/sum(confusionMatrix,"all")
originalTestAccuracy = 0.8952
Подбирайте линейную модель с преобразованными данными. Проверяйте эффективность набора тестов модели с помощью матрицы беспорядка.
newMdl = fitclinear(newTrainTbl,trainY); newPredictedLabels = predict(newMdl,newTestTbl); newcm = confusionchart(testY,newPredictedLabels);
newConfusionMatrix = newcm.NormalizedValues;
newTestAccuracy = sum(diag(newConfusionMatrix))/sum(newConfusionMatrix,"all")
newTestAccuracy = 0.9048
Линейный классификатор, обученный на преобразованных данных, кажется, превосходит по характеристикам линейный классификатор, обученный на исходных данных.
Используйте gencfeatures
к новым возможностям инженера перед обучением сложенный в мешок классификатор ансамбля. Прежде, чем сделать предсказания на новых данных, примените те же преобразования функции к новому набору данных. Сравните эффективность набора тестов ансамбля, который использует спроектированные функции к эффективности набора тестов ансамбля, который использует исходные функции.
Считайте файл примера CreditRating_Historical.dat
в таблицу. Данные о предикторе состоят из финансовых отношений и информации об отрасли промышленности для списка корпоративных клиентов. Переменная отклика состоит из кредитных рейтингов, присвоенных рейтинговым агентством. Предварительно просмотрите первые несколько строк набора данных.
creditrating = readtable("CreditRating_Historical.dat");
head(creditrating)
ans=8×8 table
ID WC_TA RE_TA EBIT_TA MVE_BVTD S_TA Industry Rating
_____ ______ ______ _______ ________ _____ ________ _______
62394 0.013 0.104 0.036 0.447 0.142 3 {'BB' }
48608 0.232 0.335 0.062 1.969 0.281 8 {'A' }
42444 0.311 0.367 0.074 1.935 0.366 1 {'A' }
48631 0.194 0.263 0.062 1.017 0.228 4 {'BBB'}
43768 0.121 0.413 0.057 3.647 0.466 12 {'AAA'}
39255 -0.117 -0.799 0.01 0.179 0.082 4 {'CCC'}
62236 0.087 0.158 0.049 0.816 0.324 2 {'BBB'}
39354 0.005 0.181 0.034 2.597 0.388 7 {'AA' }
Поскольку каждое значение в ID
переменная является уникальным идентификатором клиента, то есть, length(unique(creditrating.ID))
равно количеству наблюдений в creditrating
, ID
переменная является плохим предиктором. Удалите ID
переменная из таблицы, и преобразует Industry
переменная к categorical
переменная.
creditrating = removevars(creditrating,"ID");
creditrating.Industry = categorical(creditrating.Industry);
Преобразуйте Rating
переменная отклика к порядковому categorical
переменная.
creditrating.Rating = categorical(creditrating.Rating, ... ["AAA","AA","A","BBB","BB","B","CCC"],Ordinal=true);
Разделите данные в наборы обучающих данных и наборы тестов. Используйте приблизительно 75% наблюдений как обучающие данные и 25% наблюдений как тестовые данные. Разделите данные с помощью cvpartition
.
rng("default") % For reproducibility of the partition c = cvpartition(creditrating.Rating,Holdout=0.25); trainingIndices = training(c); % Indices for the training set testIndices = test(c); % Indices for the test set creditTrain = creditrating(trainingIndices,:); creditTest = creditrating(testIndices,:);
Используйте обучающие данные, чтобы генерировать 40 новых признаков, чтобы соответствовать уволенному ансамблю. По умолчанию 40 функций включают исходные функции, которые могут быть использованы как предикторы уволенным ансамблем.
[T,newCreditTrain] = gencfeatures(creditTrain,"Rating",40, ... TargetLearner="bag"); T
T = FeatureTransformer with properties: Type: 'classification' TargetLearner: 'bag' NumEngineeredFeatures: 34 NumOriginalFeatures: 6 TotalNumFeatures: 40
Создайте newCreditTest
путем применения преобразований сохранен в объекте T
к тестовым данным.
newCreditTest = transform(T,creditTest);
Сравните эффективность набора тестов уволенного ансамбля, обученного на исходных функциях и уволенного ансамбля, обученного на новых возможностях.
Обучите уволенный ансамбль, использующий исходный набор обучающих данных creditTrain
. Вычислите точность модели на исходном наборе тестов creditTest
. Визуализируйте результаты с помощью матрицы беспорядка.
originalMdl = fitcensemble(creditTrain,"Rating",Method="Bag"); originalTestAccuracy = 1 - loss(originalMdl,creditTest, ... "Rating",LossFun="classiferror")
originalTestAccuracy = 0.7491
predictedTestLabels = predict(originalMdl,creditTest); confusionchart(creditTest.Rating,predictedTestLabels);
Обучите уволенный ансамбль, использующий преобразованный набор обучающих данных newCreditTrain
. Вычислите точность модели на преобразованном наборе тестов newCreditTest
. Визуализируйте результаты с помощью матрицы беспорядка.
newMdl = fitcensemble(newCreditTrain,"Rating",Method="Bag"); newTestAccuracy = 1 - loss(newMdl,newCreditTest, ... "Rating",LossFun="classiferror")
newTestAccuracy = 0.7512
newPredictedTestLabels = predict(newMdl,newCreditTest); confusionchart(newCreditTest.Rating,newPredictedTestLabels)
Уволенный ансамбль, обученный на преобразованных данных, кажется, превосходит по характеристикам уволенный ансамбль, обученный на исходных данных.
Генерируйте признаки, чтобы обучить линейный классификатор. Вычислите ошибку классификации перекрестных проверок модели при помощи crossval
функция.
Загрузите ionosphere
набор данных, и составляет таблицу, содержащую данные о предикторе.
load ionosphere
Tbl = array2table(X);
Создайте случайный раздел для стратифицированной 5-кратной перекрестной проверки.
rng("default") % For reproducibility of the partition cvp = cvpartition(Y,KFold=5);
Вычислите потерю классификации перекрестных проверок для линейной модели, обученной на исходных функциях в Tbl
.
CVMdl = fitclinear(Tbl,Y,CVPartition=cvp); cvloss = kfoldLoss(CVMdl)
cvloss = 0.1339
Создайте пользовательский функциональный myloss
(показанный в конце этого примера). Эта функция генерирует 20 признаков от обучающих данных, и затем применяет те же преобразования набора обучающих данных к тестовым данным. Функция затем соответствует линейному классификатору к обучающим данным и вычисляет потерю набора тестов.
Примечание: Если вы используете файл live скрипта для этого примера, myloss
функция уже включена в конце файла. В противном случае необходимо создать эту функцию в конце.m файла или добавить его как файл на пути MATLAB®.
Вычислите потерю классификации перекрестных проверок для линейной модели, обученной на признаках, генерированных от предикторов в Tbl
.
newcvloss = mean(crossval(@myloss,Tbl,Y,Partition=cvp))
newcvloss = 0.0657
function testloss = myloss(TrainTbl,trainY,TestTbl,testY) [Transformer,NewTrainTbl] = gencfeatures(TrainTbl,trainY,20); NewTestTbl = transform(Transformer,TestTbl); Mdl = fitclinear(NewTrainTbl,trainY); testloss = loss(Mdl,NewTestTbl,testY, ... LossFun="classiferror"); 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
| logical
| string
| cell
| categorical
formula
— Объяснительная модель переменной отклика и подмножество переменных предикторовОбъяснительная модель переменной отклика и подмножество переменных предикторов в виде вектора символов или строкового скаляра в форме "Y~X1+X2+X3"
. В этой форме, Y
представляет переменную отклика и X1
x2
, и X3
представляйте переменные предикторы.
Создать новые возможности только из подмножества переменных предикторов в Tbl
, используйте формулу. Если вы задаете формулу, то программное обеспечение не создает новые возможности ни из каких переменных в Tbl
это не появляется в formula
.
Имена переменных в формуле должны быть оба именами переменных в Tbl
(Tbl.Properties.VariableNames
) и допустимый MATLAB® идентификаторы. Можно проверить имена переменных в Tbl
при помощи isvarname
функция. Если имена переменных не допустимы, то можно преобразовать их при помощи matlab.lang.makeValidName
функция.
Типы данных: char |
string
Задайте дополнительные пары аргументов как Name1=Value1,...,NameN=ValueN
, где Name
имя аргумента и Value
соответствующее значение. Аргументы name-value должны появиться после других аргументов, но порядок пар не имеет значения.
gencfeatures(Tbl,"Response",10,TargetLearner="bag",FeatureSelection="oob")
указывает, что ожидаемый тип ученика является сложенным в мешок классификатором ансамбля, и метод для выбора функций является методом важности предиктора из сумки.TargetLearner
— Ожидаемый тип ученика"linear"
(значение по умолчанию) | "bag"
Ожидаемый тип ученика в виде "linear"
или "bag"
. Программное обеспечение создает и выбирает новые возможности, принимающие, что они будут использоваться, чтобы обучить этот тип модели.
Значение | Ожидаемая модель |
---|---|
"linear" | ClassificationLinear — Подходящий для бинарной классификации только |
"bag" | ClassificationBaggedEnsemble — Подходящий для двоичного файла и классификации мультиклассов |
По умолчанию, TargetLearner
"linear"
, который поддерживает бинарные переменные отклика только. Если у вас есть переменная отклика мультикласса, и вы хотите генерировать новые признаки, необходимо установить TargetLearner
к "bag"
.
Пример: 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
Максимальное количество категорий позволено в категориальном предикторе в виде неотрицательного целочисленного скаляра. Если категориальный предиктор имеет больше, чем конкретное количество категорий, то gencfeatures
не создает новые возможности из предиктора и исключает предиктор из новой таблицы 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
| fitclinear
| fitcensemble
| plotPartialDependence
| genrfeatures
У вас есть модифицированная версия этого примера. Вы хотите открыть этот пример со своими редактированиями?
1. Если смысл перевода понятен, то лучше оставьте как есть и не придирайтесь к словам, синонимам и тому подобному. О вкусах не спорим.
2. Не дополняйте перевод комментариями “от себя”. В исправлении не должно появляться дополнительных смыслов и комментариев, отсутствующих в оригинале. Такие правки не получится интегрировать в алгоритме автоматического перевода.
3. Сохраняйте структуру оригинального текста - например, не разбивайте одно предложение на два.
4. Не имеет смысла однотипное исправление перевода какого-то термина во всех предложениях. Исправляйте только в одном месте. Когда Вашу правку одобрят, это исправление будет алгоритмически распространено и на другие части документации.
5. По иным вопросам, например если надо исправить заблокированное для перевода слово, обратитесь к редакторам через форму технической поддержки.