【问题标题】:Using Natural Language Processing to parse websites使用自然语言处理解析网站
【发布时间】:2011-12-17 14:10:46
【问题描述】:

我通常对通过抓取网站进行数据挖掘感兴趣,但我从来没有找到很多关于我真正想要实施的过程的文档。我非常热衷于编写一组基本规则来定义如何解析页面,然后在工具出错时对其进行训练。

假设我想解析餐厅网站上的菜单。我想创建一个工具,让我可以编写一组规则,通常显示菜单项+价格的位置。然后,我可以运行该工具并告诉它正确解析出哪些菜单项,哪些是错误的。然后,该工具将从这些更正中“学习”,下次运行它时,我会得到更好的结果。

我看了一些 NLTK 工具包,我想知道解决这个问题的最佳方法是否是使用 NLP 工具,比如 NLTK。谁能指出我寻找可以帮助我入门的书籍和(理想情况下)图书馆的正确方向? NLP是要走的路吗?谢谢!

【问题讨论】:

    标签: nlp web-crawler data-mining nltk


    【解决方案1】:

    我非常热衷于编写一组基本规则来定义如何解析页面

    “解析页面”到底是什么意思?解析页面中的句子?做结构化information extraction

    然后该工具将从这些更正中“学习”,并且在我下次运行它时,我会得到更好的结果。

    这是active learning 的问题,这是相当高级的东西。你需要一个机器学习工具包;哪一个取决于您到底想做什么:制作解析树或提取显着信息。我相信 NLTK 有一些随机解析器支持。

    【讨论】:

    • 感谢您的回复。我正在寻找确定提取结构化/半结构化信息。您与主动学习的链接正是我正在寻找的那种建议。我知道在这个领域有很多东西要学......我注意到这个问题空间中有一些 Python 库(例如 MLPy)。
    • @Kevination:我也可以推荐scikit-learn,我是其中的维护者之一。我必须承认我不熟悉 MLPy,所以我无法评论它的质量。您真正想要的是具有序列和树模型的工具包,例如 CRF 或结构化感知器/SVM,因此请留意这些。
    猜你喜欢
    • 1970-01-01
    • 1970-01-01
    • 2012-06-24
    • 2013-09-12
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    相关资源
    最近更新 更多