Tag: nlp

如何使用dBpedia在ruby-on-rails应用程序上设置neo4j?

我试图使用dBpedia与neo4j ruby on rails的ruby on rails ontop。 假设我已经安装了neo4j并下载了一个dBpedia数据集 。 如何将dbpedia数据集导入neo4j ?

NLP来分类/标记句子的内容(Ruby绑定necesarry)

我正在分析几百万封电子邮件。 我的目标是能够将其分类成小组。 团体可以是例如: 交货问题 ( 交货缓慢,发货前处理缓慢,供应信息不正确等) 客户服务问题 (电子邮件响应时间慢,回复不礼貌等) 退货问题 (退货请求处理缓慢,客户服务缺乏帮助等) 定价投诉 (已发现隐藏费用等) 为了执行这种分类,我需要一个可以识别单词组组合的NLP,如: “[他们|公司|公司|网站|商家]” “[没有|没有|没有]” “[回应|回应|答案|回复]” “[在第二天之前|足够快] |” 等等 这些示例组中的一些组合应该匹配如下句子: “他们没有回应” “他们根本没有回应” “根本没有回应” “我没有收到网站的回复” 然后将句子归类为客户服务问题 。 哪个NLP能够处理这样的任务? 从我读到的这些是最相关的: 斯坦福CoreNLP OpenNLP 还要检查这些建议的NLP 。

在基于OOP的文本游戏中进行优雅的命令解析

我正在玩Ruby中的MUD /文字冒险(请不要笑)。 任何人都可以给我任何指向优雅的,基于oop的解析输入文本的解决方案吗? 我们在谈论的不仅仅是“把魔杖放在桌子上”这里更复杂。 但一切都需要柔软; 我想稍后无痛地扩展命令集。 我目前的想法,略有简化: 每个项目类(框,表,房间,播放器)都知道如何识别“属于”它的命令。 游戏类理解一种特定于域的语言,涉及诸如“在对象Y内移动对象X”,“显示对象X的描述”等操作。 如果游戏类识别输入命令,则会询问房间中的每个项目。 首先说是赢。 然后它将控制权传递给处理命令的item类中的方法。 此方法重新命名DSL中的命令,将其传递回游戏对象以使其发生。 必须有陈旧,优雅的方式来做这些事情。 但是,似乎无法谷歌任何东西。

ruby / rails的自然语言日期解析器

有没有人知道类似于Ruby中的Date.js ? 能够从“今天两周”之类的东西返回日期对象的东西。 Remember the Milk webapp将此function集成到他们的系统中,并且非常易于使用。 我会使用Date.js库本身,但因为它在客户端,它有其局限性。 如果用户未启用javascript,则function将丢失。 这将影响移动电话用户,理想情况下,他们将通过短信(短信)使用我们的系统。 我很想使用已经存在的解决方案,但如果没有将这些代码移植到Ruby中会有多难? 我真的不太了解自然语言的解释,但似乎需要一些时间。 谢谢。

Ruby,Count音节

我正在使用ruby计算一些内容的Gunning Fog Index,我可以成功实现这里描述的算法: Gunning雾指数 我使用以下方法来计算每个单词中的音节数: Tokenizer = /([aeiouy]{1,3})/ def count_syllables(word) len = 0 if word[-3..-1] == ‘ing’ then len += 1 word = word[0…-3] end got = word.scan(Tokenizer) len += got.size() if got.size() > 1 and got[-1] == [‘e’] and word[-1].chr() == ‘e’ and word[-2].chr() != ‘l’ then len -= 1 end return len end […]

你如何解析一段文字到句子? (相当于Ruby)

你如何考虑段落或大量文本并将其分解为句子(最好使用Ruby),同时考虑到Mr.和Dr.以及USA这样的案例? (假设你只是将句子放入一个数组数组中) 更新:我想到的一个可能的解决方案是使用词性标注器(POST)和分类器来确定句子的结尾: 从琼斯先生那里获取数据时,他走出意大利避暑别墅的阳台,感受到了温暖的阳光。 他很高兴活着。 CLASSIFIER先生/ PERSON Jones / PERSON感觉/ O / O温暖/ O太阳/ O开/ O他/ O面/ O as / O他/ O步/ O出/ O到/ O / O阳台/ O / O他/ O夏天/ O家/ O in / O意大利/ LOCATION ./O他/ O是/ O快乐/ O到/ O是/ O活着/ O ./O POST先生/ NNP Jones / NNP感觉/ VBD / DT温暖/ JJ太阳/ NN开/他/ […]