【问题标题】:Linear regression using flux.jl in julia在Julia中使用flux.jl进行线性回归
【发布时间】:2021-01-22 09:48:49
【问题描述】:

我正在为 Julia 中的线性回归寻找 MLJLinearModel 的替代方案。我已经阅读了一些将flux.jl 描述为执行 ML 任务的更好、更强大的包的博客。但是,我还没有找到专门针对线性回归的详细教程。 请推荐一种执行此任务的方法或可以帮助我详细了解该过程的资源。

提前谢谢你!

【问题讨论】:

    标签: julia linear-regression


    【解决方案1】:

    我建议使用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
    

    【讨论】:

      猜你喜欢
      • 1970-01-01
      • 2018-07-31
      • 1970-01-01
      • 2015-12-18
      • 2019-01-06
      • 2018-02-03
      • 2018-07-23
      • 2022-01-21
      相关资源
      最近更新 更多