对于我们构建的应用程序,我们使用简单的单词预测统计模型(如Google自动填充)来指导搜索.
它使用从大量相关文本文档中收集的一系列ngrams.通过考虑之前的N-1个单词,它使用Katz退避建议按概率降序排列的5个最可能的"下一个单词" .
我们希望将其扩展为预测短语(多个单词)而不是单个单词.但是,当我们预测短语时,我们宁愿不显示其前缀.
例如,考虑输入the cat
.
在这种情况下,我们希望做出预测the cat in the hat
,但the cat in
不是the cat in the
.
假设:
我们无法访问过去的搜索统计信息
我们没有标记的文本数据(例如,我们不知道词性)
制作这类多字预测的典型方法是什么?我们尝试过较长短语的乘法和加法加权,但我们的权重是任意的,适合我们的测试.
我正在寻找一个正则表达式,可以确保同时在网页上显示两个短语.
我需要在网上确保的两个短语是Current QPS (last 10s, ignored 0)
和Average Latency (last 100 queries)
网页看起来像(查询时间会有所不同,但文字不会改变):
Query Statistics
Average QPS 25.3673
Average Latency 0.1002
Average Latency (last 100 queries) 0.0834 # Match this one, ignore output-0,0834
Average Search Latency 0.0555
Average Docsum Latency 0.0330
Sampling period 3133524.9570
Current QPS (last 10s, ignored 0) 24.8000 # Also match this one, ignore output 24.8000
Peak QPS 170.9000
Number of requests 79717858
Number of queries 79489080
Run Code Online (Sandbox Code Playgroud)
我能够匹配网站上的每个短语,但不能匹配两个短语.如何让我的工具忽略两个短语之间的内容?
PS我在这里不用任何语言编程,正则表达式将被放入一个接受正则表达式的工具.
我想在Lucene中找到一些经常出现的短语.我从TXT文件中获取一些信息,并且因为没有短语信息而丢失了很多上下文,例如"信息检索"被索引为两个单独的单词.
获取这样的短语的方法是什么?我在互联网上找不到任何有用的东西,所有的建议,链接,提示特别是例子表示赞赏!
编辑:我只是按标题和内容存储我的文件:
Document doc = new Document();
doc.add(new Field("name", f.getName(), Field.Store.YES, Field.Index.NOT_ANALYZED));
doc.add(new Field("text", fReader, Field.TermVector.WITH_POSITIONS_OFFSETS));
Run Code Online (Sandbox Code Playgroud)
因为我正在做的事情,最重要的是文件的内容.标题往往不具有描述性(例如,我有许多PDF学术论文,其标题是代码或数字).
我迫切需要从文本内容中索引最常出现的短语,刚才我看到这个简单的"词袋"方法效率不高.
我正在寻找用来描述继承祖先的孩子的最佳术语。
例如,“汽车”对象可能源自其祖先“车辆”。但是,有没有比导数更好/更合适的词来用于逆的导数?
自从我被告知Spacy是用于自然语音处理的功能强大的Python模块以来,我现在迫切希望找到一种将单词组合在一起的方法,而不仅仅是名词短语,最重要的是介词短语。我怀疑是否存在Spacy函数,但这将是我猜想的最简单的方法(在我的项目中已经实现了SpacySpaCy导入)。不过,我愿意接受任何短语识别/分块的可能性。
我对Magento相对较新,并且正在为客户进行网站构建,他们只需要将整个网站中使用的短语列表发送给翻译.我有点惊讶的是Magento没有简单的内容可以轻松地将这些内容拉出来,这就是我现在在这里写的原因.是否有一种相对简单的方法从Magento应用程序中提取翻译短语?内置的东西可能并不明显(对我而言)?还是一些有用的图书馆?这包括模板(或控制器)中使用的所有内容,如下所示:
$this->__("Some phrase on my website...");
Run Code Online (Sandbox Code Playgroud)
...以及布局XML中设置'translate'属性的情况等.
更进一步,我知道Magento提供的翻译可以在这里找到:http://www.magentocommerce.com/translations-有一些简单的东西可以确保我不会对短语进行双重操作这些包中可能已经存在?
还有,有什么东西要把所有翻译从数据库中拉出来吗?
如果所有这些的答案都变成'不',我需要对此非常彻底,所以我需要注意哪些关于陷阱或特定位置的建议我可能没有考虑从哪里提取翻译,你怎么可能之前已经取得过类似的成就,等等 - 我很想听听你的提示.谢谢!
我如何索引我的数据并在solr中配置solr和我的搜索选项,可以实现具有以下要求的自动完成(如谷歌):
产品: - 我们的产品有标题,描述,id,例如标题:toshiba tecra s1:centrino 1.5 ghz/xp pro/15.0"tft/40 gb/256 mb + 256mb/cd-rw-dvd-rom/lan/wi-fi - 此产品的此产品或字段必须以下列方式编制索引(如果用户开始输入,则无法区分用户如何搜索searchterm,例如TOSHIBA或tOSHiba)前三个字符"tos"最多20个结果(完整标题(短语)例如"toshiba tecra s1:centrino 1.5 ghz/xp pro/15.0"tft/40 gb/256 mb + 256mb/cd-rw-dvd-rom/lan/wi-fi")应出现在自动完成框中. - 如果用户输入两个术语"toshiba tecra",搜索结果必须更加精确,并且只显示所有文档,其中包含(连贯的)术语"toshiba tecra"
获得任何提示,使用什么样的tokenizer/searchcomponent等会很棒.
我正在使用solr版本3.5
谢谢oyur想法Ramo