以作者使用的toy en-de数据集微调工作为示例,该数据集作者已经放在了experiments/example/data/raw,这里直接用

  • 首先下载代码,配置环境不再赘述,按照开源代码进行
  • 接着从linzehui/mRASP (github.com)中下载一些公开资源:Vocab; BPE Code; mRASP-PC32
  • 数据集
  • 模型

能看到词表大小为32000

vocab和codes放在experiments/example/vocab下,需要手动新建,删掉.txt后缀

  • 之后开始改配置文件

    ${PROJECT_ROOT}/experiments/example/configs/preprocess/train_en2de.yml和${PROJECT_ROOT}/experiments/example/configs/preprocess/test_en2de.yml

前四行的path改为:自己的项目路径/experiments/example/相应目录

subword_bpe_merge_ops改为32000

raw_data_path: /home/bit/data/ymz/mRASP-master/experiments/example/data/raw/train
merged_output_path: /home/bit/data/ymz/mRASP-master/experiments/example/merged_data/en2de
output_main_path: /home/bit/data/ymz/mRASP-master/experiments/example/data/prep/en2de/train
final_vocab_path: /home/bit/data/ymz/mRASP-master/experiments/example/vocab
configs_subdir: configs
cleaned_subdir: cleaned
logs_subdir: logs
vocab_subdir: vocab
output_subdir: output
preprocess_steps_list: clean:subword
file_prefix: train
learn: false
subword_bpe_merge_ops: 32000
pairs: en_de
directions: en2de
languages: en;de
default_pairs:deduplicate: falsekeep_lines_percent: '1.0'shuffle: false
default_langs:do_normalize_punctuations: truetokenizer: MosesTokenizer
src: en
trg: de

此时,按照作者给出的命令执行依然会报错,错误内容具体看生成的log文件

bash ${PROJECT_ROOT}/preprocess/multilingual_preprocess_main.sh ${PROJECT_ROOT}/experiments/example/configs/preprocess/train_en2de.yml

我的问题主要出现在第二个log:提示split: 无效的块数: “

INPUT DIR: /home/bit/data/ymz/mRASP-master//experiments/example/data/prep/en2de/train/cleaned
OUTPUT DIR: /home/bit/data/ymz/mRASP-master//experiments/example/data/prep/en2de/train/output
Now have read all input data
split all data to different process
split: 无效的块数: “”
Wait all process end
All process ended
Write the output to the standard output
cat: '/mp/out/in_file*': 没有那个文件或目录
Now have read all input data
split all data to different process
split: 无效的块数: “”
Wait all process end
All process ended
Write the output to the standard output
cat: '/mp/out/in_file*': 没有那个文件或目录
SUBDIR: en_de done

问题出在mRASP-master/preprocess/tools/subword/multilingual_apply_subword_vocab.sh脚本缺少num_cpus参数,修改:

在mutiprocess_pipeline命令前加入num_cpus=2;代表两个线程执行(?)

之后,还是这个log提示:multilingual_apply_subword_vocab.sh脚本的codes_file路径有问题

codes_file定义如下:表明两个参数传递出了问题,我也没系统学过shell命令不太清楚原理

codes_file=${final_vocab_path}/codes.bpe.${subword_bpe_merge_ops}

但是直接简单点,把codes_file作为参数传进来好了

首先,把multilingual_apply_subword_vocab.sh脚本的codes_file定义注释,把codes_file改为第3个参数:

#!/usr/bin/env bashinput_path=$1
output_path=$2
codes_file=$3[[ ! -d ${output_path} ]] && mkdir -p ${output_path}
# codes_file=${final_vocab_path}/codes.bpe.${subword_bpe_merge_ops}

同时,修改mRASP-master/preprocess/multilingual_preprocess_main.sh,调用multilingual_apply_subword_vocab.sh时加入第三个参数

