从T-SQL调用Snowball / Porter2 Stemmer

时间:2014-12-05 15:14:15

标签: sql-server r solr lucene stemming

我正试图为我办公室的分析师提供一种简单的方法来从MSSQL调用一个词干分析器。它将用于生成词干注释字段,用于两个目的:

  1. 创建训练集,其中最常见的词干注释字段被计算和聚合,然后从最常出现的第一个开始进行分类。 (对于我们的应用程序,我们将会有很多常用的重复短语和很多一次性的东西)。

  2. 生成Notes字段的派生词干版本以运行分类模型。

  3. 我认为如果我能够创建一个名为maybe StemText的SQL函数来获取文本字段并返回词干版本,那么每个人都会很容易。然后我可以创建另一个函数,该函数在R中调用指定的分类模型名称(在本例中为词干注释字段)。

    我们目前拥有围绕Snowball / Porter2干扰器构建的一系列词干训练集数据(以及成功的分类系统)。我看到有一个Porter1词干分析器的T-SQL端口,但不是Porter2。在任何情况下,我都看到有很多软件包包括像SOLR / Lucene这样的Snowball算法,但是我没有看到很多关于如何从T-SQL调用它们的信息。我还看到R上有一个雪球添加包,并且还有更多信息可以与来自MSSQL的R接口。

    有没有人对这种方法有任何想法或建议?

1 个答案:

答案 0 :(得分:1)

我最终使用Visual Studio SQL Project创建了一个CLR函数,该项目包装并扩充了Porter2词干分析器的一个官方CSharp端口。我跑得很快,很容易设置。