作者 | Alexander Felfernig, Seda Polat Erdeniz
编译 | CDA数据科学研究院
Recommender systems in the Internet of Things
物联网是一种联网的基础架构,是物联网、互联网和语义学领域之间融合的结果,为随时随地连接不同设备提供了基础。在物联网场景中,开发了大量的服务和应用程序,这使识别相关的服务和应用程序成为用户的一项复杂任务。在这种情况下,推荐系统便成了一项关键的技术,这些技术使大部分服务和应用程序的识别变得可行。比如在物联网等场景下可以在网关上安装一些应用程序,附加设备由网关部署和管理,同时在公共显示器上显示的信息文本,会被用于在网关上完成特定任务相关的数据传输协议,并应包括IoT相关场景中相关的硬件和软件组件。
推荐技术在IoT上下文中的进一步应用包括工作流程的推荐(例如,应将哪些软件功能包含在IoT应用程序的工作流程定义中),食品的推荐(例如,根据食品的状况,可以调整提供条件),在个性化店内购物场景中进行推荐(例如,根据实体店中顾客的位置,应推荐哪些商品)以及健康监控(例如,根据一个人当前的饮食行为和身体状况,推荐食物和体育锻炼)。在许多情况下,灵活的物联网网关基础设施都扮演着核心角色。
IoT网关是基于硬件和软件的解决方案,其主要作用是实现设备到设备中心/或设备到云的通信。它是一个平台,用于支持不同数据源(具有各种通信协议的传感器)与目的地(本地或远程数据管理实体以及各种执行器)之间的连接。物联网网关位于设备的边缘和附近,也可能在服务执行中发挥关键作用。典型的物联网网关平台由设备管理器,通信/数据协议管理器,应用程序管理器和数据管理器组成(请参见下图)。先进的IoT网关包含其他功能,其中可以包括配置器和推荐器引擎,以帮助用户配置网关或基于给定的网关设置和用户交互协议推荐有用的应用程序。
如图1所示,可以使用5G,BLE,LORA和ZigBee等各种连接协议将IoT传感器连接到IoT网关。网关用户可以通过WAN / LAN连接其网关,以管理或监视其数据和服务。他们还可以通过将云应用程序与其IoT网关链接来管理或监视收集的数据。
推荐技术可用于多种目的,以支持不同的物联网场景。在本节中,我们将会介绍协同过滤,基于内容的过滤,基于知识的推荐和组合推荐这四项基本推荐技术,如何根据不同场景去实现推荐的功能。
基于“口口相传”的想法,即朋友(最近邻居– NN)对物品的意见或看法被用作计算推荐算法的主要信息来源。然后,使用k个最近邻居的偏好(等级)来推断当前用户的偏好。例如,将安装在与当前用户具有类似应用程序库的用户的网关上的应用程序,安装在当前用户的网关上。物联网环境中协同过滤的其他应用示例是物联网环境提升中的设备推荐和组件部分推荐。支持协同过滤的不同场景的推荐库的示例是Apache Mahout。
表1:根据其他网关的安装信息,基于协同筛选的设备(d1..d4)和应用程序(app1..app4)推荐。与本地网关相比,网关1的配置文件是最相似的配置文件。由于app3未安装在本地网关上,因此可以将其解释为推荐候选。推荐的应用程序用√表示。
基于稳定的首选项的想法,即过去的首选项在将来不会发生重大变化。使用基于内容的过滤时,有关物品的基于关键字的信息与从当前用户过去已经消费过的项目中提取的关键字匹配。例如,如果用户安装了特定的应用程序,则可以在可用时推荐类似的应用程序或对现有应用程序的更新。在IoT上下文中应用基于内容筛选的其他示例是设备和工作流程的推荐。支持基于内容过滤的不同场景的推荐库示例是Apache Lucene。
表2:使用本地网关上已安装的应用程序的关键字(key)对应用程序进行基于内容过滤的推荐。与本地网关的配置文件相比,app1的关键字是最相似的关键字。由于app1未安装在本地网关上(假设),因此可以将其选择为推荐候选。推荐的应用程序用√表示。
基于使用以显式方式(即在规则约束方面)定义的推荐知识的思想。使用基于知识的推荐时,当前用户明确定义的首选项将转发到知识库,该知识库用于确定推荐(搜索问题的解决方案)。例如,如果IoT网关解决方案的用户更喜欢节电的网关配置,则与其他协议相比,将首选使用特定的通信协议。在物联网环境中,应用基于知识的推荐技术的其他示例包括整个网关配置的推荐,以及野生动物监测中数据收集策略的推荐。
基于组的推荐系统,是基于对用户小组的偏好,使用不同算法的汇总结果去推荐。在基于算法集成的推荐中,基本算法(例如协同过滤,基于内容的过滤和基于知识的推荐)用于确定针对单个用户的推荐。然后将这些建议汇总为该组的最终推荐(基于汇总预测的方法)。相关聚合函数的示例是平均值(推荐用户评分平均值最高的商品)和风险最少(推荐所有最低评分指标最高的商品)。另外,小组资料可以从小组成员的个人偏好中得出(*基于聚合模型的方法,根据小组资料,可以使用上述基本方法确定推荐。团体推荐系统的实现通常基于单用户推荐系统的库,也就是上述提到的Apache Mahout、Apache Lucene等。
本文讨论的推荐方法使用了不同的知识来源,并且还具有不同的优点,这些优点使它们(或更少)适用于特定的推荐方案。在下文中,我们将简单讨论推荐算法选择的主要标准,并针对这些标准分析所讨论的每种算法。
基于内容的筛选和基于协同的筛选的原理都比较简单,实现方式也比较快,只需获得有关评分方面的用户偏好的知识(在基于内容的过滤中,自动提取的关键字)就可以得出推荐。由于基于组的推荐系统大部分是使用这些基本算法,所以基于组的推荐系统的实现也比较容易。相比之下,基于知识的推荐方法需要更多的设置投资,由于领域专家和知识工程师之间的通信开销,知识库的构建通常是一个容易出错且繁琐的过程。
在推荐复杂的产品和服务时,主要支持在用户和系统之间进行对话的会话方法。在这种情况下,使用基于知识的推荐器,即在基于知识的推荐的上下文中支持对话方法。协同过滤和基于内容的过滤不支持推荐对话框。在小组推荐系统的背景下,由于部分小组推荐系统是基于知识的推荐,因此可以支持会话过程。
协同过滤和基于内容的推荐有较好的适应性,因为每一个新的等级更高程度的适应性可以改变推荐的项目清单。如果将协同过滤或基于内容的推荐用作基础推荐,这也适用于组推荐方案方法。基于知识的推荐方法显示出较低的适应性,因为知识库是比较稳定的,因为单个用户的偏好习惯不会一时间去改变。
如果用户喜欢某项推荐,并同时对此推荐感到完全出乎意料,就会产生惊喜度,一般这种效果主要可以通过协同推荐方法来实现。基于内容的推荐一般会假定其偏好保持稳定,并在已经购买的商品列表中提供建议。因此,这种方法提供了非常低的偶然性。同时,基于知识的推荐算法中的偶然性程度取决于编码的偶然性程度。基于小组推荐中的偶然性程度取决于所选择的基础基本推荐方法。
协同过滤和基于内容的过滤都存在冷启动问题:如果在协同过滤中没有特定用户的用户评级,或者到目前为止,当使用基于内容的推荐系统时用户没有购买任何商品时,也就是无法获取相似的推荐。此外,如果某个商品没有获得评级,则协同过滤系统很难将其考虑在内。由于基于内容的过滤基于商品的关键字,因此即使没有商品的评级也可以进行推荐。基于知识的推荐不存在冷启动问题,因为推荐知识被编码在一个知识库中,且假定该知识库在可以开始推荐会话之前就已经存在。
透明度可以视为推荐结果可解释的程度。协同过滤和基于内容的过滤中的结果具有较低的解释性,因为如果要解释的话,只能基于内容的推荐中的相似邻居和相似关键字。在基于知识的推荐中,可以更细化解释。相关说明可以考虑推荐的原因(由用户偏好列表表示),但也可以考虑为什么找不到解决方案以及哪些偏好矛盾的原因。在小组推荐系统中,可解释性取决于所选的基本推荐方法。
由于次优决策的负面影响很大,因此在大多数情况下,此类商品非常复杂,并且需要做出相关决策。其示例是选择特定的服务器基础结构或智能家居解决方案。相反,低参与度商品的例子是低价应用程序或传感器。在大多数情况下,基于知识的方法用于推荐高参与度的商品,而基于内容的协作过滤则用于推荐低参与度的商品。按照先前的论点,如果选择的基本推荐方法是基于知识的,则可以将小组推荐系统用于高度参与的商品。
在本文中,我们提供了对现有推荐方法的简短概述,并讨论了它们在物联网场景中的应用的不同方面。在这种情况下,我们还针对可用于选择推荐算法的一组标准讨论了不同方法的优缺点。同时,也有一些与推荐技术在物联网场景中的应用有关的开放研究问题需要我们关注,尤其是在推荐复杂的IoT配置的情况下,必须开发搜索机制,以便在面对庞大而复杂的配置知识库时也可以进行高效且个性化的解决方案搜索。此外,必须以有效的方式测试和更新有关产品可变性的知识。这项要求与软件工程的当前发展相吻合,后者在开发,测试,部署和生产使用之间相继实现了强大的耦合。
数据分析咨询请扫描二维码
在当今以数据为导向的商业环境中,数据分析师的角色变得越来越重要。无论是揭示消费者行为的趋势,还是优化企业运营的效率,数据 ...
2024-11-17金融数学是一门充满挑战和机遇的专业,它将数学、统计学和金融学的知识有机结合,旨在培养能够运用数学和统计方法解决复杂金融市 ...
2024-11-16在信息时代的浪潮中,大数据已成为推动创新的重要力量。无论是在商业、医疗、金融,还是在日常生活中,大数据扮演的角色都愈发举 ...
2024-11-16随着大数据技术的迅猛发展,数据已经成为现代商业、科技乃至生活各个方面的重要资产。大数据专业的毕业生在这一变革背景下,拥有 ...
2024-11-15随着大数据技术的迅猛发展,数据已经成为现代商业、科技乃至生活各个方面的重要资产。大数据专业的毕业生在这一变革背景下,拥有 ...
2024-11-15在快速演变的数字时代,数据分析已成为多个行业的核心驱动力。无论你是刚刚踏入数据分析领域,还是寻求进一步发展的专业人士,理 ...
2024-11-15Python作为一种通用编程语言,以其简单易学、功能强大等特点,成为众多领域的核心技术驱动者。无论是初学者还是有经验的编程人员 ...
2024-11-15在当今数据驱动的世界中,数据分析已成为许多行业的基础。无论是商业决策,产品开发,还是市场策略优化,数据分析都扮演着至关重 ...
2024-11-15数据分析作为现代商业和研究领域不可或缺的一部分,吸引了越来越多的初学者。然而,自学数据分析的过程中,初学者常常会遇到许多 ...
2024-11-15在当今的数据驱动世界中,机器学习方法在数据挖掘与分析中扮演着核心角色。这些方法通过从数据中学习模式和规律来构建模型,实现 ...
2024-11-15随着数据在各个行业的重要性日益增加,数据分析师在商业和技术领域的角色变得至关重要。其核心职责之一便是通过数据可视化,将复 ...
2024-11-15数据分析师的职责不仅仅局限于解析数据和得出结论,更在于将这些复杂的信息转换为清晰、易懂且具有影响力的沟通。良好的沟通能力 ...
2024-11-15数字化转型是企业提升竞争力和实现可持续发展的关键路径。面对快速变化的市场环境,以及技术的飞速发展,企业在数字化转型过程中 ...
2024-11-15CDA数据分析师认证:CDA认证分为三个等级:Level Ⅰ、Level Ⅱ和Level Ⅲ,每个等级的报考条件如下: Le ...
2024-11-14自学数据分析可能是一条充满挑战却又令人兴奋的道路。随着数据在现代社会中的重要性日益增长,掌握数据分析技能不仅能提升你的就 ...
2024-11-14数据分析相关职业选择 数据分析领域正在蓬勃发展,为各种专业背景的人才提供了丰富的职业机会。从初学者到有经验的专家,每个人 ...
2024-11-14数据挖掘与分析在金融行业的使用 在当今快速发展的金融行业中,数据挖掘与分析的应用愈发重要,成为驱动行业变革和提升竞争力的 ...
2024-11-14学习数据挖掘需要掌握哪些技能 数据挖掘是一个不断发展的领域,它结合了统计学、计算机科学和领域专业知识,旨在从数据中提取有 ...
2024-11-14统计学作为一门基于数据的学科,其广泛的应用领域和多样的职业选择,使得毕业生拥有丰厚的就业前景。无论是在政府还是企业,统计 ...
2024-11-14在当今高速发展的技术环境下,企业正在面临前所未有的机遇和挑战。数字化转型已成为企业保持竞争力和应对市场变化的必由之路。要 ...
2024-11-13