[問題] sas: proc glmselect

看板Statistics作者 (躺望天空)時間9年前 (2016/09/05 10:44), 9年前編輯推噓0(006)
留言6則, 1人參與, 最新討論串1/1
各位大大們好 <(_ _)> 小弟最近在使用sas的proc glmselect跑lasso (變項篩選) (data set: 有20筆samples, 變項大約90個) 遇到幾個問題想請高手們相助Q_Q 1. 找不到語法可以直接output出來lasso篩選到的變項 (我想output成一個data set, 再用proc export把結果存成excel放在電腦裡) 2. 不知道為什麼, 用相同的dataset和code (一樣是selection=lasso), 卻偶爾會跑出不同的結果…大約會有1,2個變項不一樣@ @ code如下: ---------------------------------------------------------------------- PROC GLMSELECT DATA=testdata; MODEL Y= _11 _12 _14 _15 _16 _17 _18 _19 _20 _21 _22 _23 _24 _25 _26 _27 _28 _29 _30 _31 _32 _33 _35 _36 _37 _38 _39 _40 _41 _42 _43 _44 _45 _47 _48 _49 _51 _53 _55 _56 _57 _58 _59 _60 _65 _66 _67 _68 _69 _70 _72 _73 _74 _75 _76 _77 _78 _79 _80 _81 _82 _83 _84 _88 _89 _90 _91 _92 _93 _94 _95 _96 _97 _98 _99 / SELECTION=LASSO (STOP=NONE CHOOSE=CV) ; OUTPUT OUT=TEST; RUN; QUIT; ----------------------------------------------------------------------- 在此先謝過各位大大們了Q______Q -- ※ 發信站: 批踢踢實業坊(ptt.cc), 來自: 223.136.175.153 ※ 文章網址: https://www.ptt.cc/bbs/Statistics/M.1473043467.A.40F.html ※ 編輯: x1214 (140.112.1.187), 09/06/2016 10:27:23

09/07 01:10, , 1F
查了一下,CHOOSE=CV是使用交叉驗證選擇變數,可能
09/07 01:10, 1F

09/07 01:10, , 2F
在做資料切割時,種子數是隨機的,所以每次結果會不同
09/07 01:10, 2F

09/07 01:14, , 3F
用交叉驗證的篩選結果會相對穩健,不過還是受限lasso
09/07 01:14, 3F

09/07 01:15, , 4F
只是"篩選",性質跟重要的變數有些不同
09/07 01:15, 4F
謝謝樓上大大, 後來發現是因為在 vairable數量>sample size的時候 Lasso容易會沒有單一解Q Q 再次感謝~ ※ 編輯: x1214 (140.112.1.187), 09/10/2016 09:37:05

09/12 00:51, , 5F
相同演算法下即使變數數量大於樣本數,還是單一解
09/12 00:51, 5F

09/12 00:53, , 6F
除非使用含隨機性質的收斂演算法
09/12 00:53, 6F
文章代碼(AID): #1NpDmBGF (Statistics)