gpt4 book ai didi

perl - 如何循环多个文件,保留基本名称以供进一步处理?

转载 作者:行者123 更新时间:2023-11-29 09:26:50 25 4
gpt4 key购买 nike

我有多个文本文件需要标记化,POS 和 NER。我正在使用 C&C taggers 并运行了他们的教程,但我想知道是否有一种方法可以标记多个文件而不是一个一个地标记。

目前我正在标记文件:

bin/tokkie --input working/tutorial/example.txt--quotes delete --output working/tutorial/example.tok

如下,然后是词性标注:

bin/pos --input working/tutorial/example.tok --model models/pos --output working/tutorial/example.pos

最后是命名实体识别:

bin/ner --input working/tutorial/example.pos --model models/ner --output working/tutorial/example.ner

我不确定我将如何创建一个循环来执行此操作并保持文件名与输入相同,但扩展名表示它具有的标记。我正在考虑使用 bash 脚本或 Perl 来打开目录,但我不确定如何输入 C&C 命令以使脚本能够理解。

目前我正在手动执行此操作,至少可以说这非常耗时!

最佳答案

未经测试,可能需要一些目录修改。

use autodie qw(:all);
use File::Basename qw(basename);

for my $text_file (glob 'working/tutorial/*.txt') {
my $base_name = basename($text_file, '.txt');
system 'bin/tokkie',
'--input' => "working/tutorial/$base_name.txt",
'--quotes' => 'delete',
'--output' => "working/tutorial/$base_name.tok";
system 'bin/pos',
'--input' => "working/tutorial/$base_name.tok",
'--model' => 'models/pos',
'--output' => "working/tutorial/$base_name.pos";
system 'bin/ner',
'--input' => "working/tutorial/$base_name.pos",
'--model' => 'models/ner',
'--output' => "working/tutorial/$base_name.ner";
}

关于perl - 如何循环多个文件,保留基本名称以供进一步处理?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/5154748/

25 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com