公开/公告号CN112163137A
专利类型发明专利
公开/公告日2021-01-01
原文格式PDF
申请/专利权人 北京神鹰城讯科技股份有限公司;
申请/专利号CN202010910483.4
申请日2020-09-02
分类号G06F16/951(20190101);G06F16/953(20190101);G06Q30/06(20120101);
代理机构11200 北京君尚知识产权代理有限公司;
代理人司立彬
地址 100081 北京市海淀区中关村南大街甲8号61幢威地科技大厦9层902室
入库时间 2023-06-19 09:23:00
技术领域
本发明属于一种互联网信息检索方法,具体地说是一种基于数据采集和信息抽取的房屋租赁信息搜索方法。
背景技术
对于房屋租赁行业而言,用户常利用互联网进行房源信息搜索,以及时、全面、高效的获取房源信息。但由于互联网上房源信息数量巨大,给相关的数据采集工作带来了很大的负担,极易造成所需数据采集不完全的问题;加之不同领域对同一或相似关键字的理解歧义,导致搜索结果包含大量干扰信息,需要用户进行手动鉴别,使得有效信息获取率降低,甚至难以获得有效信息,导致用户无法快速全面的获取有用的租房信息,影响其用户体验感。
上述搜索场景可归纳为两个问题:数据采集不完全和信息抽取效率低。对于数据采集不完全问题,一种解决方式为利用用户的搜索主题设定,有目的的采集与主题相关的信息,该方法可以保证数据采集的广度,但消耗了大量的软硬件资源,而且对于用户常用的搜索主题,仍需要不断重复搜索,降低了数据采集效率,另一种解决方式是针对用户搜索习惯进行个性化信息采集,该方法提高了数据采集的针对性,但也限制了其信息采集的覆盖范围,造成信息采集不全面的问题。对于信息抽取效率低问题,一种方式是基于网页结构的信息抽取,该方法通过将HTML文档转化成DOM树,在DOM数结构下进行信息抽取,该方法的优点是操作较为简单,但需要用较长时间识别确定网页页面结构的定位目标信息,效率较低;另一种方法是基于ontology的信息抽取,其优点是不再依赖网页结果,但需要大量人工介入,属于一种半自动化的信息抽取方式。
发明内容
针对现有技术中存在的技术问题,本发明的目的在于提供一种基于爬虫的数据采集和基于深度学习的信息抽取房屋租赁信息搜索方法,以解决传统搜索方法在房屋租赁信息搜索时搜索数据不全面、搜索结果针对性差、搜索过程效率低的问题,改善用户信息检索体验感。
本发明利用Scrapy爬虫框架和Scrapy-redis扩展组件建立数据采集模块按固定周期爬取互联网上房屋租赁信息并存储在原始数据库中,保证搜索信息的全覆盖性;并根据检索字段特点,分别采用基于规则模型和基于深度学习模型的信息抽取方法,自动识别用户搜索主题信息,提高检索效率,并根据用户搜索习惯建立针对性的数据信息库,实现房屋租赁信息的快速、高效检索,提升用户信息检索体验。
为了解决背景技术所存在的问题,本发明采取以下技术方案:
一种基于数据采集和信息抽取的房屋租赁信息搜索方法,其包括以下步骤:
步骤(1)数据采集及存储:利用数据爬虫抓取网络上的房屋租赁信息,将爬取到的信息按字段进行归类,并存储在原始数据库中;
步骤(2)信息抽取:用户在信息展示平台上输入需要搜索的内容,后台根据检索信息进行字段抽取,首先进行基于规则模型的信息抽取,抽取如房租价格和供需关系等较简单信息,若未完成全部字段的抽取,再进行基于深度学习模型的信息抽取,在房源标题及房源描述等包含大量文字的非结构化数据中搜索并抽取搜索的内容,如地理名和机构名称等抽象信息,并将抽取结果分配到步骤(1)中的归类中,并保存在用户查询信息数据库中;
步骤(3)信息搜索与呈现:利用步骤(2)抽取的字段信息搜索原始数据库对应的归类中的房源信息,并将查询到的满足条件的信息展示给用户,若抽取到多个字段不在同一个归类里,则将各归类中查询到的部分满足条件的信息也都展示给用户。
在步骤(1)中,数据采集模块基于Scrapy爬虫框架和Scrapy-redis扩展组件研发而成,通过Scrapy爬虫框架和Scrapy-redis扩展组件分别实现爬虫控制和分布式数据爬取,提高数据采集的全面性。
在步骤(1)中,多个爬虫节点利用统一爬虫控制器进行控制,爬虫控制器与各爬虫节点间通过基于TCP/IP协议的消息进行通信。
在步骤(2)中,为节约检索资源,提高检索效率,针对待检索字段是否常见、特征是否明显,将信息抽取方式划分为两类:基于规则模型的信息抽取和基于深度学习模型的信息抽取,其中,基于深度学习的信息抽取模型架构采用基于双向长短期记忆模型的字符级中文命名实体识别方法构建。
在步骤(2)中,两类信息抽取方式应用方法为:首先利用数据库中已知的信息进行基于规则模型的信息抽取,抽取如房租价格和供需关系等较简单信息,若未完成全部字段的抽取,再进行基于深度学习模型的信息抽取,抽取如地理名和机构名称等较为抽象的信息。
在步骤(2)中,在完成信息抽取后将字段信息存储在用户查询信息数据库中,再后续用户查询时直接进行调用,增强搜索针对性和快速性。
本发明相较于现有技术有如下有益效果:
采用本发明的房屋租赁信息搜索方法,可以利用数据采集模块周期性爬取互联网上相关房屋租赁信息,保证了检索信息的全面性;同时利用字段将信息进行归类,缩短检索时间;并在用户检索时,根据检索信息特点,利用不同模型进行关键字段提取,并进行存储,提高了用户搜索针对性;最后根据字段的归类,采用字段匹配方式在原始数据库中进行信息提取,更快速的将相关信息提供给用户,进一步提高检索效率。
附图说明
图1为本发明流程图
图2为爬虫信息采集流程图。
图3为基于规则模型的信息抽取流程图。
图4为基于深度学习模型的信息抽取流程图。
具体实施方式
下面结合附图对本发明进行详细描述。
本发明方法流程如图1所示,其主要步骤包括:
步骤一:数据采集及存储
数据采集模块基于Scrapy爬虫框架和Scrapy-redis扩展组件构建而成,分别通过Scrapy爬虫框架和Scrapy-redis分布式扩展组件实现业务逻辑和分布式数据爬取,各爬虫节点由爬虫控制器统一控制,二者通过TCP/IP协议进行通信。附图2所示,数据采集共分为三部分:爬虫控制器对爬虫节点的控制、爬虫信息采集和数据存储,各部分实现方式如下:
(1)爬虫控制器对爬虫节点的控制
①爬虫节点唤醒。爬虫控制器读取设置好的爬虫节点信息,并向各爬虫节点发送确认信息,若某爬虫节点可用,则该节点回复确认消息,若不可用则不回复;
②爬虫节点配置。爬虫控制器将初始URL地址、数据库等配置信息发送给已唤醒的爬虫节点,爬虫节点收到信息后将其同步到本地,并回复确认信息;
③爬虫节点工作。完成节点配置后,爬虫控制器向所有节点发送爬虫激活命令,爬虫开始爬取数据并储存在原始数据库中;
④工作结束。若爬虫节点无法再获取任务或收到爬虫控制器的任务完成消息,爬虫节点工作结束,爬虫引擎状态变更为暂停,等待下一次指令;
⑤周期循环。爬虫控制器设定固定周期(如12h)启动,重复①-④进行原始数据信息爬取,并将信息存储在原始数据库中,保证获取信息的时效性。
(2)爬虫信息采集
①任务生成。爬虫节点收到爬虫控制器的配置信息后,根据URL地址生成爬虫任务并提交给Scrapy引擎,经Scrapy引擎任务去重处理后,重新将去重后的任务下发给各爬虫节点的采集任务队列中,爬虫节点会并发多个任务从队列中请求并执行爬取任务;
②爬取信息。爬虫节点向任务队列的URL地址发起任务请求,得到响应后将任务发给爬虫,爬虫基于任务的类型和目标URL对目标页面进行采集并对响应结果中的HTML文档进行解析,爬取其中的房源信息数据;
③任务反馈。完成爬取任务后,爬虫节点将相应结果生成新的爬取任务并提交回任务队列中。
(3)数据存储
当完成爬取任务后,根据爬取任务对获得的房源信息按预设的归类信息(如房租价格、供需关系、房屋面积等)进行归类,之后按类别存储在原始数据库中,为保证数据搜索的全面性,原始数据库不清空,当搜索到新内容后即加入到原始数据库中,为避免数据库容量过大,定期删除n年前数据,由于房源信息是具有实效的,所以删除久远的房源信息对用户搜索体验影响不大。
步骤二:信息抽取
用户在信息展示平台上输入需要搜索的内容,后台根据检索信息进行字段抽取,信息抽取根据检索信息的复杂度分为两种方法:基于规则模型的信息抽取和基于深度学习模型的信息抽取,两种方法步骤如下:
(1)基于规则模型的信息抽取,如图3所示
①原始信息获取。利用步骤一获取原始房屋租赁信息;
②创建房屋租赁词库。获取房屋租赁信息中常见的词汇和其触发词汇构建基础词典,利用ICTCLAS方法对词库的词汇进行自定义、分词、合并和去重,形成房屋租赁词库;
③信息抽取。利用房屋租赁词库直接抽取检索信息,并输出抽取结果。
(2)基于深度学习模型的信息抽取,如图4所示
基于深度学习模型的信息抽取通过利用改进的基于双向长短期记忆模型的字符级中文命名实体识别方法将检索语句转化为序列标注问题,采用BIESO标记体系标记句子中各个子是否为有用信息的组成,并确定有用信息的边界,其中,B表示有用信息起始第一个字,I表示有用信息内部非起始或结尾的字,E表示有用信息结尾最后一个字,S表示单字组成的有用信息,O表示无用信息,最终提取出有用信息并进行信息抽取。具体实现步骤如下:
①检索信息输入及预处理。设输入中文句子由n个字符组成,定义其序列为x=(x
C
②检索信息处理。将lookup层的字符向量C=(C
其中,
(H
③信息评测。对式(3)获得的隐状态序列进行评测,相较于传统的基础词典固定匹配评价方法,设计了一种更灵活的评价方法,具体如下:首先提取句子特征,记为矩阵P=(p
通过式(4)可知序列分值由每个位置的打分值相加获得,且位置的打分值由LSTM输出P和转移矩阵A共同确定,利用Softmax得到归一化后的概率:
④信息抽取。根据式(5)获得的归一化概率大小,形成基于深度学习模型的信息,概率越大,证明信息抽取效果越好,并针对该基于深度学习模型的信息进行检索,并输出抽取结果。
步骤三:信息搜索与呈现
利用抽取的字段信息对原始数据库中的房源信息进行匹配,并将查询到的满足条件的信息展示给用户。
本发明不仅局限于上述具体实施方式,本领域一般技术人员根据本发明公开的内容,可以采用其它多种具体实施方式实施本发明,因此,凡是采用本发明的设计思路,做一些简单的变化或更改的设计,都落入本发明的保护范围。
机译: 自动收集和处理房屋信息和信息处理器的设备,其提供从房屋信息的提供到房地产租赁/销售协议的结论的支持
机译: 安装在用于自行车租赁管理的自行车上的无线通信终端以及用于管理自行车租赁信息的方法,该方法能够基于准确信息来管理自行车租赁状态
机译: 基于移动信息的基于字幕的搜索信息的创建方法,基于此类信息的基于运动信息的搜索方法以及采用sad方法的再现装置