SAP HANA中的文本挖掘
在SAP HANA中,除了基本的分词等文本分析任务外,从SPS09开始增加了文本挖掘(Text Mining)的功能。具体来说,具体来说包括文本关键词提取,文本分类,相似文本查找,相似单词查找等功能,在SPS09中,文本挖掘接口以XS接口的形式提供,在SPS10中,提供了SQL形式的接口,这对于文本挖掘的任务,真是非常cool, 有了这个神器,文本分类不再需要整合R,直接在HANA中就可以实现文本分类的功能,具体来说,在HANA内部,在建立全文索引之后,维护了一个term-document矩阵,基于此,可以计算TF,IDF,TF-IDF等词项权重,以欧几里得距离为基础,实现K近邻分类。
废话不多说,下面直接见例子,本文只是介绍最基本用法为主,更多参数及原理请读者自行查找相关资料。
- 准备数据
SET SCHEMA TMTEST;
DROP TABLE MYTEST CASCADE;
CREATE COLUMN TABLE MYTEST(ID INTEGER primary key,CONTENT NCLOB,LANG VARCHAR(32),CLASS VARCHAR(64));
INSERT INTO MYTEST VALUES('1','I am a chinese, I live in beijing','en','china');
INSERT INTO MYTEST VALUES('2','I like fish,especially big fish','en','fish');
INSERT INTO MYTEST VALUES('3','fish is an animal,live in water','en','fish');
INSERT INTO MYTEST VALUES('4','fish is delicous, I like it','en','fish');
INSERT INTO MYTEST VALUES('5','Chinese is great, I like chinese','en','china');
INSERT INTO MYTEST VALUES('6','China and Chinese','en','china');
我们插入6条记录,属于俩个大类,‘china’跟’fish’.
二 建立全文索引
DROP FULLTEXT INDEX ftidx;
CREATE FULLTEXT INDEX ftidx ON MYTEST (CONTENT)
ASYNC
FAST PREPROCESS OFF
SEARCH ONLY OFF
TEXT ANALYSIS ON
CONFIGURATION 'LINGANALYSIS_FULL'
TEXT MINING ON
TEXT MINING CONFIGURATION 'DEFAULT.textminingconfig'
LANGUAGE DETECTION ('EN')
具体参数意义请参考相关文档,我就不一个一个解释了,主要是关闭FAST PREPROCESS,关闭SEARCH ONLY,打开TEXT ANALYSIS跟TEXT MINING,文本挖掘配置参数文件用默认的。
三 Delta Merge
MERGE DELTA OF MYTEST;
记住,这一步非常重要!!!!!
四 相关功能函数
(1) 输入一个单词,找出相关的单词。
例如找出fish的相关单词
(2) 输入一篇文章,找出文章中重要的单词
例如,找出ID=3的文章中的重要单词
(3) 输入字符开头,找出推荐的单词
例如找出C开通的单词
(4) 以文找文,输入一篇文章,找出相似文章
(5) 以词找文
(6) kNN分类算法
在上例子中,我们的训练集合中就两类,fish跟china。然后我们想看看water是哪个类别,在结果的CATEGORY_VALUE中看到是fish这一类的。
全部SQL代码参考附件textmining.sql
参考资料:
1 http://help.sap.com/hana/SAP_HANA_Text_Mining_Developer_Guide_en.pdf
2 http://help.sap.com/hana/SAP_HANA_SQL_and_System_Views_Reference_en.pdf
[本文的测试案例所使用的SAP HANA版本为SAP HANA SPS10]
想获取更多SAP HANA学习资料或有任何疑问,请关注新浪微博@HANAGeek!我们欢迎你的加入!
请勿用于任何商业用途。
请问该示例,在SP09中能实现吗?如能实现,需做哪些调整?
SP09已经开始支持text mining了,不过接口形式不是SQL函数,而且需要通过XSJS的接口,具体参考text mining develop guide
多谢