- 论坛徽章:
- 780
|
回复 39# wlyqiqi
前面的需求我写好了,还剩下个算AP,你先看一下。
为了整齐,默认4为小数显示,不喜欢可以自己调节。
我是以一个参数n来表示@Precision的
n=50 表示@Precision50
n=10 表示@Precision10
一个小问题,算AP默认@Precision10?- awk -vn=10 'NR==FNR{a[$1" "$3];next} {if(++c[$1]<=n)b[$1" "$3]} END{for(i in b){split(i,key," ");k=key[1];if(i in a){A[k]++}else B[k]++};for(i in a){split(i,key," ");k=key[1];if(!(i in b))C[k]++};print "key\t准确率\t召回率\tF1";for(i in c){P=A[i]/(A[i]+B[i]);R=A[i]/(A[i]+C[i]);F1=(P+R)>0?2*P*R/(P+R):0;printf "%s\t%.4f\t%.4f\t%.4f\n",i,P,R,F1;}}' training.qrels TF_IDF_0.res|sort -n -k1
- key 准确率 召回率 F1
- 001 0.2000 1.0000 0.3333
- 002 0.3000 0.7500 0.4286
- 003 0.1000 1.0000 0.1818
- 004 0.0000 0.0000 0.0000
- 005 0.3000 1.0000 0.4615
- 006 0.1000 1.0000 0.1818
- 007 0.3000 1.0000 0.4615
- 008 0.4000 1.0000 0.5714
- 009 0.6000 0.8571 0.7059
- 010 0.3000 0.4286 0.3529
- 011 0.4000 0.8000 0.5333
- 012 0.8000 0.7273 0.7619
- 013 0.5000 0.7143 0.5882
- 014 0.2000 1.0000 0.3333
- 015 0.4000 0.8000 0.5333
- 016 0.7000 0.7778 0.7368
- 017 0.4000 1.0000 0.5714
- 018 0.1000 0.5000 0.1667
- 019 0.2000 0.5000 0.2857
- 020 0.4000 0.5714 0.4706
- 021 0.6000 1.0000 0.7500
- 022 0.1000 0.5000 0.1667
- 023 0.1000 1.0000 0.1818
- 024 0.3000 1.0000 0.4615
- 025 0.3000 0.6000 0.4000
- 026 0.1000 0.2500 0.1429
- 027 0.3000 0.5000 0.3750
- 028 0.2000 0.3333 0.2500
- 029 0.0000 0.0000 0.0000
- 030 0.1000 1.0000 0.1818
- 031 0.7000 0.5833 0.6364
- 032 0.1000 0.5000 0.1667
- 033 0.1000 1.0000 0.1818
- 034 0.1000 1.0000 0.1818
- 035 0.2000 1.0000 0.3333
- 036 0.5000 0.8333 0.6250
- 037 0.4000 0.8000 0.5333
- 038 0.1000 1.0000 0.1818
- 039 0.8000 1.0000 0.8889
- 040 0.0000 0.0000 0.0000
- 041 0.1000 1.0000 0.1818
- 042 1.0000 0.5882 0.7407
- 043 0.2000 1.0000 0.3333
- 044 0.2000 1.0000 0.3333
- 045 0.8000 0.8889 0.8421
- 046 0.3000 1.0000 0.4615
- 047 0.3000 0.6000 0.4000
- 048 0.0000 0.0000 0.0000
- 049 0.5000 1.0000 0.6667
- 050 0.5000 0.8333 0.6250
- 051 0.8000 0.7273 0.7619
- 052 0.3000 1.0000 0.4615
- 053 0.3000 1.0000 0.4615
- 054 0.5000 1.0000 0.6667
- 055 0.3000 0.5000 0.3750
- 056 0.2000 0.6667 0.3077
- 057 0.1000 1.0000 0.1818
复制代码 |
|