機械学習を用いたクラ​ス分けをする際に、各​クラスに重みづけする​ことは可能ですか?

例えば、ある複数の予測因子をもとに、A, B, Cに分類するといった問題があるとき、ふつうは全てのクラスまんべんなく正答率をあげるよう学習すると思うのですが、Cのものは確実にCに分類したい といった重みを変更して学習するといったことはできないのでしょうか?

 Respuesta aceptada

michio
michio el 14 de Ag. de 2019
Editada: michio el 14 de Ag. de 2019

2 votos

学習を行う関数実行時にコスト行列( 'Cost' オプション)を使う方法がまず有効かと思います。
例下記ページで 'Cost' の項を確認してみてください。
Webセミナーで解説した部分がありますので参考にしてみてください。
k近傍法で具体的にどんな計算が行われているかについては、以下も参考になるかもしれません。

4 comentarios

Sho Nitta
Sho Nitta el 14 de Ag. de 2019
ご回答ありがとうございます。
SVMやk近傍だけでなく、決定木などでもCost オプションなどを使うことはできますか?
michio
michio el 14 de Ag. de 2019
にも Cost オプションございます。
Sho Nitta
Sho Nitta el 9 de Sept. de 2019
'Cost', [0 1 1 ; 1 0 1; 1 1 0] でコストを定義すると思うのですが、数字の意味がよくわかりません(1以上の値も指定できるようですが)
また、アンサンブル学習 fitcensembleにもcostが存在しますが、使い方は同じでしょうか?
michio
michio el 9 de Sept. de 2019
Editada: michio el 9 de Sept. de 2019
アンサンブル学習でも使い方は同じです。
Cost の数値がどんな影響を与えるかはアルゴリズム次第なので一概には言えないのですが、定性的には「大きな数値を与えればその誤判別が下がる」ような学習結果となるイメージです。(ビデオで説明されているまんま、、ですね、すいません。)
最近傍法であれば:
サポートベクターマシンであれば以下が参考になるかもしれません。

Iniciar sesión para comentar.

Más respuestas (0)

Preguntada:

el 14 de Ag. de 2019

Editada:

el 9 de Sept. de 2019

Community Treasure Hunt

Find the treasures in MATLAB Central and discover how the community can help you!

Start Hunting!