【机器翻译】【mRASP】跑通mRASP代码(一):preprocess
以作者使用的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相关推荐
- Mask Rcnn目标分割-项目搭建及跑通测试代码
本文介绍了Mask Rcnn目标分割项目的搭建及运行过程,并对搭建过程中可能出现的问题进行了解答. 环境:Cuda10.2+tensorflow-gpu1.13.2 Mask R-CNN是一个实例分割 ...
- 视频+笔记+能够跑通的代码,《李宏毅机器学习完整笔记》发布!
点击我爱计算机视觉标星,更快获取CVML新技术 [导读]关于机器学习的学习资料从经典书籍.免费公开课到开源项目应有尽有,可谓是太丰富啦,给学习者提供了极大的便利.但网上比比皆是的学习资料大部分都是英文 ...
- 用gensim doc2vec计算文本相似度,Python可以跑通的代码
Python3.7版本,转载自:https://blog.csdn.net/juanjuan1314/article/details/75124046 wangyi_title.txt文件下载地址:链 ...
- 使用docker跑通tasn-mxnet代码
论文:<Looking for the Devil in the Details: Learning Trilinear Attention Sampling Network for Fine- ...
- 华为鸿蒙操作系统学习(2):在Linux上面使用Docker构建鸿蒙code代码,搭建Dockerfile环境,并跑通构建代码Hi3516,但是使用同样的镜像构建Hi3581,构建失败。
目录 前言 1,关于鸿蒙系统 2,根据文档编写Dockerfile 3,使用镜像构建第一个程序Hi3516 4,构建另外一个程序Hi3861 5,总结 前言 本文的原文连接是: https://blo ...
- yolov3网络结构图_目标检测——YOLO V3简介及代码注释(附github代码——已跑通)...
GitHub: liuyuemaicha/PyTorch-YOLOv3github.com 注:该代码fork自eriklindernoren/PyTorch-YOLOv3,该代码相比master分 ...
- Show, Attend, and Tell | a PyTorch Tutorial to Image Captioning代码调试(跑通)
Show, Attend, and Tell | a PyTorch Tutorial to Image Captioning代码调试(跑通) 文章目录 Show, Attend, and Tell ...
- 点云3D目标检测之——尝试SFD代码跑通(超详细!!)
前言 到目前为止还没跑通,但是bug实在太多了,我的每一步都有错,如果不记录下来又会有遗漏,(肯定已经遗漏了很多),在这里把能想起来的都记录一下以便不时之需.另外,本人深度学习小白,一上来跑这么难的代 ...
- 111个Python数据分析实战项目,代码已跑通,数据可下载
写在前面: 这里整理了111个数据分析的案例,每一个都进行了严格的筛选,筛选标准如下: 1. 有干货:杜绝纯可视化.统计性分析,有一定比例的讲解性文字 2. 可跑通:所有代码均经过测试,(大概率)可以 ...
最新文章
- skype安卓手机版_危险的战争游戏安卓手机版下载-危险的战争下载v1.0.13
- 网站地图能给网站的优化带来什么好处
- realloc函数引发的慘案
- 详解django三种文件下载方式
- BZOJ 1084: [SCOI2005]最大子矩阵【DP】
- Python 中的Pyc文件
- java有什么字符串_Java 中操作字符串都有哪些类?它们之间有什么区别
- hadoop 运行wordcount
- Java-Redis 热部署问题
- 蚂蚁暑期实习前端面试
- Trip to Canvas(1)
- 小甲鱼Python学习笔记之函数(二)
- Google点击没有反应怎么办?Google卸载不了怎么办?Google安装不了怎么办?
- 3315 时空跳跃者的魔法(一个超级恶心的题目)
- 计算机考研408哪个视频好,计算机408考研视频哪个好
- 在Markdown文件中快速插入本地图片
- 用例建模指南lt;二gt;
- 学习新体验-itron
- 《小白兔到大黑牛》第十四篇Hadoop中五个进程作用
- Markov决策过程学习笔记和一些Markov代码实现的记录
热门文章
- Java8两个list集合合并成一个list集合
- 因果模型五:用因果的思想优化风控模型——因果正则化评分卡模型
- 科创人·SUSE大中华区董事长江永清:真开源要有打磨技术的匠心,要能持续创造社会价值
- 日拱一卒,热爱可抵岁月漫长
- matlab创新开放性实验,基于MATLAB 的自动控制原理实验仿真系统的设计
- 计算机专业品德行为,计算机教育里进行素质品德教育
- H3C_交换机_二层/三层链路聚合
- python agg函数_dataframe转化(二)之 apply(),transform(),agg() 的用法和区别
- python学习教程2
- 可擦写光盘不能擦除和刻写_哪种更适合?三种可擦写刻录盘方案PK