Lingvo在 Tensorflow 中构建神经网络的框架

联合创作 · 2023-09-26 06:08

Lingvo 是一个用于在 Tensorflow 中构建神经网络的框架,特别是序列模型。

快速开始

安装

设置 Lingvo 有两种方法:通过 pip 安装固定版本,或者克隆仓库并使用 bazel 构建它。Lingvo 为每种情况都提供了 Docker 配置。

如果您只想按原样使用框架,最简单的方法是通过 pip 安装它。这使得使用 Lingvo 框架的固定版本开发和训练自定义模型成为可能。但是,很难修改框架代码或实现新的自定义操作。

如果您想进一步开发框架并可能贡献拉取请求,则应避免使用 pip 并用克隆仓库进行替代。

pip 安装:

该 Lingvo 的 pip 封装可以通过pip3 install lingvo安装

从源代码构建:

先决条件是:

  • 安装 TensorFlow 2.5
  • 一个C++编译器(只正式支持 g++ 7.3)
  • bazel 构建系统。

git clone存储库,然后使用 bazel 直接构建和运行目标。Codelab 中python -m module命令需要映射到bazel run命令上。

Docker:

Docker 配置可用于这两种情况:

运行 MNIST 图像模型

准备输入数据

pip:

mkdir -p /tmp/mnist
python3 -m lingvo.tools.keras2ckpt --dataset=mnist

bazel:

mkdir -p /tmp/mnist
bazel run -c opt //lingvo/tools:keras2ckpt -- --dataset=mnist

将在以下文件中创建/tmp/mnist

  • mnist.data-00000-of-00001: 53MB
  • mnist.index: 241 字节

运行模型

pip:

cd /tmp/mnist
curl -O https://raw.githubusercontent.com/tensorflow/lingvo/master/lingvo/tasks/image/params/mnist.py
python3 -m lingvo.trainer --run_locally=cpu --mode=sync --model=mnist.LeNet5 --logdir=/tmp/mnist/log

bazel:

(cpu) bazel build -c opt //lingvo:trainer
(gpu) bazel build -c opt --config=cuda //lingvo:trainer
bazel-bin/lingvo/trainer --run_locally=cpu --mode=sync --model=image.mnist.LeNet5 --logdir=/tmp/mnist/log --logtostderr

 

浏览 13
点赞
评论
收藏
分享

手机扫一扫分享

编辑 分享
举报
评论
图片
表情
推荐
点赞
评论
收藏
分享

手机扫一扫分享

编辑 分享
举报