我正从论坛中提取数据.我的脚本基于工作正常.现在我需要从单个帖子中提取日期和时间(2009年12月21日,20:39).我无法让它发挥作用.我使用FireXPath来确定xpath.
示例代码:
require 'rubygems'
require 'mechanize'
post_agent = WWW::Mechanize.new
post_page = post_agent.get('http://www.vbulletin.org/forum/showthread.php?t=230708')
puts post_page.parser.xpath('/html/body/div/div/div/div/div/table/tbody/tr/td/div[2]/text()').to_s.strip
puts post_page.parser.at_xpath('/html/body/div/div/div/div/div/table/tbody/tr/td/div[2]/text()').to_s.strip
puts post_page.parser.xpath('//[@id="post1960370"]/tbody/tr[1]/td/div[2]/text()')
Run Code Online (Sandbox Code Playgroud)
我的所有尝试都以空字符串或错误结束.
我找不到有关在Mechanize中使用Nokogiri的任何文档.Mechanize文档在页面底部显示:
使用Mechanize导航到需要刮擦的页面后,使用Nokogiri方法刮取它.
但有什么方法呢?我在哪里可以通过样本和解释语法阅读它们?我也没有在Nokogiri的网站上找到任何东西.
如何使用NLP /信息提取(IE)方法检测/找出首字母缩略词的含义(扩展名)?
我们希望在自由文本中检测是否使用了单词或它的首字母缩略词并将其映射到同一个实体/令牌.
在线提供的大多数论文都是关于医学缩略语的,并且它们没有提供用于完成这项任务的库.
有任何想法吗?
我正在尝试从文本blob(NER/IE)中提取位置,并尝试了许多解决方案,这些解决方案都太过于无用了spacy,斯坦福等等.
我的数据集确实只有80-90%准确(spacy就像70%),我遇到的另一个问题是没有概率对这些实体意味着什么,所以我不知道自信而且不能继续因此.
我尝试了一种超级天真的方法,将我的blob分成单个单词,然后将周围的上下文作为特征提取,也使用位置地名查找(30/40k位置地名)作为特征.然后我只使用了一个分类器(XGDBoost),结果在我用大约3k手动标记数据点(100k总共只有3k位置)训练分类器时效果更好.各州/国家的准确率为95%,城市为85%.
这种方法很明显很糟糕,但为什么它比我尝试的一切都要好?我认为NER的黑盒方法不适用于我的数据问题,我尝试了spacy自定义培训,它真的只是看起来不会起作用.对实体没有信心也是一种杀手,因为他们给你的概率几乎毫无意义.
是否有一些我可以更好地解决这个问题,以进一步提高我的结果?浅nlp为2/3/4克?我的方法的另一个问题是分类器的输出不是一些顺序实体,它实际上只是分类的单词blob,它们需要聚集成一个实体,即: - >旧金山,CA只是'城市','城市','0','州',没有它们是同一个实体的概念
spacy示例:
示例blob:
About Us - Employment Opportunities Donate Donate Now The Power of Mushrooms Enhancing Response Where We Work Map Australia Africa Asia Pacific Our Work Agriculture Anti - Trafficking and Gender - based Violence Education Emergency Response Health and Nutrition Rural and Economic Development About Us Who We Are Annual Report Newsletters Employment Opportunities Video Library Contact Us Login My Profile Donate Join Our Email List Employment Opportunities Annual Report Newsletters Policies …Run Code Online (Sandbox Code Playgroud) 什么是短期非结构化文档中主题定位的最佳模型,例如.短信或Twitter消息?潜在的Dirichlet分配?
nlp information-retrieval keyword information-extraction topic-modeling
我正在尝试在我的应用程序中实现智能搜索功能.用例:用户在文本框中输入搜索词
例如:找到一位来自巴西的28岁基督徒男性.
我需要将输入解析为地图,如下所示:
性别:男性 年龄: 38 所在地:巴西 Relegion: Christian
已经看过:OpenNLP,Cross Validate,Java Pattern Matching和Regex,Information Extraction.我很困惑哪一个我需要深入研究.
是否有任何java lib已经可用于此特定域?
最近,我开始研究一种学习排名算法,其中涉及特征提取和排名。我在微软研究网站上发现的著名的学习排名算法数据集具有从文档中提取的带有查询 ID 和特征的数据集。有人可以建议我一个很好的学习方法来对数据集进行排名,该数据集将具有原始形式的查询文档对并具有良好的相关性判断吗?
information-retrieval machine-learning information-extraction
我写了一个程序来进行信息检索和提取。用户在搜索栏中输入查询,程序可以显示相关的txt结果,如相关句子和由该句子组成的文章。
我做了一些关于如何评估结果的研究。我可能需要计算精度、召回率、AP、MAP....
但是,我对此很陌生。如何计算结果。由于我的数据集没有标记并且我没有进行分类。我使用的数据集是来自 BBC 新闻的文章。有 200 篇文章。我把它命名为 001.txt, 002.txt ...... 200.txt
如果您对如何在 python 中进行评估有任何想法,那就太好了。谢谢。
我试图弄清楚如何使用Ruby从非结构化文本中提取日期.
例如,我想解析这个字符串的日期"2010年2月1日午夜(美国东部时间)午夜12点之后开始的应用程序将不予考虑."
有什么建议?
我想要做的是解析原始自然文本并找到描述日期的所有短语.
我有一个相当大的语料库,其中包含所有日期标记的引用:
I met him <date>yesterday</date>.
Roger Zelazny was born <date>in 1937</date>
He'll have a hell of a hangover <date>tomorrow morning</date>
Run Code Online (Sandbox Code Playgroud)
我不想解释日期短语,只需找到它们.事实上,他们的约会是无关紧要的(在现实生活中,他们甚至不是约会,但我不想让你厌烦细节),基本上它只是一套开放式的可能值.值本身的语法可以近似为无上下文,但是手动构建非常复杂,并且随着复杂性的增加,越来越难以避免误报.
我知道这是一个很长的镜头所以我不希望存在一个开箱即用的解决方案,但我可以使用哪种技术或研究?
nlp machine-learning named-entity-recognition temporal information-extraction
我有关于如何评估信息检索结果是否良好的问题,如计算
相关文件排名,召回,精确度,AP,MAP .....
目前,一旦用户输入查询,系统就能够从数据库中检索文档.问题是我不知道如何进行评估.
我得到了一些公共数据集,例如 它包含的"Cranfield collection" 数据集链接
1.document 2.query 3.relevance asments
DOCS QRYS SIZE*
Cranfield 1,400 225 1.6
Run Code Online (Sandbox Code Playgroud)
我可以通过使用"Cranfield collection"来计算相关的文档排名,召回率,精度,AP,MAP .....
我可能需要一些想法和方向.不要求如何编写程序代码.
我想从 pdf 论文中提取作者姓名。有人知道一种可靠的方法吗?
例如,我想Archana Shukla从此pdf中提取名称https://arxiv.org/pdf/1111.1648
python pdf nlp named-entity-recognition information-extraction
using System;
using System.Collections.Generic;
using System.Linq;
using System.Text;
using System.IO;
namespace Program
{
class Program
{
public static string *GetExtension*(string cale) //GetExtension is an error
{
string fisier, extensie;
cale = @"D:\dir1\dir2\";
fisier = @"D:\dir1\dir2\fisier.txt";
extensie = Path.GetExtension(fisier);
System.Console.WriteLine("Extensie: {0} returneaza {1}", fisier, extensie);
extensie = Path.GetExtension(cale);
System.Console.WriteLine("Extensie: {0} returneaza {1}", fisier, extensie);
}
}
}
Run Code Online (Sandbox Code Playgroud)
我为这个业余职位道歉.
我不明白这个错误 "Program.Program.GetExtension(string)': not all code paths return a value"
谁能告诉我,我做错了什么,拜托?
(哦和fisier意味着文件,cale mean path和extensie意味着我的语言扩展).
提前致谢.