我想使用p值作为选择标准来执行逐步线性回归,例如:在每个步骤中丢弃具有最高即最不重要的p值的变量,当所有值由某个阈值α显着定义时停止.
我完全知道我应该使用AIC(例如命令步骤或stepAIC)或其他一些标准,但我的老板不掌握统计数据并且坚持使用p值.
如果有必要,我可以编写自己的例程,但我想知道是否已经实现了这个版本.
这是关于回归正则化的初学者问题.关于弹性网和套索回归的大多数信息在线复制来自维基百科的信息或Zou和Hastie的原始2005年论文(通过弹性网进行正则化和变量选择).
简单理论的资源?是否有一个简单易懂的解释,关于它的作用,何时以及为什么需要进行重新定制,以及如何使用它 - 对于那些没有统计倾向的人?我理解原始论文是理想的来源,如果你能理解它,但是在某个地方更简单的问题和解决方案吗?
如何在sklearn中使用?有没有一步一步的例子说明为什么选择弹性网(过岭,套索,或只是简单的OLS)以及如何计算参数?sklearn上的许多示例只是将alpha和rho参数直接包含在预测模型中,例如:
from sklearn.linear_model import ElasticNet
alpha = 0.1
enet = ElasticNet(alpha=alpha, rho=0.7)
y_pred_enet = enet.fit(X_train, y_train).predict(X_test)
Run Code Online (Sandbox Code Playgroud)
但是,他们没有解释这些是如何计算的.你如何计算套索或网的参数?
我试图用高斯(和更复杂)函数拟合一些数据.我在下面创建了一个小例子.
我的第一个问题是,我做得对吗?
我的第二个问题是,如何在x方向上添加错误,即在观察/数据的x位置?
如何在pyMC中进行这种回归很难找到很好的指南.也许是因为它更容易使用一些最小二乘或类似的方法,但我最终有很多参数,需要看看我们如何约束它们并比较不同的模型,pyMC似乎是一个很好的选择.
import pymc
import numpy as np
import matplotlib.pyplot as plt; plt.ion()
x = np.arange(5,400,10)*1e3
# Parameters for gaussian
amp_true = 0.2
size_true = 1.8
ps_true = 0.1
# Gaussian function
gauss = lambda x,amp,size,ps: amp*np.exp(-1*(np.pi**2/(3600.*180.)*size*x)**2/(4.*np.log(2.)))+ps
f_true = gauss(x=x,amp=amp_true, size=size_true, ps=ps_true )
# add noise to the data points
noise = np.random.normal(size=len(x)) * .02
f = f_true + noise
f_error = np.ones_like(f_true)*0.05*f.max()
# define the model/function to be fitted.
def model(x, f):
amp = pymc.Uniform('amp', …
Run Code Online (Sandbox Code Playgroud) 有谁知道如何使用sns.regplot或sns.jointplot在seaborn中显示回归方程?regplot似乎没有任何参数可以传递给显示回归诊断,而jointplot只显示皮尔逊R ^ 2和p值.我正在寻找一种方法来查看斜率系数,标准误差和截距.
谢谢
我正在尝试学习使用R中的神经网络.作为一个学习问题,我在Kaggle一直使用以下问题:
别担心,这个问题是专为人们学习而设计的,没有任何奖励.
我从一个简单的逻辑回归开始,这非常适合我的脚.现在我想学习使用神经网络.我的训练数据如下所示(列:行):
- survived: 1
- pclass: 3
- sex: male
- age: 22.0
- sibsp: 1
- parch: 0
- ticket: PC 17601
- fare: 7.25
- cabin: C85
- embarked: S
Run Code Online (Sandbox Code Playgroud)
我的起始R代码如下所示:
> net <- neuralnet(survived ~ pclass + sex + age + sibsp +
parch + ticket + fare + cabin + embarked,
train, hidden=10, threshold=0.01)
Run Code Online (Sandbox Code Playgroud)
当我运行这行代码时,我收到以下错误:
Error in neurons[[i]] %*% weights[[i]] :
requires numeric/complex matrix/vector arguments
Run Code Online (Sandbox Code Playgroud)
我知道问题出在我提交输入变量的方式,但是我太过于理解我需要做些什么才能纠正这个问题.有人可以帮忙吗?
谢谢!
如何使用cross_val_score
回归?默认评分似乎是准确性,这对回归来说没有多大意义.据说我想使用均方误差,是否可以指定cross_val_score
?
试过以下两个但不起作用:
scores = cross_validation.cross_val_score(svr, diabetes.data, diabetes.target, cv=5, scoring='mean_squared_error')
Run Code Online (Sandbox Code Playgroud)
和
scores = cross_validation.cross_val_score(svr, diabetes.data, diabetes.target, cv=5, scoring=metrics.mean_squared_error)
Run Code Online (Sandbox Code Playgroud)
第一个生成负数列表,而均方误差应始终为非负数.第二个抱怨说:
mean_squared_error() takes exactly 2 arguments (3 given)
Run Code Online (Sandbox Code Playgroud) 我正在寻找一种基于2D数据集生成非线性(最好是二次)曲线的方法,用于预测目的.现在我正在使用我自己的普通最小二乘(OLS)实现来产生线性趋势,但我的趋势更适合曲线模型.我正在分析的数据是系统负载随着时间的推移.
这是我用来产生线性系数的等式:
我已经看过Math.NET Numerics和其他一些库,但它们要么提供插值而不是回归(这对我来说没用),或者代码不能以某种方式工作.
任何人都知道任何可以产生这种曲线系数的免费开源库或代码示例吗?
我有一个问题,它涉及在给定预测变量矢量时预测两个输出.假定一个预测向量的样子x1, y1, att1, att2, ..., attn
,它说x1, y1
是坐标和att's
连接到的发生在其他属性x1, y1
坐标.根据这个预测器集我想预测x2, y2
.这是一个时间序列问题,我试图使用多次回归来解决.我的问题是如何设置keras,它可以在最后一层给我2个输出.我已经解决了keras中的简单回归问题,并且代码在我的github中是可用的.
我们得到了一个lm对象,并希望提取标准错误
lm_aaa<- lm(aaa~x+y+z)
Run Code Online (Sandbox Code Playgroud)
我知道函数摘要,名称和系数.但是,摘要似乎是手动访问标准错误的唯一方法.你知道我怎么能输出se吗?
谢谢!
以下是我正在使用的所有变量:
str(ad.train)
$ Date : Factor w/ 427 levels "2012-03-24","2012-03-29",..: 4 7 12 14 19 21 24 29 31 34 ...
$ Team : Factor w/ 18 levels "Adelaide","Brisbane Lions",..: 1 1 1 1 1 1 1 1 1 1 ...
$ Season : int 2012 2012 2012 2012 2012 2012 2012 2012 2012 2012 ...
$ Round : Factor w/ 28 levels "EF","GF","PF",..: 5 16 21 22 23 24 25 26 27 6 ...
$ Score : int 137 …
Run Code Online (Sandbox Code Playgroud) regression ×10
python ×5
r ×4
statistics ×3
lm ×2
scikit-learn ×2
c# ×1
glm ×1
kaggle ×1
keras ×1
math ×1
p-value ×1
prediction ×1
pymc ×1
r-faq ×1
seaborn ×1