CN107205016B - 物联网设备的检索方法 - Google Patents
物联网设备的检索方法 Download PDFInfo
- Publication number
- CN107205016B CN107205016B CN201710252328.6A CN201710252328A CN107205016B CN 107205016 B CN107205016 B CN 107205016B CN 201710252328 A CN201710252328 A CN 201710252328A CN 107205016 B CN107205016 B CN 107205016B
- Authority
- CN
- China
- Prior art keywords
- internet
- equipment
- things
- information
- classification
- Prior art date
- Legal status (The legal status is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the status listed.)
- Active
Links
Images
Classifications
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04L—TRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
- H04L67/00—Network arrangements or protocols for supporting network services or applications
- H04L67/01—Protocols
- H04L67/12—Protocols specially adapted for proprietary or special-purpose networking environments, e.g. medical networks, sensor networks, networks in vehicles or remote metering networks
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04L—TRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
- H04L67/00—Network arrangements or protocols for supporting network services or applications
- H04L67/50—Network services
- H04L67/51—Discovery or management thereof, e.g. service location protocol [SLP] or web services
Abstract
本发明提供一种物联网设备的检索方法,包括以下步骤:获取物联网设备信息;以所述物联网设备信息中的数据序列的特征作为输入,利用分类器获得物联网设备的分类描述,其中,所述分类器根据已知的设备的数据序列的特征作为输入,以该设备对应的分类标签作为输出,通过训练而获得;基于所述分类描述生成检索索引,以用于匹配待检索的物联网设备。根据本发明的方法可以有效的对缺乏文本描述的设备进行描述补全,从而提高了设备检索的准确率。
Description
技术领域
本发明涉及物联网技术领域,尤其涉及一种物联网设备的检索方法。
背景技术
目前,以智能家居、智慧城市、智能制造为例的物联网领域中,越来越多的传感器和设备以标准、公开的方式接入云端。在各类不同的物联网应用中,有越来越多的场景需要进行设备与设备、设备与人之间的直接交互,需要对这些接入云端的物联网设备进行高精度的检索。
然而,在主要包括基于服务发现的检索、基于语义网的检索、基于文本的检索等类型的物联网设备检索技术中,还存在诸多缺陷,无法完全满足物联网感知设备的检索需求。例如,基于服务发现的检索直接使用行业标准,即各类服务发现协议实现物联网设备检索,其多用于局域网场景,无法应用于海量节点的场景;基于语义网的检索具有较高的语义学习门槛和人工成本并存在扩展性问题;基于文本的检索面临设备内容变更迅速、设备描述过于简短等问题,无法有效处理设备描述缺失问题,在物联网场景下可用性受限。这些方法均无法完全满足物联网感知设备的检索需求。
因此,亟需一种通用的、面向规模海量、接入动态、状态易变、描述缺失的物联网设备的检索方法。
发明内容
本发明的目的在于克服上述现有技术的缺陷,提供一种适用于物联网设备描述缺失的场景的物联网设备快速发现方法。
根据本发明的一方面,提供了一种物联网设备的检索方法。该方法包括以下步骤:
步骤1:获取物联网设备信息;
步骤2:以所述物联网设备信息中的数据序列的特征作为输入,利用分类器获得物联网设备的分类描述,其中,所述分类器根据已知的设备的数据序列的特征作为输入,以该设备对应的分类标签作为输出,通过训练而获得;
步骤3:基于所述分类描述生成检索索引,以用于匹配待检索的物联网设备。
优选地,步骤2包括:
步骤21:对每个所述物联网设备信息中的数据序列提取特征;
步骤22:对于物联网设备信息中文本描述完整的设备,将其归类为预设的分类标签,以其数据序列的特征作为输入,以其对应的分类标签作为输出来训练分类器;
步骤23:对于物联网设备信息中文本描述缺失的设备,以其数据序列的特征作为输入,利用训练好的分类器获得其对应的分类标签,进而获得其分类描述。
优选地,所述分类标签采用“部署位置-采集目标-采集变量类型”的形式进行标注。
优选地,步骤2还包括:统计不同物联网应用中不同类别设备的配比信息;基于所述配比信息通过聚类算法获得所述物联网设备归属的物联网应用类型;通过对所述物联网应用类型建立网络流模型来计算反映所述分类描述合理性的得分,以获得优化的分类描述。
优选地,采用以下公式来计算所述得分:
其中,x表示分类指派,n表示需要进行分类指派的物联网设备的数目,m为所有设备的类型数目,p(tj|si)表示设备si属于物联网设备类型tj的概率。取值为0或1,取值为1时表示设备si属于类型tj。表示在该物联网应用中,所有属于类型tj的设备的数量。
优选地,所述数据序列的特征包括均值、最大值、最小值、数值方差、数据序列的小波系数、Zero cross count、一阶线性回归系数、取窗口后的序列均值中的至少一项。
优选地,步骤3包括:基于所述物联网设备的分类描述计算词袋模型;以所述词袋模型和所述物联网设备信息中的属性信息为输入,通过训练DMR模型获得所述物联网设备的主题向量索引;基于所述物联网设备的分类描述获得全文索引。
优选地,步骤3还包括:在接收到待检索的设备的文本内容之后,基于所述全文索引和所述主题向量索引计算反映各个设备与待检索设备的匹配程度的打分值;基于所述打分值输出检索到的物联网设备。
优选地,所述打分值是基于全文索引计算的打分值和基于主题向量计算的打分值的加权。
优选地,所述分类器是随机森林。
与现有技术相比,本发明的优点在于:针对缺乏描述的设备提出了通过训练分类器进行描述补全方法和其优化方法,并提出了基于主题检索和全文检索的混合检索策略,从而有效地提高了物联网设备描述缺失时的检索精度。
附图说明
以下附图仅对本发明作示意性的说明和解释,并不用于限定本发明的范围,其中:
图1示出了根据本发明一个实施例的物联网设备的检索方法的流程图。
图2示出了根据本发明一个实施例的描述补全方法的流程图。
图3示出了根据本发明一个实施例的生成检索索引的流程图。
图4示出了根据本发明一个实施例的处理用户查询的流程图。
图5示出了根据本发明一个实施例的物联网设备分类结果的优化方法的流程图。
图6示出了现有技术中网络流模型的示意图。
图7示出了根据本发明一个实施例的物联网设备的检索系统的示意框图。
图8示出了实现本发明的一个实施例的应用示例。
图9示出了根据本发明一个实施例的物联网设备检索效果。
图10示出了根据本发明一个实施例的物联网设备相关性检索效果。
具体实施方式
为了对本发明的技术特征、目的和效果有更加清楚的理解,现参照附图对本发明提出的物联网设备的检索方法进行详细的描述。
步骤S110,爬取物联网设备信息。
设备爬取是指根据用户控制命令,获取指定物联网开放平台上的物联网设备信息,并可将这些信息存储在“物联网设备原始记录”数据库。
当前公共可访问的物联网平台通常采用统一服务接口和网页封装的方式提供对外访问服务,在进行设备信息爬取时,对应地提供面向Web API接口的爬取和面向网页的爬取,其中,面向Web API的爬取可通过数据源提供的REST接口来获取物联网设备信息;面向网页的爬取采用集成第三方Web爬虫插件的方式,通过解析Web页面来获得物联网设备信息,物联网平台提供的爬虫控制接口,可指定爬虫起始目标、爬虫启动、中止等控制操作。
爬取到的物联网设备信息包括反应设备分类的文本描述(例如,湿度采集设备)、设备的应用信息(例如,该设备属于的项目)、设备的属性信息(例如,部署时间、部署地点等)以及设备指定时间内采集的数据序列信息等。可使用“物联网应用”、“物联网设备”、“设备数据序列”三层抽象来存储爬取到的物联网设备信息,例如,存储各个物联网应用,在每个物联网应用下列出其包含的多个设备以及每个设备对应的一个数据序列。
例如,现有的Web中有大量的物联设备平台(如Xively、Thingspeak)为设备持有者提供在线数据存储和展示的服务。这些平台允许物联网设备持有者进行设备注册,从而提供“应用”、“设备”信息;设备注册后运行时可实时向平台上传数据序列,从而提供“数据序列”信息。具体地,物联网设备产生的实时数据序列为一串有序的时间与数值对,用于表示设备在不同的时间点捕获到的物理量,例如,温度采集设备产生的实时数据序列可能是:(2017-4-10 15:50,24℃),(2017-4-10 15:51,23℃),(2017-4-10 15:52,24℃),(2017-4-10 15:53,25℃)。
步骤S120,描述补全物联网设备的文本描述。
描述补全是指对于描述不全的物联网设备,根据其真实的设备数据序列信息推导出设备的文本描述。所述描述不全设备是指经过文本清理后,描述文本为空或不完整的设备。
在本文中,描述补全的基本原理是:相似类别的设备所采集到的数据序列具有相近的数值特性,通过计算不同设备数据序列之间的关系,能够识别分类相似的设备,通过给定相似设备相同的分类标签描述,从而完成设备描述补全的任务。
图2示出了根据本发明的一个实施例的描述补全的流程图。简言之,描述补全过程包括:将获取的设备信息进行筛选、清洗和预处理;提取每个设备的数据序列的特征;对于文本描述完整设备,根据文本描述信息与预设的分类标签进行手工设备归类,进而以数据序列的特征作为输入,以对应的预设分类标签作为输出,训练分类模型;对于文本描述不全的设备,以其数据序列的特征作为输入,通过训练好的分类模型获得分类标签,将其作为设备的文本描述。
下面参考图2,详细介绍描述补全的过程。
首先,对描述的语言进行检测,并使用第三方服务将文本描述转化为统一的语言;同时,根据不同目标物联网数据源,将设备的不同属性拼接为一条完整的描述信息;对捕获到的每个设备的数据序列进行筛选,过滤缺乏描述并且缺乏数据序列输出的设备。
根据本发明的一个实施例,将文本描述转化为统一的语言的一种方法是,首先使用python的语言类型识别库(https://pypi.python.org/pypi/langdetect)对设备的文本描述语言进行鉴别,如果不是英文的话,直接调用百度翻译API进行第三方的翻译(http://api.fanyi.baidu.com/api/trans/product/apidoc),即向翻译服务发送一个包含非英文文本描述的语句,百度翻译API将返回对应的英文。当然,也可以采用类似的方法转换为其它语言。
根据本发明的一个实施例,对于将设备的不同属性拼接为完整的描述信息的一种方法是,不同的平台上有着不同的物联网设备组织形式,例如,在Xively上,每个设备对应的文本描述散布在title、device_name、description、streamid几个不同的位置上,可直接从这些对应位置读出文本,之后以空格为间隔,将不同位置上的文字描述以先后顺序进行排列,从而获得描述文本。
数据筛选、清洗是对物联网中设备产生的实时数据序列进行处理以获得有意义的数据序列。数据筛选是指将缺乏没有文本描述并且没有对应数据序列的设备;数据清洗包括但不限于:去除特定模式文本信息,如电话号码、url、邮箱地址;去除文本特殊符号,如标点;将所有文本转化为小写后,去除停词,如is、are、this、that等无意义词汇;去除低频词汇,如去除只出现一次的词汇。
数据预处理的目的在于,由于不同的序列可能使用不同的数值单位,因此在数值域上将有很大的区别,需要对它们的数值进行归一化。例如,可使用以下变换对数据序列进行预处理,以防止数值溢出。
其中,sgn()为符号函数,对于正数输入返回1,对于负数输入返回-1。在物联网设备的数据序列中,大部分数据的数值较小,但仍有少数设备数值很大,这些数据会导致之后的数据特征提取等操作出现数值溢出。直观地说,该式将x映射为了一个较小的数f(x,∈),以控制x的值域,通过设定∈可以给予绝对值小于∈的数值更高的分辨率。
接下来,对于每个设备产生的数据序列进行特征提取。以获得每个数据序列对应的特征,所提取的特征包括但不限于:(1)常规统计信息,例如,均值、最大值、最小值、数值方差;(2)数据序列的小波系数;(3)Zero cross count(跨零次数),即序列中相邻两点符号不同的数据对个数;(4)一阶线性回归系数;(5)取窗口后的序列均值等。对于上述特征的提取方式,属于现有技术,在此不再赘述。
接下来,检测爬取到的设备信息是否具有完整的设备描述,使用文本描述完整、具有数值序列的物联网设备来训练分类模型。分类模型可采用支持向量机(SVM)、决策树、神经网络等。在一个实施例中,为了提高训练模型的泛化能力和稳定性,可选用随机森林作为分类模型。随机森林是由许多决策树集成在一起的分类器,相比于传统的决策树分类模型,随机森林可同时训练多个决策树,最后使用投票的方式来预测输出。
具体地,对于文本描述完整的设备,将其归类为预设的分类标签,这些设备的分类标签可由人工指定,可采用“部署位置-采集目标-采集变量类型”的形式标注。例如,设备分类结果的典型标签为“indoor air temperature”(室内空气温度)或“urban waterconductivity”(城市水电导率)。在一个实施例中,预置了70种分类标签以进行设备描述补全。在进行模型训练时,对于文本描述完整的设备,用上述提取的五类特征构成特征向量,以设备的分类标签作为输出来训练随机森林模型。
接下来,对于文本描述不全的设备,将其数据序列的相应特征输入到训练好的分类模型,即可获得该设备的分类标签,进而获得用于反映设备分类的文本描述。
步骤S130,生成检索物联网设备的索引
在此步骤中,使用获得的设备分类的文本描述和/或设备的属性信息来生成索引,以用于物联网设备的检索。
例如,参见图3所示,为了尽量减少特殊输入对索引质量的影响,首先对设备的文本描述进行清洗,例如,去除无用词、特殊符号、低频词等。通过清洗可为全文索引和主题向量提取提供标准输入。
利用经过清洗的文本描述可直接建立全文索引,例如,建立全文索引的倒排索引类型,即以字或词为关键字进行索引,倒排索引通过建立字典索引,并记录每个词在文本描述中的位置,以快速定位关键词。同时索引保存了文本描述的词频信息,以便使用TF-IDF(term frequency/inverse document frequency)进行快速查询。
又如,仍参见图3所示,还可利用DMR(Dirichlet Multinomial Regression)模型来获得主题向量索引,该模型同时使用设备的文本描述信息和属性信息。DMR模型的输入是每个设备文本描述的词袋模型(即文本文件中不同的词出现的频率的统计),以及每个设备的属性信息(例如,部署时间、部署地点等),模型的输出为每个设备的文本描述中每个词对应的主题向量和每个主题对应的词向量。主题向量是一个长度为k的一维向量,其中k为主题数目。向量中的第i个元素表示文本属于主题i的概率,且所有概率的加和为1。例如,主题向量为[0.1,0.2,0.2,0.5],表示属于四类不同的主题的可能性分别为0.1、0.2、0.2、0.5。词向量本质上是指定主题中词出现的频率信息,也是一个长度为d的一维数组,设该向量的长度为d,d为所有出现词汇的个数,例如,对于词向量[0.35,0.25,0.25,0.05,0.1],表示当一个词属于该主题时,这个词属于该词向量中5个词的概率分别0.35,0.25,0.25,0.05,0.1。
输入DMR模型的信息包括可直接使用的数据和需要经过转换的数据,例如,以设备信息中的部署地点为例,并非直接使用经纬度信息作为输入,而是将经纬度数据转换成该地点的类型(例如,居民区、商业区、工业区、大学、农场等),作为DMR模型的输入。在本发明中,用户可通过指定生成的主题数量来控制最终生成的主题的粒度。主题模型的输出可以文本的形式进行存储。
DMR模型是一种经典的主题模型,其通过融合设备的文本描述对应的属性信息,采用概率推断的方法来推理不同设备的主题类别。DMR模型的具体训练过程对于本领域的普通技术人员来说,是公知的,在此不再赘述。
步骤S140,基于生成的索引处理对物联网设备的查询
在此步骤中,包括捕获用户的查询请求,通过生成的索引计算与待检索设备的匹配程度,或称打分值,并向用户返回打分较高的设备信息。也就是说,在处理用户的查询时,将用户的查询输入作为新的文档,通过对比该文档的查询关键字与每个设备的文本描述信息的匹配程度,返回与用户的查询输入最为匹配的设备信息。
图4示出了根据本发明一个实施例的查询处理流程图。在该实施例中,采用基于主题的检索和基于关键词的全文检索相结合的方式来检索物联网设备。
首先,预先读取在步骤S130中获得的全文索引和主题向量索引两类文件,以加速检索。在接收到用户的检索请求后,使用与步骤S130中相同的数据清洗规则对用户的输入查询文本进行处理,并进而计算其词袋模型;根据DMR模型结果计算词袋模型对应的主题向量;计算获得的主题向量与所有设备的主题向量间的差值,并对每个设备进行打分,即主题向量索引打分;此外,还包括对全文索引的打分,即使用TF-IDF,计算每个设备对应的文本描述的打分值;最后,综合主题向量打分和全文索引打分结果进行排序,返回排序靠前的设备信息。
对于全文索引的打分,参照标准的TF-IDF文档检索打分方法进行。例如,对于查询q和文档d,TF-IDF计算分为词频分值和倒排索引分值两部分,分别代表在查询q中每个词在所有文档中出现的总次数以及每个词在所有文档中的特殊性。计算规则如下所示:
其中,N为文档总数,nx为出现词x的文档数;ft(x,d)指词x在文档d中出现的频率,k1、b均为模型的可调参数。avg(ft)表示x在所有文档中出现频率的平均值。
对于主题向量打分,通过计算查询语句的主题向量和每个设备描述的主题向量的相似性获得。例如,用户输入的查询语句被认为是一个新的“文档”q,可以使用DMR模型计算得到q的主题向量用户查询文本的主题向量计算依据以下公式:
其中,αk表示文档k的概率分布的超参数,可由DMR模型参数获得。在得到q的主题向量后,可计算与其他文档主题之间的相似程度,采用Jensen-Shannon距离的倒数进行评价。具体地,使用主题向量的打分计算公式为:
其中,DKL(d||M)表示主题向量的概率分布q和M之间的Kullback–Leibler距离,即两个分布之间的相对熵。DJS(q||d)之间的q和d两个文本片段的主题向量间的Jenson-Shannon距离,用以表示两个文本之间的不同程度。
在计算得到两种打分之后,可使用加权的方式将两种打分进行融合,从而获得当前用户查询下的每个设备的打分。融合的打分采用以下公式:
其中,β为可变参数,可通过查询的较差验证进行调优,r(d)表示使用主题向量计算出的打分值,r(b)表示使用TF-IDF全文检索计算出的打分值,min(r(d))表示在这些打分中的最小值。实验证明这种方式相对于未融合的打分方式能够明显地提高查询精度。也可采用其它的方式进行打分,例如,直接取全文索引打分和主题向量打分的平均值或在获得进行加权打分之后,用某种修正值来进一步优化。
在获得每个设备的查询打分结果之后,返回具有最高打分的设备,并将对这些设备的信息进行呈现,从而完成物联网设备的查询。
综上所述,本发明通过训练分类器对描述不全的设备进行补全,并基于主题检索和全文检索相结合的方式来进行物联网设备的检索,达到了提高检索精度的效果。
此外,为了进一步提高物联网设备的分类结果的正确性,消除明显的分类错误,除了使用图2所述的标准的分类模型之外,在另一个实施例中,本发明还设计了一种利用物联网应用特性来优化上述分类器的分类结果的方法,参见图5所示。
该方法的基本原理是:相同类别的物联网应用对应的设备类别的配比应当是近似的,例如,智能家居应用中存在大量可感知人活动的二值传感器和能耗监控传感器,而野外环境应用中可能有大量的风力传感器、气象传感器。由于能够完整捕获每个物联网设备的应用归属信息,利用这种应用之间设备类型的差异,可推理出使用分类方法获得的传感器类别的合理性。
参见图5所示,简言之,该优化方法包括:统计每个物联网应用的设备类型配比;基于配比信息通过聚类方法获得设备对应的物联网应用类型;对于每个物联网应用,通过建立网络流模型;根据网络流模型优化的目标函数,更改每个物联网设备的类型指派。通过该优化方法可以对每个缺乏描述的设备,输出一个表示每个设备功能的文本描述的标签,得到的分类准确率高于直接使用随机森林方法。
需要说明的是,在图5中,通过聚类获得物联网应用类型主要是考虑到,在某些情况下,物联网应用的类型是未知的,即无法通过物联网应用的文本描述来推断应用的类型;通过配比信息来获得物联网应用类型,是假设到相同类别物联网应用之间的设备类型配比是相似的,基于该假设,统计每个应用中不同种类设备的配比信息;聚类方法可采用K-means聚类、混合高斯模型聚类算法等。
对于每个物联网应用建立网络流模型,图6示意了典型的网络流模型。网络流模型为一个有向无环图结构,其中的节点使用有向边相连,网络流的流量从源点出发,沿有向边的方向最终流动到汇点。本发明使用的是一种带权网络模型,其中图的每个边具有一个权值w和一个流量值c。本发明中网络流的求解目标是获得满足流量最大的情况下,所有边上权值加和最小时的每个边的流量指派。该问题的求解是公知的,可使用Ford-Fulkerson方法或直接转换成线性规划问题解决。
在本发明中,建立的网络流模型可以物联网应用中包含的设备的编号与每个设备属于不同设备类型的概率为输入,这些输入将作为网络流模型的参数,与下文定义的网络模型结构一并构成网络流模型。现有网络流模型存在公认求解算法,直接使用该算法可获得网络流中每个位置变量的值,其中特定的值对应了分类优化结果。
具体地,使用以下的打分公式来评价一个物联网应用中的设备分类指派x的合理性:
其中,n为描述缺失的物联网设备的数目,m为所有设备的类型数目,p(tj|si)为当前设备si属于物联网设备类型tj的概率。取值为0或1,取值为1时表示设备si属于类型tj。表示在该物联网应用中,所有属于类型tj的设备的数量。在等式右面的两个因式中,第一个的含义为“当前指派x与分类器输出的分类结果的匹配程度”,第二个的含义为“当前指派x与应用类型的匹配程度”。通过最大化的取值,可以获得最优的分类指派x,实验证明该指派x的精度显著高于单纯使用分类器的输出。
在此实施例中,将物联网设备的分类问题转化为现有的网络流模型,是一个标准的“最小费用最大流”问题。网络流模型的输出结果是进一步优化的物联网设备的分类结果,即对应每个缺乏描述的设备,输出一个表示每个设备功能的文本描述的标签。
图7示出了根据本发明一个实施例的物联网设备的检索系统的示意框图。该系统包括物联网设备信息爬取模块610、描述补全模块620、索引模块630、查询处理模块640以及用于存储物联网设备信息的原始记录和主题索引与全文倒排索引的存储体。
物联网设备信息爬取模块610用于实现对提供REST接口的物联网数据源进行定期爬取的功能。爬取的结果包括每个设备的文本描述信息、设备的应用信息、设备的属性信息以及设备指定长度时间内采集到的数值信息等,这些信息将直接存入到数据库中。
描述补全模块620用于根据数据库中的设备信息,对缺乏描述的设备进行描述补全,并将补全的结果存入到数据库中。
物联网设备信息的原始记录可使用“物联网应用-物联网设备”进行存储。存储内容具体包括物联网应用信息、设备元数据信息、设备描述信息、物联网设备采集到的真实数据序列等。
索引模块630包括主题索引模块631和全文索引模块632,其中,主题索引模块631使用已补全的设备的文本描述,对每个设备进行设备主题向量的提取,并根据主题向量计算对应的索引;全文索引模块632将对补全的描述建立倒排索引。具体地,主题索引包括每个主题对应的词频与每个文档对应的不同主题的权重;全文索引包括一个所有设备描述文本的倒排索引和每个设备对应的词频向量。这两类索引可以文件形式进行存储。
查询处理模块640对用户的查询请求进行响应,该模块捕获用户的关键字请求,通过索引进行结果比对,返回相关设备信息作为查询结果。
本发明的方法和系统可服务于普通物联网设备使用者,用户可方便地发现可用设备,进而有效地促进设备之间的共享与组合使用,提高各类物联网设备的利用率。此外,本发明也可服务于智能硬件、智能家居等管理海量物联网设备的公司与机构,以提供统一的管理、开发和维护的手段。
为了更清楚的理解本发明的应用,图8示出了基于本发明的详细系统的设计实例。如图8所示,该系统采用了分层设计的方式来分离不同的功能模块。从整体上来看,该系统分为前端和后台两部分,前端执行于客户浏览器端,后端执行于系统后台服务器中。前端负责Web页面的呈现,后台包括“接口层”、“服务层”、“离线任务层”、“存储层”四个层次,分别负责系统与前端的交互、系统的业务流程处理、批量任务处理以及设备原始信息和索引信息的持久化存储。
系统前端分别面向检索系统管理者和检索用户提供了两类页面,即服务管理页面和检索功能模块。系统面向管理者可提供包括爬虫调度、设备数据呈现、全文索引与主题索引维护等功能;面向检索用户可提供了文本检索接口和检索结果呈现两项功能。
系统前端页面组织可使用bootstrap模板,可视化呈现使用d3.js插件提供相关设备的展示,前端事件响应和用户请求处理使用了jquery。
系统后台的接口层直接负责控制页面逻辑、对用户的请求进行捕获,将有效请求发送到系统服务层进行处理,并将服务层返回的数据包装后发送到前端页面。前后端交互使用统一的JSON格式,后台返回前端请求时将携带统一的状态号,以标识当前的请求是否成功或请求异常原因。由于系统的爬虫调度与索引生成功能属于耗时任务,故系统将以上两类任务单独抽取出离线任务层,对于每个任务,使用独立线程进行维护,以提高系统的响应性能。
在实现技术选型方面,后台使用Java Web技术和Spring MVC框架。系统的设备爬虫模块采用集成Apache Nutch的方式,描述补全模块使用Weka中的随机森林代码库实现,并在此基础上新增了本发明的分类结果优化模块。分类结果优化部分调用了Python中的networkX网络流计算库。主题提取部分采用了Mallet工具集中关于DMR模型的实现,全文索引的实现采用了Apache Lucene。对应地,系统持久化交互使用Hibernate,数据库存储使用MySQL;全文索引部分使用了Lucene通用的索引文件;主题索引部分通过将“主题向量”和“文档-主题向量”存储为CSV格式文件实现。
以下举例在上述实现方式中本发明的两个典型操作:
通过输入关键词的物联网设备检索。文本检索接口通过文本输入框获取用户需要查询的关键词,返回以文本列表形式呈现的相关目标设备。前端页面在用户键入关键词后,将关键词信息使用JSON形式封装、发送于后台的“检索控制接口”。检索控制接口从JSON数据中将关键词解析出后,继续调用服务层的检索服务,检索服务读取缓存于内存的主题索引和全文索引数据后,将使用上文提及的“查询处理”流程对所有的文档计算主题打分和全文检索打分,返回综合打分最高的指定数目的设备,与每个设备的信息一并进行打包、封装,最终传输到前端检索页面进行呈现。对于每个物联网设备,呈现内容包括设备所属应用的序号、设备的序号、设备的部署时间、设备的主要文字描述等。呈现效果如图9所示。
查询与指定设备相关的其他设备,并将结果进行可视化展示。系统前端页面提供指定设备的输入(包括物联网应用号和物联网设备号)和用于可视化展示的设备数目,并提供了多种相关性呈现的选项,这里以文档相关性为例。前端将输入的查询信息发送于后台,后台会计算该设备与其他所有设备的TF-IDF打分值,并将打分值最高的指定个数的设备作为候选,同时读取这些设备的主题信息,一并返回前端。前端使用点表示每个设备,使用点的颜色表示每个设备的权重最高的主题,使用连线表示设备之间主题向量的相似程度。前端页面提供了高亮显示的效果,以便于在节点中定位特定节点;提供鼠标滑动之后的详细内容呈现。呈现效果如图10所示。
本发明可以是系统、方法和/或计算机程序产品。计算机程序产品可以包括计算机可读存储介质,其上载有用于使处理器实现本发明的各个方面的计算机可读程序指令。
计算机可读存储介质可以是保持和存储由指令执行设备使用的指令的有形设备。计算机可读存储介质例如可以包括但不限于电存储设备、磁存储设备、光存储设备、电磁存储设备、半导体存储设备或者上述的任意合适的组合。计算机可读存储介质的更具体的例子(非穷举的列表)包括:便携式计算机盘、硬盘、随机存取存储器(RAM)、只读存储器(ROM)、可擦式可编程只读存储器(EPROM或闪存)、静态随机存取存储器(SRAM)、便携式压缩盘只读存储器(CD-ROM)、数字多功能盘(DVD)、记忆棒、软盘、机械编码设备、例如其上存储有指令的打孔卡或凹槽内凸起结构、以及上述的任意合适的组合。
以上已经描述了本发明的各实施例,上述说明是示例性的,并非穷尽性的,并且也不限于所披露的各实施例。在不偏离所说明的各实施例的范围和精神的情况下,对于本技术领域的普通技术人员来说许多修改和变更都是显而易见的。
Claims (10)
1.一种在服务器端进行的物联网设备的检索方法,包括以下步骤:
步骤1:爬取物联网设备信息;
步骤2:对每个所述物联网设备信息中的数据序列提取特征,对于物联网设备信息中文本描述缺失的设备,以其数据序列的特征作为输入,利用训练好的分类器获得其对应的分类标签,进而获得其分类描述,利用网络流模型来计算反映所述分类描述合理性的得分,以获得优化的分类描述,其中:
所述分类器通过训练而获得,包括:对于物联网设备信息中文本描述完整的设备,将其归类为预设的分类标签,以其数据序列的特征作为输入,以其对应的分类标签作为输出来训练分类器;
所述网络流模型通过下述方式获得:统计不同物联网应用中不同类别设备的配比信息,基于所述配比信息通过聚类算法获得所述物联网设备归属的物联网应用类型,通过对所述物联网应用类型建立网络流模型;
步骤3:基于所述分类描述生成检索索引,以用于匹配待检索的物联网设备。
2.根据权利要求1所述的方法,其中,所述分类标签采用“部署位置-采集目标-采集变量类型”的形式进行标注。
4.根据权利要求1所述的方法,其中,所述数据序列的特征包括均值、最大值、最小值、数值方差、数据序列的小波系数、跨零次数、一阶线性回归系数、取窗口后的序列均值中的至少一项。
5.根据权利要求1所述的方法,其中,步骤3包括:
基于所述物联网设备的分类描述计算词袋模型;
以所述词袋模型和所述物联网设备信息中的属性信息为输入,通过训练DMR模型获得所述物联网设备的主题向量索引;
基于所述物联网设备的分类描述获得全文索引。
6.根据权利要求5所述的方法,其中,步骤3还包括:
在接收到待检索的设备的文本内容之后,基于所述全文索引和所述主题向量索引计算反映各个设备与待检索设备的匹配程度的打分值;基于所述打分值输出检索到的物联网设备。
7.根据权利要求6所述的方法,其中,所述打分值是基于全文索引计算的打分值和基于主题向量计算的打分值的加权。
8.根据权利要求1至7中任一项所述的方法,其中,所述分类器是随机森林。
9.一种计算机可读存储介质,其上存储有计算机程序,其中,该程序被处理器执行时实现根据权利要求1至8中任一项所述的步骤。
10.一种计算机设备,包括存储器、处理器以及存储在存储器上能够在处理器上运行的计算机程序,其特征在于,所述处理器执行所述程序时实现权利要求1至8中任一项所述的步骤。
Priority Applications (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN201710252328.6A CN107205016B (zh) | 2017-04-18 | 2017-04-18 | 物联网设备的检索方法 |
Applications Claiming Priority (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN201710252328.6A CN107205016B (zh) | 2017-04-18 | 2017-04-18 | 物联网设备的检索方法 |
Publications (2)
Publication Number | Publication Date |
---|---|
CN107205016A CN107205016A (zh) | 2017-09-26 |
CN107205016B true CN107205016B (zh) | 2020-01-21 |
Family
ID=59905826
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
CN201710252328.6A Active CN107205016B (zh) | 2017-04-18 | 2017-04-18 | 物联网设备的检索方法 |
Country Status (1)
Country | Link |
---|---|
CN (1) | CN107205016B (zh) |
Families Citing this family (11)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN110019809B (zh) * | 2018-01-02 | 2021-11-19 | 中国移动通信有限公司研究院 | 一种分类确定方法、装置及网络设备 |
CN108763289B (zh) * | 2018-04-13 | 2021-11-23 | 西安电子科技大学 | 一种海量异构传感器格式数据的解析方法 |
CN110688392A (zh) * | 2018-06-19 | 2020-01-14 | 阿里巴巴集团控股有限公司 | 一种设备查询方法和装置 |
CN109086033B (zh) * | 2018-07-06 | 2021-08-03 | 中科星图股份有限公司 | 一种遥感数据处理的流程调度方法 |
CN109660627A (zh) * | 2018-12-29 | 2019-04-19 | 北京方正数码有限公司 | 一种物联网设备的集成管理控制平台 |
CN111307214B (zh) * | 2020-03-10 | 2021-09-28 | 淮北市华明工业变频设备有限公司 | 一种基于大数据的电器设备信号采集方法 |
CN112445862B (zh) * | 2020-11-27 | 2024-01-26 | 中国科学院信息工程研究所 | 物联网设备数据集构建方法、装置、电子设备和存储介质 |
CN113095084B (zh) * | 2021-03-16 | 2022-09-23 | 重庆邮电大学 | 一种物联网中语义服务匹配方法、装置及存储介质 |
CN113079052B (zh) * | 2021-04-29 | 2023-04-07 | 恒安嘉新(北京)科技股份公司 | 模型训练、物联网数据识别方法、装置、设备及存储介质 |
CN114791996B (zh) * | 2022-04-15 | 2023-06-23 | 北京百度网讯科技有限公司 | 信息处理方法、装置、系统、电子设备及存储介质 |
CN116186595B (zh) * | 2023-04-26 | 2023-08-18 | 深圳市中科云科技开发有限公司 | 基于工业物联网的数据处理方法、装置和计算机设备 |
Citations (3)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN101364222A (zh) * | 2008-09-02 | 2009-02-11 | 浙江大学 | 一种两阶段的音频检索方法 |
CN105677735A (zh) * | 2015-12-30 | 2016-06-15 | 腾讯科技(深圳)有限公司 | 一种视频搜索方法及装置 |
CN106156357A (zh) * | 2016-07-27 | 2016-11-23 | 成都四象联创科技有限公司 | 文本数据定向搜索方法 |
Family Cites Families (2)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
KR101679578B1 (ko) * | 2015-05-27 | 2016-11-25 | 주식회사 윈스 | IoT 보안을 위한 제어 서비스 제공 장치 및 방법 |
KR101715377B1 (ko) * | 2015-12-18 | 2017-03-27 | 성균관대학교산학협력단 | 사물 인터넷을 위한 시스템, 클러스터 헤더 노드 및 센서 노드 탐색 방법 |
-
2017
- 2017-04-18 CN CN201710252328.6A patent/CN107205016B/zh active Active
Patent Citations (3)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN101364222A (zh) * | 2008-09-02 | 2009-02-11 | 浙江大学 | 一种两阶段的音频检索方法 |
CN105677735A (zh) * | 2015-12-30 | 2016-06-15 | 腾讯科技(深圳)有限公司 | 一种视频搜索方法及装置 |
CN106156357A (zh) * | 2016-07-27 | 2016-11-23 | 成都四象联创科技有限公司 | 文本数据定向搜索方法 |
Non-Patent Citations (1)
Title |
---|
一种物联网设备自动描述方法;李勐,王晓峰,崔莉;《电子学报》;20160531;论文3-4页 * |
Also Published As
Publication number | Publication date |
---|---|
CN107205016A (zh) | 2017-09-26 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
CN107205016B (zh) | 物联网设备的检索方法 | |
CN109189942B (zh) | 一种专利数据知识图谱的构建方法及装置 | |
US11430065B2 (en) | Subscription-enabled news recommendation system | |
Gokulakrishnan et al. | Opinion mining and sentiment analysis on a twitter data stream | |
Pohl et al. | Online indexing and clustering of social media data for emergency management | |
Selvalakshmi et al. | Intelligent ontology based semantic information retrieval using feature selection and classification | |
CN108846097B (zh) | 用户的兴趣标签表示方法、文章推荐方法、及装置、设备 | |
CN112148889A (zh) | 一种推荐列表的生成方法及设备 | |
Dang et al. | Framework for retrieving relevant contents related to fashion from online social network data | |
CN113139141B (zh) | 用户标签扩展标注方法、装置、设备及存储介质 | |
CN107506472B (zh) | 一种学生浏览网页分类方法 | |
Al-Najran et al. | A requirements specification framework for big data collection and capture | |
CN111696656A (zh) | 一种互联网医疗平台的医生评价方法、装置 | |
KR20210063882A (ko) | 효율적 문서 분류 처리를 지원하는 지식 그래프 기반 마케팅 정보 분석 서비스 제공 방법 및 그 장치 | |
CN116882414B (zh) | 基于大规模语言模型的评语自动生成方法及相关装置 | |
CN110019763B (zh) | 文本过滤方法、系统、设备及计算机可读存储介质 | |
Wang et al. | Constructing a comprehensive events database from the web | |
Fernandes et al. | Automated disaster news collection classification and geoparsing | |
CN113515589A (zh) | 数据推荐方法、装置、设备以及介质 | |
Kühl et al. | Automatically quantifying customer need tweets: Towards a supervised machine learning approach | |
Choe et al. | Semantic video event search for surveillance video | |
Kotevska et al. | Sentiment analysis of Social Sensors for local services improvement | |
KR20220074572A (ko) | 딥러닝 기반 신조어 추출 방법 및 그 장치 | |
CN113821718A (zh) | 一种物品信息推送方法和装置 | |
KR20220074576A (ko) | 마케팅 지식 그래프 구축을 위한 딥러닝 기반 신조어 추출 방법 및 그 장치 |
Legal Events
Date | Code | Title | Description |
---|---|---|---|
PB01 | Publication | ||
PB01 | Publication | ||
SE01 | Entry into force of request for substantive examination | ||
SE01 | Entry into force of request for substantive examination | ||
GR01 | Patent grant | ||
GR01 | Patent grant |