当前位置: 首页 > news >正文

【机器学习】Flux.jl 生态

官方API https://fluxml.ai/Flux.jl/stable/ecosystem/

官网给出了 Flux’s model-zoo, 是一个庞大的案例库, 可以提供直观的参考, 并且还列举了基于 Flux.jl 开发的第三方库。

机器视觉

  1. ObjectDetector.jl YOLO 抓取的“预备跑” 图像
  2. Metalhead.jl 用于迁移学习的机器视觉模型
  3. UNet.jl U型网络

自然语言过程

  1. Transformer.jl GPT 模型关键环节。
  2. TextAnalysis.jl 文本分析器。

强化学习

  1. AlphaZero.jl Deepmind AlphaZero 算法
  2. ReinforcementLearning.jl Julia 语言环境中的强化学习研究包

图论学习

  1. GraphNeuralNetworks.jl 灵活的图神经网络工具
  2. GeometricFlux.jl 首款Julia语言中的图神经网络
  3. NeuralOperators.jl 可用于求解PDE工具代替了有限元方法
  4. SeaPearl.jl 利用约束规划求解基于图输入 的强化学习

时间序列

  1. FluxArchitectures.jl 为时间序列预测建立的高级网络架构

鲁棒神经网络

  1. RobustNeuralNetworks.jl 包括系列的满足鲁棒性约束的神经网络

数据集

  1. MLDatasets.jl 下载解包机器学习的相关数据
  2. GraphMLDatasets.jl 图论相关的机器学习数据集

小试牛刀:线性回归最小二乘法

min ⁡ W , b 1 N ∑ i = 1 N ( w x i + b − y i ) 2 \min_{W,b} \frac{1}{N}\sum_{i=1}^N (wx_i+b-y_i)^2 W,bminN1i=1N(wxi+byi)2

using Flux
using Plotsx = hcat(collect(Float32, -3:0.1:3)...)
f(x) = @. 3x + 2;
y = f(x)
x = x .+ reshape(rand(Float32, 61), (1, 61));
custom_model(W, b, x) = @. W*x + b
W = rand(Float32, 1, 1)
b = [0.0f0]
function custom_loss(W, b, x, y)ŷ = custom_model(W, b, x)sum((y .- ŷ).^2) / length(x)
end;
flux_model = Dense(1 => 1)
dLdW, dLdb, _, _ = gradient(custom_loss, W, b, x, y);
function train_custom_model()dLdW, dLdb, _, _ = gradient(custom_loss, W, b, x, y)@. W = W - 0.1 * dLdW@. b = b - 0.1 * dLdb
end;
for i = 1:40train_custom_model()
end
W, b, custom_loss(W, b, x, y)
plot(reshape(x, (61, 1)), reshape(y, (61, 1)), lw = 3, seriestype = :scatter, label = "Data", title = "Linear Regression", xlabel = "x", ylabel= "y")
plot!((x) -> b[1] + W[1] * x, -3, 3, label="Fitting", lw=2)

在这里插入图片描述


http://www.mrgr.cn/news/36243.html

相关文章:

  • 静电势能(electrostatic potential energy)和电势(electric potential)
  • Windows (rust) vulkan 画一个三角形: 窗口创建与渲染初始化
  • 如何创建一个包含多个列的表?
  • keil的debug功能
  • Pycharm Python PyAutoGUI包 返回 “ImageNotFoundException“问题
  • Qemu开发ARM篇-6、emmc/SD卡AB分区镜像制作
  • docker搭建clickhouse并初始化用户名密码
  • 算法复杂度
  • 多层时间轮实现延迟消息
  • linux网络编程8
  • 使用Docker和Macvlan驱动程序模拟跨主机跨网段通信
  • 代理有什么用处?
  • 数据结构const char *INSTNAME[]
  • C++——输入一个字符串,把其中的字符按逆序输出。如输入LIGHT,输出THGIL。用string方法。
  • 个人文章汇总
  • 类与对象—python
  • 有威胁的武器武装检测系统源码分享
  • 前端接口报错302 [已解决]
  • 深入理解及如何使用main函数参数
  • MySQL高阶1965-丢失信息的雇员