我需要计算BLEU分数,以确定两个句子是否相似.我读过一些文章,主要是关于测量机器翻译准确度的BLEU分数.但是我需要一个BLEU分数来找出句子之间的相似性.同一种语言[英语].(即)(两个句子都是英文).感谢期待.
可能重复:
如何在Perl中将字符串分成两个字符组成的块?
我想将一个字符串拆分成一个数组,并按2个字符组成部分:
$input = "DEADBEEF";
@output = split(/(..)/,$input);
Run Code Online (Sandbox Code Playgroud)
这种方法使其他所有元素都为空。
$VAR1 = '';
$VAR2 = 'DE';
$VAR3 = '';
$VAR4 = 'AD';
$VAR5 = '';
$VAR6 = 'BE';
$VAR7 = '';
$VAR8 = 'EF';
Run Code Online (Sandbox Code Playgroud)
如何获得一个连续的数组?
$VAR1 = 'DE';
$VAR2 = 'AD';
$VAR3 = 'BE';
$VAR4 = 'EF';
Run Code Online (Sandbox Code Playgroud)
(...除了获得第一个结果并删除其他所有行之外...)
我需要编写一个从左到右翻转字符串的所有字符的函数.
例如:
译文:你好.
应该成为
.goȡyzⱥlëhtrểvoᶁềṕmujxofnworḇkçiuqėhT
我可以将问题限制在UTF-16(与UTF-8有相同的问题,只是不那么频繁).
一个天真的解决方案可能会尝试翻转所有的东西(例如,逐字逐句,其中一个字是16位 - 如果我们假设一个字节是16 位,我会说字节为字节.我也可以说字符-for-character其中character是Char表示单个代码点的数据类型):
String original = "??f???r??n?t";
String flipped = "";
foreach (Char c in s)
{
flipped = c+fipped;
}
Run Code Online (Sandbox Code Playgroud)
导致错误翻转文本的结果:
??f???r??n?t?t?n??r???f??这是因为一个"字符"需要多个"代码点".
??f???r??n?t? ? f ˜ ? ? r ? ? n i t ?并翻转每个"代码点"给出:
? t i n ? ? r ? ? ˜ f ? ?这不仅不是有效的UTF-16编码,它的字符也不一样.
当存在以下情况时,问题发生在UTF-16编码中:
这些相同的问题在UTF-8编码中发生,附加情况
我开始使用scikit-learn做一些NLP.我已经使用了NLTK的一些分类器,现在我想尝试在scikit-learn中实现的分类器.
我的数据基本上是句子,我从这些句子的某些单词中提取特征来做一些分类任务.我的大多数功能都是名义上的:单词的词性(POS),左到右的单词,左到右的单词,右到右的单词,POS单词到单词. - 正确的,句法关系从一个词到另一个词的路径等.
当我使用NLTK分类器(决策树,朴素贝叶斯)进行一些实验时,特征集只是一个字典,其中包含特征的相应值:标称值.例如:[{"postag":"noun","wleft":"house","path":"VPNPNP",...},....].我只需将其传递给分类器,他们就完成了自己的工作.
这是使用的代码的一部分:
def train_classifier(self):
if self.reader == None:
raise ValueError("No reader was provided for accessing training instances.")
# Get the argument candidates
argcands = self.get_argcands(self.reader)
# Extract the necessary features from the argument candidates
training_argcands = []
for argcand in argcands:
if argcand["info"]["label"] == "NULL":
training_argcands.append( (self.extract_features(argcand), "NULL") )
else:
training_argcands.append( (self.extract_features(argcand), "ARG") )
# Train the appropriate supervised model
self.classifier = DecisionTreeClassifier.train(training_argcands)
return
Run Code Online (Sandbox Code Playgroud)
以下是提取的一个功能集的示例:
[({'phrase': u'np', 'punct_right': 'NULL', 'phrase_left-sibling': 'NULL', 'subcat': 'fcl=np np vp np …Run Code Online (Sandbox Code Playgroud) python text-processing classification scikit-learn feature-engineering
我正在使用google-diff-match-patch来比较自然语言中的纯文本。
如何使google-diff-match-patch忽略某些字符?(一些无关紧要的细微差别。)
例如,给定text1:
give me a cup of bean-milk. Thanks.
Run Code Online (Sandbox Code Playgroud)
和text2:
please give mom a cup of bean milk! Thank you.
Run Code Online (Sandbox Code Playgroud)
(请注意,在“谢谢”之前有两个空格字符。)
google-diff-match-patch输出如下所示:
[please] give m(e)[om] a cup of bean(-)[ ]milk(.)[!] Thank(s)[ you].
Run Code Online (Sandbox Code Playgroud)
看来google-diff-match-patch仅忽略不同数量的空格。
我怎样才能告诉google-diff-match-patch也忽略像这样的字符[-.!]?
预期结果将是
[please] give m(e)[om] a cup of bean-milk. Thank(s)[ you].
Run Code Online (Sandbox Code Playgroud)
谢谢。
我有来自twitter的推文语料库.我清理这个语料库(removeWords,tolower,删除URls),最后还想删除标点符号.
这是我的代码:
tweetCorpus <- tm_map(tweetCorpus, removePunctuation, preserve_intra_word_dashes = TRUE)
Run Code Online (Sandbox Code Playgroud)
现在的问题是,通过这样做,我也松开了#标签.有没有办法用tm_map删除标点符号但保留标签?
我有包含YAML frontmatter元数据的markdown文件,如下所示:
---
title: Something Somethingelse
author: Somebody Sometheson
---
Run Code Online (Sandbox Code Playgroud)
但是YAML的宽度各不相同.我可以使用Posix命令sed来删除文件开头处的那个前端吗?东西只是删除一切之间---和---,包容性,也忽略了文件的其余部分,如果有---小号在其他地方.
我很难区分指示性摘要和信息性摘要。你能给我一个清楚的例子来说明它们之间的区别吗?
提前致谢!
我已阅读从text1.similar("怪物")和text1.concordance("怪物")此.
当我不能得到之间的差额满意的答复text1.concordance('monstrous'),并text1.similar('monstrous')在Python自然语言处理工具包.
那么请你详细解释一下这个例子吗?
我每天都会收到一个文件,其中有 10,000 条记录,其中 99% 都在最后一天的文件中。如何使用 macOS 命令行删除新文件中前一天文件中存在的行?
remove_duplicates newfile oldfile
Run Code Online (Sandbox Code Playgroud)
这些文件看起来像这样:
"First Last"\t"email"\t"phone"\t"9 more columns..."
Run Code Online (Sandbox Code Playgroud)
注意,我尝试了这个awk解决方案,但它没有输出任何内容,即使我确认了重复的行。
text-processing ×10
nlp ×3
python ×2
algorithm ×1
bash ×1
diff ×1
java ×1
localization ×1
macos ×1
nltk ×1
perl ×1
punctuation ×1
r ×1
regex ×1
scikit-learn ×1
split ×1
text ×1
text-mining ×1
tm ×1
unicode ×1