echo "******** Only Apply BEGIN ********"echo "${repo_dir}/tools/subword/multilingual_apply_subword_vocab.sh"bash ${repo_dir}/tools/subword/multilingual_apply_subword_vocab.sh ${cleaned_path} ${output_path} ${final_vocab_path}/codes.bpe.${subword_bpe_merge_ops}  &>${logs_path}/2_preprocess_apply.log
echo "******** Only Apply ALL DONE ********"
  • 最后log提示一切正常,处理后的训练文件正常就OK了
  • 处理好的数据会出现在${merged_output_path}所指定的位置mRASP-master/experiments/example/merged_data/en2de
  • LANG_TOK_DE Un@@ s als Pol@@ itik@@ ern war jedoch klar , daß es zun@@ eh@@ men@@ de Unter@@ stüt@@ zung da@@ für ga@@ b , diese In@@ iti@@ ative bis ins Jahr 2000 fort@@ zus@@ et@@ zen .
    LANG_TOK_DE Die Probl@@ eme best@@ ehen noch immer , und dann kommen Z@@ we@@ if@@ el auf .
    LANG_TOK_DE N@@ ach Ar@@ tikel 2@@ 80 des Ver@@ tra@@ gs kann der Rat ge@@ eig@@ nete M@@ itt@@ el zur B@@ ek@@ ämp@@ f@@ ung von Bet@@ r@@ ü@@ ger@@ ei@@ en besch@@ lie@@ ßen .
    LANG_TOK_DE Herr Präsident , Herr Kom@@ miss@@ ar , wer@@ te Kol@@ leg@@ innen und Kol@@ legen ! Ich er@@ gre@@ if@@ e das W@@ ort im N@@ amen me@@ ines Kol@@ legen Robert Go@@ eb@@ bel@@ s , der w@@ egen einer polit@@ ischen Ver@@ p@@ fli@@ cht@@ ung lei@@ der nicht an@@ w@@ es@@ end sein kann .
    LANG_TOK_DE D@@ ah@@ er sind unserer M@@ ein@@ ung nach alle Ang@@ ab@@ en , die das Gener@@ al@@ sek@@ retar@@ i@@ at des R@@ ates gegen@@ w@@ är@@ tig der Ö@@ ff@@ ent@@ lich@@ keit zur Ver@@ füg@@ ung stell@@ t , die w@@ es@@ ent@@ lichen Ang@@ ab@@ en über die Arbe@@ its@@ weise des R@@ ates als Leg@@ isl@@ ativ@@ organ .
    LANG_TOK_DE Der Vor@@ sit@@ z@@ ende der Fre@@ i@@ heit@@ lichen Par@@ tei Ö@@ ster@@ reich@@ s , J@@ ör@@ g H@@ ai@@ der , hat me@@ hr@@ fa@@ ch seine Mi@@ ß@@ a@@ cht@@ ung dieser W@@ erte zum Aus@@ dru@@ ck gebracht .
    

