通过两个不同的汇总系统(sys1和sys2)和相同的参考汇总的结果,我用BLEU和ROUGE对它们进行了评估.问题是:sys1的所有ROUGE分数都高于sys2(ROUGE-1,ROUGE-2,ROUGE-3,ROUGE-4,ROUGE-L,ROUGE-SU4 ......)但是sys1的BLEU分数较低比sys2的BLEU得分(相当多).
所以我的问题是:ROUGE和BLEU都是基于n-gram来衡量系统摘要和人类摘要之间的相似之处.那么为什么评价结果会有差异呢?ROUGE和BLEU解释这个问题的主要区别是什么?
任何意见和建议将不胜感激!谢谢!
有一堆教程浮动,但它们似乎不完整或不完全是最新的或不适合我.
这就是我所做的.
的Gemfile:
gem 'rouge'
gem 'redcarpet'
Run Code Online (Sandbox Code Playgroud)
然后我创建了一个config/initializer/rouge.rb:
require 'rouge/plugins/redcarpet'
Run Code Online (Sandbox Code Playgroud)
然后我创建了一个名为的文件 app/assets/stylesheets/rouge.css.erb
<%= Rouge::Themes::Github.render(:scope => '.highlight') %>
Run Code Online (Sandbox Code Playgroud)
然后在我的app/helpers/application_helper.rb,我添加了这个:
module ApplicationHelper
class HTML < Redcarpet::Render::HTML
include Rouge::Plugins::Redcarpet
def block_code(code, language)
Rouge.highlight(code, language || 'text', 'html')
end
end
def markdown(text)
render_options = {
filter_html: true,
hard_wrap: true,
link_attributes: { rel: 'nofollow' }
}
renderer = HTML.new(render_options)
extensions = {
autolink: true,
fenced_code_blocks: true,
lax_spacing: true,
no_intra_emphasis: true,
strikethrough: true,
superscript: true
}
Redcarpet::Markdown.new(renderer, extensions).render(text).html_safe
end
end
Run Code Online (Sandbox Code Playgroud)
然后在我show.html.erb …
syntax-highlighting ruby-on-rails pygments ruby-on-rails-5 rouge
我是Perl语言的新用户,执行基于ROUGE工具的Perl脚本比较.
我没有得到特定数据集的结果.请建议如何避免此类错误.
我runROUGE-test.pl从终端执行时收到此错误.
它总是显示相同的错误即 Can't locate XML/DOM.pm in @INC
tushar@ubuntu:~/Desktop/RELEASE-1.5.5$ ./runROUGE-test.pl
./ROUGE-1.5.5.pl -e ../data -c 95 -2 -1 -U -r 1000 -n 4 -w 1.2 -a ROUGE-test.XML > ../sample-output/ROUGE-test-c95-2-1-U-r1000-n4-w1.2-a.out
**Can't locate XML/DOM.pm in @INC (@INC contains: /etc/perl /usr/local/lib/perl/5.14.2** /usr/local/share/perl/5.14.2 /usr/lib/perl5 /usr/share/perl5 /usr/lib/perl/5.14 /usr/share/perl/5.14 /usr/local/lib/site_perl .) at ../ROUGE-1.5.5.pl line 173.
Run Code Online (Sandbox Code Playgroud) 我想在Ubuntu中安装pyrouge用于文本摘要评估。我使用this中的说明。
首先我写pip install pyrouge然后我必须写这个命令:pyrouge_set_rouge_path /absolute/path/to/ROUGE-1.5.5/directory.
在我的系统中,我写道:
pyrouge_set_rouge_path /home/afsharizadeh/anaconda3/lib/python3.6/site-packages/pyrouge
Run Code Online (Sandbox Code Playgroud)
得到这个:
例外:无法设置数据目录,因为路径 /home/afsharizadeh/anaconda3/lib/python3.6/site-packages/pyrouge/data 不存在。
并且
pyrouge_set_rouge_path /home/afsharizadeh/pyrouge-0.1.0/pyrouge
Run Code Online (Sandbox Code Playgroud)
得到这个:
例外:无法设置数据目录,因为路径 /home/afsharizadeh/pyrouge-0.1.0/pyrouge/data 不存在。
并且
pyrouge_set_rouge_path /home/afsharizadeh/pyrouge-0.1.0/pyrouge/test
Run Code Online (Sandbox Code Playgroud)
得到这个:
例外:在 /home/afsharizadeh/pyrouge-0.1.0/pyrouge/test/ROUGE-1.5.5.pl 中找不到 ROUGE 二进制文件。请通过运行pyrouge_set_rouge_path /path/to/rouge/home 设置正确的路径。
我知道关于这个问题的类似问题是在堆栈溢出中被问到的,但我无法解决我的问题,因为我根本不知道“ROUGE path”这个表达是什么意思。“通往 ROUGE-1.5.5 的路径”是什么意思?
我知道我有两个关于pyrouge的目录。其中一个是这个路径:~/anaconda3/lib/python3.6/site-packages/pyrouge另一个是我从站点下载的目录。这条路是:~/pyrouge-0.1.0。该目录还有其他三个目录,名称分别为:bin、pyrouge、pyrouge.egg-info。
基于此页面,我以这种格式编写:
set pyrouge_set_rouge_path=/home/afsharizadeh/anaconda3/lib/python3.6/site-packages/pyroug
Run Code Online (Sandbox Code Playgroud)
在这种格式之后,没有错误出现,但之后我输入:
python -m pyrouge.test
Run Code Online (Sandbox Code Playgroud)
我收到此错误:
例外:无法设置数据目录,因为路径 /home/afsharizadeh/anaconda3/lib/python3.6/site-packages/pyroug/data 不存在。
-------------------------------------------------- -------------------- 在 0.592 秒内运行 11 个测试
失败(错误=9)
我该怎么办?
我想在jekyll博客中使用kramdown和rouge进行markdown语法突出显示,我想防止较长的代码行换行。我希望能够使用水平滚动条来显示其余内容。
这是jekyll配置:
markdown: kramdown
kramdown:
input: GFM
syntax_highlighter: rouge
Run Code Online (Sandbox Code Playgroud)
我正在使用命令base16.solarized.dark生成的css主题rougify。
这是示例代码用法:
```` js
console.log("some code") // and a really really long long long comment which i'd like to not wrap onto the next line
````
Run Code Online (Sandbox Code Playgroud) 如何配置 Jekyll & Rouge 以指定应使用另一种语言的解析器突出显示一种语言。
例如,我希望能够在我的 Markdown 源文件中执行此操作:
```nodejs-repl
> foo();
Uncaught ReferenceError: foo is not defined
```
Run Code Online (Sandbox Code Playgroud)
...但使用相同的语法高亮器 Javascript 语言解析器突出显示该代码块语法。
我想这样做有几个原因:
Rouge 已经有语言别名的概念(见下面的例子),但是是否可以通过 Jekyll 指定自定义语言别名,如果可以,如何做到这一点?
细节:
(1)
我正在使用 Jekyll 3.8.5 和 Rouge 3.11.0。
(2)
以下是我的 Jekyll 配置文件的相关部分:
```nodejs-repl
> foo();
Uncaught ReferenceError: foo is not defined
```
Run Code Online (Sandbox Code Playgroud)
(3)
为了真正清楚“语言别名”指的是什么,我将提供一个示例:
对于 Javascript,您可以在代码围栏之后使用js和javascript之后,因为它们在 Rouge 中默认是语言别名。因此,以下两个代码块是相同的:
使用语言别名js:
```js
foo();
```
Run Code Online (Sandbox Code Playgroud)
使用语言别名javascript:
```javascript
foo();
```
Run Code Online (Sandbox Code Playgroud)