主要内容

このペ,ジの翻訳は最新ではありません。ここをクリックして,英語の最新版を参照してください。

ベ@ @ズ最適化による分類器の自動選択

この例では,fitcautoを使用し,指定した学習予測子と応答データに基づいてさまざまなハイパーパラメーターの値をもつ分類モデルのタイプの選択を自動的に試す方法を示します。この関数は,ベイズ最適化を使用してモデルとそのハイパーパラメーターの値を選択し,各モデルの交差検証の分類誤差を計算します。最適化が完了すると,fitcautoは,デ,タセット全体で学習済みの,新しいデ,タの分類に最適であると予測したモデルを返します。検定デ,タに対するモデルの性能をチェックします。

標本デ,タの読み込み

この例ではcensus1994.matに保存されている1994年の国勢調査デタを使用します。このデータセットは,個人の年収が50000美元を超えるかどうかを予測するために使用できる,米国国勢調査局の人口統計情報から構成されています。

学習デ,タadultdataおよび検定デ,タ成人を含む,標本デ,タcensus1994を読み込みます。学習デ,タセットの最初の数行をプレビューします。

负载census1994头(adultdata)
ans =8×15表年龄workClass fnlwgt教育education_num marital_status种族职业关系性capital_gain capital_loss hours_per_week native_country薪水  ___ ________________ __________ _________ _____________ _____________________ _________________ _____________ _____ ______ ____________ ____________ ______________ ______________ ______ 39 State-gov 77516单身汉13未婚Adm-clerical家族的白人男性2174 0 40美国< = 50 k 50 Self-emp-not-inc 83311单身汉13Married-civ-spouse Exec-managerial丈夫13美国白人男性0 0 < = 50 k 38私人2.1565 e + 05 HS-grad 9离婚Handlers-cleaners家族的白人男性40 0 0美国< = 50 k 53私人2.3472 e + 05年11日7 Married-civ-spouse Handlers-cleaners丈夫黑人男性40 0 0美国< = 50 k 28私人3.3841 e + 05单身汉13 Married-civ-spouse Prof-specialty妻子古巴黑人女性40 0 0 < = 50 k 37私人2.8458 e + 05年硕士14 Married-civ-spouse Exec-managerial妻子白人女性0 040美国<=50K 49私人1.6019e+05 9 5已婚配偶缺席其他服务不在家庭黑人女性0 0 16牙买加<=50K 52自我空-不-inc 2.0964e+05 HS-grad 9已婚公民配偶执行管理丈夫白人男性0 0 45美国>50K

各行には,成人1人の人口統計情報が格納されています。最後の列工资は個人の年収が$50,000以下か,$50,000を超えるかどうかを示します。

自動モデル選択の使用

fitcautoを使用して,adultdataのデタに適切な分類器を自動的に見けます。観測値の重みを設定し,ベ。これには并行计算工具箱™が必要です。並列でのタイミングに再現性がないため,並列ベイズ最適化で再現性のある結果が生成されるとは限りません。

最適化の複雑度に応じて,特に大きなデ,タセットでは,この処理に時間がかかる場合があります。既定の設定では,fitcautoは,最適化のプロット,および最適化の結果の反復表示を提供します。これらの結果を解釈する方法の詳細にいては,详细の表示を参照してください。

