由买买提看人间百态

topics

全部话题 - 话题: glmnet
1 (共1页)
D**u
发帖数: 288
1
来自主题: Statistics版 - R glmnet 大数据
我想用glmnet中的 CV.GLMNET 做一下Binary outcome 的variable selection,然后作
为input feed到GLM 中 fit。
想问一下如果大概有 500 个 Variable,1 million observation, 10G左右的大数据
, R 能handel的了么? 如果可以的话运行一次的时间,能否大概控制在1个小时之内?
有经验的朋友能否告知一下,谢啦!
D**u
发帖数: 288
2
来自主题: Statistics版 - R glmnet 大数据
多谢回复,刚看了一下,果真很多用glmnet的case都是针对small N的,这点学到了。
可是,除了glmnet之外,R似乎就剩stepAIC用做selection比较popular,问题是stepAIC
用greedy search,估计很慢,还有什么其他的方法么?
我们已经有一个SAS的analytic系统,正是用stepwise.可是现在想在R上做一个类似的
能处理大数据的Variable Selection方法。
我们也考虑过Revolution Analytics,可是现在还不想上这个,不知道可否。
E**A
发帖数: 85
3
知道能做lasso,但现在想对weighted least square(比如用triangular kernel取
weight),做L1 regularization,请问用glmnet能实现吗?怎么编啊?不行的话,用
LARS能做吗?
E**A
发帖数: 85
4
自问自答:
options1=glmnetSet;
options1.weights=权重矩阵,或者用函数赋值
fit1=glmnet(X,Y,'gaussian',options1);
哈哈
A*******s
发帖数: 3942
5
来自主题: Statistics版 - R glmnet 大数据
you have N>>P, probably GLMNET is an overkill.
use forward selection in SAS

内?
d*******0
发帖数: 113
6
日志如下:请达人不吝赐教!
谢谢!
* Installing *source* package 'glmnet' ...
This package requires a fortran 90 compiler. We assume
that your fortran 90 environment is set up appropriately.
Reference: Section on 'Using F95 code' in R-exts manual.
R configured for gfortran...
configure: creating ./config.status
config.status: creating src/Makevars
** libs
gfortran -fdefault-real-8 -ffixed-form -fpic -g -O2 -c newermultGLMnet.f90 -
o newermultGLMnet.o
gfortran -shared -L/usr/local/lib64 -o glmnet.so newermultGLMn... 阅读全帖
q**j
发帖数: 10612
7
来自主题: Statistics版 - R里面regression 变量选择的package?
打听一下,glmnet default给前面加一行constant。但是我的X matrix里面已经有了这
个常数了,能否改变glmnet?还是我自己要改变了?
还有
set.seed(1010)
n=1000;p=100
nzc=trunc(p/10)
x=matrix(rnorm(n*p),n,p)
beta=rnorm(nzc)
fx= x[,seq(nzc)] %*% beta
eps=rnorm(n)*5
y=drop(fx+eps)
px=exp(fx)
px=px/(1+px)
ly=rbinom(n=length(px),prob=px,size=1)
set.seed(1011)
cvob1=cv.glmnet(x,y)
以后
coef(cvob1)的结果和
coef(cvob1,s=cvob1$lambda.min)不一样。
我想第二个应该是我们最后想要的东西,但是第一个是什么?
最后,cv.glmnet里面如何能够取出来那个balance L1和L2 penalty的常数呢?

