ICode9

精准搜索请尝试: 精确搜索
首页 > 编程语言> 文章详细

可以在很短的时间内用Java搜索很大的ARPA文件

2019-10-12 00:01:51  阅读:198  来源: 互联网

标签:n-gram java language-model


我有一个将近1 GB的ARPA文件.我必须在不到1分钟的时间内进行搜索.我已经搜索了很多,但是还没有找到合适的答案.我认为我不必阅读整个文件.我只需要跳到文件中的特定行并阅读整个行即可. ARPA文件的各行的长度不同.我不得不提到ARPA文件具有特定的格式.

文件格式

\data\

ngram 1=19

ngram 2=234

ngram 3=1013

\1-grams:

-1.7132 puluh -3.8008

-1.9782 satu -3.8368

\2-grams:

-1.5403 dalam dua -1.0560

-3.1626 dalam ini 0.0000

\3-grams:

-1.8726 itu dan tiga

-1.9654 itu dan untuk

\end\

如您在示例文件中看到的,我有19行1克,234行2克和1013行3克.我将该行的字符串部分提供给程序,并获得字符串左侧和右侧的数字.输入字符串可以帮助我知道必须在文件的哪一部分进行搜索,因为我的文件很大并且读取整个文件需要很多时间,因此我必须找到一种方法不能完全读取文件.我认为这是跳至文件中特定行而不使用索引文件并访问整行的好方法.

如果您能帮助我完成任务,那将是很好的.

解决方法:

我不知道什么是ARPA文件.我假设它是某种包含文本的文件.

您要做的是首先为文件建立索引,以便可以将文件中的行号与字符串相关联.

那是个大文件,因此您可能会将索引存储在单独的文件中.

首先,在用户搜索之前,您需要运行索引.然后,您将在索引中搜索找到用户要查找的字符串的行号.

标签:n-gram,java,language-model
来源: https://codeday.me/bug/20191011/1896396.html

本站声明: 1. iCode9 技术分享网(下文简称本站)提供的所有内容,仅供技术学习、探讨和分享;
2. 关于本站的所有留言、评论、转载及引用,纯属内容发起人的个人观点,与本站观点和立场无关;
3. 关于本站的所有言论和文字,纯属内容发起人的个人观点,与本站观点和立场无关;
4. 本站文章均是网友提供,不完全保证技术分享内容的完整性、准确性、时效性、风险性和版权归属;如您发现该文章侵犯了您的权益,可联系我们第一时间进行删除;
5. 本站为非盈利性的个人网站,所有内容不会用来进行牟利,也不会利用任何形式的广告来间接获益,纯粹是为了广大技术爱好者提供技术内容和技术思想的分享性交流网站。

专注分享技术,共同学习,共同进步。侵权联系[81616952@qq.com]

Copyright (C)ICode9.com, All Rights Reserved.

ICode9版权所有