选项= struct(“UseParallel”,真正的);[mdl,results] = fitcauto(成人数据,“工资”“重量”“fnlwgt”...“HyperparameterOptimizationOptions”、选择);
警告:建议在优化朴素贝叶斯'Width'参数时,首先标准化所有数值预测器。如果您已经这样做了,请忽略此警告。
使用“本地”配置文件启动并行池(parpool)…连接到并行池(worker数量:6)。将目标函数复制到worker…将目标函数复制给工人。
学习类型探索:集成,nb,树总迭代(maxobjectiveassessments): 90总时间(MaxTime): Inf
|===========================================================================================================================================| | Iter | |活跃Eval培训| | |验证时间观察敏|估计分钟|学生| Hyperparameter:值| | | | | |损失结果工人&验证(sec) | |验证损失确认的损失  | | | |===========================================================================================================================================| | 最好1 | 6 | | 0.16287 | 4.3468 | 0.16287 | 0.16287 | nb | DistributionNames:正常  | | | | | | | | | | 宽度:南|
| 2 | 5 | Accept | 0.14389 | 6.1049 | 0.14162 | 0.14287 | tree | MinLeafSize: 21 | | 3 | 5 | Best | 0.14162 | 5.6195 | 0.14162 | 0.14287 | tree | MinLeafSize: 50 |
| 4 | 6 |接受| 0.15626 | 74.156 | 0.14162 | 0.14287 | ensemble | Method: LogitBoost | | | | | | | | | | NumLearningCycles: 283 | | | | | | | | | | MinLeafSize: 7330 |
| 5 | 6 | Accept | 0.15603 | 77.293 | 0.14162 | 0.14287 | ensemble | Method: LogitBoost | | | | | | | | | | NumLearningCycles: 295 | | | | | | | | | | MinLeafSize: 3 |
| 6 | 6 | Accept | 0.16027 | 5.6224 | 0.14162 | 0.14842 | tree | MinLeafSize: 5 |
| 7 | 6 | Accept | 0.17343 | 8.6209 | 0.14162 | 0.15576 | tree | MinLeafSize: 2 |
| 8 | 6 | Accept | 0.15103 | 4.8867 | 0.14162 | 0.15392 | tree | MinLeafSize: 8 |
| 9 | 6 | Accept | 0.17642 | 1.1808 | 0.14162 | 0.15449 | tree | MinLeafSize: 1663 |
| 10 | 6 | Accept | 0.15927 | 5.0734 | 0.14162 | 0.15343 | tree | MinLeafSize: 6 |
|===========================================================================================================================================| | Iter | |活跃Eval培训| | |验证时间观察敏|估计分钟|学生| Hyperparameter:值| | | | | |损失结果工人&验证(sec) | |验证损失确认的损失  | | | |===========================================================================================================================================| | 11 | 6 |接受| 0.17009 | 1.6504 | 0.14162 | 0.15533 | |树MinLeafSize: 1272 |
| 12 | 6 | Accept | 0.17869 | 1.0308 | 0.14162 | 0.154 | tree | MinLeafSize: 2744 |
| 13 | 6 | Accept | 0.17961 | 116.64 | 0.14162 | 0.154 | nb | DistributionNames: kernel | | | | | | | | | | Width: 274.23 |
| | 5 | 14日接受| 0.15128 | 118.36 | 0.14162 | 0.15383 |合奏|方法:袋  | | | | | | | | | | NumLearningCycles: 241  | | | | | | | | | | MinLeafSize: 23 | | 15 | 5 |接受| 0.15177 | 115.42 | 0.14162 | 0.15383 |合奏|方法:袋  | | | | | | | | | | NumLearningCycles: 235  | | | | | | | | | | MinLeafSize: 40 |
| 16 | 5 | Accept | 0.15116 | 115.49 | 0.14162 | 0.15326 | ensemble | Method: Bag | | | | | | | | | | NumLearningCycles: 235 | | | | | | | | | | MinLeafSize: 40 |
| 17 | 6 | Accept | 0.14887 | 63.412 | 0.14162 | 0.15326 | nb | DistributionNames: kernel | | | | | | | | | | Width: 0.56014 |
| 18 | 6 | Accept | 0.17869 | 0.89318 | 0.14162 | 0.15219 | tree | MinLeafSize: 2712 |
| 19 | 6 | Accept | 0.17676 | 59.781 | 0.14162 | 0.15219 | ensemble | Method: Bag | | | | | | | | | | NumLearningCycles: 208 | | | | | | | | | | MinLeafSize: 4208 |
| 20 | 6 | Accept | 0.15086 | 81.42 | 0.14162 | 0.15219 | nb | DistributionNames: kernel | | | | | | | | | | Width: 2.4778 |
|===========================================================================================================================================| | Iter | |活跃Eval培训| | |验证时间观察敏|估计分钟|学生| Hyperparameter:值| | | | | |损失结果工人&验证(sec) | |验证损失确认的损失  | | | |===========================================================================================================================================| | 21 | 6 |接受| 0.16287 | 0.64656 | 0.14162 | 0.15219 | nb | DistributionNames:正常  | | | | | | | | | | 宽度:南|
| 22 | 6 | Accept | 0.14943 | 75.578 | 0.14162 | 0.15219 | nb | DistributionNames: kernel | | | | | | | | | | Width: 1.6195 |
| 23 | 6 | Accept | 0.16287 | 0.49489 | 0.14162 | 0.15219 | | DistributionNames: normal | | | | | | | | | | Width: NaN |
| 24 | 6 | Accept | 0.14926 | 68.642 | 0.14162 | 0.15219 | nb | DistributionNames: kernel | | | | | | | | | | Width: 1.2371 |
| 25 | 6 | Accept | 0.16287 | 0.5124 | 0.14162 | 0.15219 | nb | DistributionNames: normal | | | | | | | | | | Width: NaN |
| 26 | 6 | Accept | 0.15609 | 58.267 | 0.14162 | 0.15219 | ensemble | Method: LogitBoost | | | | | | | | | | NumLearningCycles: 247 | | | | | | | | | | MinLeafSize: 1 |
| 27 | 6 | Accept | 0.16287 | 0.93385 | 0.14162 | 0.15219 | | DistributionNames: normal | | | | | | | | | | Width: NaN |
| 28 | 6 | Accept | 0.15554 | 4.3668 | 0.14162 | 0.15067 | tree | MinLeafSize: 7 |
| 29 | 6 |接受| 0.15087 | 127.01 | 0.14162 | 0.15067 | ensemble | Method: Bag | | | | | | | | | | NumLearningCycles: 289 | | | | | | | | | | MinLeafSize: 9 |
| 30 | 6 |接受| 0.15142 | 127.39 | 0.14162 | 0.15067 | ensemble | Method: Bag | | | | | | | | | | NumLearningCycles: 289 | | | | | | | | | | MinLeafSize: 9 |
|===========================================================================================================================================| | Iter | |活跃Eval培训| | |验证时间观察敏|估计分钟|学生| Hyperparameter:值| | | | | |损失结果工人&验证(sec) | |验证损失确认的损失  | | | |===========================================================================================================================================| | 31日| 6 |接受| 0.14177 | 2.6306 | 0.14162 | 0.14707 | |树MinLeafSize: 116 |
| 32 | 6 | Accept | 0.16287 | 1.1225 | 0.14162 | 0.14707 | nb | DistributionNames: normal | | | | | | | | | | Width: NaN |
| 33 | 6 |接受| 0.15737 | 56.258 | 0.14162 | 0.14707 | ensemble | Method: LogitBoost | | | | | | | | | | NumLearningCycles: 233 | | | | | | | | | | MinLeafSize: 5308 |
| 34 | 6 | Accept | 0.15158 | 97.559 | 0.14162 | 0.14707 | ensemble | Method: Bag | | | | | | | | | | NumLearningCycles: 214 | | | | | | | | | | MinLeafSize: 133 |
| 35 | 6 |接受| 0.1719 | 96.392 | 0.14162 | 0.14707 | ensemble | Method: Bag | | | | | | | | | | NumLearningCycles: 223 | | | | | | | | | | MinLeafSize: 1526 |
| 36 | 6 | Accept | 0.16287 | 0.42054 | 0.14162 | 0.14707 | nb | DistributionNames: normal | | | | | | | | | | Width: NaN |
| 37 | 6 | Accept | 0.14441 | 3.5932 | 0.14162 | 0.14598 | tree | MinLeafSize: 18 |
| 38 | 6 | Accept | 0.16287 | 0.34693 | 0.14162 | 0.14598 | nb | DistributionNames: normal | | | | | | | | | | Width: NaN |
| 39 | 6 | Accept | 0.14432 | 3.4661 | 0.14162 | 0.145 | tree | MinLeafSize: 19 |
| 40 | 6 | Accept | 0.14291 | 2.3121 | 0.14162 | 0.14321 | tree | MinLeafSize: 231 |
|===========================================================================================================================================| | Iter | |活跃Eval培训| | |验证时间观察敏|估计分钟|学生| Hyperparameter:值| | | | | |损失结果工人&验证(sec) | |验证损失确认的损失  | | | |===========================================================================================================================================| | 41 | 6 |接受| 0.15278 | 96.086 | 0.14162 | 0.14321 | nb | DistributionNames:内核  | | | | | | | | | | 宽度:3.5668 |
| 42 | 6 | Accept | 0.15068 | 1.9847 | 0.14162 | 0.14348 | tree | MinLeafSize: 412 |
| 43 | 6 | Accept | 0.14705 | 2.1122 | 0.14162 | 0.14343 | tree | MinLeafSize: 305 |
| 44 | 6 | Accept | 0.14186 | 2.3835 | 0.14162 | 0.14309 | tree | MinLeafSize: 168 |
| 45 | 6 | Accept | 0.16209 | 1.9821 | 0.14162 | 0.14302 | tree | MinLeafSize: 573 |
| 46 | 5 |接受| 0.15783 | 53.627 | 0.14135 | 0.14271 | ensemble | Method: LogitBoost | | | | | | | | | | NumLearningCycles: 211 | | | | | | | | | | MinLeafSize: 125 | | 47 | 5 | Best | 0.14135 | 3.1329 | 0.14135 | 0.14271 | tree | MinLeafSize: 63 |
| 48 | 4 | Accept | 0.15637 | 63.578 | 0.14135 | 0.14236 | ensemble | Method: LogitBoost | | | | | | | | | | NumLearningCycles: 252 | | | | | | | | | | MinLeafSize: 485 | | 49 | 4 | Accept | 0.1448 | 2.1012 | 0.14135 | 0.14236 | tree | MinLeafSize: 263 |
50 | | 3 |接受| 0.1513 | 114.35 | 0.14135 | 0.14224 |合奏|方法:袋  | | | | | | | | | | NumLearningCycles: 253  | | | | | | | | | | MinLeafSize: 13  | |===========================================================================================================================================| | Iter | |活跃Eval培训| | |验证时间观察敏|估计分钟|学生| Hyperparameter:值| | | | | |损失结果工人&验证(sec) | |验证损失确认的损失  | | | |===========================================================================================================================================| | 51 | 3 |接受| 0.14271 | 2.2737 | 0.14135 | 0.14224 | |树MinLeafSize: 133 |
| 52 | 6 | Accept | 0.14349 | 1.9707 | 0.14135 | 0.14224 | tree | MinLeafSize: 199 |
| 53 | 3 | Accept | 0.15337 | 1.6887 | 0.14135 | 0.14235 | tree | MinLeafSize: 441 | | 54 | 3 | Accept | 0.17869 | 1.049 | 0.14135 | 0.14235 | tree | MinLeafSize: 1821 | | 55 | 3 | Accept | 0.1785 | 0.9639 | 0.14135 | 0.14235 | tree | MinLeafSize: 3523 | | 56 | 3 | Accept | 0.18062 | 0.63917 | 0.14135 | 0.14235 | tree | MinLeafSize: 4359 |
| 57 | 6 | Accept | 0.14673 | 3.2067 | 0.14135 | 0.14207 | tree | MinLeafSize: 12 |
| 58 | 6 | Accept | 0.14238 | 2.3081 | 0.14135 | 0.14215 | tree | MinLeafSize: 177 |
| 59 | 5 | Accept | 0.16352 | 125.94 | 0.14135 | 0.1419 | ensemble | Method: Bag | | | | | | | | | | NumLearningCycles: 297 | | | | | | | | | | MinLeafSize: 823 | | 60 | 5 b| Accept | 0.14162 | 2.849 | 0.14135 | 0.1419 | tree | MinLeafSize: 50 |
|===========================================================================================================================================| | Iter | |活跃Eval培训| | |验证时间观察敏|估计分钟|学生| Hyperparameter:值| | | | | |损失结果工人&验证(sec) | |验证损失确认的损失  | | | |===========================================================================================================================================| | 最好61 | 5 | | 0.14113 | 2.6499 | 0.14113 | 0.14173 | |树MinLeafSize: 83 |
| 62 | 5 | Accept | 0.14178 | 2.9853 | 0.14113 | 0.14153 | tree | MinLeafSize: 40 |
| 63 | 5 | Accept | 0.14157 | 2.8701 | 0.14113 | 0.14153 | tree | MinLeafSize: 42 |
| 64 | 5 | Accept | 0.15886 | 1.7188 | 0.14113 | 0.14161 | tree | MinLeafSize: 532 |
| 65 | 5 | Accept | 0.14529 | 3.6593 | 0.14113 | 0.14151 | tree | MinLeafSize: 14 |
| 66 | 4 | Accept | 0.23856 | 41.472 | 0.14113 | 0.14151 | ensemble | Method: Bag | | | | | | | | | | NumLearningCycles: 209 | | | | | | | | | | MinLeafSize: 8676 | | 67 | 4 | Accept | 0.14702 | 4.0559 | 0.14113 | 0.14151 | tree | MinLeafSize: 10 |
| 68 | 4 | Best | 0.14058 | 2.8472 | 0.14058 | 0.14148 | tree | MinLeafSize: 30 |
| 69 | 4 | Accept | 0.14168 | 2.1868 | 0.14058 | 0.14143 | tree | MinLeafSize: 112 |
| 70 | 4 | Accept | 0.14072 | 2.9698 | 0.14058 | 0.14144 | tree | MinLeafSize: 28 |
|===========================================================================================================================================| | Iter | |活跃Eval培训| | |验证时间观察敏|估计分钟|学生| Hyperparameter:值| | | | | |损失结果工人&验证(sec) | |验证损失确认的损失  | | | |===========================================================================================================================================| | 71 | 4 |接受| 0.14117 | 2.8824 | 0.14058 | 0.14114 | |树MinLeafSize: 29 |
| 72 | 4 | Best | 0.14046 | 2.8853 | 0.14046 | 0.14112 | tree | MinLeafSize: 25 |
| 73 | 4 | Accept | 0.14184 | 2.8532 | 0.14046 | 0.14103 | tree | MinLeafSize: 24 |
| 74 | 4 | Accept | 0.14112 | 2.7998 | 0.14046 | 0.14102 | tree | MinLeafSize: 33 |
| 75 | 4 | Accept | 0.14331 | 3.0835 | 0.14046 | 0.141 | tree | MinLeafSize: 23 |
| 76 | 4 | Accept | 0.14089 | 2.9637 | 0.14046 | 0.14086 | tree | MinLeafSize: 31 |
| 77 | 4 | Accept | 0.14046 | 3.0017 | 0.14046 | 0.14083 | tree | MinLeafSize: 25 |
| 78 | 3 | Accept | 0.15093 | 91.952 | 0.14046 | 0.14085 | ensemble | Method: Bag | | | | | | | | | | NumLearningCycles: 222 | | | | | | | | | | MinLeafSize: 27 | | 79 | 3 b| Accept | 0.14046 | 2.9993 | 0.14046 | 0.14085 | tree | MinLeafSize: 25 |
| 80 | 6 | Accept | 0.14046 | 2.7739 | 0.14046 | 0.14073 | tree | MinLeafSize: 25 |
|===========================================================================================================================================| | Iter | |活跃Eval培训| | |验证时间观察敏|估计分钟|学生| Hyperparameter:值| | | | | |损失结果工人&验证(sec) | |验证损失确认的损失  | | | |===========================================================================================================================================| | 81 | 2 |接受| 0.18178 | 101.13 | 0.14046 | 0.14068 | nb | DistributionNames:内核  | | | | | | | | | | 宽度:868.86 | | 82 | |接受| 0.14184 | 3.2218 | 0.14046 | 0.14068 | |树MinLeafSize:24 | | 83 | 2 | Accept | 0.17807 | 0.82685 | 0.14046 | 0.14068 | tree | MinLeafSize: 3874 | | 84 | 2 | Accept | 0.15989 | 1.8729 | 0.14046 | 0.14068 | tree | MinLeafSize: 540 | | 85 | 2 | Accept | 0.15103 | 3.8835 | 0.14046 | 0.14068 | tree | MinLeafSize: 8 |
| 86 | 6 | Accept | 0.14046 | 2.5909 | 0.14046 | 0.14067 | tree | MinLeafSize: 25 |
| 87 | 6 | Accept | 0.14331 | 3.5433 | 0.14046 | 0.14067 | tree | MinLeafSize: 23 |
| 88 | 6 |接受| 0.23856 | 47.904 | 0.14046 | 0.14067 | ensemble | Method: Bag | | | | | | | | | | NumLearningCycles: 258 | | | | | | | | | | MinLeafSize: 12543 |
| 89 | 6 | Accept | 0.14914 | 59.665 | 0.14046 | 0.14067 | nb | DistributionNames: kernel | | | | | | | | | | Width: 0.37688 |
| 90 | 6 |接受| 0.15604 | 68.731 | 0.14046 | 0.14067 | ensemble | Method: LogitBoost | | | | | | | | | | NumLearningCycles: 262 | | | | | | | | | | MinLeafSize: 2 |