... ...你好歹应该先知道Lasso和Ridge是什么吧?
s******e
发帖数: 114
8
来自主题: Statistics版 - 新手请教logistic regression
我在用R 的glmnet做binary分类。training set 的 predictor variable 的个数(10k
in my case) 能超过 sample个数(1k in my case)吗?
我以前认为如果 p > n, model 一定overfit. 但是glmnet有feature selection 的
能力, 于是我试着把所有10k features都给glmnet(lasso option) 给出的model 有
5k个feature. 不是我想象的100~200个feature. 这个model能用吗?从model accuracy
(testing set in cv)是75%看, 好像还可以用。也许model 5k feature中只有前200
features的coefficient 比较大, 我还没来得急看。请大牛答疑。
d******g
发帖数: 130
9
来自主题: Statistics版 - 关于使用adaptive lasso中weight的问题
关于使用glmnet实现adaptive lasso,对于有大量input variable,考虑multi-
collinearity,想问问大家是不是先run ridge regression,将ridge regression得到的beta绝对值求倒数,然后作为weight赋值给"glmnet"中的"weight" option。 去实现adaptive LASSO.
非常感谢各种input!
d******g
发帖数: 130
10
来自主题: Statistics版 - 关于使用adaptive lasso中weight的问题
关于使用glmnet实现adaptive lasso,对于有大量input variable,考虑multi-
collinearity,想问问大家是不是先run ridge regression,将ridge regression得到的beta绝对值求倒数,然后作为weight赋值给"glmnet"中的"weight" option。 去实现adaptive LASSO.
非常感谢各种input!
P*****6
发帖数: 273
11
lasso 的使用本版讨论了不少,受益不浅,不过实际应用中还是遇到一个问题,不知高
手如何解决
我的基本问题跟前一段一位老兄相似,就是run不同次结果不同
我的数据只有50个左右,variable 却有400多个
我可以理解可能有多个参数coefficent类似,不过有时参数只有1-2个(可能是最
dominant的那1-2个),有时却有10几个,差别太大,结果中一般来说参数只有1-2个的
CV.err大
另一个解释是,听说glmnet 用coordinate descent 找lamda,可能不是每次都能找到
CV.err最小的
我的问题是:
1。如果我多run几次,选择CV最小的lamda建立的model 业界是否可以接受?我这个
model只是筛选,以后还要验证,所以多引几个variable在model中没有关系
2。使用glmnet有什么技巧可以使建出的model的重复性好些,比如选出的variable都在
10个左右。CV.err也更接近
w******e
发帖数: 142
12
来自主题: Statistics版 - 问大牛们一个logistic model的问题哈
根据个人有限的使用经验来说哈,
如果光说对 Y的估算,就算你有无比之大的X的multicolinearity,Y也是unbias的。但
是如果你要看X的系数来帮助你分析比如某个因子对Y的影响那么这个东西就要考虑一下
了。同时如果你关心Y的预测的精确性你也想要把这个东西处理一下,因为你X太多了,
in-sample很漂亮,但是out-of-sample可能就成渣了。当然,你面试的时候别人问这个
问题,肯定要说这个东西很严重啊,要如何如何处理来显示出你很懂的样子,呵呵。
大家有很多用的方法,比如ridge regression, pca,PLS, 直接step-wise variable
selection, glmnet或者用基于tree的一堆bagging 啊boosting, random forest之类
的。
前5个我实际用过,个人比较倾向于glmnet尤其是对于multi-level的logistic可以针对
不同的level来选取不同的variable.

??
y******0
发帖数: 24
13
We need a couple of data scientists to support our client’s strategic
analytics vision immediately. H1B sponsorship is available for this position
now or in the future if necessary. OPT/CPT candidates are welcome to apply
too. Please send your resume to [email protected]
Quaxigma is a data analytics startup company based in great Chicago area.
Our mission is deliver value to businesses by increasing data maturity as a
business asset and pioneering innovation by implementing analytical
platf... 阅读全帖
d*******0
发帖数: 113
14
来自主题: Mathematics版 - 请教machine learning达人
正在用glmnet这个包,遇到些问题,不知哪位大人比较熟悉,还请多多指教!
w**********y
发帖数: 1691
15
来自主题: Quant版 - quant好象前景是挺悲惨的
I am using SSD on my PC. The bottleneck for my case is number and speed of
CPUs. Cuz I need to try multi simulations with different parameters.
For some famous ML packages in R, it is very efficient, cuz the underlying
codes are either in C or Java. e.g., glmnet. But i do feel the need to
tranfer all work into either java or R someday.

