APP下载

基于微信平台的室内环境健康内容研究

2022-05-25程远航赵纹静杜英魁

现代计算机 2022年6期
关键词:室内环境服务器算法

程远航,赵纹静,杜英魁,李 娟

(1.沈阳大学信息工程学院,沈阳 110044;2.沈阳大学体育学院,沈阳 110044)

0 引言

新时期背景下经济的迅速发展,我国城市现代化的高速发展,人民生活水平有所改善,人们对自己的生活环境、工作环境的要求也越来越高,不仅要求环境舒适,还要求提高房间的视觉舒适,通过室内装修美化室内环境。可是各种新兴的装修材料和装修饰品的产生并应用,给人们生活带来便利和享受的同时,也导致室内环境污染问题出现。有些污染物隐形地存在于人们的生活环境中,无色无味、不易发现,如果不采取措施必然会影响到人们的身心健康和居住安全,所以提高室内环境空气质量成为当下所有居民关心的问题。室内空气污染被称为第三大类污染,因此我们应该采取一些措施科学有效地对室内环境进行监测,确保监测数据准确和有效,进一步提高居民用户的生活环境质量,从而解决室内污染对人体健康的危害问题。基于微信平台的室内环境健康内容研究,以微信平台绑定监测居室环境的检测设备,并与微信用户openid连接,保证用户所处的居室环境健康状况,同时微信平台通过环境状况推送用户相关的环境新闻。

当今时代科技互联网的飞速发展,人们对电子产品的依赖越来越高,社交媒体的存在不仅缓解了用户的生活压力,也丰富了用户的生活。但是,随着各种软件的蓬勃发展,互联网的海量信息越来越让人们难以准确找到真正需要的信息资源,也很难找到自己感兴趣的话题,给用户带来困扰。因此,如何分析、挖掘海量的网络数据,给用户推荐可能喜欢的内容,正是科研人员正在研究的热点问题,推荐系统的出现缓解了网络数据的信息过载问题。推荐系统已经存在于人们的日常生活中,比如淘宝、抖音、每日歌单、电影推荐,等等。但是在推荐系统中,普遍存在冷启动、数据稀疏、用户评分片面、主观性强等问题,这样不仅降低推荐的精度,也不能满足用户的需求。实行具体内容具体推送,选择合适的推荐算法,是推荐系统设计的关键。将不同的推荐算法有机结合,使得单一推荐算法的弊端通过混合推荐算法来弥补,采用混合推荐算法的内容推荐系统可取长补短,取得较好的成效,不仅帮助用户节约搜索时间,而且有效地实现了对微信用户的个性化推荐,用户体验和新用户参与度也有显著提高。

1 系统总体技术

1.1 开发环境

在微信平台下面向用户居室环境健康的研究系统,系统后端使用python语言开发微信公众号,MySQL作为系统的数据库缓存用户行为信息及居室环境数据,阿里云服务器搭建服务器环境。系统前端将发送给用户的数据通过Django框架进行页面渲染,各组件相互配合,为用户提供真实有效有趣的需求。

1.2 系统架构

微信平台是开发者通过微信公众号为微信用户提供信息和服务的平台,用户在微信官网注册公众号,开发者获取相关接口权限即可进行开发。系统架构包括移动客户端和服务器端两个部分,微信服务器在用户和云服务器间充当一个转发服务器,用户作为终端发起请求到微信服务器,微信服务器将请求转发给云服务器,云服务器接收响应回复用户消息,平台架构如图1所示。

图1 平台架构

(1)移动客户端。用户仅需要有一部智能手机,下载微信APP,关注微信公众号,开发者只要获取此用户的监测设备号,微信平台就可以获取此用户的环境数据,并上传到数据库等待用户的调用。

(2)服务器端。开发部署选择阿里云服务器和微信服务器,实现“数据采集→数据处理→数据存储→内容推送”这一系统过程。其中,阿里云服务器主要实现“数据采集,数据处理,数据存储”功能,微信服务器则实现对用户的内容推送功能。