【机器翻译】【mRASP】跑通mRASP代码(一):preprocess相关推荐

  1. Mask Rcnn目标分割-项目搭建及跑通测试代码

    本文介绍了Mask Rcnn目标分割项目的搭建及运行过程,并对搭建过程中可能出现的问题进行了解答. 环境:Cuda10.2+tensorflow-gpu1.13.2 Mask R-CNN是一个实例分割 ...

  2. 视频+笔记+能够跑通的代码,《李宏毅机器学习完整笔记》发布!

    点击我爱计算机视觉标星,更快获取CVML新技术 [导读]关于机器学习的学习资料从经典书籍.免费公开课到开源项目应有尽有,可谓是太丰富啦,给学习者提供了极大的便利.但网上比比皆是的学习资料大部分都是英文 ...

  3. 用gensim doc2vec计算文本相似度,Python可以跑通的代码

    Python3.7版本,转载自:https://blog.csdn.net/juanjuan1314/article/details/75124046 wangyi_title.txt文件下载地址:链 ...

  4. 使用docker跑通tasn-mxnet代码

    论文:<Looking for the Devil in the Details: Learning Trilinear Attention Sampling Network for Fine- ...

  5. 华为鸿蒙操作系统学习(2):在Linux上面使用Docker构建鸿蒙code代码,搭建Dockerfile环境,并跑通构建代码Hi3516,但是使用同样的镜像构建Hi3581,构建失败。

    目录 前言 1,关于鸿蒙系统 2,根据文档编写Dockerfile 3,使用镜像构建第一个程序Hi3516 4,构建另外一个程序Hi3861 5,总结 前言 本文的原文连接是: https://blo ...

  6. yolov3网络结构图_目标检测——YOLO V3简介及代码注释(附github代码——已跑通)...

    GitHub: liuyuemaicha/PyTorch-YOLOv3​github.com 注:该代码fork自eriklindernoren/PyTorch-YOLOv3,该代码相比master分 ...

  7. Show, Attend, and Tell | a PyTorch Tutorial to Image Captioning代码调试(跑通)

    Show, Attend, and Tell | a PyTorch Tutorial to Image Captioning代码调试(跑通) 文章目录 Show, Attend, and Tell ...

  8. 点云3D目标检测之——尝试SFD代码跑通(超详细!!)

    前言 到目前为止还没跑通,但是bug实在太多了,我的每一步都有错,如果不记录下来又会有遗漏,(肯定已经遗漏了很多),在这里把能想起来的都记录一下以便不时之需.另外,本人深度学习小白,一上来跑这么难的代 ...

  9. 111个Python数据分析实战项目,代码已跑通,数据可下载

    写在前面: 这里整理了111个数据分析的案例,每一个都进行了严格的筛选,筛选标准如下: 1. 有干货:杜绝纯可视化.统计性分析,有一定比例的讲解性文字 2. 可跑通:所有代码均经过测试,(大概率)可以 ...

最新文章

  1. 数据挖掘的一些经典算法
  2. TensorFlow人工智能引擎入门教程之十 最强网络 RSNN深度残差网络 平均准确率96-99%
  3. inode占满前因后果
  4. Butter Knife:一个安卓视图注入框架
  5. J20170521-ts
  6. Python单例模式的4种实现方法
  7. [转帖]每天看一遍,释怀所有难过
  8. 在线CSS代码压缩美化工具
  9. android中webview空间通过Img 标签显示sd卡中 的图片
  10. Echo团队Alpha冲刺随笔 - 第八天
  11. 关于Scrapy爬虫项目运行和调试的小技巧(上篇)
  12. 图片无损压缩软件哪个好用:试试完全免费的JPG-C 图片批量修整压缩减肥工具吧 | 最新jpg批量修整工具下载
  13. 双稳态电路的两个稳定状态是什么_电子电路原理图识图心得及电路分析方法
  14. 利用Fiddler抓包软件,爬短视频无水印,爬wei视app,步骤完整
  15. 火爆!GitHub 标星 144k 的前后端学习路线,2021 年最新整理,看完后不再迷茫不再徘徊
  16. Linux命令 - rm命令
  17. android 多张图片渐变切换控件
  18. 尚硅谷JVM下篇:性能监控与调优篇_03_JVM监控及诊断工具-GUI篇
  19. 镭速传输流量版:随时开启企业大数据加速传输超能力
  20. loachost 1.php,云豹短视频系统搭建部署文档

热门文章

  1. 30行Python代码,打造一个微信群聊助手~
  2. 合并两个list数据集合
  3. java两个不同对象的list合并(根据某条件)
  4. seneca mysql_Package - seneca-mysql-store-ex
  5. linux服务器抓包分析,抓包分析SSL/TLS连接建立过程总结
  6. 机器学习之性能度量指标——决定系数R^2、PR曲线、ROC曲线、AUC值、以及准确率、查全率、召回率、f1_score
  7. [POJ3107]Godfather
  8. 最全面的Android资料大全
  9. 做个可以赚钱的宅男 - PTC网赚推荐
  10. 素描滤镜_先进的素描技术