LSTM的PTB数据集


用于LSTM自然语言处理的经典数据集,本来想免费的,现在CSDN最低两分,各位对不住了
资源截图
代码片段和文件信息
#include 
#include 

void main(int argc char **argv)
{
    int a b i cn bestwcn wcn last_nbest nbest;
    float bestscore score acscore lmscore rnnscore;
    float LM_SCALE WI_PENALTY;
    char st[1000];
    char best[1000][1000];
    char curr[1000][1000];
    FILE *f1 *f2;
    
    if (argc<=2) {
printf(“Need 2 arguments - score file & nbest list
“);
exit(1);
    }
    
    f1=fopen(argv[1] “rb“);
    f2=fopen(argv[2] “rb“);
    
    
    i=0;
    bestwcn=0;
    bestscore=-1000000;
    last_nbest=0;
    while (1) {
fscanf (f1 “%f“ &rnnscore);
fscanf (f2 “%d“ &nbest);

if ((last_nbest!=nbest) || feof(f2)) {
    for (a=0; a     printf(“
“);

    bestwcn=0;
    bestscore=-1000000;
}
last_nbest=nbest;

if (feof(f1)) break;

fscanf (f2 “%f“ &acscore);
fscanf (f2 “%f“ &lmscore);
fscanf (f2 “%d“ &wcn);

wcn=0;
fscanf (f2 “%s“ st);
fscanf (f2 “%s“ st);

while (1) {
    fscanf (f2 “%s“ curr[wcn]);
    
    if (!strcmp(curr[wcn] ““)) break;
    
    wcn++;
}
fscanf (f2 “%s“ st);

LM_SCALE=14;
WI_PENALTY=0;
score=acscore + rnnscore*LM_SCALE + wcn*WI_PENALTY/(2.718);

//score=acscore + (rnnscore+lmscore)/2*LM_SCALE + wcn*WI_PENALTY/(2.718); //optionally the LM scores from lattices can be used like this

if (score>bestscore) {
    for (a=0; a     bestwcn=wcn;
    bestscore=score;
}
    }
}

版权声明:本文内容由互联网用户自发贡献,该文观点仅代表作者本人。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如发现本站有涉嫌抄袭侵权/违法违规的内容, 请发送邮件举报,一经查实,本站将立刻删除。

发表评论

评论列表(条)