为了更好地服务于用户,微信公众号有区分权限功能,只有当客户绑定室内环境的监测设备时需求才能得到满足,不能及时参与绑定的用户只能获取平台推送的与环境相关的新闻内容,不能推送自己的居室环境状况,更无法获取居室环境数据信息。

2 混合推荐系统设计

协同过滤推荐算法,简言之:‘物以类聚,人以群分’。该算法通过用户的行为信息数据来挖掘用户的潜在兴趣,根据不同用户对相同内容的喜好程度计算用户之间的相似程度,寻找喜好相似的邻居用户,并对具有相同喜好的用户进行相应的内容推荐。该算法适用于对时效性要求高、但个性化要求不高的情境中。但是单独使用该算法存在数据稀疏问题、冷启动等问题。

内容推荐算法是最早使用的推荐算法,根据用户的历史行为记录,将用户过去喜欢的内容或物品进行分析,获取用户的喜好标签,为用户建立偏好兴趣模型,然后为用户推荐和兴趣模型相似的内容。内容推荐算法产生的推荐只和用户本身的兴趣有关,无关其他用户,具有用户独立性,只要新内容的特征与用户兴趣模型相似度高,就可以实现用户推荐。但是会出现信息牢笼问题,当推荐范围无法扩展,不能适应新项目的推荐时,不能随着用户兴趣的改变而发生兴趣模型的改变,无法挖掘用户的潜在兴趣,甚至当新用户没有喜好历史,没有行为信息时,不能建立兴趣模型,也就无法为新用户直接产生推荐。

协同过滤推荐算法随着时代的发展已经相对成熟,随着人们需求的不断增多,对推荐系统的要求也在不断提高。以上两种推荐算法各有优缺点,因此,根据不同推荐算法的特点采用混合推荐算法,克服单个算法存在的问题,取长补短互为补充,不仅推荐精度得到提高,推荐的内容也更丰富。图2为推荐算法的架构图。

图2 推荐算法架构图

2.1 协同过滤推荐层

用户的协同过滤推荐算法,是基于不同用户的行为信息评分来面向同一用户标签组产生新闻推荐,通过一段时间的推荐,不断进行数据更新,提高准确性,挖掘用户的潜在兴趣。获取用户的行为信息,对行为日志进行数据处理,从而得到用户对文章的评分数据集。将微信用户之间对内容的评分作为一个向量来计算用户之间的相似度,由高到低排序获取前K个与当前用户高度相似的邻居用户,并将邻居用户评分最高的项目集推荐给当前用户。将以上分析分为三步:

(1)数据集的来源。数据集的获取来自MySQL数据库中用户对偏好内容的点赞、评论、分享行为,以不同评分的形式表达用户对该内容的兴趣偏好。

(2)相似度计算。采用欧式距离算法计算用户间的相似度,公式(1)中,,分别代表不同用户,(X-Y)对其求两者间距离,距离越大则表示两用户间越相似,否则意味着这两个用户根本不相似,然后对用户进行聚类,筛选兴趣相似的用户集合。

(3)产生推荐列表。排除用户本身,将相似度进行降序排列得到的推荐列表,将相似用户喜欢的、但当前用户未曾看过的内容进行推荐。

当用户是新用户时,对推荐的内容产生的行为信息很少,甚至没有,那么系统无法进行个性化推荐,系统只有对一定数量的内容产生行为后才能够进行推荐。那么为了解决冷启动问题,对首次关注微信公众号的新用户先进行热点新闻推荐,通过监测设备感知室内环境状况,给用户合理地推荐热点新闻,比如:当室内环境的甲醛参数过高,推荐用户“如何除甲醛”,“如何净化室内环境空气”等相关新闻文章。

2.2 内容推荐层

基于内容的推荐算法,利用用户本身的兴趣喜好模型进行相应的推荐。获取用户的历史信息,经过数据处理取用户评分较高的内容进行文本分析,为用户建立用户兴趣模型。文本分类流程如图3所示。

图3 文本分类流程图

