小编Aks*_*rma的帖子

使用 Flux.jl 进行逻辑回归

我有一个数据集,其中包含 2 个科目的学生成绩以及学生是否被大学录取的结果。我需要对数据执行逻辑回归并找到最佳参数 \xce\xb8 以最小化损失并预测测试数据的结果。我不想在这里构建任何复杂的非线性网络。

\n\n

数据如下所示\n在此输入图像描述

\n\n

我为逻辑回归定义了损失函数,这样效果很好

\n\n
predict(X) = sigmoid(X*\xce\xb8)\nloss(X,y) = (1 / length(y)) * sum(-y .* log.(predict(X)) .- (1 - y) .* log.(1 - predict(X)))\n
Run Code Online (Sandbox Code Playgroud)\n\n

我需要最小化这个损失函数并找到最佳的\xce\xb8。我想使用 Flux.jl 或任何其他使它更容易的库来完成此操作。 \n在阅读示例后我尝试使用 Flux.jl 但无法最大程度地降低成本。

\n\n

我的代码片段:

\n\n
function update!(ps, \xce\xb7 = .1)\n  for w in ps\n    w.data .-= w.grad .* \xce\xb7\n    print(w.data)\n    w.grad .= 0\n  end\nend\n\nfor i = 1:400\n  back!(L)\n  update!((\xce\xb8, b))\n  @show L\nend\n
Run Code Online (Sandbox Code Playgroud)\n

machine-learning julia logistic-regression flux-machine-learning

3
推荐指数
1
解决办法
1051
查看次数