我正在寻找 MLJLinearModel 的替代方案,用于 Julia 中的线性回归。我读过一些博客,将
flux.jl
描述为执行 ML 任务的更好、更强大的包。但是,我还没有找到专门针对线性回归的详细教程。
请推荐执行此任务的方法或资源,以帮助我详细了解该过程。
我建议使用
GLM
来完成这项工作。举个例子:
using GLM, DataFrames
a, b = 2, 3;
dat = DataFrame(x=1:1000, y=a .* (1:1000) .+ b .+ randn(1000))
ols = lm(@formula(y ~ x), dat)
产生:
StatsModels.TableRegressionModel{LinearModel{GLM.LmResp{Vector{Float64}}, GLM.DensePredChol{Float64, LinearAlgebra.Cholesky{Float64, Matrix{Float64}}}}, Matrix{Float64}}
y ~ 1 + x
Coefficients:
───────────────────────────────────────────────────────────────────────────
Coef. Std. Error t Pr(>|t|) Lower 95% Upper 95%
───────────────────────────────────────────────────────────────────────────
(Intercept) 3.0607 0.0641567 47.71 <1e-99 2.9348 3.1866
x 1.99989 0.000111039 18010.65 <1e-99 1.99967 2.00011
───────────────────────────────────────────────────────────────────────────
你总是可以得到系数:
julia> coef(ols)
2-element Vector{Float64}:
3.0607023932922464
1.9998906641774181