Azure资源来处理非结构化数据源

时间:2019-03-14 15:43:04

标签: azure azure-cognitive-services azure-analysis-services azure-analytics

我们需要从非结构化来源(如信件,rad报告等)中提取暗数据。请建议使用Azure资源从常见文档格式中提取数据:DOC,DOCX,PDF,RTF,TXT,HTML等,然后对提取的数据进行分析。

1 个答案:

答案 0 :(得分:0)

听起来您只是想从这些RTF格式文档中提取原始文本或图像。如果仅执行这些操作,那么您真正的需求就是一些解析不同文档的库。

这里有一些Java或Python库可以做到这一点。如果您使用的是我不熟悉的.NET,则可以在Google或Bing中搜索以找到.NET的替代方案。

  1. 要解析DOC,DOCX之类的Office文档:对于Java,Apache POI是一个很好的库,用于从MS Office文件中提取数据。对于Python,似乎没有任何软件包可以执行此操作,除了在Windows上的.NET中使用Word.ApplicationIronPythonReading/Writing MS Word files in Python)之类的COM对象之外。
  2. 要解析PDF文件:Java有Apache PDFBoxjPDFText和Python有PyPDF2
  3. 要读取RTF格式文件:Java本机通过javax.swing.text.rtf.RTFEditorKit支持,您可以通过搜索获得一些示例代码;像#1一样,对于Python也似乎没有。
  4. 要解析HTML文件:对于Java来说,jsoup对于Python来说是BeautifulSoupHTMLParser对于从HTML中提取数据最有效。
  5. 对于阅读TXT格式的文件,我认为对于任何语言来说都很简单。但是,要从文本内容中提取有价值的信息,Java的Stanford NLP和Python的NLTK很有用,而且使用Cognitive Service的Azure Text Analytics API可以帮助完成诸如关键词提取和语言检测之类的工作。
  6. 用于内容分析的Apache Tika工具包也是一个很好的解决方案。甚至您也可以单独部署它,并通过Python和其他语言调用它的REST API。
  7. 如果要从图像中提取文本,则可以使用Cognitive Services的Azure Computer Vision API来提取印刷文本或手写文本,或者使用第三方库(例如Tess4J或您在其中搜索的其他库) GitHub。

以上所有内容几乎都取决于没有Azure资源的第三方开发工具包。但是,您可以将这些文档存储在Azure存储中,并在Azure VM或批处理服务上进行处理,甚至可以分析Azure Jupyter Notebook中的提取数据,或者使用Azure ML进行更深入的研究。