__________________________________________________________ 优化完成。总迭代:90总运行时间:577.1419秒训练和验证的总时间:2558.1542秒最佳观察学习者是一个树模型:MinLeafSize: 25观察验证损失:0.14046训练和验证时间:2.8853秒最佳估计学习者(返回模型)是一个树模型:MinLeafSize: 25估计验证损失:0.14067估计训练和验证时间:2.8824秒fitcauto显示文档

fitcautoによって返される最終的なモデルが,最適な推定学習器となります。モデルを返す前に,関数は学習デ,タ全体(adultdata),リストされている学习者(またはモデル)のタイプ,および表示されたハイパーパラメーター値を使用して,モデルの再学習を行います。

検定セットのパフォ,マンスの評価

混同行列と受信者動作特性(roc)曲線を使用して,返されたモデルmdlの性能を検定セット成人で評価します。

検定セットにいて,予測したラベルおよびスコア値を見けます。

[labels,scores] = predict(mdl,adulttest);

検定セットの結果から,混同行列を作成します。対角要素は,特定のクラスの正しく分類された。非対角要素は誤分類した観測値の@ @ンスタンスです。

confusionchart (adulttest.salary、标签)

検定セットの分類精度を計算します。精度は,検定セットの正しく分類された観測値の割合です。

精度= (1-loss(mdl,adulttest,“工资”)) * 100
准确度= 85.1513

ラベル“< = 50 k”に対応するスコア値のroc曲線をプロットするには,そのラベルに対応する分数の列を検索します。分数の列の順序は,学習済みモデルのクラスの順序と一致します。

mdl。一会
ans =2×1分类< = 50 k > 50 k

“< = 50 k”が最初にリストされているため,分数の最初の列がそのラベルに対応します。

Roc曲線をプロットし,曲線の下の領域(auc)を計算します。Roc曲線は,分類器の出力の異なるしきい値に対する真陽性率対偽陽性率を示します。しきい値にかかわらず真陽性率が常に1の完璧な分類器では,auc = 1になります。観測値をランダムにクラスに割り当てるバesc escナリ分類器では,auc = 0.5になります。大きなauc値(1に近い)は,分類器の性能が高いことを示します。

[X,Y,~,AUC] = perfcurve(adult .salary,scores(:,1),“< = 50 k”);情节(X, Y)标题(“ROC曲线”)包含(“假阳性率”) ylabel (“真阳性率”

AUC
Auc = 0.8947

精度およびauc値によれば,この分類器は検定デ,タに対して適切に機能しています。

参考

|||

関連するトピック