随着tensorflow的不断更新,直接按照nmt的教程搭建nmt环境会报错的。。。因此,需要一些不太好的办法来避免更多的问题出现。
tensorflow看来在ubuntu和debian中运行是没有问题的。因此,选用ubuntu作为环境系统。
由于tf-nightly越来越远了,因此,先使用tf-1.4让程序能够正常运行再考虑其他的问题吧。
python选用默认的2.7,安装easy-pip。
有了python的支持,我们同样需要使用指定版本的tf,一边支持nmt对应的版本(否则会报错,无法正常使用).
pip install tensorflow==1.4.0(这里只安装了CPU版本)

git clone https://github.com/tensorflow/nmt/
使用 git branch -a 查看所下载的nmt的所有分支。
切换到tf-1.4版本:
git checkout -b tf-1.4 origin/tf-1.4
Branch tf-1.4 set up to track remote branch tf-1.4 from origin.
Switched to a new branch ‘tf-1.4’
至此,我们可以按照nmt教程去做了:
mkdir /tmp/nmt_model
python -m nmt.nmt \
–src=vi –tgt=en \
–vocab_prefix=/tmp/nmt_data/vocab \
–train_prefix=/tmp/nmt_data/train \
–dev_prefix=/tmp/nmt_data/tst2012 \
–test_prefix=/tmp/nmt_data/tst2013 \
–out_dir=/tmp/nmt_model \
–num_train_steps=12000 \
–steps_per_stats=100 \
–num_layers=2 \
–num_units=128 \
–dropout=0.2 \
–metrics=bleu

可以看到,上面的参数把越南语翻译为英语了.反向翻译,则只需要调换,即:
–src=en –tgt=vi
由于这个过程比较慢,我们可以用tf的cgi接口查看状态:
tensorboard –port 22222 –logdir /tmp/nmt_model/
这样,就可以访问本地22222端口来看具体训练状态了.
我在三代笔记本i5训练了小规模语料库,不到10个小时。

接下来,可以翻译一些文本了:
cat > /tmp/my_infer_file.vi
# (copy and paste some sentences from /tmp/nmt_data/tst2013.vi)

python -m nmt.nmt \
–out_dir=/tmp/nmt_model \
–inference_input_file=/tmp/my_infer_file.vi \
–inference_output_file=/tmp/nmt_model/output_infer

cat /tmp/nmt_model/output_infer # To view the inference as output
参考网文:
nmt官方教程

Python查看库版本命令

git切换分支

git删除本地分支

tf安装指定版本

tensorflow nmt基本配置(tf-1.4)的更多相关文章

  1. Tensorflow开发环境配置及其基本概念

    Tensorflow开发环境配置及其基本概念 1.1. 安装Tensorflow开发环境 1.1.1. 安装pycharm 1.1.2. 安装pythe3.6 1.1.3. 安装Tensorflow ...

  2. TensorFlow NMT的数据处理过程

    在tensorflow/nmt项目中,训练数据和推断数据的输入使用了新的Dataset API,应该是tensorflow 1.2之后引入的API,方便数据的操作.如果你还在使用老的Queue和Coo ...

  3. TensorFlow NMT的词嵌入(Word Embeddings)

    本文转载自:http://blog.stupidme.me/2018/08/05/tensorflow-nmt-word-embeddings/,本站转载出于传递更多信息之目的,版权归原作者或者来源机 ...

  4. Tensorflow使用环境配置

    windows中不能直接使用Tensorflow,所以得费点劲.(2016.11.29更新,TensorFlow 0.12 中已加入初步的 Windows 原生支持) 先是直接使用了<Deep ...

  5. Ubuntu 14.04 关于 TensorFlow 环境的配置

    Ubuntu 14.04 关于 TensorFlow 环境的配置   本教程截图于 TensorFlow 官方文档中文版  https://github.com/jikexueyuanwiki/ten ...

  6. Tensorflow滑动平均模型tf.train.ExponentialMovingAverage解析

    觉得有用的话,欢迎一起讨论相互学习~Follow Me 移动平均法相关知识 移动平均法又称滑动平均法.滑动平均模型法(Moving average,MA) 什么是移动平均法 移动平均法是用一组最近的实 ...

  7. import tensorflow 报错: tf.estimator package not installed.

    import tensorflow 报错: tf.estimator package not installed. 解决方案1: 安装 pip install tensorflow-estimator ...

  8. tensorflow笔记6:tf.nn.dynamic_rnn 和 bidirectional_dynamic_rnn:的输出,output和state,以及如何作为decoder 的输入

    一.tf.nn.dynamic_rnn :函数使用和输出 官网:https://www.tensorflow.org/api_docs/python/tf/nn/dynamic_rnn 使用说明: A ...

  9. 【深度学习】在linux和windows下anaconda+pycharm+tensorflow+cuda的配置

    在linux和windows下anaconda+pycharm+tensorflow+cuda的配置 在linux和windows下anaconda+pycharm+tensorflow+cuda的配 ...

随机推荐

  1. 学大伟业 Day 3 培训总结

    今天讲的字符串: 不多说,直接看题 一.表达式求值 题目大意: 输入一行一个表达式,计算其答案 表达式包含非负整数.加减乘除.括号 两种做法 ·栈 ·表达式树 这里更推荐表达式树,因为栈是先压进去,逆 ...

  2. HDU 1060 Leftmost Digit(求N^N的第一位数字 log10的巧妙使用)

    Leftmost Digit Time Limit: 2000/1000 MS (Java/Others)    Memory Limit: 65536/32768 K (Java/Others)To ...

  3. Git命令篇

    前文: Git有三种状态,你的文件可能处于其中之一:已提交(committed),已修改(modiffied)和已暂存(staged) 三个工作区域概念:Git仓库.工作目录以及暂存区 Git保存信息 ...

  4. 用$(this)选择其下带有class的子元素

    $(this).find('.son').removeClass("disn")

  5. Sass 基础(六)

    join() 函数 join()函数是将两个列表连接合并成一个列表. >>join(10px 20px, 30px 40px) (10px 20px 20px 40px) >> ...

  6. ABAP术语-BAPI Explorer

    BAPI Explorer 原文:http://www.cnblogs.com/qiangsheng/archive/2007/12/24/1012110.html Tool for developi ...

  7. 为什么我用了$().height()还是对不齐呢?

    有一个这样的需求:有两个显示内容的框,要使他们高度一致,因为他们存放的内容多少和结构不一样,左边内容少,右边内容多.这就导致了右边会比左边高,解决方法就是超出部分用滚轮显示,那这时就先要调整右边的高度 ...

  8. virtual box 故障修复

    vmware ,virtual box等虚拟化环境为一台系统同时允许运行多台系统成为可能准备了技术支持. 通过软件化的平台虚构出硬件设备的驱动,可谓虚拟化技术应用非常广泛. 在平常的虚拟机启动过程中经 ...

  9. 浅谈React虚拟DOM

    为什么要使用虚拟DOM 因为浏览器的DOM渲染是非常消耗性能的,很低效,我们使用虚拟DOM是为了提高DOM的渲染性能: 什么是虚拟DOM 虚拟DOM就是把真实的DOM树通过createElement转 ...

  10. 使用Win32DiskImager后重置SD卡

    再1.Windows diskpart命令 diskpart 2.列出所有的磁盘 lisk disk 3.选择U盘所在的磁盘 4.清除磁盘 clean 5.创建主分区 create primary p ...