初涉数据挖掘
初涉数据挖掘
对于数据挖掘,其实我脑海里只有寥寥无几的个词:大数据,机器学习,搜索;作为一个只听过几节公开课的小白,我希望能够和大家一起进步;
首先我先将我找到的机器学习资料连接分享给大家:
http://www.52ml.net/我爱机器学习网,我最主要的学习网站,里面的资料很全很多;
http://v.163.com/special/opencourse/machinelearning.html网易的公开课,听着觉得还不错;
http://v.163.com/special/opencourse/learningfromdata.html这个也不错,不过感觉教授讲得不够生动,虽然看着觉得这个老教授很厉害的样子;
目前,我最主要的学习方式还是阅读一些文献,将自己的心得体会分享,给大家,同时,使用相关的知识,模拟一个需求做出一个小的demo,同时,也跟大家多交流;
以上是我关于如何学习数据挖掘这一新领域的方法,希望大家多多指正;
文章阅读:(蓝色字体为原文摘抄)
信息抽取的关键技术和挑战http://www.52ml.net/16181.html
InfoQ: 能否介绍一下您的研究方向,及其应用领域?
韩先培:我的主要研究方向是信息抽取和知识库构建,具体来说就是研究如何从文本中抽取结构化知识(例如从句子“苹果发布了新编程语言Swift”中抽取 IS-A(编程语言, Swift), 发布(苹果公司,Swift)等等语义关系),分析这些知识之间的结构,并将这些知识与现有的知识库进行集成。
信息抽取技术有许多不同的用途。一种典型的应用是使用信息抽取技术构建面向特定任务的知识库(如学术论文库、商品库、旅游景点库、电影库、音乐库等等),并在此基础上实现智能知识服务(如垂直搜索引擎)。另外一种典型应用是特定目标信息的发现和识别(如发现所有与“编程语言Swift”相关的新闻)。在现在的Web中,相关的信息往往被无关的信息淹没。而信息抽取技术可以发现并整合蕴含在海量信息中的特定目标信息,为正确决策提供大量的相关情报,大大降低其中需要的人工。
名词解释:
信息抽取:是把文本里包含的信息进行结构化处理,变成表格一样的组织形式。输入信息抽取系统的是原始文本,输出的是固定格式的信息点。信息点从各种各样的文档中被抽取出来,然后以统一的形式集成在一起。这就是信息抽取的主要任务。(爬虫?)
我认为信息抽取的一大重要工具就是爬虫。我之前的博客也有介绍,感兴趣的同学可以看看,顺便附上一些比较好的爬虫框架连接;
我的博客:
Webmagic框架官方文档:
http://webmagic.io/docs/zh/posts/ch2-install/with-maven.html
知识库:
知识库的概念来自两个不同的领域,一个是人工智能及其分支-知识工程领域,另一个是传统的数据库领域。由人工智能(AI)和数据库(DB)两项计算机技术的有机结合,促成了知识库系统的产生和发展。
维基百科的解释(简单多了):用于知识管理的一种特殊的数据库,以便于有关领域知识的采集、整理以及提取。知识库中的知识源于领域专家,它是求解问题所需领域知识的集合,包括基本事实、规则和其它有关信息。
垂直搜索引擎:说到垂直搜索引擎,就不得不提及其他两个搜索引擎:全文搜索引擎、元搜索引擎;
全文搜索引擎:是名副其实的搜索引擎,通过从互联网上提取各个网站的信息(以网页文字为主)而创建的数据库。检索与用户查询条件匹配的相关记录,然后按一定的排列顺序将结果返回给用户(百度、谷歌)
垂直搜索引擎:是针对某一个行业的专业搜索引擎,是搜索引擎的细分和延伸,是对网页库中的某类专门的信息进行一次集成,定向分字段抽取出需要的数据进行处理后再以某种形式返回给用户。(百度图片,今日头条等)
元搜索引擎:在接受用户查询请求时,同时在其他多个引擎上进行搜索,并将结果返回给用户(就是搜索搜索引擎的搜索引擎)
InfoQ: 目前这个领域最关键的技术是什么?
韩先培:目前信息抽取领域最核心的技术还是基于统计的结构化模型,如隐马尔科夫模型(HMM),条件随机场模型(CRF),马尔科夫逻辑网络(MLN)等等。
由于这块比较深,所以暂时先只是提供一些相关方面的连接,;以后咱们在慢慢看:
隐马尔科夫模型(HMM)
http://www.cnblogs.com/chuanlong/archive/2013/05/05/3061476.html(比较简单易懂)
http://blog.csdn.net/likelet/article/details/7056068(比较理论,比较长,图文并茂)
条件随机场模型(CRF):无向图模型,首选要看隐马尔科夫模型
http://sy95122.blog.163.com/blog/static/360161592010102243643894/(偏数学)
马尔科夫逻辑网络(MLN):大多数资料都是英文版的,找到一个材料是中文翻译与大家分享一下
http://zfgis.blog.163.com/blog/static/82500945201082793552538/
InfoQ: 研究过程中遇到了哪些技术挑战?有没有解决方案?
韩先培:主要的技术挑战来自于两方面:第一是自然语言本身的复杂性,第二是信息抽取任务的开放属性。
自然语言本身的复杂性主要指的是:1)自然语言的歧义性,也就是一个自然语言表达在不同的上下文中通常有不同的意义(例如“苹果”在“我买了一斤苹果”和“我买了一台苹果”中有不同的意义,前面的“苹果”指的是吃的苹果,而后面的“苹果”指的是苹果电脑);2)自然语言的多样性,也就是一个意思可以以不同的说法进行表达(例如“苹果发布了新编程语言Swift”和“苹果公开了其新语言Swift”表达的是同样的意思);3)自然语言句子具有内在的语法结构,而现有自然语言技术难于完美的发现自然语言句子的内在语法结构。
信息抽取任务本身的开放性指的是:1)信息抽取面向的任务是多种多样的。例如,我们抽取的可以是药名、电影名、导演和电影之间的关系等等不同的对象; 2)信息抽取使用的网页的开放性。例如,信息抽取可以从Amazon上利用后台数据库自动生成的页面上抽取知识,也可能从百度百科这样半结构化的页面上抽取知识,当然也经常从搜狐新闻这样完全非结构化的文章上抽取知识。对不同类别的网页,使用的信息抽取技术往往并不相同。
个人理解:往往从不同网站上抓取的指向同一类事务的信息往往有所不同,所以有可能会产生歧义
上述问题的解决是一个长期的研究问题。目前主要的解决方案是使用弱监督或无监督技术。其中的代表性工作包括Bootstrapping技术和Distant Supervision技术。Bootstrapping技术可以从很少的种子知识出发自动抽取目标知识,而Distant Supervision技术则可以充分利用大规模知识库(如Freebase,谷歌的知识图谱等等)中的非直接监督知识构建大规模信息抽取系统。
弱监督技术、无监督技术:半监督学习(Semi-supervised Learning)是模式识别和机器学习领域研究的重点问题,是监督学习与无监督学习相结合的一种学习方法。它主要考虑如何利用少量的标注样本和大量的未标注样本进行训练和分类的问题。主要算法有五类:基于概率的算法;在现有监督算法基础上作修改的方法;直接依赖于聚类假设的方法;基于多试图的方法;基于图的方法。
相关资料地址:
http://cs.nju.edu.cn/zhouzh/(南京大学周志华老师,他是这个方面的泰斗,大家可以看看,很不错的)
http://blog.sina.com.cn/s/blog_4a08244901012j9e.html(这篇博客很不错,没有让人头疼的数学公式,语言通俗易懂)
InfoQ:大数据对信息抽取有何影响?
韩先培:对信息抽取任务来说,大数据主要的影响是“冗余性”。冗余性可以带来有两方面的好处:
1) 首先,由于冗余性的存在,一条知识会以多种不同的方式表达。这样信息抽取技术就可以专注于抽取以简单方式表达的知识,而忽略掉那些以复杂方式表达的知识;
2) 其次,冗余性可以用来验证知识。一条正确的知识通常会比错误的知识出现更多次,因此知识出现的次数就可以用来作为知识准确性的一个度量。
InfoQ:实体链接系统的如何构建?当前有没有一些比较成熟的模型?
韩先培:实体链接系统主要包括三部分:1)从名字到候选实体的对照表;2)实体的上下文知识模型;3)基于上下文知识模型的链接推理算法。目前已经有一些比较成熟的模型。
名字到候选实体的对照表包含一个名字所有可能指向的实体,例如“苹果”这个名字可能指向水果苹果,苹果公司,苹果电脑,电影苹果等等不同的实体。
实体的上下文通常表示为一个词的分布,例如苹果公司的上下文知识可以被表示为{P(iPhone) = 0.1, P(iPad)=0.1, P(乔布斯)=0.05,…},其中P(iPhone) = 0.1表示iPhone这个词出现在苹果公司上下文中的概率为10%,而P(乔布斯)=0.05表示乔布斯出现在苹果公司周围的概率是5%,等等。
最后,推理算法确定一段文本中的名字到底指向哪一个实体。通常推理算法使用上下文的匹配程度来做决定。例如“苹果发布了iPad mini”这句话与“苹果公司”的上下文比“水果苹果”的上下文匹配程度更高,那么推理算法就确定“苹果公司”是上述句子中苹果所表达的实体。
InfoQ:您下一步的研究重点是什么?
韩先培:下一步主要研究关系抽取技术和自然语言文本上的语义推理技术。
结语:虽然一篇文章中,有很多名词很陌生,但是一一查找之后,文章的思想还是吸收了不少,同时,这样子下来下一步要做什么事情就慢慢清晰了,这篇文章虽然只是访谈性质的,但这样简单平实的文章不是更适合初学者么?歪打正着选了一篇很好的文章,希望我的学习过程能够对大家今后的学习有所帮助;
<!--EndFragment-->