이번역페이지는최신내용을담고있지않습니다。최신내용을문으로보려면여기를클릭하십시오。
fitrsvm
서포트벡터머신회귀모델피팅
구문
설명
fitrsvm
은저차원에서중간차원까지의예측변수데이터세트에대해서포트벡터머신(SVM)회귀모델을훈련시키거나교차검증합니다。fitrsvm
은커널함수를사용하여예측변수데이터를매핑하는것을지원합니다。또한SMO, ISDA또는목적함수최소화를위한차2계획법을사용하는L1소프트마진최소화를지원합니다。
고차원데이터세트,즉많은예측변수를포함하는데이터세트에대해선형SVM회귀모델을훈련시키려면fitrlinear
를대신사용하십시오。
이진분류를위해SVM모델을훈련시키려면저차원에서중간차원까지의예측변수데이터세트의경우fitcsvm
을참조하고고차원데이터세트의경우fitclinear
를참조하십시오。
은 테이블Mdl
= fitrsvm (资源描述
,ResponseVarName
)资源描述
에포함된예측변수값과资源描述。ResponseVarName
에포함된응답변수값을사용하여훈련된전체서포트벡터머신(svm)회귀모델Mdl
을반환합니다。
예제
선형서포트벡터머신회귀모델훈련시키기
행렬에저장된표본데이터를사용하여서포트벡터머신(SVM)회귀모델을훈련시킵니다。
carsmall
데이터세트를불러옵니다。
负载carsmallrng“默认”%用于再现性
马力
와重量
를예측변수(X
)로지정하고英里/加仑
를응답변수(Y
)로지정합니다。
X =[马力,重量];Y = mpg;
디폴트支持向量机회귀모델을훈련시킵니다。
Mdl = fitrsvm(X,Y)
Mdl = RegressionSVM ResponseName: 'Y' CategoricalPredictors: [] ResponseTransform: 'none' Alpha: [75x1 double] Bias: 57.3958 KernelParameters: [1x1 struct] NumObservations: 93 BoxConstraints: [93x1 double] ConvergenceInfo: [1x1 struct] Is万博1manbetxSupportVector: [93x1 logical] Solver: 'SMO' Properties, Methods
Mdl
은 훈련된RegressionSVM
모델입니다。
모델이수렴하는지확합니다。
Mdl.ConvergenceInfo.Converged
ans =逻辑0
0
은모델이수렴하지않았음을나타냅니다。
준화된데이터를사용하여모델을다시훈련시킵니다。
MdlStd = fitrsvm(X,Y,“标准化”,真正的)
MdlStd = RegressionSVM ResponseName: 'Y' CategoricalPredictors: [] ResponseTransform: 'none' Alpha: [77x1 double] Bias: 22.9131 KernelParameters: [1x1 struct] Mu: [109.3441 2.9625e+03] Sigma: [45.3545 805.9668] NumObservations: 93 BoxConstraints: [93x1 double] ConvergenceInfo: [1x1 struct] Is万博1manbetxSupportVector: [93x1 logical] Solver: 'SMO' Properties, Methods
모델이수렴하는지확합니다。
MdlStd.ConvergenceInfo.Converged
ans =逻辑1
1
은모델이수렴했음을나타냅니다。
새모델에대해재대입(본내)평균제곱오차를계산합니다。
lStd = resubLoss(MdlStd)
lStd = 17.0256
서포트벡터머신회귀모델훈련시키기
UCI机器学习库의전복데이터를사용하여서포트벡터머신회귀모델을훈련시킵니다。
데이터를다운로드한후“abalone.csv”
라는이름으로현재폴더에저장합니다。
url =“https://archive.ics.uci.edu/ml/machine-learning-databases/abalone/abalone.data”;websave (“abalone.csv”url);
데이터를테이블에읽어들입니다。변수이름을지정합니다。
Varnames = {“性”;“长度”;“直径”;“高度”;“Whole_weight”;...“Shucked_weight”;“Viscera_weight”;“Shell_weight”;“戒指”};Tbl =可读(“abalone.csv”,“文件类型”,“文本”,“ReadVariableNames”、假);Tbl.Properties.VariableNames = varnames;
` ` ` ` ` `본데이터는4177개의관측값을포함합니다。모든예측변수는性
를제외하고모두연속형변수입니다。性는가능한값으로“米”
(수컷),“F”
(암컷),“我”
(유생)를갖는범주형변수입니다。전복껍질에새겨진원형무늬의개수(环
에저장되어있음)를예측하고물리적측정값을사용하여나이를확marketing하는것이목적입니다。
자동커널스케일을갖는가우스커널함수를사용하여支持向量机회귀모델을훈련시킵니다。데이터를@ @준화합니다。
rng默认的%用于再现性Mdl = fitrsvm(Tbl,“戒指”,“KernelFunction”,“高斯”,“KernelScale”,“汽车”,...“标准化”,真正的)
Mdl = RegressionSVM PredictorNames:{'性别' '长度' '直径' '高度' 'Whole_weight' 'Shucked_weight' ' a_weight' 'Shell_weight'} ResponseName: 'Rings'分类预测:1 ResponseTransform: 'none' Alpha: [3635×1 double]偏差:10.8144 KernelParameters: [1×1 struct] Mu: [0 0 0 0 0.5240 0.4079 0.1395 0.8287 0.3594 0.1806 0.2388] Sigma: [1 1 1 1 0.1201 0.0992 0.0418 0.4904 0.2220 0.1096 0.1392] NumObservations: 4177 BoxConstraints: [4177×1 double] ConvergenceInfo:[1×1 struct] Is万博1manbetxSupportVector: [4177×1 logical] Solver: 'SMO'属性,方法
명령 창에Mdl
이 훈련된RegressionSVM
모델로` ` `시되고속성목록이` ` ` `시됩니다。
점@ @기법을사용하여Mdl
의속성을@ @시합니다。예를들어,모델이수렴했는지여부와모델이몇회의반복을완료했는지를확marketing합니다。
conv = mll . convergenceinfo . converged
conv =逻辑1
iter = Mdl。NumIterations
Iter = 2759
반환된결과는모델이2759회반복후에수렴했음을나타냅니다。
支持向量机회귀모델교차검하기
carsmall
데이터세트를불러옵니다。
负载carsmallrng“默认”%用于再现性
马力
와重量
를예측변수(X
)로지정하고英里/加仑
를응답변수(Y
)로지정합니다。
X =[马力重量];Y = mpg;
5겹교차검을사용하여2개의SVM회귀모델을교차검합니다。두모델에대해예측변수를@ @준화하도록지정합니다。한모델은디폴트선형커널을사용하여훈련하도록지정하고,다른한모델은가우스커널을사용하도록지정합니다。
MdlLin = fitrsvm(X,Y,“标准化”,真的,“KFold”5)
MdlLin = RegressionPartitionedSVM CrossValidatedModel: 'SVM' PredictorNames: {'x1' 'x2'} ResponseName: 'Y' NumObservations: 94 KFold: 5 Partition: [1x1 cvpartition] ResponseTransform: 'none'属性,方法
MdlGau = fitrsvm(X,Y,“标准化”,真的,“KFold”5,“KernelFunction”,“高斯”)
MdlGau = RegressionPartitionedSVM CrossValidatedModel: 'SVM' PredictorNames: {'x1' 'x2'} ResponseName: 'Y' NumObservations: 94 KFold: 5 Partition: [1x1 cvpartition] ResponseTransform: 'none'属性,方法
MdlLin。训练有素的
ans =5×1单元格数组{1 x1 classreg.learning.regr。CompactRegressionSVM} {1x1 classreg.learning.regr.CompactRegressionSVM} {1x1 classreg.learning.regr.CompactRegressionSVM} {1x1 classreg.learning.regr.CompactRegressionSVM} {1x1 classreg.learning.regr.CompactRegressionSVM}
MdlLin
과MdlGau
는RegressionPartitionedSVM
교차검된모델입니다。각 모델의训练有素的
속성은CompactRegressionSVM
모델로구성된5×1셀형배열입니다。셀에포함된모델은1겹관측값을빼고4겹관측값에대해훈련한결과를저장합니다。
두모델의일반화오차를비교합니다。이경우일반화오차는@ @본외평균제곱오차입니다。
mseLin = kfoldLoss(MdlLin)
mseLin = 17.4417
mseGau = kfoldLoss(MdlGau)
mseGau = 16.7355
가우스커널을사용한支持向量机회귀모델이선형커널을사용한모델보다성능이낫습니다。
전체데이터세트를fitrsvm
으로전달하여예측을수행하는데적합한모델을만들고,모델성능을더좋게만들었던모든이름——값쌍의인수를지정합니다。단,교차검옵션은지정하지않습니다。
MdlGau = fitrsvm(X,Y,“标准化”,真的,“KernelFunction”,“高斯”);
차량집합의mpg를예측하기위해차량의마력및중량측정값을포함하는테이블과Mdl
을预测
에전달합니다。
支持向量机회귀최적화하기
이예제에서는fitrsvm
을사용하여자동으로하이퍼파라미터를최적화하는방법을보여줍니다。이예제에서는carsmall
데이터를사용합니다。
carsmall
데이터세트를불러옵니다。
负载carsmall
马力
와重量
를예측변수(X
)로지정하고英里/加仑
를응답변수(Y
)로지정합니다。
X =[马力重量];Y = mpg;
자동하이퍼파라미터최적화를사용하여5겹교차검증손실을최소화하는하이퍼파라미터를구합니다。
재현이가능하도록난수시드값을설정하고“expected-improvement-plus”
획득함수를사용합니다。
rng默认的Mdl = fitrsvm(X,Y,“OptimizeHyperparameters”,“汽车”,...“HyperparameterOptimizationOptions”结构(“AcquisitionFunctionName”,...“expected-improvement-plus”))
|====================================================================================================================| | Iter | Eval |目的:| |目的BestSoFar | BestSoFar | BoxConstraint | KernelScale |ε| | | |结果日志(1 +损失)运行时| | | (estim(观察) .) | | | | |====================================================================================================================| | 最好1 | | 6.8077 | 12.222 | 6.8077 | 6.8077 | 0.35664 | 0.043031 | 0.30396 | | 2 |最好| 2.9108 | 0.32852 | 2.9108 | 3.1259 | 70.67 | 710.65 | 1.6369 | | 3 |接受| 4.1884 | 0.12804 | 2.9108 | 3.1211 | 14.367 | 0.0059144 | 442.64 ||4 | Accept | 4.159 | 0.12821 | 2.9108 | 3.0773 | 0.0030879 | 715.31 | 2.6045 | | 5 | Best | 2.902 | 0.26455 | 2.902 | 2.9015 | 969.07 | 703.1 | 0.88614 | | 6 | Accept | 4.1884 | 0.10254 | 2.902 | 2.9017 | 993.93 | 919.26 | 22.16 | | 7 | Accept | 2.9307 | 0.15511 | 2.902 | 2.9018 | 219.88 | 613.28 | 0.015526 | | 8 | Accept | 2.9537 | 0.64234 | 2.902 | 2.9017 | 905.17 | 395.74 | 0.021914 | | 9 | Accept | 2.9073 | 0.1834 | 2.902 | 2.9017 | 24.242 | 647.2 | 0.17855 | | 10 | Accept | 2.9044 | 0.51973 | 2.902 | 2.9017 | 117.27 | 173.98 | 0.73387 | | 11 | Accept | 2.9035 | 0.17072 | 2.902 | 2.9016 | 1.3516 | 131.19 | 0.0093404 | | 12 | Accept | 4.0917 | 0.12211 | 2.902 | 2.902 | 0.012201 | 962.58 | 0.0092777 | | 13 | Accept | 2.9525 | 1.1148 | 2.902 | 2.902 | 77.38 | 65.508 | 0.0093299 | | 14 | Accept | 2.9352 | 0.17607 | 2.902 | 2.9019 | 21.591 | 166.43 | 0.035214 | | 15 | Accept | 2.9341 | 0.13887 | 2.902 | 2.9019 | 45.286 | 207.56 | 0.009379 | | 16 | Accept | 2.9104 | 0.10035 | 2.902 | 2.9018 | 0.064315 | 23.313 | 0.0093341 | | 17 | Accept | 2.9056 | 0.15295 | 2.902 | 2.9018 | 0.33909 | 40.311 | 0.053394 | | 18 | Accept | 2.9335 | 0.31865 | 2.902 | 2.8999 | 0.9904 | 41.169 | 0.0099688 | | 19 | Accept | 2.9929 | 0.41971 | 2.902 | 2.8995 | 0.0010811 | 33.401 | 0.017694 | | 20 | Accept | 4.1884 | 0.11533 | 2.902 | 2.9 | 0.0014524 | 1.9514 | 856.49 | |====================================================================================================================| | Iter | Eval | Objective: | Objective | BestSoFar | BestSoFar | BoxConstraint| KernelScale | Epsilon | | | result | log(1+loss) | runtime | (observed) | (estim.) | | | | |====================================================================================================================| | 21 | Accept | 2.904 | 0.16428 | 2.902 | 2.8831 | 88.487 | 405.92 | 0.44372 | | 22 | Accept | 2.9107 | 0.10926 | 2.902 | 2.884 | 344.34 | 992 | 0.28418 | | 23 | Accept | 2.904 | 0.10764 | 2.902 | 2.8841 | 0.92028 | 70.985 | 0.52233 | | 24 | Best | 2.859 | 1.1261 | 2.859 | 2.8606 | 18.319 | 27.763 | 3.008 | | 25 | Accept | 2.9177 | 4.1607 | 2.859 | 2.8612 | 39.154 | 24.119 | 0.67121 | | 26 | Accept | 2.9059 | 0.10984 | 2.859 | 2.8609 | 0.067541 | 15.019 | 1.192 | | 27 | Accept | 4.1884 | 0.10474 | 2.859 | 2.8622 | 987.04 | 3.1666 | 70.752 | | 28 | Accept | 2.8936 | 0.24984 | 2.859 | 2.8744 | 2.2395 | 36.089 | 1.6775 | | 29 | Accept | 2.9156 | 0.13157 | 2.859 | 2.875 | 0.0027368 | 12.221 | 0.10637 | | 30 | Accept | 2.9105 | 0.10586 | 2.859 | 2.8757 | 0.05895 | 21.326 | 0.2563 |
__________________________________________________________ 优化完成。最大目标达到30个。总函数评估:30总运行时间:45.0943秒总目标函数评估时间:23.8742最佳观测可行点:BoxConstraint KernelScale Epsilon _____________ ___________ _______ 18.319 27.763 3.008观测目标函数值= 2.859估计目标函数值= 2.8727函数评估时间= 1.1261最佳估计可行点(根据模型):BoxConstraint KernelScale Epsilon _____________ ___________ _______ 2.2395 36.089 1.6775估计目标函数值= 2.8757估计函数评估时间= 0.25397
Mdl = RegressionSVM ResponseName: 'Y' CategoricalPredictors: [] ResponseTransform: 'none' Alpha: [62x1 double] Bias: 45.4806 KernelParameters: [1x1 struct] NumObservations: 93 HyperparameterOptimizationResults: [1x1 bayesioptimization] BoxConstraints: [93x1 double] ConvergenceInfo: [1x1 struct] IsSu万博1manbetxpportVector: [93x1 logical] Solver: 'SMO' Properties, Methods
최적화는BoxConstraint
,KernelScale
및ε
에대해탐색을수행했습니다。출력값은최소교차검손실추정값을갖는회귀입니다。
입력marketing수
资源描述
- - - - - -예측변수데이터
表형
모델을훈련시키는데사용되는` ` ` ` `본데이터로,테이블로지정됩니다。资源描述
의각행은하나의관측값에대응되고,각열은하나의예측변수에대응됩니다。선택적으로,资源描述
은응답변수에대해하나의추가열을포함할수있습니다。문자형벡터로구성된셀형배열이외의셀형배열과다중열변수는허용되지않습니다。
资源描述
이응답변수를포함하며资源描述
의나머지모든변수를예측변수로사용하려는경우ResponseVarName
을사용하여응답변수를지정하십시오。
资源描述
이응답변수를포함하며资源描述
의나머지변수중일부만예측변수로사용하려는경우公式
를사용하여공식을지정하십시오。
资源描述
이응답변수를포함하지않는경우Y
를사용하여응답변수를지정하십시오。응답변수의길이와资源描述
의행개수는동일해야합니다。
资源描述
의 행 또는Y
의소가하나이상의南
을포함하는경우fitrsvm
은모델을훈련시킬때두수에서해당행과소를제거합니다。
资源描述
에나오는순서로예측변수의이름을지정하려면PredictorNames
이름-값쌍의通讯录수를사용하십시오。
데이터형:表格
公式
- - - - - -응답변수와예측변수의부분집합에대한설명모델
문자형벡터|字符串형스칼라
응답변수,그리고예측변수의부분집합에대한설명모델로,“Y ~ x1 + x2 + x3”
형식의문자형벡터나字符串형스칼라로지정됩니다。이형식에서Y
는응답변수를나타내고,x1
,x2
,x3
은예측변수를나타냅니다。
资源描述
의일부변수를모델훈련에사용할예측변수로지정하려면식을사용하십시오。사용자가식을지정하면资源描述
의변수중해당公式
에@ @시되지않은변수는사용되지않습니다。
식에포함되는변수이름은资源描述
에포함된변수이름(Tbl.Properties.VariableNames
)이면서동시에유효한matlab®식별자여야합니다。isvarname
함수를사용하여资源描述
에포함된변수이름을확할수있습니다。변수이름이유효하지않으면matlab.lang.makeValidName
함수를사용하여변수이름을변환할수있습니다。
데이터형:字符
|字符串
Y
- - - - - -응답변수데이터
숫자형벡터
응답변수데이터로,n×1숫자형벡터로지정됩니다。Y
의 길이와资源描述
또는X
의행개수는동일해야합니다。
资源描述
또는X
의 행이나Y
의소가하나이상의南
을포함하는경우fitrsvm
은모델을훈련시킬때두수에서해당행과소를제거합니다。
응답변수이름을지정하려면ResponseName
이름-값쌍의通讯录수를사용하십시오。
데이터형:单
|双
X
- - - - - -예측변수데이터
숫자형행렬
支持向量机회귀모델이피팅되는예측변수데이터로,n×p숫자형행렬로지정됩니다。N은관측값개수이고p는예측변수의개수입니다。
Y
의 길이와X
의행개수는동일해야합니다。
X
의 행 또는Y
의소가하나이상의南
을포함하는경우fitrsvm
은두수에서해당행과소를제거합니다。
X
에나오는순서로예측변수의이름을지정하려면PredictorNames
이름-값쌍의通讯录수를사용하십시오。
데이터형:单
|双
이름-값通讯录수
예:“KernelFunction”、“高斯”、“标准化”,没错,‘CrossVal’,‘上’
은가우스커널과표준화된훈련데이터를사용하여10겹교차검증된SVM회귀모델을훈련시킵니다。
선택적으로名称,值
수가쉼로구분되어지정됩니다。여기서的名字
은수이름이고价值
는대응값입니다。的名字
은따옴。Name1, Value1,…,的家
과같이여러개의이름-값쌍의通讯录수를어떤순서로든지정할수있습니다。
참고
교차검이름-값수는“OptimizeHyperparameters”
이름-값通讯录수와함께사용할수없습니다。“OptimizeHyperparameters”
에대한교차검을수정하려면“HyperparameterOptimizationOptions”
이름-값通讯录수를사용해야만합니다。
BoxConstraint
- - - - - -상자제약조건
양의스칼라값
알파계수에대한상자제약조건으로,“BoxConstraint”
와함께양의스칼라값이쉼@ @로구분되어지정됩니다。
α
계수의절댓값은BoxConstraint
의값을초과할수없습니다。
“高斯”
또는“rbf”
커널함수의디폴트BoxConstraint
값은差(Y) / 1.349
입니다。여기서差(Y)
는응답변수Y
의사분위범위입니다。다른모든커널에대해디폴트BoxConstraint
값은1입니다。
예:BoxConstraint 10
데이터형:单
|双
KernelFunction
- - - - - -커널 함수
“线性”
(디폴트값)|“高斯”
|“rbf”
|多项式的
|함수 이름
그람 행렬을계산하는데사용되는커널함수로,“KernelFunction”
과함께다음` ` `에나와있는값이쉼` ` ` `로구분되어지정됩니다。
값 | 설명 | 공식 |
---|---|---|
“高斯” 또는“rbf” |
가우스또는방사기저함수(rbf)커널 |
|
“线性” |
선형 커널 |
|
多项式的 |
다항식커널。“PolynomialOrder”, 를사용하여차수가问 다항식커널을지정합니다。 |
|
“KernelFunction”、“内核”
을설정하여자신만의고유한커널함수(예:内核
)를설정할수있습니다。内核
의형식은다음과같아야합니다。
函数G =核(U,V)
U
는m×p행렬입니다。V
는n×p행렬입니다。G
는U
와V
의행으로구성된m×n그람행렬입니다。
또한,kernel.m
은matlab경로에있어야합니다。
커널함수에일반적이름을사용하지않는것이좋습니다。예를들어,시그모이드커널함수는“乙状结肠”
대신“mysigmoid”
로명명하십시오。
예:“KernelFunction”、“高斯”
데이터형:字符
|字符串
KernelScale
- - - - - -커널스케일모수
1
(디폴트값)|“汽车”
|양의스칼라
커널스케일모수로,“KernelScale”
과 함께“汽车”
또는양의스칼라가쉼@ @로구분되어지정됩니다。소프트웨어는예측변수행렬X
의모든소를KernelScale
의값으로나눕니다。그런다음,적합한커널노름(Norm)을적용하여그람행렬을계산합니다。
“汽车”
를지정하면소프트웨어가발견적절차(启发式程序)를사용하여적합한스케일링인자를선택합니다。이발견적절차는부` ` ` ` `본추출을사용하므로,추정값이호출마다다를수있습니다。따라서동일한결과를재현하기위해분류기를훈련시키기전에rng
를사용하여난수시드값을설정합니다。KernelScale
과자신만의고유한커널함수(예:“KernelFunction”、“内核”
)를지정하는경우,오류가발생합니다。内核
내에서스케일링을적용해야합니다。
예:“KernelScale”、“汽车”
데이터형:双
|单
|字符
|字符串
PolynomialOrder
- - - - - -다항식커널함수차수
3.
(디폴트값)|양의 정수
다항식커널함수차수로,“PolynomialOrder”
와함께양의정수가쉼@ @로구분되어지정됩니다。
“PolynomialOrder”
를설정했는데KernelFunction
이多项式的
이아닌경우,오류가발생합니다。
예:“PolynomialOrder”,2
데이터형:双
|单
KernelOffset
- - - - - -커널오프셋파라미터
음이아닌스칼라
커널오프셋파라미터로,“KernelOffset”
과함께음이아닌스칼라가쉼@ @로구분되어지정됩니다。
KernelOffset
이그람행렬의각소에추가됩니다。
디폴트값은다음과같습니다。
솔버가smo경우(즉,
“规划求解”、“SMO的
를설정하는경우)0
솔버가isda경우(즉,
“规划求解”、“ISDA的
를설정하는경우)0.1
예:“KernelOffset”,0
데이터형:双
|单
ε
- - - - - -엡실론무시대역폭의절반
差(Y) / 13.49
(디폴트값)|음이아닌스칼라값
엡실론무시대역폭의절반으로,‘ε’
과함께음이아닌스칼라값이쉼@ @로구분되어지정됩니다。
디폴트ε
값은差(Y) / 13.49
입니다。이는응답변수Y
의사분위범위를사용하여추정한` ` ` `준편차의1/10입니다。差(Y)
가0 rm경우,디폴트ε
값은0.1입니다。
예:‘ε’,0.3
데이터형:单
|双
解算器
- - - - - -최적화루틴
ISDA的
|“L1QP”
|SMO的
α
- - - - - -알파계수의초기추정값
숫자형벡터
알파계수의초기추정값으로,“α”
와함께숫자형벡터가쉼@ @로구분되어지정됩니다。α
의 길이는X
의행개수와같아야합니다。
α
의각소는X
의관측값에대응됩니다。α
는南
을포함할수없습니다。α
와교차검이름-값쌍의수(“CrossVal”
,“CVPartition”
,“坚持”
,“KFold”
또는“Leaveout”
)중하나를지정하는경우,소프트웨어가오류를반환합니다。
Y
가누락값을포함하는경우,누락값에대응되는Y
,X
,α
의모든행을제거하십시오。즉,다음을입력합니다。
idx = ~isnan(Y);Y = Y(idx);X = X(idx,:);Alpha = Alpha (idx);
Y
,X
,α
를각각응답변수,예측변수,초기알파추정값으로전달합니다。
디폴트값은0(大小(Y, 1))
입니다。
예:“阿尔法”,0.1 *(大小(X, 1), 1)
데이터형:单
|双
CacheSize
- - - - - -캐시 크기
1000
(디폴트값)|“最大”
|양의스칼라
캐시크기로,“CacheSize”
와 함께“最大”
또는양의스칼라가쉼@ @로구분되어지정됩니다。
CacheSize
가“最大”
경우,소프트웨어는전체n×n그람 행렬을유지하는데충분한메모리를예약합니다。
CacheSize
가양의스칼라marketing경우,소프트웨어는모델훈련에사용하기위해CacheSize
(단위:메가바이트)크기의메모리를예약합니다。
예:“CacheSize”、“最大”
데이터형:双
|单
|字符
|字符串
ClipAlphas
- - - - - -알파계수자르기여부를@ @시하는플래그
真正的
(디폴트값)|假
알파계수자르기여부를시하는플래그로,“ClipAlphas”
와 함께真正的
나假
가쉼@ @로구분되어지정됩니다。
관측값j에대한알파계수가αj이고관측값j의상자제약조건이Cjrr경우,j = 1,…,n입니다。여기서n은훈련본크기입니다。
값 | 설명 |
---|---|
真正的 |
각반복마다αj가0에가깝거나j에가까운경우,matlab이αj를각각0또는j로설정합니다。 |
假 |
Matlab이최적화과정중에알파계수를변경하지않습니다。 |
Matlab은훈련된SVM모델객체의α
속성에α의최종값을저장합니다。
ClipAlphas
는smo및isda수렴에향을미칠수있습니다。
예:“ClipAlphas”,假的
데이터형:逻辑
NumPrint
- - - - - -최적화진단메시지출력간반복횟수
1000
(디폴트값)|음이아닌정수
최적화진단메시지출력간반복횟수로,“NumPrint”
와함께음이아닌정수가쉼@ @로구분되어지정됩니다。
“详细”,1
및NumPrint, NumPrint
를지정하는경우,소프트웨어가명령창에서매numprint
회의반복마다smo및isda의모든최적화진단메시지를@ @시합니다。
예:“NumPrint”,500年
데이터형:双
|单
OutlierFraction
- - - - - -훈련데이터의이상값예상비율
0(디폴트값)|구간[0,1)내숫자형스칼라
훈련데이터의이상값예상비율로,“OutlierFraction”
과함께구간[0,1)내숫자형스칼라가쉼。fitrsvm
은기울기가큰관측값을제거함으로써수렴에도달한시점에fitrsvm
이OutlierFraction
으로지정된관측값의비율을제거하도록합니다。이이름-값쌍은“规划求解”
가ISDA的
경우에만유효합니다。
예:“OutlierFraction”,0.1
데이터형:单
|双
RemoveDuplicates
- - - - - -중복된관측값을단일관측값으로교체하는지여부를나타내는플래그
假
(디폴트값)|真正的
훈련데이터에서중복된관측값을단일관측값으로교체하는플래그로,“RemoveDuplicates”
와 함께真正的
나假
가쉼@ @로구분되어지정됩니다。
RemoveDuplicates
가真正的
경우,fitrsvm
함수는훈련데이터에서중복된관측값을동일한값을가지는단일관측값으로바꿉니다。단일관측값의가중치는제거된중복항목의가중치를모두더한합과일치합니다(权重
참조)。
팁
데이터세트에중복된관측값이많이포함된경우“RemoveDuplicates”,真的
를지정하면수렴시간을상당히단축시킬수있습니다。
데이터형:逻辑
详细的
- - - - - -세부정보@ @시수준
0
(디폴트값)|1
|2
세부정보시수준으로,“详细”
와 함께0
,1
또는2
가쉼@ @로구분되어지정됩니다。详细的
의값은소프트웨어가명령창에@ @시하는최적화정보의양을제어하고이정보를Mdl.ConvergenceInfo.History
에구조체로저장합니다。
다음` ` ` ` ` ` ` ` ` ` ` ` ` ` ` ` ` ` ` `。
값 | 설명 |
---|---|
0 |
소프트웨어가수렴정보를@ @시하거나저장하지않습니다。 |
1 |
소프트웨어가매numprint 회의반복마다진단메시지를@ @시하고수렴조건을저장합니다。여기서numprint 는이름-값쌍通讯录수“NumPrint” 의값입니다。 |
2 |
소프트웨어가매반복마다진단메시지를@ @시하고수렴조건을저장합니다。 |
예:“详细”,1
데이터형:双
|单
CategoricalPredictors
- - - - - -범주형예측변수목록
양의정수로구성된벡터|논리형벡터|문자형행렬|字符串형배열|문자형벡터로구성된셀형배열|“所有”
범주형예측변수목록으로,다음@에있는값중하나로지정됩니다。
값 | 설명 |
---|---|
양의정수로구성된벡터 | 벡터의각소는대응되는예측변수가범주형임을나타내는덱스값입니다。덱스값은1과
|
논리형벡터 | 소의값이 |
문자형행렬 | 행렬의각행은예측변수의이름입니다。이름은PredictorNames 의소와일치해야합니다。문자형행렬의각행의길이가같게되도록이름뒤에추가로공백을채웁니다。 |
字符串형배열또는문자형벡터로구성된셀형배열 | 배열의각소는예측변수의이름입니다。이름은PredictorNames 의소와일치해야합니다。 |
“所有” |
모든예측변수가범주형변수입니다。 |
기본적으로예측변수데이터가테이블(资源描述
)내에있는경우,변수가논리형벡터,直言형벡터,문자형배열,字符串형배열또는문자형벡터로구성된셀형배열이면fitrsvm
함수는그변수를범주형변수라고가정합니다。예측변수데이터가행렬(X
)이면fitrsvm
함수는모든예측변수를연속형변수라고가정합니다。다른모든예측변수를범주형예측변수로식별하려면이러한변수를“CategoricalPredictors”
이름-값通讯录수를사용하여지정하십시오。
식별된범주형예측변수에대해fitrsvm
함수는범주형변수에순서가지정되어있는지에따라서로다른두가지체계를사용하여가변수를생성합니다。순서가지정되지않은범주형변수에대해fitrsvm
함수는범주형변수의각수준마다하나의가변수를생성합니다。순서가지정된범주형변수에대해fitrsvm
함수는범주개수보다하나가적은가변수를생성합니다。자세한내용은自动创建虚拟变量항목을참조하십시오。
예:“CategoricalPredictors”、“所有”
데이터형:单
|双
|逻辑
|字符
|字符串
|细胞
PredictorNames
- - - - - -예측변수이름
고유한이름으로구성된字符串형배열|고유한문자형벡터로구성된셀형배열
예측변수이름으로,고유한이름으로구성형된字符串배열또는고유한문자형벡터로구성된셀형배열로지정됩니다。PredictorNames
의기능은훈련데이터를어떤방식으로제공하느냐에따라달라집니다。
X
와Y
를제공하는경우,PredictorNames
를사용하여X
의예측변수에이름을할당할수있습니다。PredictorNames
의이름의순서는X
의열순서와일치해야합니다。즉,PredictorNames {1}
은X (: 1)
의이름이고,PredictorNames {2}
는X (:, 2)
의이름이되는식입니다。또한,大小(X, 2)
와元素个数(PredictorNames)
는같아야합니다。기본적으로
PredictorNames
는{x1, x2,…}
입니다。
资源描述
을제공하는경우,PredictorNames
를사용하여훈련에사용할예측변수를선택할수있습니다。즉,fitrsvm
함수는PredictorNames
의예측변수와이에대한응답변수만을훈련중에사용합니다。PredictorNames
는Tbl.Properties.VariableNames
의부분집합이어야하므로응답변수의이름은포함할수없습니다。기본적으로,
PredictorNames
는모든예측변수의이름을포함합니다。PredictorNames
와公式
중하나만사용하여훈련에사용할예측변수를지정하는것이좋습니다。
예:“PredictorNames”(“SepalLength”、“SepalWidth”,“PetalLength”,“PetalWidth”)
데이터형:字符串
|细胞
ResponseName
- - - - - -응답변수이름
“Y”
(디폴트값)|문자형벡터|字符串형스칼라
응답변수이름으로,문자형벡터또는字符串형스칼라로지정됩니다。
Y
를제공하는경우,ResponseName
을사용하여응답변수의이름을지정할수있습니다。ResponseVarName
또는公式
를제공하는경우에는ResponseName
을사용할수없습니다。
예:“ResponseName”、“反应”
데이터형:字符
|字符串
ResponseTransform
- - - - - -응답변수변환
“没有”
(디폴트값)|함수 핸들
응답변수변환으로,“没有”
또는함수핸들로지정됩니다。디폴트값은“没有”
입니다。이는@ (y) y
또는변환없음을의미합니다。MATLAB함수나사용자가직접정의하는함수의경우,이에대한함수핸들을응답변수변환에사용하십시오。함수핸들은벡터(원래응답변수값)를받아동일한크기의벡터(변환된응답변수값)를반환해야합니다。
예:Myfunction = @(y)exp(y)
를사용하여입력벡터에지수변환을적용하는함수핸들을만들었다고가정하겠습니다。그런다음응답변수변환을myfunction ResponseTransform,
으로지정할수있습니다。
데이터형:字符
|字符串
|function_handle
权重
- - - - - -관측값가중치
(大小(X, 1), 1)
(디폴트값)|숫자형값으로구성된벡터
관측값가중치로,“重量”
와함께숫자형값으로구성된벡터가쉼@ @로구분되어지정됩니다。权重
의 크기는X
의행개수와일치해야합니다。fitrsvm
은权重
의값의합이1이되도록정규화합니다。
데이터형:单
|双
CrossVal
- - - - - -교차검플래그
“关闭”
(디폴트값)|“上”
교차검플래그로,“CrossVal”
과 함께“上”
또는“关闭”
가쉼@ @로구분되어지정됩니다。
“上”
을지정하면10겹교차검을구현합니다。
이교차검설정을재정의하려면CVPartition
,坚持
,KFold
,Leaveout
이름-값쌍의通讯录수중하나를사용하십시오。교차검증된모델을생성하려면한번에하나의교차검증이름——값쌍의인수만사용해야합니다。
또는,crossval
메서드를사용하여나중에모델을교차검할수있습니다。
예:“CrossVal”,“上”
CVPartition
- - - - - -교차검분할
[]
(디폴트값)|cvpartition
분할 객체
교차검분할로,cvpartition
으로생성된cvpartition
분할객체로지정됩니다。분할객체는교차검의유형을지정하며훈련세트와검세트의덱싱도지정합니다。
교차검된모델을생성하려면다음4개의이름-값수중하나만지정할수있습니다。CVPartition
,坚持
,KFold
,Leaveout
예:cvp = cvpartition(500,'KFold',5)
500개를사용하여관측값에대한5겹교차검증에사용할임의분할을생성한다고가정하겠습니다。그런다음,“CVPartition”,本量利
를사용하여교차검된모델을지정할수있습니다。
坚持
- - - - - -홀드아웃검에사용할데이터의비율
(0,1)범위의스칼라값
홀드아웃검에사용할데이터의비율로,범위(0,1)내스칼라값으로지정됩니다。‘坚持’,p
를지정하는경우소프트웨어는다음단계를완료합니다。
데이터의
p * 100
%를무작위로선택하여검증데이터용으로남겨두고나머지데이터를사용하여모델을훈련시킵니다。교차검된모델의
训练有素的
속성에훈련된간소모델을저장합니다。
교차검된모델을생성하려면다음4개의이름-값수중하나만지정할수있습니다。CVPartition
,坚持
,KFold
,Leaveout
예:“坚持”,0.1
데이터형:双
|单
KFold
- - - - - -겹의 개수
10
(디폴트값)|1보다큰양의정수값
교차검된모델에사용할겹의개수로,1보다큰양의정수값으로지정됩니다。KFold, k
를지정하는경우소프트웨어는다음단계를완료합니다。
데이터를
k
개세트로임의로분할합니다。각세트마다해당세트를검데이터로남겨두고나머지
k
- 1개의세트를사용하여모델을훈련시킵니다。교차검된모델의
训练有素的
속성에k
×1셀형벡터로k
개의훈련된간소모델을저장합니다。
교차검된모델을생성하려면다음4개의이름-값수중하나만지정할수있습니다。CVPartition
,坚持
,KFold
,Leaveout
예:“KFold”,5
데이터형:单
|双
Leaveout
- - - - - -리브-원-아웃(Leave-One-Out)교차검플래그
“关闭”
(디폴트값)|“上”
리브-원-아웃교차검플래그로,“上”
또는“关闭”
로지정됩니다。“Leaveout”,“上”
을지정하는경우,n개(여기서n은모델의NumObservations
속성에지정된관측값중누락된관측값을제외한개수임)의관측값각각에대해소프트웨어가다음단계를완료합니다。
1개의관측값을검증데이터로남겨두고나머지n - 1개관측값을사용하여모델을훈련시킵니다。
교차검된모델의
训练有素的
속성에n×1셀형벡터로n개의훈련된간소모델을저장합니다。
교차검된모델을생성하려면다음4개의이름-값수중하나만지정할수있습니다。CVPartition
,坚持
,KFold
,Leaveout
예:“Leaveout”,“上”
DeltaGradientTolerance
- - - - - -기울기차이에대한허용오차
0(디폴트값)|음이아닌스칼라
SMO또는ISDA로구한상한이탈값과하한이탈값간의기울기차이에대한허용오차로,“DeltaGradientTolerance”
와함께음이아닌스칼라가쉼@ @로구분되어지정됩니다。
예:“DeltaGradientTolerance”,1的军医
데이터형:单
|双
GapTolerance
- - - - - -실현가능성격차허용오차
1 e - 3
(디폴트값)|음이아닌스칼라
Smo또는isda로구한실현가능성격차허용오차로,“GapTolerance”
와함께음이아닌스칼라가쉼@ @로구분되어지정됩니다。
GapTolerance
가0
이면fitrsvm
은이모수를사용하여수렴을확하지않습니다。
예:“GapTolerance”,1的军医
데이터형:单
|双
IterationLimit
- - - - - -수치최적화반복의최대횟수
1 e6
(디폴트값)|양의 정수
수치최적화반복의최대횟수로,“IterationLimit”
와함께양의정수가쉼@ @로구분되어지정됩니다。
최적화루틴이성공적으로수렴되는지여부에상관없이소프트웨어가훈련된모델을반환합니다。Mdl。ConvergenceInfo
는수렴정보를포함합니다。
예:“IterationLimit”,1 e8
데이터형:双
|单
KKTTolerance
- - - - - -KKT위반에대한허용오차
0|음이아닌스칼라값
카루쉬-쿤-터커(kkt)위반에대한허용오차로,“KKTTolerance”
와함께음이아닌스칼라값이쉼@ @로구분되어지정됩니다。
이이름-값쌍은“规划求解”
가SMO的
또는ISDA的
경우에만적용됩니다。
KKTTolerance
가0
이면fitrsvm
은이모수를사용하여수렴을확하지않습니다。
예:“KKTTolerance”,1的军医
데이터형:单
|双
ShrinkagePeriod
- - - - - -활성세트감소간의반복횟수
0
(디폴트값)|음이아닌정수
활성세트감소간의반복횟수로,“ShrinkagePeriod”
와함께음이아닌정수가쉼@ @로구분되어지정됩니다。
“ShrinkagePeriod”,0
을설정하는경우,소프트웨어는활성세트를축소하지않습니다。
예:“ShrinkagePeriod”,1000年
데이터형:双
|单
OptimizeHyperparameters
- - - - - -최적화할모수
“没有”
(디폴트값)|“汽车”
|“所有”
|적합한모수이름으로구성된字符串형배열또는셀형배열|optimizableVariable
객체로구성된벡터
최적화할모수로,“OptimizeHyperparameters”
와함께다음값중하나가쉼@ @로구분되어지정됩니다。
“没有”
-최적화하지않습니다。“汽车”
- - - - - -{‘BoxConstraint’,‘KernelScale’,‘ε’}
을사용합니다。“所有”
-모든적합한모수를최적화합니다。적합한모수이름으로구성된字符串형배열또는셀형배열。
optimizableVariable
객체로구성된벡터。일반적으로hyperparameters
의출력값입니다。
최적화는모수를변경하여fitrsvm
에대한교차검손실(오차)을최소화하려고합니다。교차검유형과최적화의기타측면을제어하려면HyperparameterOptimizationOptions
이름-값쌍을사용하십시오。
참고
“OptimizeHyperparameters”
값은다른이름-값通讯录수를사용하여지정하는모든값을재정의합니다。예를 들어“OptimizeHyperparameters”
를“汽车”
로설정하면fitrsvm
함수는“汽车”
옵션에대응되는하이퍼파라미터를최적화하고하이퍼파라미터에대해지정된값을모두무시합니다。
fitrsvm
에대한적합한모수는다음과같습니다。
BoxConstraint
- - - - - -fitrsvm
이기본적으로범위(1 e - 3, 1 e3)
에서로그스케일링된양수값중에서탐색을수행합니다。KernelScale
- - - - - -fitrsvm
이기본적으로범위(1 e - 3, 1 e3)
에서로그스케일링된양수값중에서탐색을수행합니다。ε
- - - - - -fitrsvm
이기본적으로범위(1 e - 3, 1 e2) *差(Y) / 1.349
에서로그스케일링된양수값중에서탐색을수행합니다。KernelFunction
- - - - - -fitrsvm
이“高斯”
,“线性”
,多项式的
중에서탐색을수행합니다。PolynomialOrder
- - - - - -fitrsvm
이 범위(2、4)
내정수중에서탐색을수행합니다。标准化
- - - - - -fitrsvm
이“真正的”
및“假”
중에서탐색을수행합니다。
디폴트가아닌값을가지는optimizableVariable
객체로구성된벡터를전달하여디폴트가아닌모수를설정합니다。예를들면다음과같습니다。
负载carsmallParams =超参数(“fitrsvm”(功率、重量),MPG);参数(1)。Range = [1e-4,1e6];
参数个数
를OptimizeHyperparameters
의값으로전달합니다。
기본적으로,반복표시가명령줄에표시되고,최적화에지정된하이퍼파라미터개수에따라플롯이표시됩니다。최적화와플롯에대해목적함수는Log(1 +交叉验证损失)입니다。반복@ @시를제어하려면“HyperparameterOptimizationOptions”
이름-값通讯录수에대한详细的
필드를설정하십시오。플롯을제어하려면“HyperparameterOptimizationOptions”
이름-값通讯录수에대한ShowPlots
필드를설정하십시오。
예제는支持向量机회귀최적화하기항목을참조하십시오。
예:“OptimizeHyperparameters”、“汽车”
HyperparameterOptimizationOptions
- - - - - -최적화에사용할옵션
구조체
최적화에사용할옵션으로,구조체로지정됩니다。이marketing수는OptimizeHyperparameters
이름-값通讯录수의효과를수정합니다。이구조체에포함된모든필드는선택사항입니다。
필드 이름 | 값 | 디폴트 값 |
---|---|---|
优化器 |
|
“bayesopt” |
AcquisitionFunctionName |
최적화는목적함수의런타임에종속적이기때문에이름에 |
“expected-improvement-per-second-plus” |
MaxObjectiveEvaluations |
목적함수실행의최대횟수입니다。 | “bayesopt” 및“randomsearch” 의 경우30. 이고,“gridsearch” 의경우그리드전체입니다。 |
MaxTime |
시간제한으로,양의실수형스칼라로지정됩니다。시간제한은초단위이며, |
正 |
NumGridDivisions |
“gridsearch” 의경우,각차원의값개수입니다。이값은각차원에대한값의개수를제공하는양의정수로구성된벡터또는모든차원에적용되는스칼라일수있습니다。이필드는범주형변수의경우무시됩니다。 |
10 |
ShowPlots |
플롯@ @시여부를나타내는논리값입니다。真正的 경우,이필드는반복횟수에대해최선의관측된목적함수값을플로팅합니다。베이즈최적화를사용하는경우(优化器 가“bayesopt” 임),이필드는최선의추정된목적함수값도플로팅합니다。최선의관측된목적함수값과최선의추정된목적함수값은각각반복@ @시의BestSoFar(观察) 열과BestSoFar (estim)。 열의값에대응됩니다。Mdl。HyperparameterOptimizationResults 의 속성ObjectiveMinimumTrace 및EstimatedObjectiveMinimumTrace 에서이러한값을확할수있습니다。문제에베이즈최적화를위한하나또는두개의최적화모수가있는경우,ShowPlots 는이모수에대해서도목적함수의모델을플로팅합니다。 |
真正的 |
SaveIntermediateResults |
优化器 가“bayesopt” 경우결과를저장할지여부를나타내는논리값입니다。真正的 경우,이필드는각반복마다“BayesoptResults” 라는이름의작업공간변수를덮어씁니다。변수는BayesianOptimization 객체입니다。 |
假 |
详细的 |
명령줄에通讯录시되는내용:
자세한내용은 |
1 |
UseParallel |
베이즈최적화를병렬로실행할지여부를나타내는논리값으로,并行计算工具箱™가필요합니다。병렬시간재현이불가능하기때문에,병렬베이즈최적화에서반드시재현가능한결과를산출하지는않습니다。자세한내용은并行贝叶斯优化항목을참조하십시오。 | 假 |
重新分区 |
매반복시교차검을다시분할할지여부를나타내는논리값입니다。이필드의값이
|
假 |
다음과같은3개옵션중하나만사용합니다。 | ||
CVPartition |
cvpartition 으로생성되는cvpartition 객체 |
교차검필드를지정하지않을경우“Kfold”,5 |
坚持 |
홀드아웃비율을나타내는범위(0,1) 내 스칼라 |
|
Kfold |
1보다큰정수 |
예:“HyperparameterOptimizationOptions”、结构(MaxObjectiveEvaluations, 60)
데이터형:结构体
출력marketing수
Mdl
-훈련된SVM회귀모델
RegressionSVM
모델|RegressionPartitionedSVM
교차검된모델
훈련된SVM회귀모델로,RegressionSVM
모델 또는RegressionPartitionedSVM
교차검된모델로반환됩니다。
이름-값쌍의通讯录수KFold
,坚持
,Leaveout
,CrossVal
또는CVPartition
중어느하나라도설정하면,Mdl
은RegressionPartitionedSVM
교차검된모델입니다。그러지않은경우Mdl
은RegressionSVM
모델입니다。
제한 사항
fitrsvm
함수는저차원에서중간차원까지의데이터세트를지원합니다。고차원데이터세트에대해서는fitrlinear
를대신사용하십시오。
팁
데이터세트가크지않다면항상예측변수를指导书준화하도록하십시오(
标准化
참조)。@ @ @ @ @ @ @ @。KFold
이름-값쌍의수를사용하여교차검을수행하는것이좋습니다。교차검결과를통해SVM모델이얼마나잘일반화되는지확할수있습니다。서포트벡터의희소성은SVM모델에있어서는이상적속성입니다。서포트벡터의개수를줄이려면
BoxConstraint
이름-값쌍의通讯录수를큰값으로설정하십시오。단,이동작을수행하면훈련시간이가합니다。최적의훈련시간을위해
CacheSize
를컴퓨터의메모리제한이허용하는한최대한높게설정하십시오。훈련세트에서서포트벡터의개수가관측값보다훨씬적을거라예상되는경우,이름——값쌍의인수
“ShrinkagePeriod”
를사용하여활성세트를축소함으로써수렴되는속도를상당히높일수있습니다。“ShrinkagePeriod”,1000年
을사용하는것이좋습니다。회귀선에서멀리떨어진중복된관측값은수렴에향을미치지않습니다。그러나,회귀선가까이에있는중복된관측값은몇개만있더라도수렴되는속도가상당히느려질수있습니다。다음과같은경우
“RemoveDuplicates”,真的
를지정하여수렴되는속도를높이십시오。데이터세트에중복된관측값이많이있는경우。
몇개의중복된관측값이회귀선가까이에있을수있다고의심되는경우。
단,훈련중에원래데이터세트를유지하기위해,
fitrsvm
함수는원래데이터세트와중복된관측값을제거한데이터세트를일시적으로각각별도로저장해야합니다。따라서,몇몇중복된관측값을포함하는데이터세트에대해真正的
를지정할경우fitrsvm
함수는원래데이터메모리의두배에가까운메모리를사용합니다。모델을훈련시킨후에는새데이터에대한응답변수를예측하는C / c++코드를생성할수있습니다。C/ c++코드를생성하려면MATLAB编码器™가필합니다。자세한내용은代码生成简介항목을참조하십시오。
알고리즘
선형SVM회귀문제와비선형SVM회귀문제의수학적정식화,그리고솔버알고리즘에대해알아보려면서포트벡터머신회귀이해하기항목을참조하십시오。
南
,<定义>
,빈문자형벡터(”
),빈字符串형(""
),< >失踪
값은누락데이터값을나타냅니다。fitrsvm
함수는누락응답변수에대응되는데이터의전체행을제거합니다。가중치를정규화할때,fitrsvm
함수는최소한개의누락예측변수를갖는관측값에대응되는가중치를모두무시합니다。따라서,관측값상자제약조건은BoxConstraint
와일치하지않을수있습니다。fitrsvm
함수는가중치가0 rm관측값을제거합니다。“标准化”,真的
와“重量”
를설정하면fitrsvm
함수는대응되는가중평균과가중` ` `준편차를사용하여예측변수를` ` ` `준화합니다。즉,fitrsvm
은다음을사용하여예측변수j(xj)를@준화합니다。xjk는예측변수j(열)의관측값k(행)입니다。
예측변수데이터에범주형변수가포함된경우소프트웨어가일반적으로이러한변수에대해전체가변수인코딩을사용합니다。소프트웨어는각범주형변수의각수준마다하나의가변수를생성합니다。
PredictorNames
속성은원래예측변수이름마다하나의소를저장합니다。예를들어,세개의예측변수가있고,그중하나가세개수준을갖는범주형변수라고가정해보겠습니다。그러면PredictorNames
는예측변수의원래이름을포함하는문자형벡터로구성된1×3셀형배열이됩니다。ExpandedPredictorNames
속성은가변수를포함하여예측변수마다하나의소를저장합니다。예를들어,세개의예측변수가있고,그중하나가세개수준을갖는범주형변수라고가정해보겠습니다。그러면ExpandedPredictorNames
는예측변수이름및새가변수의이름을포함하는문자형벡터로구성된1×5셀형배열이됩니다。마찬가지로,
β
속성은가변수를포함하여예측변수마다하나의베타계수를저장합니다。万博1manbetxSupportVectors
속성은가변수를포함하여서포트벡터에대한예측변수값을저장합니다。예를들어,m개의서포트벡터와세개의예측변수가있고,그중하나가세개의수준을갖는범주형변수라고가정해보겠습니다。그러면万博1manbetxSupportVectors
는m×5행렬이됩니다。X
속성은훈련데이터를원래입력된대로저장합니다。가변수는포함하지않습니다。입력값이테이블marketing경우,X
는예측변수로사용된열만포함합니다。
테이블에지정된예측변수에대해변수중하나가순서가지정된(순서형)범주를포함하는경우소프트웨어는이러한변수에대해순서형인코딩(顺序编码)을사용합니다。
순서가지정된k개의수준을갖는변수에대해K - 1개의가변수를생성합니다。J번째가변수는J수준까지는-1이되고,J + 1에서k까지의수준에서는+1이됩니다。
ExpandedPredictorNames
속성에저장된가변수의이름은값+1을갖는첫번째수준을나타냅니다。소프트웨어는수준2,3,…,k의 이름을 포함하여 가변수에 대해K - 1개의추가예측변수이름을저장합니다。
모든솔버는L1소프트마진(Soft-Margin)최소화를구현합니다。
p
는훈련데이터에서사용자가예상하는이상값비율이라고하겠습니다。OutlierFraction, p
를설정하면로버스트학습을구현합니다。다시말해,최적화알고리즘이수렴될때소프트웨어가관측값의100p
를제거한다는의미입니다。제거되는관측값은크기가큰기울기에해당합니다。
참고 문헌
[1]克拉克,D.施雷特,A.亚当斯。“逆向传播与逆向传播的定量比较”,提交给1996年澳大利亚神经网络会议。
[2]范,r.e。,林志信。陈和c - j。林。“使用二阶信息训练支持向量机的工作集选择。”万博1manbetx机器学习研究杂志,2005年第6卷,第1889-1918页。
[3]凯克曼V. -M。黄和M.沃格特。从庞大数据集训练核心机器的迭代单数据算法:理论和性能。支持向万博1manbetx量机:理论与应用。王立波编辑,255-274。柏林:斯普林格出版社,2005年。
[4] Lichman, M. UCI机器学习库,[http://archive.ics.uci.edu/ml]。加州欧文市:加州大学信息与计算机科学学院。
[5]纳什,w.j., T. L.塞勒斯,S. R.塔尔博特,A. J.考索恩,W. B.福特。鲍鱼种群生物学(石决明种)在塔斯马尼亚。I.黑唇鲍鱼(h . rubra)来自北海岸和巴斯海峡群岛。”海洋渔业司,1994年第48号技术报告。
[6]哇,S。级联相关的扩展和基准测试:前馈监督人工神经网络级联相关架构的扩展和基准测试。塔斯马尼亚大学计算机科学系论文,1995年。
확장 기능
자동병렬지원
并行计算工具箱™를사용해자동병렬계산을실행하여코드실행속도를높일수있습니다。
병렬하이퍼파라미터최적화를수행하려면fitrsvm
함수에대한호출에“HyperparameterOptimizationOptions”、结构(UseParallel,真的)
이름-값通讯录수를사용하십시오。
병렬하이퍼파라미터최적화에대한자세한내용은并行贝叶斯优化항목을참조하십시오。
병렬연산에대한일반적내용은자동병렬연산을지원하는matlab함수실행하기(并行计算工具箱)항목을참조하십시오。
버전 내역
Matlab명령
다음matlab명령에해당하는링크를클릭했습니다。
명령을실행하려면matlab명령창에입력하십시오。웹브라우저는matlab명령을지원하지않습니다。
您也可以从以下列表中选择一个网站:
如何获得最佳的网站性能
选择中国站点(中文或英文)以获得最佳站点性能。其他MathWorks国家站点没有针对您所在位置的访问进行优化。