copies
A*******s
发帖数: 3942
16
来自主题: Statistics版 - 请教一下ridge regression。
glmnet?
d******e
发帖数: 7844
17
来自主题: Statistics版 - 问个关于lasso的问题
LARS已经过时很久了,现在都是glmnet,用coordinate descent
d******e
发帖数: 7844
18
来自主题: Statistics版 - 问个关于lasso的问题
glmnet非常快。R里有现成的package,你直接用就行了。
o****o
发帖数: 8077
19
来自主题: Statistics版 - 问个关于lasso的问题
used GLMNET in some binary classification cases
consistently beat SVM, ridged DA, logistic regression and ensembled Flexible
Discriminant Analysis
just my own experience
F****n
发帖数: 3271
20
来自主题: Statistics版 - 问个关于lasso的问题
What do you mean by "beat"? Better accuracy? Generalizabiblity?
For a two-class case, if the data points can be separated by polynomials
then regression can always "beat" SVM. glmnet is regression.
B******5
发帖数: 4676
21
来自主题: Statistics版 - 多大的data算是large data set?
怎么做第二个?用glmnet?
d******e
发帖数: 7844
22
来自主题: Statistics版 - 多大的data算是large data set?
怎么可能用glmnet。
用的是随机优化或者并行计算。
q**j
发帖数: 10612
23
来自主题: Statistics版 - R里面regression 变量选择的package?
终于到了这一步了。请大家推荐一下各种regression variable selection tools。比如
正常regression里面哪个比较好?
另外在ridge, lasso,LAR下面哪个好。还有什么glmnet的?我全部尝试一边,可以汇报
实际效果。
另外问一下,如果用lasso来选择变量,但是用Ordinary least square 估计系数和cov
ariance matrix,这样做合理吗?我要estimate system of equations,不知道lasso这
样的有现成package给用么?普通regression有package systemfit干这个。多谢了。
d******e
发帖数: 7844
24
来自主题: Statistics版 - R里面regression 变量选择的package?
先回答第一个问题:
ridge根本不能做变量选择。
LARS只不过是Lasso的一个Greedy Solution的一种,已经过时了。
直接上glmnet就行了。
再回答第二个问题:
可以用Lasso来做变量选择,再用OLS来重新做estimation,这个就是现在流行的two-
stage model selection and estimation。
你说的system of equations是什么东东?是想找Ax=b的最小L1 norm解?这个就是
compressive sensing啊。直接把regularization设置的非常小,然后threshold一下得
到(n-1)个variable就行了。

比如
汇报
cov
lasso这
d******e
发帖数: 7844
d******g
发帖数: 130
26
非常感谢。你是说用glmnet中的"weight" option to assign weight?
d******e
发帖数: 7844
d******g
发帖数: 130
28
非常感谢。你是说用glmnet中的"weight" option to assign weight?
o****o
发帖数: 8077
29
来自主题: Statistics版 - 关于使用adaptive lasso中weight的问题
Isn't this the recommendation from Zou's original paper (2006 JASA)?

的beta绝对值求倒数,然后作为weight赋值给"glmnet"中的"weight" option。 去实现
adaptive LASSO.
D**u
发帖数: 288
30
来自主题: Statistics版 - 关于使用adaptive lasso中weight的问题
首先纠正一下楼主,应该是在glmnet用penalty.factor option,weight option 是针
对observation的。
再者,有谁能share一下experience,证实用这种方法(ridge output to lasso),确
实可以提高 model performance的么?
我得到的结果都很糟糕,根本不如直接用Lasso。
D**u
发帖数: 288
31
来自主题: Statistics版 - 关于使用adaptive lasso中weight的问题
又研究了一下,结果很棒,key is 在glmnet 的option中一定要加上standardize=
FALSE,因为大多数的结果都是不需要standardize的
d******e
发帖数: 7844
32
来自主题: Statistics版 - Question about LASSO in R
用glmnet吧,lars早都落伍了。
l***a
发帖数: 12410
33
多谢
R package是glmnet?
SAS我现在没有iml,自己写可能不好办吧
p******k
发帖数: 23
34
我现在花了很多时间在搞一个关于logistic + LASSO (SCAD,MCP).程序最大的问题是
很多时候 会不收敛 (特别是对高维数据), 要特别小心处理IRLS probability接近 0
和 1的情况。 对于intercept的处理也没有LS容易。 logistic要比LS复杂很多。
Friedman 和 Haste的 glmnet核心程序是用fortron写的, 里面用了很多goto挺难读得
,建议你直接看他们的文章. 如果R package能直接用的话,就直接用他们的吧.
w**********y
发帖数: 1691
35
我的问题是:
1。如果我多run几次,选择CV最小的lamda建立的model 业界是否可以接受?我这个
model只是筛选,以后还要验证,所以多引几个variable在model中没有关系
--一般不推荐用min而是用lambda.1se吧?特别你的目的只是筛选..
2。使用glmnet有什么技巧可以使建出的model的重复性好些,比如选出的variable都在
10个左右。CV.err也更接近
N******n
发帖数: 3003
36
这个solution path 是用glmnet做的吗?

lambda
c*******o
发帖数: 8869
37
来自主题: Statistics版 - R glmnet 大数据
哎, 估计这个问题最终是无解,R本来就是Ross和Bob他们搞出来给本科生上课用的

stepAIC
D**u
发帖数: 288
38
来自主题: Statistics版 - R glmnet 大数据
是挺麻烦的,又看了下bigmemory和ff,发现glm虽然可以做,但是data manipulation中
很多用到是与Base R 不同的语句。好麻烦啊!难道只有Revolution R了么?
s*r
发帖数: 2757
39
来自主题: Statistics版 - R glmnet 大数据
你搞各2 way interaction,1m就不多了

