ラッパー法でのfunの定義の仕方について
조회 수: 9 (최근 30일)
이전 댓글 표시
特徴選択を行い、そこで選ばれた因子から順序ロジステックモデルを作ろうと思っています。そこでカスタム基準を使用した逐次特徴選択を使おうと思います。構文はinmodel = sequentialfs(fun,X,y)です。そこでこのfunを定義する必要があると思うのですが、どう定義したら良いですか?
よろしくおねがいします。
댓글 수: 0
답변 (2개)
michio
2020년 11월 19일
の例にある
fun = @(XT,yT,Xt,yt)loss(fitcecoc(XT,yT),Xt,yt);
が fun 定義の一例です。ここでは無名関数として定義していますが、別途関数ファイルに XTRAIN,ytrain,XTEST,ytest を入力とする関数を定義し(例えば myFcn.m)
fun = @myFcn
と定義することもできるかと思います。
댓글 수: 7
michio
2020년 12월 11일
(一度以下の”回答”にコメントしましたが削除し、こちらに転記します)
スクリプトを記載頂きありがとうございます。
今回実施されたいのは順序ロジステックモデルを作るにあたって、sequentialfs を使ったカスタム基準による逐次特徴選択であり、ご質問はその為に必要な fun (カスタム基準を返す関数) の定義方法だと理解しております。
今回頂いたコードはそのカスタム基準を返す関数(の一部)ということでしょうか?事前に fscnca により特徴量を選択さておりますが、その選択された中から sequentialfs でさらに絞り込むことを想定されていますか?
頂いたコードだけを拝見するとコード内で model が定義されていないために model.Rsquared.Adjusted との呼び出しにてエラーがでいると見えてしまいますが、いかがでしょうか?
참고 항목
카테고리
Help Center 및 File Exchange에서 Model Assessment에 대해 자세히 알아보기
Community Treasure Hunt
Find the treasures in MATLAB Central and discover how the community can help you!
Start Hunting!