内容分析分为三步:

(1)中文分词。选择用户在数据集中评分偏高的内容,通过爬虫得到推荐给用户的新闻内容,通过结巴(jieba)分词对两组文本提取特征词,去掉大量无意义的高频词,获得文本关键词列表。

(2)词向量转化。采用TF-IDF算法对关键词进行权值计算,然后根据权重按降序排列取前K个关键词得到兴趣列表。公式(2)、(3)分别为关键词的词频计算和逆文档频率计算。计算TFIDF值为公式(4),其中,代表内容文本的文本总数,()代表文本中包含的文本总数。

(3)兴趣值计算。根据两对兴趣列表中的关键词向量,通过余弦相似度计算两对文本的相似度,得到新文本内容与用户的兴趣模型之间的相似度,将其降序排列取出前个相似度最高的新闻内容。相似度计算为公式(5),其中,是用户的兴趣标签向量,是新文本的标签向量。

在内容推荐的算法中,随着时间的变化、用户浏览记录数据的增加,此推荐算法也会越来越准确。但是时间因素可能会导致用户的兴趣发生衰减,因此在算法中引入衰减系数γ,间隔一段时间后,对所有用户的全部关键词兴趣程度进行相应的衰减,从而模拟用户某个兴趣随时间变化的现象,使推荐更加准确。

3 系统实现

3.1 数据监测部分的系统实现

微信公众号对于首次关注的新用户首先会进行设备扫码连接,将居室的监测设备id上传到微信平台进行绑定,环境数据通过HTTP协议传送到云端并储存在MySQL数据库,微信用户在移动端发送消息指令,云服务器响应指令后将结果返回给用户。用户想查看当前数据、今日数据、均值趋势图均可以通过菜单栏按钮即时获取,如图4所示。

图4 在线实时环境数据

3.2 内容推送部分的系统实现

为满足不同用户的不同偏好,内容推送部分进行定时合理推送。定时推送的时间段选择每天早9点和下午3点,使用户在工作闲暇之余缓解压力,将用户感兴趣的新闻内容进行自主推送。定时为用户推荐感兴趣的内容,不需要用户在知识的海洋里费力寻找,节约了用户在手机上阅读无效内容浪费的时间,帮助用户自动整合感兴趣数据,使推荐系统更加贴合用户的偏好需求,提高了推荐系统的性能,也提高了用户的满意度,减轻信息过载问题。

通过协同过滤和基于内容的混合推荐算法,采用Django框架渲染页面,将内容以图文结合的形式推送给用户,如图5所示。吸引用户的阅读兴趣,增加趣味性。使用户有足够的耐心去进行阅读,延长用户页面停留时间,降低页面跳出率,使用户更感兴趣。

图5 内容推送结果

4 结语

互联网的迅速发展以及普及,使人们的生活已经离不开网络;互联网本着为大众服务的原则,也越来越被大众所喜爱。微信、微博等自媒体的广泛普及,自媒体内容的大量产生逐渐成为一种自然而然的趋势。基于微信公众号的室内环境健康研究系统,可以帮助用户实时在线查看居室环境数据,实时了解当前环境状况,如果有问题及时解决。还向用户主动推送对方感兴趣的环境新闻,解除用户在海量信息中毫无目标地寻找内容的苦恼,解决信息过载问题。本平台采用Python+MySQL实现用户数据查询操作,Python+Django+MySQL实现用户内容推送部分,服务于用户,提高用户的生活环境质量。本系统主要针对居室环境进行监测研究,但在实际中可以应用在医院、社区等其他环境进行信息监测,因此具有较好的实际应用推广价值。

猜你喜欢

室内环境服务器算法
当代美学在室内环艺设计中的应用
Travellng thg World Full—time for Rree
水元素在室内环境设计中的应用与发展
2018年全球服务器市场将保持温和增长
学习算法的“三种境界”
算法框图的补全
算法初步知识盘点
绿化在室内环境中的应用研究
用独立服务器的站长注意了
定位中高端 惠普8路服务器重装上阵