stepAIC
w******e
发帖数: 142
40
来自主题: Statistics版 - 找risk factors怎么做
简单粗暴的办法是用
R里面的glmnet
然后family=multinomial直接就用它给的变量选择和shrinkage就可以了。
当然那个cross-validation的图还是要看一下,如果是U型的就比较好,如果是单调的
那就是数据很烂,不适合直接做回归。
c***z
发帖数: 6348
41
来自主题: Statistics版 - 请问OLS怎样选择feature sets?
step wise, ridge, lasso, elastic net, etc
check the R package glmnet
may want to use sparse matrix
w******e
发帖数: 142
42
还有一种方法是不要选最低cross-validation MSE的lambda来变量选择,而用1个SD以
外的变量更少的lambda来选变量再重新OLS. glmnet package默认的coef(model)出来
的就是1 sd away的系数。忘了在讲义还是书上看见过原作者这样提出来过。
i****f
发帖数: 979
43
来自主题: Statistics版 - 用elastic net 做variable selection 一问
我用的是glmnet 的package
然后选lambda是用的package自带的crossvalidation的方法,选的是lambda.min,
对于output有些不明白,一个variable没有选出来。而且不明白为什么lambda.min 选
的是1.203。那样的话只能解释0% deviation,请问为什么R会这么选?
Df %Dev Lambda
[1,] 0 0.00000 1.20300
[2,] 2 0.01165 1.14800
[3,] 3 0.02536 1.09600
[4,] 3 0.03902 1.04600
[5,] 3 0.05167 0.99850
[6,] 4 0.07220 0.95310
[7,] 5 0.09842 0.90980
[8,] 6 0.12580 0.86840
[9,] 6 0.15160 0.82900
[10,] 6 0.17570 0.79130
[11,] 7 0.19860 0.75530
[12,] 11 0.22150 0.72100... 阅读全帖
c***z
发帖数: 6348
44
1. ridge or lasso
2. PCA if your clients know math
try glmnet in R
P*****6
发帖数: 273
45
如果用glmnet的话, 好像有elastic net. 它比lasso会保留更多的变量
无论lasso or elastic net, they are biased. 如果你的features小于100的话,AIC
and BIC for generally linear regression may be also OK.
c***z
发帖数: 6348
46
来自主题: DataSciences版 - feature selection的方法求教
try lasso/ridge (glmnet package in R)
c***z
发帖数: 6348
47
来自主题: DataSciences版 - feature selection的方法求教
try lasso/ridge (glmnet package in R)
t*****e
发帖数: 364
48
来自主题: DataSciences版 - 问个feature selection的问题
feature selection 一般分两类: filtering based and wrapper/embedded based.
forward stepwise 对5万个features 因为计算时间就可以淘汰了,lasso 为什么不行
?面试官说不行是因为计算时间还是因为选出来的feature predictive performance
差? R 里面的glmnet package 用坐标下降,50k feature 应该挺快的。至于
predictive performance更没有绝对的了, 都是dataset dependent. 如果面试官懂的
话,他应该听说过no free lunch theorem. 也许他希望你说用filtering based
methods like correlation, mutual info, etc?
s********0
发帖数: 51
49
来自主题: DataSciences版 - 请教大家一个做feature的问题
现在有一个survey,上面要填写一些个人信息比如姓名等,还要填写当前工作title,
公司类型等等,然后根据这个表格做feature,再做machine learning预测这个人会不
会买某产品。一个办法是做很多的dummy variable,比如把title 变成is_manager, is
_ceo等,可问题是这个title很可能有上千种,而且还有很多人填写错误等问题,所以
会有很多的dummy variable做出来,并且大多数都出现得非常少 (比如manager写错成
manger可能只有一个人写错)。dummy variable做出来之后,用glmnet来预测的效果其
实很差,比直接用logistic regression做的还差。请问大家遇到这个问题是怎么做的
呢?
还有一个想法是把title的一些level给合并成一个,比如把manager 和 manger合并成
一个。可是这样的问题如何通过算法来实现呢?
s********0
发帖数: 51
50
来自主题: DataSciences版 - 请教大家一个做feature的问题
非常感谢楼上几位的回复!那么除了合并一些level之外,对于这类问题还有没有别的
建议呢?现在做了一些diagnosis的工作,发现用glmnet的方法,即使penalty = 0,
training 和 testing的error仍然都非常的高,似乎模型有严重的under fitting。
Random Forest也试过,结果也不好。
1 (共1页)