第12卷第5期 智能系统学报 Vol.12 No.5 2017年10月 CAAI Transactions on Intelligent Systems 0ct.2017 D0I:10.11992/tis.201706027 网络出版地址:http:/kns.cmki.net/kcms/detail/23.1538.TP.20170831.1058.016.html 移动社交网络异常签到在线检测算法 赵冠哲,齐建鹏,于彦伟,刘兆伟,宋鹏 (烟台大学计算机与控制工程学院,山东烟台264005) 摘要:随着智能手机、Pd等智能移动设备的广泛普及,移动社交网络的应用得到了快速发展。本文针对移动社交 网络中用户异常签到位置检测问题,提出了一类基于用户移动行为特征的异常签到在线检测方法。首先,在基于距 离的异常模型基础上,提出了基于历史位置(H-Outlier)和基于好友圈(F-Outlier)两种异常签到模型:然后,针对H- Outlier提出了一种优化的检测算法H-Opt,利用所提的签到状态模型与优化的邻居搜索机制降低检测时间:针对F. Outlier提出了一种基于触发的优化检测算法F-Opt,将连续的在线异常检测转化成了基于触发的异常检测方式:最 后,在真实的移动社交网络用户签到数据集上,验证了所提算法的有效性。实验结果显示,F-Opt显著降低了H-Op 的异常检测错误率:同时,相比于LUE算法,F-0pt和H-0pt的效率分别平均提升了2.34倍和2.45倍。 关键词:移动社交网络;异常检测:签到位置:基于距离的异常:好友圈:签到状态:邻居搜索:时间触发检测 中图分类号:TP391文献标志码:A文章编号:1673-4785(2017)05-0752-08 中文引用格式:赵冠哲,齐建鹏,于彦伟,等.移动社交网络异常签到在线检测算法[J].智能系统学报,2017,12(5):752-759. 英文引用格式:ZHA0 Guanzhe,QI Jianpeng,YU Yanwei,,etal.Online check-in outlier detection method in mobile social networks[J].CAAI transactions on intelligent systems,2017,12(5):752-759. Online check-in outlier detection method in mobile social networks ZHAO Guanzhe,QI Jianpeng,YU Yanwei,LIU Zhaowei,SONG Peng (School of Computer and Control Engineering,Yantai University,Yantai 264005,China) Abstract:With the increasing popularization of smartphone,Pads and other smart mobile devices,the use of mobile social networks has also developed rapidly.In this paper,we propose an online method for detecting check- in outliers based on user mobility behavior in mobile social networks.First.based on a distance-based outlier model,we propose two check-in outlier models with respect to historical location(H-Outlier)and friend circle (F- Outlier),respectively.Second,for the H-Outlier,we propose an optimized detection algorithm called H-Opt, which utilizes the proposed check-in status model and an optimized neighbor searching mechanism to reduce computation time.For the F-Outlier,we propose a trigger-based optimized detection algorithm called F-Opt,which transforms continuous online outlier detection into trigger-based outlier detection.Lastly,we present our experimental results,based on a real-world check-in dataset,which demonstrate the effectiveness of the proposed algorithm.Our experimental results show that F-Opt significantly reduces the error rate of H-Opt outlier detection. In addition,compared with the LUE algorithm,the F-Opt and H-Opt algorithms improved efficiency by 2.34 and 2.45 times,respectively. Keywords:location-based social networks;outlier detection;check-in location;distance-based outlier;friend circle;status of check-in;neighbor searching;time-triggered detection 随着GPS终端、Pad、智能手机等位置感知设备 了快速发展。移动社交网络也称基于位置的社交 的广泛普及,各类新型社交网络手机应用不断涌 网络(location-based social networks,LBSN),本质是 现,促使移动社交网络(mobile social networks)得到 提供一个在人群中分享兴趣、爱好、状态和活动等 收稿日期:2017-06-08.网络出版日期:2017-08-31. 信息的平台)。如国内的腾讯QQ、微信、新浪微 基金项目:国家自然科学基金项目(61403328,61572419):山东省重点 博、人人网,国外的Twitter、Facebook、Gowalla、 研发计划项目(2015GSF115009):山东省自然科学基金项目 (ZR2014Q016):烟台大学研究生科技创新基金项目Foursquare等,这些LBSN应用聚集了大量移动用 (YDZD1712). 通信作者:于彦伟.E-mail:yuyanwei(@ytu.cdu.cm. 户。据We Are Social公司在2016年数字报告[)中
第 12 卷第 5 期 智 能 系 统 学 报 Vol.12 №.5 2017 年 10 月 CAAI Transactions on Intelligent Systems Oct. 2017 DOI:10.11992 / tis.201706027 网络出版地址:http: / / kns.cnki.net / kcms/ detail / 23.1538.TP.20170831.1058.016.html 移动社交网络异常签到在线检测算法 赵冠哲,齐建鹏,于彦伟,刘兆伟,宋鹏 (烟台大学 计算机与控制工程学院,山东 烟台 264005) 摘 要:随着智能手机、Pad 等智能移动设备的广泛普及,移动社交网络的应用得到了快速发展。 本文针对移动社交 网络中用户异常签到位置检测问题,提出了一类基于用户移动行为特征的异常签到在线检测方法。 首先,在基于距 离的异常模型基础上,提出了基于历史位置 (H⁃Outlier)和基于好友圈 (F⁃Outlier)两种异常签到模型;然后,针对 H⁃ Outlier 提出了一种优化的检测算法 H⁃Opt,利用所提的签到状态模型与优化的邻居搜索机制降低检测时间;针对 F⁃ Outlier 提出了一种基于触发的优化检测算法 F⁃Opt,将连续的在线异常检测转化成了基于触发的异常检测方式;最 后,在真实的移动社交网络用户签到数据集上,验证了所提算法的有效性。 实验结果显示,F⁃Opt 显著降低了 H⁃Opt 的异常检测错误率;同时,相比于 LUE 算法,F⁃Opt 和 H⁃Opt 的效率分别平均提升了 2.34 倍和 2.45 倍。 关键词:移动社交网络;异常检测;签到位置;基于距离的异常;好友圈;签到状态;邻居搜索;时间触发检测 中图分类号:TP391 文献标志码:A 文章编号:1673-4785(2017)05-0752-08 中文引用格式:赵冠哲,齐建鹏,于彦伟,等.移动社交网络异常签到在线检测算法[J]. 智能系统学报, 2017, 12(5): 752-759. 英文引用格式: ZHAO Guanzhe, QI Jianpeng, YU Yanwei, et al. Online check⁃in outlier detection method in mobile social networks[J]. CAAI transactions on intelligent systems, 2017, 12(5): 752-759. Online check⁃in outlier detection method in mobile social networks ZHAO Guanzhe, QI Jianpeng, YU Yanwei, LIU Zhaowei, SONG Peng (School of Computer and Control Engineering, Yantai University, Yantai 264005, China) Abstract:With the increasing popularization of smartphone, Pads and other smart mobile devices, the use of mobile social networks has also developed rapidly. In this paper, we propose an online method for detecting check⁃ in outliers based on user mobility behavior in mobile social networks. First, based on a distance⁃based outlier model, we propose two check⁃in outlier models with respect to historical location (H⁃Outlier) and friend circle (F⁃ Outlier), respectively. Second, for the H⁃Outlier, we propose an optimized detection algorithm called H⁃Opt, which utilizes the proposed check⁃in status model and an optimized neighbor searching mechanism to reduce computation time. For the F⁃Outlier, we propose a trigger⁃based optimized detection algorithm called F⁃Opt, which transforms continuous online outlier detection into trigger⁃based outlier detection. Lastly, we present our experimental results, based on a real⁃world check⁃in dataset, which demonstrate the effectiveness of the proposed algorithm. Our experimental results show that F⁃Opt significantly reduces the error rate of H⁃Opt outlier detection. In addition, compared with the LUE algorithm, the F⁃Opt and H⁃Opt algorithms improved efficiency by 2.34 and 2.45 times, respectively. Keywords:location⁃based social networks; outlier detection; check⁃in location; distance⁃based outlier; friend circle; status of check⁃in; neighbor searching; time-triggered detection 收稿日期:2017-06-08. 网络出版日期:2017-08-31. 基金项目:国家自然科学基金项目(61403328, 61572419); 山东省重点 研发计划项目(2015GSF115009); 山东省自然科学基金项目 (ZR2014FQ016 ); 烟 台 大 学 研 究 生 科 技 创 新 基 金 项 目 (YDZD1712). 通信作者:于彦伟. E⁃mail:yuyanwei@ ytu.edu.cn. 随着 GPS 终端、Pad、智能手机等位置感知设备 的广泛普及,各类新型社交网络手机应用不断涌 现,促使移动社交网络(mobile social networks)得到 了快速发展。 移动社交网络也称基于位置的社交 网络(location⁃based social networks, LBSN),本质是 提供一个在人群中分享兴趣、爱好、状态和活动等 信息的平台[1] 。 如国内的腾讯 QQ、微信、新浪微 博、 人 人 网, 国 外 的 Twitter、 Facebook、 Gowalla、 Foursquare 等,这些 LBSN 应用聚集了大量移动用 户。 据 We Are Social 公司在 2016 年数字报告[2] 中
第5期 赵冠哲,等:移动社交网络异常签到在线检测算法 ·753· 指出,2016年全球社交网络用户约19.7亿,占全球 (DB-Outlier)检测问题。给定一个数据集合,若某 总人口的27%。LBSN中海量带有位置信息的社会 数据点的邻域内的数据个数小于给定阈值,则该数 媒体数据可被用于各类挖掘应用研究,如挖掘用户 据点为基于距离的异常点。之后,Knor等)将基 兴趣偏好、好友推荐、兴趣点推荐、热点路径推 于距离的异常模型应用到时空轨迹数据异常检测 荐等[3 中。Ramaswamy等[)提出了一种基于k近邻的异 移动社交网络正逐渐改变着人们的生活方式 常定义,根据数据点到第k近邻的距离检测出n个 和生活习惯,给人类社会带来前所未有的变革以及 巨大的经济收益。同时它也吸引了一些不法者 k近邻距离最大的数据点作为异常点。Breunig 盗取用户账号及信息进行各种恶意行为,影响了用 等[]提出另外一类基于密度的数据异常类型,通过 户的正常使用,损害了用户利益,甚至给用户带来 计算本地异常因子LOF来检测局部异常点数据,但 了巨大的经济损失。因此,面向移动社交网络,追 该算法存在较高计算复杂度问题。 踪用户的历史签到位置数据,从用户移动行为特征 在数据流异常检测方面,Yang等Im采用滑动 视角,对用户状态进行在线异常检测,这对于移动 窗口方式在数据流上挖掘基于邻居的模式,主要包 社交网络的安全、用户的隐私保护等具有重要意义。 括基于密度的聚类和基于距离的异常检测。 针对移动社交网络异常账号的检测问题,学术 Angiulli等通过在数据流上分析数据点是否为 界和工业界都提出了大量检测方案[),主要包括基 “safe inlier'”来优化检测方法。Kontaki等u]利用 于行为特征的检测、基于内容的检测、基于图的检 “safe inlier'”设计了一种事件触发的数据流异常检 测和无监督学习的异常检测方法等。而针对移动 测优化算法。Cao等[提出了一种数据流异常检 社交网络中签到位置数据异常检测研究还比较少。 测框架,该框架可用于处理基于距离的和基于k近 本文从用户的移动位置特征视角对异常签到位置 进行检测,针对移动社交网络用户异常签到检测问 邻的两类异常检测模型。 题,提出了一类基于签到位置的在线异常检测方 针对移动对象的轨迹数据,Lee等[us]提出了一 法。首先,在基于距离的异常检测基础上,提出了 种划分-检测的轨迹异常检测框架,将轨迹划分成- 两种异常签到模型,即基于历史位置的异常签到 partition序列,通过计算t-partition间的距离和密度, (history location based outlier,H-Outlier)和基于好友 以发现异常的子t-partition。Bu等6提出了一种连 圈的异常签到(friendship based outlier,.F-Outlier); 续监控移动对象实时轨迹数据流的异常检测算法, 其次,针对H-Outlier,提出了一种优化的检测算法 该方法关注在检测单个移动对象实时轨迹数据中 H-Opt,利用优化的检测状态与邻居搜索机制降低 的异常子轨迹段。文献「17]针对海量移动对象系 检测时间:然后,针对F-Outlier,基于提出的3个优 统中异常对象,提出了一种基于邻居的异常移动对 化策略,提出了一种基于触发的优化检测算法F- 象检测方法,可发现不同于其他邻居对象运动轨迹 Opt,将连续在线异常检测转化成了基于触发的异常 的异常对象。 检测方式,本文采用滑动窗口技术实现H-Opt和F- Opt:最后,在真实的移动社交网络用户签到数据集 2 问题定义 上,验证了所提算法的有效性和效率。 在移动社交网络中用户往往会在新地点进行 本节首先给出一些重要的定义和表示,然后对 签到或登录,所以H-Outlier检测到的异常签到地点 基于距离的移动社交网络异常签到模型进行描述。 很有可能并非真正的异常。为排除这些伪异常状 定义1基于距离的位置异常。给定位置数据 况,本文提出了好友圈的概念和基于好友圈的异常 集D、距离阈值d、邻居点数量阈值k,对于位置数据 签到模型F-Outlier.,这是因为在移动社交网络中 点o∈D,如果{pdist(p,o)≤d,p∈D}≤k, 50%~70%的行为可由周期行为解释,还有10%~ 则称0是一个基于距离的位置异常点。 30%行为可根据好友关系行为解释6)。也就是说, U={u1,山2,…,山m}表示移动社交网络的所有 在移动社交网络中用户往往与认识的好友共同出 现在不经常签到的地点,如朋友聚餐、商务活动或 用户集,用户“:在t时间点的签到位置表示为p。 本文采用基于签到位置数量的滑动窗口W来 者公务出差等。针对这些伪异常,我们通过检测好 友圈中好友签到位置来判断用户的签到是否为真 处理移动社交网络中实时的签到数据,窗口长度标 正的异常签到。 记为|W=w,也就是说,W中包含w个签到位置。 定义2基于历史位置的异常签到。给定距离 相关工作 阈值d、邻居点数量阈值k,滑动窗口W,对于用户u: Knor和Ng)最早提出了基于距离的空间异常 的签到位置p6∈w,如果|{p|dist(p,p)≤d
指出,2016 年全球社交网络用户约 19.7 亿,占全球 总人口的 27%。 LBSN 中海量带有位置信息的社会 媒体数据可被用于各类挖掘应用研究,如挖掘用户 兴趣偏 好、 好 友 推 荐、 兴 趣 点 推 荐、 热 点 路 径 推 荐等[3] 。 移动社交网络正逐渐改变着人们的生活方式 和生活习惯,给人类社会带来前所未有的变革以及 巨大的经济收益[4] 。 同时它也吸引了一些不法者 盗取用户账号及信息进行各种恶意行为,影响了用 户的正常使用,损害了用户利益,甚至给用户带来 了巨大的经济损失。 因此,面向移动社交网络,追 踪用户的历史签到位置数据,从用户移动行为特征 视角,对用户状态进行在线异常检测,这对于移动 社交网络的安全、用户的隐私保护等具有重要意义。 针对移动社交网络异常账号的检测问题,学术 界和工业界都提出了大量检测方案[5] ,主要包括基 于行为特征的检测、基于内容的检测、基于图的检 测和无监督学习的异常检测方法等。 而针对移动 社交网络中签到位置数据异常检测研究还比较少。 本文从用户的移动位置特征视角对异常签到位置 进行检测,针对移动社交网络用户异常签到检测问 题,提出了一类基于签到位置的在线异常检测方 法。 首先,在基于距离的异常检测基础上,提出了 两种异常签到模型,即基于历史位置的异常签到 (history location based outlier,H⁃Outlier)和基于好友 圈的异常签到( friendship based outlier,F⁃Outlier); 其次,针对 H⁃Outlier,提出了一种优化的检测算法 H⁃Opt,利用优化的检测状态与邻居搜索机制降低 检测时间;然后,针对 F⁃Outlier,基于提出的 3 个优 化策略,提出了一种基于触发的优化检测算法 F⁃ Opt,将连续在线异常检测转化成了基于触发的异常 检测方式,本文采用滑动窗口技术实现 H⁃Opt 和 F⁃ Opt;最后,在真实的移动社交网络用户签到数据集 上,验证了所提算法的有效性和效率。 在移动社交网络中用户往往会在新地点进行 签到或登录,所以 H⁃Outlier 检测到的异常签到地点 很有可能并非真正的异常。 为排除这些伪异常状 况,本文提出了好友圈的概念和基于好友圈的异常 签到模型 F⁃Outlier,这是因为在移动社交网络中 50% ~70%的行为可由周期行为解释,还有 10% ~ 30%行为可根据好友关系行为解释[6] 。 也就是说, 在移动社交网络中用户往往与认识的好友共同出 现在不经常签到的地点,如朋友聚餐、商务活动或 者公务出差等。 针对这些伪异常,我们通过检测好 友圈中好友签到位置来判断用户的签到是否为真 正的异常签到。 1 相关工作 Knorr 和 Ng [7]最早提出了基于距离的空间异常 (DB⁃Outlier)检测问题。 给定一个数据集合,若某 数据点的邻域内的数据个数小于给定阈值,则该数 据点为基于距离的异常点。 之后,Knorr 等[8] 将基 于距离的异常模型应用到时空轨迹数据异常检测 中。 Ramaswamy 等[9] 提出了一种基于 k 近邻的异 常定义,根据数据点到第 k 近邻的距离检测出 n 个 k 近邻 距 离 最 大 的 数 据 点 作 为 异 常 点。 Breunig 等[10]提出另外一类基于密度的数据异常类型,通过 计算本地异常因子 LOF 来检测局部异常点数据,但 该算法存在较高计算复杂度问题。 在数据流异常检测方面,Yang 等[11] 采用滑动 窗口方式在数据流上挖掘基于邻居的模式,主要包 括基 于 密 度 的 聚 类 和 基 于 距 离 的 异 常 检 测。 Angiulli 等[12]通过在数据流上分析数据点是否为 “safe inlier” 来优化检测方法。 Kontaki 等[13] 利用 “safe inlier”设计了一种事件触发的数据流异常检 测优化算法。 Cao 等[14] 提出了一种数据流异常检 测框架,该框架可用于处理基于距离的和基于 k 近 邻的两类异常检测模型。 针对移动对象的轨迹数据,Lee 等[15] 提出了一 种划分⁃检测的轨迹异常检测框架,将轨迹划分成 t⁃ partition 序列,通过计算 t⁃partition 间的距离和密度, 以发现异常的子 t⁃partition。 Bu 等[16] 提出了一种连 续监控移动对象实时轨迹数据流的异常检测算法, 该方法关注在检测单个移动对象实时轨迹数据中 的异常子轨迹段。 文献[17] 针对海量移动对象系 统中异常对象,提出了一种基于邻居的异常移动对 象检测方法,可发现不同于其他邻居对象运动轨迹 的异常对象。 2 问题定义 本节首先给出一些重要的定义和表示,然后对 基于距离的移动社交网络异常签到模型进行描述。 定义 1 基于距离的位置异常。 给定位置数据 集 D、距离阈值 d、邻居点数量阈值 k,对于位置数据 点 o ∈ D ,如果 { p dist(p,o) ≤ d,p ∈ D} ≤ k, 则称 o 是一个基于距离的位置异常点。 U = {u1 ,u2 ,...,um } 表示移动社交网络的所有 用户集,用户 ui在 t j 时间点的签到位置表示为 p i j 。 本文采用基于签到位置数量的滑动窗口 W 来 处理移动社交网络中实时的签到数据,窗口长度标 记为 W = w ,也就是说,W 中包含 w 个签到位置。 定义 2 基于历史位置的异常签到。 给定距离 阈值 d、邻居点数量阈值 k,滑动窗口 W,对于用户 ui 的签到位置 p i b ∈ w, 如果 {p i j dist(p i j ,p i b) ≤ d, 第 5 期 赵冠哲,等:移动社交网络异常签到在线检测算法 ·753·
.754. 智能系统学报 第12卷 P∈W}|≤k,则称签到位置p是一个基于历史位 和异常两种状态,而通过在滑动窗口下用户签到位 置的异常签到点,记为H-Outlier。 置的检测发现,签到位置的状态可进一步细分,以 从定义2可以看出,H-Outlier是基于自身历史 便减少距离计算。在滑动窗口W中签到位置p的 签到位置的,这也是因为用户日常活动轨迹记录往 状态可分为:①确定的正常点。如果p在W中邻居 往具有周期性[18劉 数量大于等于k,并且在P点之后邻居数量也大于 设F(u:)表示用户,的所有直接好友集合。 等于k,这时不管W如何滑动,位置p在滑出窗口之 与QQ、微信等社交网络的好友圈的定义不同,这里 前,在窗口内邻居数量一定大于等于k个,因此,此 给出的好友圈定义既包括用户“:直接好友又包括与 时p的状态可以认定为确定的正常签到点,记为 u,有一定数量共同好友的间接好友。 safe-inlier。②不确定的正常点。如果p在W中邻 定义3好友圈。给定支持阈值m,用户u的好 居数量大于等于k,但是在P点之后邻居数量小于 友圈包括u,的所有直接好友和与u,存在至少m个共 k,这时p虽然是一个正常状态的签到位置,但是当 同直接好友的间接好友,即(4:)U W滑动时,在位置p之前的邻居可能会滑出窗口,P {4Fr(u:)∩Fr(4)|≥m},简记为Net(u:)。 的状态可能会变成异常状态,此时的p可认为是一 定义4基于好友圈的异常签到。给定距离阈 个不确定的正常点,记为unsafe-.inlier。③确定的异 值d、好友圈包含的好友数量阈值k、时间△t,对于 常点。设签到位置p之前的邻居集合为p.Neipelore, 基于历史位置的异常签到点p。,如果|{“,|3p, 之后的邻居集合为p.Neie,如果p在W中邻居数量 dist(pi,pa)≤d,lta-tl≤△t,u,∈Net(u:)}|≤ 小于k,在p之前有mor个位置,如果lp.Nei|小 k,P。是一个基于好友圈的异常签到点,记为F 于k-mo,这时不管W如何滑动,位置p在滑出窗 Outlier 口之前,都不可能包括k个邻居,因此,此时p的状 根据定义4可知,F-Outlier是在H-Outlier定义 态可以认定为确定的异常签到点,记为safe-outlier。 的基础上定义的,因此,F-Outlier集合是H-Outlier ④异常点。剩下的异常签到点都划归为这一类,记 集合的子集。 为outlier。 文中涉及的符号名称及描述由表1给出。 很明显,一旦确定safe-inlier和safe-outlier状态 表1符号名称及描述 之后不必再对这些签到位置进行重新检测。而随 Table 1 Symbols and its descriptions 着窗口滑动,outlier和unsafe-inlier仍需重新检测 名称 解释 状态。 p 用户u,在1,时间的签到位置 2)优化的邻居点搜索机制 W 基于签到位置数量的滑动窗口 根据上述签到位置的状态划分方法,我们将签 心 距离阈值 邻居点数量阈值 到位置的邻居点分为在p签到之前和在p签到之后 k Fr(u) 用户u的直接好友集合 两个部分,以便快速确定签到位置的状态。若 m 共同直接好友数量阈值 p.Neir|≥k,p为safe-inlier;若lp.Nei|<k,但 Net(u) 用户u,的好友圈 lp.Neibefare|+|p.Nei|≥k,p为unsafe-.inlier;若 p.Neie 签到位置p之前的邻居集合 p.Neie 签到位置p之后的邻居集合 p.Neitor+p.Neiner,p.Neier<-m k 好友圈中邻居点数量國值 p为safe-outlier;其他情况下,p为outlier。 0 签到位置数据流 通过观察发现,随着滑动窗口的滑动,对于签 △t 触发项的有效期 到位置p的所有邻居点p.Neipefare和p.Nei, 3 基于历史位置的异常签到检测算法 p.Nei中的位置点不断滑出窗口,而p.Neie则 直处在窗口内,直到p也滑出窗口才会失效。因此, 本节将详细介绍H-Outlier的在线检测算法。 在搜索p的邻居时可优先搜索在其之后的邻居,越 为了提升检测效率,首先介绍检测算法采用的几种 靠后的邻居有效期越长:而在其之前的邻居,越靠 优化策略,然后给出详细的检测算法。 近P存活期越长。基于该观察,在滑动窗口内从最 3.1优化策略 后一个签到位置向前依次搜索邻居,满足优先搜索 若两个签到位置之间距离小于给定距离阈值 Nei,又实现了从最近到最远搜索Neiw。 d,称它们互为邻居点。 3)最少邻居点搜索机制 1)签到位置的状态 若查找出签到位置p的所有邻居,需扫描一遍 传统检测方法仅将用户的签到位置分为正常 窗口。受文献[14]启发,在检测点p时,并不需要
p i j ∈ W} ≤k, 则称签到位置 p i b 是一个基于历史位 置的异常签到点,记为H⁃Outlier。 从定义 2 可以看出,H⁃Outlier 是基于自身历史 签到位置的,这也是因为用户日常活动轨迹记录往 往具有周期性[18] 。 设 Fr ( ui ) 表示用户 ui 的所有直接好友集合。 与 QQ、微信等社交网络的好友圈的定义不同,这里 给出的好友圈定义既包括用户 ui直接好友又包括与 ui有一定数量共同好友的间接好友。 定义 3 好友圈。 给定支持阈值 m,用户ui的好 友圈包括ui的所有直接好友和与ui存在至少 m 个共 同 直 接 好 友 的 间 接 好 友, 即 Fr ( ui ) ∪ {uj Fr(ui)∩Fr(uj) ≥m} ,简记为 Net(ui)。 定义 4 基于好友圈的异常签到。 给定距离阈 值 d、好友圈包含的好友数量阈值 kf、时间 △t ,对于 基于历史位置的异常签到点 p i a ,如果 {us ∃p s j , dist(p s j ,p i a ) ≤ d, t a - t j ≤ △t,us ∈ Net(ui)} ≤ kf,p i a 是一个基于好友圈的异常签到点, 记为 F⁃ Outlier。 根据定义 4 可知,F⁃Outlier 是在 H⁃Outlier 定义 的基础上定义的,因此,F⁃Outlier 集合是 H⁃Outlier 集合的子集。 文中涉及的符号名称及描述由表 1 给出。 表 1 符号名称及描述 Table 1 Symbols and its descriptions 名称 解释 p i j 用户ui在t j时间的签到位置 W 基于签到位置数量的滑动窗口 d 距离阈值 k 邻居点数量阈值 Fr(ui) 用户ui的直接好友集合 m 共同直接好友数量阈值 Net(ui) 用户ui的好友圈 p.Nei before 签到位置 p 之前的邻居集合 p.Nei after 签到位置 p 之后的邻居集合 kf 好友圈中邻居点数量阈值 D 签到位置数据流 △t 触发项的有效期 3 基于历史位置的异常签到检测算法 本节将详细介绍 H⁃Outlier 的在线检测算法。 为了提升检测效率,首先介绍检测算法采用的几种 优化策略,然后给出详细的检测算法。 3.1 优化策略 若两个签到位置之间距离小于给定距离阈值 d,称它们互为邻居点。 1)签到位置的状态 传统检测方法仅将用户的签到位置分为正常 和异常两种状态,而通过在滑动窗口下用户签到位 置的检测发现,签到位置的状态可进一步细分,以 便减少距离计算。 在滑动窗口 W 中签到位置 p 的 状态可分为:①确定的正常点。 如果 p 在 W 中邻居 数量大于等于 k,并且在 p 点之后邻居数量也大于 等于 k,这时不管 W 如何滑动,位置 p 在滑出窗口之 前,在窗口内邻居数量一定大于等于 k 个,因此,此 时 p 的状态可以认定为确定的正常签到点,记为 safe⁃inlier。 ②不确定的正常点。 如果 p 在 W 中邻 居数量大于等于 k,但是在 p 点之后邻居数量小于 k,这时 p 虽然是一个正常状态的签到位置,但是当 W 滑动时,在位置 p 之前的邻居可能会滑出窗口,p 的状态可能会变成异常状态,此时的 p 可认为是一 个不确定的正常点,记为 unsafe⁃inlier。 ③确定的异 常点。 设签到位置 p 之前的邻居集合为p.Nei before, 之后的邻居集合为p.Nei after,如果 p 在 W 中邻居数量 小于 k,在 p 之前有 mbefore个位置,如果 p.Nei after 小 于 k⁃mbefore,这时不管 W 如何滑动,位置 p 在滑出窗 口之前,都不可能包括 k 个邻居,因此,此时 p 的状 态可以认定为确定的异常签到点,记为 safe⁃outlier。 ④异常点。 剩下的异常签到点都划归为这一类,记 为 outlier。 很明显,一旦确定 safe⁃inlier 和 safe⁃outlier 状态 之后不必再对这些签到位置进行重新检测。 而随 着窗口滑动, outlier 和 unsafe⁃inlier 仍需重新检测 状态。 2)优化的邻居点搜索机制 根据上述签到位置的状态划分方法,我们将签 到位置的邻居点分为在 p 签到之前和在 p 签到之后 两个 部 分, 以 便 快 速 确 定 签 到 位 置 的 状 态。 若 p.Nei after ≥k,p 为 safe⁃inlier;若 p.Nei after < k,但 p.Nei before + p.Nei after ≥ k, p 为 unsafe⁃inlier;若 p.Nei before + p.Nei after <k,并且 p.Nei after <k⁃mbefore, p 为 safe⁃outlier;其他情况下,p 为 outlier。 通过观察发现,随着滑动窗口的滑动,对于签 到位 置 p 的 所 有 邻 居 点 p. Nei before 和 p. Nei after, p.Nei before中的位置点不断滑出窗口,而 p.Nei after则一 直处在窗口内,直到 p 也滑出窗口才会失效。 因此, 在搜索 p 的邻居时可优先搜索在其之后的邻居,越 靠后的邻居有效期越长;而在其之前的邻居,越靠 近 p 存活期越长。 基于该观察,在滑动窗口内从最 后一个签到位置向前依次搜索邻居,满足优先搜索 Nei after,又实现了从最近到最远搜索 Nei before。 3) 最少邻居点搜索机制 若查找出签到位置 p 的所有邻居,需扫描一遍 窗口。 受文献[14] 启发,在检测点 p 时,并不需要 ·754· 智 能 系 统 学 报 第 12 卷
第5期 赵冠哲,等:移动社交网络异常签到在线检测算法 ·755. 搜索出所有邻居,当满足k个时,即可判定位置p的 20)if lpNeitore then 状态,但是同时为了结合上述的优化策略1)和2), 21)Per·status更新为outlier 我们给出最少邻居点搜索机制。 4 给定签到位置p和新签到位置P,若 基于好友圈的异常检测算法 lp.Nei|≥k同时IpNeior|≥k,则无需计算 本节将详细介绍基于好友圈的异常签到 p与pea的距离。此时位置p已经确定为safe-inlier, F-Outlier的检测算法。F-Outlier定义在H-Outlier之 而p也已确定为unsafe-inlier。否则,将继续计算 上,对于当前窗口W上H-Outlier需进一步验证是否 P到所有之前签到位置的距离,以确定P为 为F-Outlier。H-Outlier仅在用户自身近期的历史签 outlier。采用该机制,既满足了所有签到位置状态 到位置上查找邻居点(滑动窗口W内),而F-Outlier 的检测又实现了最少的距离计算。 则在其好友圈用户的最近签到位置中搜索邻居点 3.2H-0 utlier在线检测算法 (△t时间差内)。 算法1给出了H-Outlier的优化检测算法,对于 为了进一步降低F-Outlier检测的时间消耗,本 新签到位置Pw,对窗口W中所有签到位置进行状 节同样给出了3个优化策略。 态重新检测。首先,按照优化的邻居搜索机制,从 1)最少好友搜索机制 窗口内最后一个位置,依次向前搜索邻居,如第1行 与H-Outlier检测的最少邻居点搜索机制相似, 所示。然后,采用最少邻居点搜索机制,判定位置P: 检测用户u,签到位置p。的状态时,并非需要完整搜 和P是否都已确定状态,若已确定,则不用再继续 索一遍Net(w:),若已存在k个好友在t内在同一地 搜索邻居2)~4)行,否则,继续计算距离,更新邻居 点(小于给定距离d)签到过,则可以停止搜索,此时 集合(见5)~7))。如果p,的状态不是safe-inlier或 可判定pi并非F-Outlier。 safe-outlier,则根据搜索邻居情况更新其状态,如 2)历史邻近好友优先原则 8)~17)所示。如果P搜索到k个在其之前的邻 在社会学领域研究中发现,人们在某一段时间 居,状态更新为unsafe-inlier(见l8)~19)),检测完 内往往与相同一群人存在较密集的交互4)。根据 窗口W后,若邻居数量依然少于k个,状态标记为 上述社会学的发现,我们对每个用户维护一个邻近 outlier. 好友的排序列表L,用于记录历史邻近签到状况,最 算法1H-Outlier优化检测算法 近一次的邻近签到好友排在首位,每次搜索邻近好 输入当前窗口W,k,d,Pw; 友时同时更新列表次序可以较大概率快速搜索邻 输出所有p∈W的状态。 近的签到好友,以排除H-Outlier,而不用随机遍历 1)fori从Wa到Wan do Net(u;). 2)ifp:sta是safe-inlier或者p.sta是safe-outlier 3)基于时间触发的检测机制 3)if pnex·sta是unsafe-inlier then 当签到位置p.在当前时刻检测为F-Outlier后, 4)继续 在后续的△1内需要不断重新检测它的状态是否有 5)else if p:与pen的距离≤d then 变化,但是当好友圈用户没有签到数据更新时,重 6)将p:添加到pNeibeore 新检测会导致冗余计算。因此,提出了一种基于时 7)将Pen添加到P:.Nei 间触发的检测机制。 8)else 每个用户u维护一个触发列表trigger,触发列 9)ifp:与pe的距离≤d then 表中每项表示为〈p。〉,当用户u更新签到数据时, 1O)将p:添加到pNeibefor 触发对p.的F-Outlier状态重检测。可以看出,每 1l)将poen添加到p.Neiafer 个触发项都存在一个有效期,即It。-t.I≤△t,当前时 12)if Ip:.Neie then 间t.与△t。的时间差不大于△t,超过该时间差,触 l3)p.status更新为safe-inlier 发项自动失效。 14)else if p:Neirp:Nei then 基于时间触发的检测机制将连续异常检测转 l5)p:.status更新为unsafe-inlier 化成了基于触发的检测,当有新签到数据时,才对 16)else if lp:Neir-m then 未过期的签到位置进行重新检测,大大减少了额外 l7)p:.status更新为safe-inlier 的周期性重新检测成本。 18)if pNeieore then 算法2描述了采用优化策略的F-Outlier的检 19)Pstatus更新为unsafe-inlier 测过程,针对用户“,的新签到位置p,首先执行H
搜索出所有邻居,当满足 k 个时,即可判定位置 p 的 状态,但是同时为了结合上述的优化策略 1)和 2), 我们给出最少邻居点搜索机制。 给定 签 到 位 置 p 和 新 签 到 位 置 pnew , 若 p.Nei after ≥ k 同时 pnew .Nei before ≥k,则无需计算 p 与 pnew的距离。 此时位置 p 已经确定为 safe⁃inlier, 而 pnew也已确定为 unsafe⁃inlier。 否则,将继续计算 pnew到所有之前签到位置的距离, 以确定 pnew 为 outlier。 采用该机制,既满足了所有签到位置状态 的检测又实现了最少的距离计算。 3.2 H⁃Outlier 在线检测算法 算法 1 给出了 H⁃Outlier 的优化检测算法,对于 新签到位置 pnew ,对窗口 W 中所有签到位置进行状 态重新检测。 首先,按照优化的邻居搜索机制,从 窗口内最后一个位置,依次向前搜索邻居,如第 1 行 所示。 然后,采用最少邻居点搜索机制,判定位置 pi 和 pnew是否都已确定状态,若已确定,则不用再继续 搜索邻居 2) ~4)行,否则,继续计算距离,更新邻居 集合(见 5) ~7))。 如果 pi的状态不是 safe⁃inlier 或 safe⁃outlier,则根据搜索邻居情况更新其状态,如 8) ~17) 所示。 如果 pnew搜索到 k 个在其之前的邻 居,状态更新为 unsafe⁃inlier(见 18) ~ 19)),检测完 窗口 W 后,若邻居数量依然少于 k 个,状态标记为 outlier。 算法 1 H⁃Outlier 优化检测算法 输入 当前窗口 W,k,d,pnew ; 输出 所有 p ∈ W 的状态。 1)for i 从 Wend到 Wstart do 2)if pi .sta 是 safe⁃inlier 或者 pi .sta 是 safe⁃outlier 3) if pnew .sta 是 unsafe⁃inlier then 4)继续 5) else if pi与 pnew的距离≤d then 6)将 pi添加到 pnew .Nei before 7)将 pnew添加到 pi .Nei after 8) else 9)if pi与 pnew的距离≤d then 10)将 pi添加到 pnew .Nei before 11)将 pnew添加到 pi .Nei after 12) if pi .Nei after ≥k then 13)pi .status 更新为 safe⁃inlier 14)else if pi .Nei before + pi .Nei after ≥k then 15)pi .status 更新为 unsafe⁃inlier 16)else if pi .Nei before <k⁃mbefore then 17)pi .status 更新为 safe⁃inlier 18)if pnew .Nei before ≥k then 19)pnew .status 更新为 unsafe⁃inlier 20) if pnew .Nei before <k then 21)pnew .status 更新为 outlier 4 基于好友圈的异常检测算法 本节 将 详 细 介 绍 基 于 好 友 圈 的 异 常 签 到 F⁃Outlier的检测算法。 F⁃Outlier 定义在 H⁃Outlier 之 上,对于当前窗口 W 上 H⁃Outlier 需进一步验证是否 为 F⁃Outlier。 H⁃Outlier 仅在用户自身近期的历史签 到位置上查找邻居点(滑动窗口 W 内),而 F⁃Outlier 则在其好友圈用户的最近签到位置中搜索邻居点 ( △t 时间差内)。 为了进一步降低 F⁃Outlier 检测的时间消耗,本 节同样给出了 3 个优化策略。 1)最少好友搜索机制 与 H⁃Outlier 检测的最少邻居点搜索机制相似, 检测用户 ui签到位置 p i a 的状态时,并非需要完整搜 索一遍 Net(ui),若已存在 kf个好友在 t 内在同一地 点(小于给定距离 d)签到过,则可以停止搜索,此时 可判定 p i a 并非 F-Outlier。 2)历史邻近好友优先原则 在社会学领域研究中发现,人们在某一段时间 内往往与相同一群人存在较密集的交互[4] 。 根据 上述社会学的发现,我们对每个用户维护一个邻近 好友的排序列表 Lf,用于记录历史邻近签到状况,最 近一次的邻近签到好友排在首位,每次搜索邻近好 友时同时更新列表次序可以较大概率快速搜索邻 近的签到好友,以排除 H⁃Outlier,而不用随机遍历 Net(ui)。 3)基于时间触发的检测机制 当签到位置 p i a 在当前时刻检测为 F⁃Outlier 后, 在后续的 Δt 内需要不断重新检测它的状态是否有 变化,但是当好友圈用户没有签到数据更新时,重 新检测会导致冗余计算。 因此,提出了一种基于时 间触发的检测机制。 每个用户 u 维护一个触发列表 trigger,触发列 表中每项表示为〈p i a 〉, 当用户 u 更新签到数据时, 触发对 p i a 的 F-Outlier 状态重检测。 可以看出,每 个触发项都存在一个有效期,即| t c -t a | ≤Δt,当前时 间 t c 与 Δt a 的时间差不大于 Δt,超过该时间差,触 发项自动失效。 基于时间触发的检测机制将连续异常检测转 化成了基于触发的检测,当有新签到数据时,才对 未过期的签到位置进行重新检测,大大减少了额外 的周期性重新检测成本。 算法 2 描述了采用优化策略的 F⁃Outlier 的检 测过程,针对用户 ui的新签到位置 p i c,首先执行 H⁃ 第 5 期 赵冠哲,等:移动社交网络异常签到在线检测算法 ·755·
·756· 智能系统学报 第12卷 Outlier检测,如1)所示,如果p.是一个H-Outlier,则 对比方法。算法1描述的基于历史位置的异常 继续检测p是否为F-Outlier.,如2)~12)所示。根据 检测算法记为H-Opt算法,算法2描述的基于好友 历史邻近好友优先原则,从L中由前向后搜索好 圈的异常检测算法记为F-Opt算法,对比方法记为 友,若存在邻近签到的好友,则插入好友邻居集合 LUE(lazy with update events)算法[s) Neia,并将该好友放置于L首位(见4)~7)),然后 评估方法。采用所有用户在单个窗口内异常 根据最少好友搜索机制,满足k,个好友,停止搜索 率来评估所提方法的有效性。实验结果取所有滑 (见8)~9))。搜索完一遍u,好友圈之后,认为满足 动窗口下的平均值。对于效率评估,通过变化各重 k条件,则认定为F-Outlier.,并将放入好友圈Net 要参数,采用单个窗口平均消耗的CPU时间和内存 (:)中每个用户的trigger列表中,如10)~12) 占用来评估算法的性能。每次窗口滑动一个新签 所示。 到位置。 算法2F-Outlier检测算法 5.1有效性评估 输入新的签到p、k、d; 首先,对H-Opt和F-Opt算法的有效性进行了 输出所有的F-Outlier 评估与分析。默认参数设置:d=300m,0=20,k= l)对于状态为H-Outlier的pd 4,k,=3,△t=3h,m=4。H-0pt与F-0pt的异常检测 2)if p .sta outlier then 结果如图1所示。图1(a)描述的是变化参数k对 3)forj取值1,2,…,lNet(u,)|do 不同算法的有效性影响。可以发现,随着k的增加, 4)L获取j后给u H-Opt和F-Opt检测出的异常率都呈线性增加,这 5)ifp与pa的距离≤d then 是因为增加邻居点数量阈值k会使较多的签到点被 6)将pa,添加到.Neim 认定为H-Outlier。由于F-Outlier基于H-Outlier,随 着H-Outlier数量的增加,F-Outlier也会有所上升, 7)将u插入到L首位 这与它们定义相符。同时还可以发现,随着k的增 8)if pi .Nei then 加,F-Opt算法与H-Opt算法在异常率检测上的差 9)p..sta更新为F-Inlier、break 异不断增大,即F-Opt的异常误判率不断降低。当 10)if p .Neira then k=7时,降低的异常率已达到1.09%,也就是说,F 1l)p.sta更新为F-0 utlier 0 utlier有效排除了30.27%的伪异常。 12)将p.添加到Nei(u:).trigger 4.0r H-Outlier l3)u,.trigger更新到Trigger 3.5 -F-Outlier 14)for每个pa∈Trigger do 3.0 15)iflt.t.|≤△t并且p.与p.的距离≤d then 2.5 16)将p.添加到pNei 2.0 17)if p Neifri,then 1.5 18)p。.sta更新为F-Inlier 1.0 19)将p.从w.trigger中删除 0.5 6 接下来,就要触发,的trigger列表,如13)~ 个 19)所示。每个触发项。,若仍在有效期内,且与p (a)参数k对异常率的影响 为邻居,则判断它邻居点的数量是否满足k,若满 2.6 -H-Outlier 足,则更新p。的状态,并将其移出u,的trigger列表 2.4 -F-Outlier (见17)~19)。 2.2 5实验评估 .20 1.8 实验平台配置为4.0GHz7-6700k处理器, 1.6 8GB内存,Windows7操作系统,所有算法由Java 1.4 实现。 数据集。实验数据集采用的是基于位置的移动社 10 15 20 25 30 个 交网络Gowalla真实数据集)。数据集中包括了 (b)参数W对异常率的影响 195591个用户,95万条好友关系,收集了2009年2月~ 图1。不同参数下的算法异常率 2010年10月之间的644万个签到位置数据。 Fig.1 Outlier rate under different parameters
Outlier 检测,如 1)所示,如果 p i c 是一个 H⁃Outlier,则 继续检测p i c是否为 F⁃Outlier,如 2) ~ 12)所示。 根据 历史邻近好友优先原则,从 Lf 中由前向后搜索好 友,若存在邻近签到的好友,则插入好友邻居集合 Nei fri,并将该好友放置于 Lf首位(见 4) ~ 7)),然后 根据最少好友搜索机制,满足 kf 个好友,停止搜索 (见 8) ~9))。 搜索完一遍 ui好友圈之后,认为满足 kf条件,则认定为 F⁃Outlier,并将放入好友圈 Net (ui) 中每个用户的 trigger 列表中, 如 10) ~ 12) 所示。 算法 2 F⁃Outlier 检测算法 输入 新的签到 p i c 、kf、d; 输出 所有的 F⁃Outlier。 1)对于状态为 H⁃Outlier 的 p i c 2)if p i c .sta 为 outlier then 3)for j 取值 1,2,…, Net(ui) do 4) Lf获取 j 后给 uj 5)if p i c 与 p i c ±△t 的距离≤d then 6) 将 p i c ±△t 添加到 p i c .Nei fri 7)将 uj插入到 Lf首位 8)if p i c .Nei fri ≥kf then 9) p i c .sta 更新为 F⁃Inlier、break 10)if p i c .Nei fri <kf then 11) p i c .sta 更新为 F⁃Outlier 12)将 p i c 添加到 Nei(ui).trigger 13) ui .trigger 更新到 Trigger 14)for 每个 p i a ∈ Trigger do 15)if t a -t c ≤ △t 并且 p i c 与 p j a 的距离≤d then 16)将 p i c 添加到 p i a .Nei fri 17)if p i a .Neifri ≥kf then 18) p i a .sta 更新为 F⁃Inlier 19)将 p i a 从 uj .trigger 中删除 接下来,就要触发 ui 的 trigger 列表,如 13) ~ 19)所示。 每个触发项 p j a ,若仍在有效期内,且与 p i c 为邻居,则判断它邻居点的数量是否满足 kf,若满 足,则更新 p j a 的状态,并将其移出 ui的 trigger 列表 (见 17) ~19))。 5 实验评估 实验平台配置为 4. 0 GHz i7⁃6700k 处理器, 8 GB内存, Windows7 操作系统, 所有算法由 Java 实现。 数据集。 实验数据集采用的是基于位置的移动社 交网络 Gowalla 真实数据集[18] 。 数据集中包括了 195 591个用户,95 万条好友关系,收集了2009 年2 月~ 2010 年 10 月之间的 644 万个签到位置数据。 对比方法。 算法 1 描述的基于历史位置的异常 检测算法记为 H⁃Opt 算法,算法 2 描述的基于好友 圈的异常检测算法记为 F⁃Opt 算法,对比方法记为 LUE(lazy with update events)算法[13] 。 评估方法。 采用所有用户在单个窗口内异常 率来评估所提方法的有效性。 实验结果取所有滑 动窗口下的平均值。 对于效率评估,通过变化各重 要参数,采用单个窗口平均消耗的 CPU 时间和内存 占用来评估算法的性能。 每次窗口滑动一个新签 到位置。 5.1 有效性评估 首先,对 H⁃Opt 和 F⁃Opt 算法的有效性进行了 评估与分析。 默认参数设置:d = 300 m,w = 20,k = 4,kf = 3,Δt = 3 h,m = 4。 H⁃Opt 与 F⁃Opt 的异常检测 结果如图 1 所示。 图 1(a)描述的是变化参数 k 对 不同算法的有效性影响。 可以发现,随着 k 的增加, H⁃Opt 和 F⁃Opt 检测出的异常率都呈线性增加,这 是因为增加邻居点数量阈值 k 会使较多的签到点被 认定为 H⁃Outlier。 由于 F⁃Outlier 基于 H⁃Outlier,随 着 H⁃Outlier 数量的增加,F⁃Outlier 也会有所上升, 这与它们定义相符。 同时还可以发现,随着 k 的增 加,F⁃Opt 算法与 H⁃Opt 算法在异常率检测上的差 异不断增大,即 F⁃Opt 的异常误判率不断降低。 当 k = 7时,降低的异常率已达到 1.09%,也就是说,F⁃ Outlier 有效排除了 30.27%的伪异常。 (a)参数 k 对异常率的影响 (b)参数 W 对异常率的影响 图 1 不同参数下的算法异常率 Fig.1 Outlier rate under different parameters ·756· 智 能 系 统 学 报 第 12 卷
第5期 赵冠哲,等:移动社交网络异常签到在线检测算法 ·757. 图1(b)显示的是变化参数W对不同算法的有 5.2效率评估 效性影响。由图1可以看出,随着W的增大,异常 本节评估了滑动窗口W和邻居点数量k对H 率不断下降。这是因为当增大W时,邻居点的历史 Opt和F-Opt算法的消耗时间和内存的影响,并与 签到时间范围也随之增加,从而签到的邻居点数量 LUE算法进行了对比分析。默认参数:d=300,k= 也会相应增加,使H-Outlier和F-Outlier的异常率随 3,△t=3h,m=4。 之减少,这也与它们定义相符。同时可以看出,F 在图3(a)中,固定k=4,W从10变化到30,随 Opt的异常率明显低于H-Opt算法,这也证明了F- 着W的增加,3个算法消耗的时间都有所增加,这是 Outlier检测的有效性。 因为窗口增加,都需要增加对异常点邻居搜索范 为了更好地考察F-Opt算法的有效性,进一步 围,而LUE需要计算当前签到点与窗口内所有签到 对F-Opt算法进行了评估。图2是k、△t和m在不 点的距离,所以导致了耗时较长。同时,随着窗口 同组合时,F-Outlier相比H-Outlier降低的异常率情 增长,H-Outlier和F-Outlier数量反而越少,虽然搜 况。如图2(a)所示,当k,值从2变化到6时,考虑 索邻居的范围增加导致了总消耗时间增加,但是由 间接好友的F-Outlier进一步降低了H-Outlier的异 于采用了优化的邻居搜索机制和最少邻居搜索机 常率。共同好友的要求越低(m值越小),异常的降 制,仅有异常点增加了邻据搜索,因此,消耗的CPU时间 低率越高,即伪异常越少,当m=2时,相对仅考虑 增长越来越缓慢,而F-Opt算法需要再次检测的异常点 直接好友,F-0 utlier异常的降低率平均提高了8%。 图2(b)展示的是当k,=4时,△1从1~5变化,对算 变少也使得消耗的时间越来越少。相比于LUE,F-Op 和H-0pt分别平均提升了2.342.45倍效率。在图3(b) 法异常降低率的影响。可以发现,随着△:的增加, 异常的降低率在不断增大,这是因为搜索的时间区 中固定W=20,k从2变化到6。随着k的增加,3个 间增加,在时间区间内邻近签到好友的数量也在增 算法消耗的CPU时间也逐渐增加。虽然F-Opt算 加。同样地,考虑好友圈的F-Outlier减少了更多伪 法需要重新检测更多H-Outlier异常,但F-Opt算法 异常。在△t≤4时,F-Outlier减少的异常率变化不 并没有快速增加时间消耗,仅平均增加了0.002ms。 大,这也说明大多邻近好友的签到是在较短时间差 这也体现了我们提出的基于触发的优化检测策略 内完成。 的作用。相比于LUE,F-Opt和H-Opt分别平均提 升了2.31、2.36倍效率。 30 m=2 -=4 0.20 一无间接好友 0.18 --LUE 26 F-Opt 0.16 --H-Opt 24 0.14 0.12 0.10 20 0.08 2 3 4 5 0.06 △/h 10 15 20 25 30 (a)参数k,m对异常降低率的影响 WI个 (a)参数W对CPU消耗时间的影响 32 550r △-LUE F-Opt 30 +m=4 #-m=6 500 H-Opt 28 ◆无间接好友 450 26 400 24 350f 22 300 20 250 1 200 2 6 M个 个 (b)参数△,m对异常降低率的影响 (b)参数k对CPU消耗时间的影响 图2不同参数对F-Opt异常降低率的影响 图3不同参数下的算法消耗的时间 Fig.2 F-Opt outlier decreasing rate w.r.t.different parameters Fig.3 CPU time w.r.t.different parameters
图 1(b)显示的是变化参数 W 对不同算法的有 效性影响。 由图 1 可以看出,随着 W 的增大,异常 率不断下降。 这是因为当增大 W 时,邻居点的历史 签到时间范围也随之增加,从而签到的邻居点数量 也会相应增加,使 H⁃Outlier 和 F⁃Outlier 的异常率随 之减少,这也与它们定义相符。 同时可以看出,F⁃ Opt 的异常率明显低于 H⁃Opt 算法,这也证明了 F⁃ Outlier 检测的有效性。 为了更好地考察 F⁃Opt 算法的有效性,进一步 对 F⁃Opt 算法进行了评估。 图 2 是 kf、Δt 和 m 在不 同组合时,F⁃Outlier 相比 H⁃Outlier 降低的异常率情 况。 如图 2(a)所示,当 kf 值从 2 变化到 6 时,考虑 间接好友的 F⁃Outlier 进一步降低了 H⁃Outlier 的异 常率。 共同好友的要求越低(m 值越小),异常的降 低率越高,即伪异常越少,当 m = 2 时,相对仅考虑 直接好友,F⁃Outlier 异常的降低率平均提高了 8%。 图 2(b)展示的是当 kf = 4 时,Δt 从 1 ~ 5 变化,对算 法异常降低率的影响。 可以发现,随着 Δt 的增加, 异常的降低率在不断增大,这是因为搜索的时间区 间增加,在时间区间内邻近签到好友的数量也在增 加。 同样地,考虑好友圈的 F⁃Outlier 减少了更多伪 异常。 在 Δt ≤ 4 时,F⁃Outlier 减少的异常率变化不 大,这也说明大多邻近好友的签到是在较短时间差 内完成。 (a)参数 kf、m 对异常降低率的影响 (b)参数 Δt、m 对异常降低率的影响 图 2 不同参数对 F⁃Opt 异常降低率的影响 Fig. 2 F⁃Opt outlier decreasing rate w.r.t. different parameters 5.2 效率评估 本节评估了滑动窗口 W 和邻居点数量 k 对 H⁃ Opt 和 F⁃Opt 算法的消耗时间和内存的影响,并与 LUE 算法进行了对比分析。 默认参数:d = 300,kf = 3, Δt = 3 h,m = 4。 在图 3(a)中,固定 k = 4,W 从 10 变化到 30,随 着 W 的增加,3 个算法消耗的时间都有所增加,这是 因为窗口增加,都需要增加对异常点邻居搜索范 围,而 LUE 需要计算当前签到点与窗口内所有签到 点的距离,所以导致了耗时较长。 同时,随着窗口 增长,H⁃Outlier 和 F⁃Outlier 数量反而越少,虽然搜 索邻居的范围增加导致了总消耗时间增加,但是由 于采用了优化的邻居搜索机制和最少邻居搜索机 制,仅有异常点增加了邻居搜索,因此,消耗的 CPU 时间 增长越来越缓慢,而 F⁃Opt 算法需要再次检测的异常点 变少也使得消耗的时间越来越少。 相比于 LUE,F⁃Opt 和H⁃Opt 分别平均提升了2.34、2.45 倍效率。 在图 3(b) 中固定 W= 20,k 从 2 变化到 6。 随着 k 的增加,3 个 算法消耗的 CPU 时间也逐渐增加。 虽然 F⁃Opt 算 法需要重新检测更多 H⁃Outlier 异常,但 F⁃Opt 算法 并没有快速增加时间消耗,仅平均增加了 0.002 ms。 这也体现了我们提出的基于触发的优化检测策略 的作用。 相比于 LUE,F⁃Opt 和 H⁃Opt 分别平均提 升了 2.31、2.36 倍效率。 (a)参数 W 对 CPU 消耗时间的影响 (b)参数 k 对 CPU 消耗时间的影响 图 3 不同参数下的算法消耗的时间 Fig.3 CPU time w.r.t. different parameters 第 5 期 赵冠哲,等:移动社交网络异常签到在线检测算法 ·757·
·758· 智能系统学报 第12卷 在内存方面,如图4所示,随着W的增加,3个 0.10r 。无间接好友 算法消耗的内存也逐渐增加。这是因为随着滑动 ◆-m-6 0.09 窗口的增长,窗口内存储的签到点也随之增多。 LUE算法需要储存窗口存储所有签到点的邻居点, 0.08 消耗的内存较多。H-Opt和F-Opt消耗内存较少,这 0.07 是因为采用了优化的邻居搜索机制和最少邻居搜 0.061 索机制。由于增加了F-Outlier好友圈的邻近签到 存储,F-Opt略高于H-Opt。 0.05 k,/个 0.24f -LUE 0.22 F-Opt (a)参数k,和m 0.20 -H-Opt 018 0.10m 6-无间接好友 +m=6 0.14 0.09 "-m=4 012 4-m=2 0.10 0.08 0.08 0.06 0.07 材个 0.06 图4参数W和k变化下内存的消耗情况 0.05 Fig.4 Memory w.r.t.parameter W and k 3 4 △h 随着k的增加,3个算法消耗的内存也在增加。 (b)参数△和m 这是因为所有算法都需要寻找更多的邻居。H-Opl 图5不同参数变化的算法CPU时间 和F-Opt消耗内存增长缓慢,这是因为H-Opt算法 Fig.5 CPU time w.r.t.different parameters 采用最少邻居点搜索机制,随着k值的增加,在H- Opt算法中需要存储的自身签到点也随之增加。相 6 结束语 比于LUE,F-Opt和H-0pt分别平均减少了30%和 本文提出了一种针对移动社交网络异常签到 32%的内存消耗。 位置的在线检测方法。基于距离的异常检测,定义 接下来,进一步评估了参数m、k和△t对F-Opt 了基于历史位置和基于好友圈的两种异常签到模 算法效率的影响。我们测试了变化k和△1对多个 型。然后,针对两种异常签到模型,分别提出了优 m值下F-Opt算法效率的影响,如图5所示。固定 化的检测算法,从签到位置的状态模型、优化的邻 W=20,k=4,d=300,在图5(a)中固定△t=3h,在 居搜索机制和基于时间触发的检测机制方面有效 图5(b)中固定k=3,可以看出,随着k,和△1增加, 降低了检测时间。最后,在真实的移动社交网络用 F-Opt消耗的CPU时间都逐渐增加。这是因为k 户签到数据集上,验证了所提模型与算法的有效性 增加,使得邻近签到好友搜索的个数增加:△1增加 和效率。下一步将结合用户的操作行为进一步研 使得时间区间增加。因此消耗的CPU时间也要相 究有效的移动社交网络异常检测方法。 应增加。同时也发现,不考虑间接好友时的F-Opt 参考文献: 算法消耗最多时间,考虑间接好友时共同好友数量 [1]於志文,周兴社,郭斌.移动社交网络中的感知计算模 m值越少,使用的检测时间越少。这是因为m值越 型、平台与实践[J].中国计算机学会通讯,2012,8(5): 小,Nt(u)集合越大,虽然搜索范围增加了,伪异常 15-21. 也增多了,由于我们采用了历史邻近好友优先原则 [2]WE ARE SOCIAL LTD.DIGITAL IN 2016[EB/OL ] 和基于触发的检测机制,可快速发现伪异常,有效 [2017-03-10].http://wearesocial.com/uk/special-reports/ digital-in-2016. 提升了算法检测效率。结合图2的实验结果可以说 [3]ZHENG Yu,XIE X.Location-based social networks: 明,在移动社交网络异常签到检测中考虑用户间接 locations[].Computing with spatial trajectories,2011: 好友的必要性和优势。 277-308
在内存方面,如图 4 所示,随着 W 的增加,3 个 算法消耗的内存也逐渐增加。 这是因为随着滑动 窗口的增长, 窗口内存储的签到点也随之增多。 LUE 算法需要储存窗口存储所有签到点的邻居点, 消耗的内存较多。 H⁃Opt 和 F⁃Opt 消耗内存较少,这 是因为采用了优化的邻居搜索机制和最少邻居搜 索机制。 由于增加了 F⁃Outlier 好友圈的邻近签到 存储,F⁃Opt 略高于 H⁃Opt。 图 4 参数 W 和 k 变化下内存的消耗情况 Fig.4 Memory w.r.t. parameter W and k 随着 k 的增加,3 个算法消耗的内存也在增加。 这是因为所有算法都需要寻找更多的邻居。 H⁃Opt 和 F⁃Opt 消耗内存增长缓慢,这是因为 H⁃Opt 算法 采用最少邻居点搜索机制,随着 k 值的增加,在 H⁃ Opt 算法中需要存储的自身签到点也随之增加。 相 比于 LUE,F⁃Opt 和 H⁃Opt 分别平均减少了 30%和 32%的内存消耗。 接下来,进一步评估了参数 m、kf和 Δt 对 F⁃Opt 算法效率的影响。 我们测试了变化 kf和 Δt 对多个 m 值下 F⁃Opt 算法效率的影响,如图 5 所示。 固定 W= 20,k = 4,d = 300,在图 5(a)中固定 Δt = 3 h,在 图 5 (b)中固定 kf = 3,可以看出,随着 kf 和 Δt 增加, F⁃Opt 消耗的 CPU 时间都逐渐增加。 这是因为 kf 增加,使得邻近签到好友搜索的个数增加; Δt 增加 使得时间区间增加。 因此消耗的 CPU 时间也要相 应增加。 同时也发现,不考虑间接好友时的 F⁃Opt 算法消耗最多时间,考虑间接好友时共同好友数量 m 值越少,使用的检测时间越少。 这是因为 m 值越 小,Net(u)集合越大,虽然搜索范围增加了,伪异常 也增多了,由于我们采用了历史邻近好友优先原则 和基于触发的检测机制,可快速发现伪异常,有效 提升了算法检测效率。 结合图 2 的实验结果可以说 明,在移动社交网络异常签到检测中考虑用户间接 好友的必要性和优势。 (a)参数 kf 和 m (b)参数 Δt 和 m 图 5 不同参数变化的算法 CPU 时间 Fig.5 CPU time w.r.t. different parameters 6 结束语 本文提出了一种针对移动社交网络异常签到 位置的在线检测方法。 基于距离的异常检测,定义 了基于历史位置和基于好友圈的两种异常签到模 型。 然后,针对两种异常签到模型,分别提出了优 化的检测算法,从签到位置的状态模型、优化的邻 居搜索机制和基于时间触发的检测机制方面有效 降低了检测时间。 最后,在真实的移动社交网络用 户签到数据集上,验证了所提模型与算法的有效性 和效率。 下一步将结合用户的操作行为进一步研 究有效的移动社交网络异常检测方法。 参考文献: [1]於志文, 周兴社, 郭斌. 移动社交网络中的感知计算模 型、平台与实践[J]. 中国计算机学会通讯,2012,8(5): 15-21. [ 2 ] WE ARE SOCIAL LTD. DIGITAL IN 2016 [ EB/ OL]. [2017⁃03⁃10]. http: / / wearesocial. com/ uk / special⁃reports/ digital⁃in-2016. [3 ] ZHENG Yu, XIE X. Location⁃based social networks: locations [ J]. Computing with spatial trajectories, 2011: 277-308. ·758· 智 能 系 统 学 报 第 12 卷
第5期 赵冠哲,等:移动社交网络异常签到在线检测算法 ·759· [4]萧世掄.基于位置服务与人类活动的关系和影响[J].中 [15 LEE J G,HAN J,LI X.Trajectory outlier detection: 国计算机学会通讯,2010,6(6):30-35. a partition-and-detect framework[C]//International Confe- [5]张玉清,吕少卿,范丹.在线社交网络中异常帐号检测 rence on Data Engineering.Cancun,Mexico,2008: 方法研究[J].计算机学报,2015,38(10):2011-2027. 140-149. ZHANG Yuqing,LV Shaoqing,FAN Dan.Anomaly detection [16]BU Yingyi,CHEN L.FU W C,et al.Efficient anomaly in online social networks[].Chinese journal of computers, monitoring over moving object trajectory streams[C]// 2015,38(10):2011-2027. ACM SIGKDD International Conference on Knowledge [6]CHO E.MYERS S A,LESKOVEC J.Friendship and Discovery and Data Mining.Paris.France,2009: mobility:user movement in location-based social networks 159-168. [C ]//ACM SIGKDD International Conference on [17]YU Yanwei,CAO Lei,RUNDENSTEINER E A,et al. Knowledge Discovery and Data Mining.San Diego,USA, Detecting moving object outliers in massive-scale 2011:1082-1090. trajectory streams C ]//ACM SIGKDD International [7]KNORR E M,NG R T.Algorithms for mining distance- Conference on Knowledge Discovery and Data Mining. based outliers in large datasets [C]//International New York,USA,2014:422-431. Conference on Very Large Data Bases.New York,USA, 1998:392-403. [18]LI Zhenhui,WANG J,Han J.Mining event periodicity [8]KNORR E M,NG R T,TUCAKOV V.Distance-based from incomplete observations C ]/ACM SIGKDD outliers:algorithms and applications [J].Vldb journal, International Conference on Knowledge Discovery and 2000,8(3/4):237-253. Data Mining.Beijing,China,2012:444-452. [9 RAMASWAMY S,RASTOGI R,SHIM K.Efficient 作者简介: algorithms for mining outliers from large data sets[C]/ 赵冠哲,男,1992年生,硕士研究 ACM SIGMOD International Conference on Management of 生,主要研究方向为数据挖掘。 Data.Dallas,USA,2000:427-438. [10]BREUNIG MARKUS M.LOF:identifying density-based local outliers[J].ACM sigmod record,2000,29(2): 93-104. [11]YANG D,RUNDENSTEINER E A,Ward M O.Neighbor- based pattern detection for windows over streaming data 齐建鹏,男,1992年生,硕士研究 [C]//International Conference on Extending Database 生,主要研究方向为数据挖掘。 Technology:Advances in Database Technology.Saint Petersburg,Russia,2009:529-540. [12 ANGIULLI F,FASSETTI F.Detecting distance-based outliers in streams of data C]//Sixteenth ACM Conference on Conference on Information and Knowledge Management.Lisboa,Portugal,2007:811-820. 于彦伟,男,1986年生,讲师,博士 [13]KONTAKI M,GOUNARIS A.PAPADOPOULOS A N,et 主要研究方向为时空数据挖掘、流式数 al.Continuous monitoring of distance-based outliers over data streams[C]//IEEE,International Conference on 据处理、分布式计算。主持国家自然科 学基金青年基金1项,参与国家自然科 Data Engineering.Hannover,Germany,2011:135-146. 学基金面上项目1项,山东省重点研发 [14]CAO L,YANG D,WANG Q,et al.Scalable distance- 计划项目1项。发表学术论文30余篇。 based outlier detection over high-volume data streams [C]//International Conference on Data Engineering. Chicago,USA,2014:76-87
[4]萧世埨. 基于位置服务与人类活动的关系和影响[J]. 中 国计算机学会通讯, 2010,6(6): 30-35. [5]张玉清, 吕少卿, 范丹. 在线社交网络中异常帐号检测 方法研究[J]. 计算机学报, 2015, 38(10): 2011-2027. ZHANG Yuqing,LV Shaoqing,FAN Dan. Anomaly detection in online social networks[J]. Chinese journal of computers, 2015, 38(10): 2011-2027. [6 ] CHO E, MYERS S A, LESKOVEC J. Friendship and mobility:user movement in location⁃based social networks [ C ] / / ACM SIGKDD International Conference on Knowledge Discovery and Data Mining. San Diego, USA, 2011: 1082-1090. [7] KNORR E M, NG R T. Algorithms for mining distance⁃ based outliers in large datasets [ C ] / / International Conference on Very Large Data Bases. New York, USA, 1998: 392-403. [8] KNORR E M, NG R T, TUCAKOV V. Distance - based outliers: algorithms and applications [ J ]. Vldb journal, 2000, 8(3 / 4): 237-253. [9 ] RAMASWAMY S, RASTOGI R, SHIM K. Efficient algorithms for mining outliers from large data sets [ C] / / ACM SIGMOD International Conference on Management of Data. Dallas, USA, 2000: 427-438. [10] BREUNIG MARKUS M. LOF: identifying density-based local outliers[ J]. ACM sigmod record, 2000, 29 ( 2): 93-104. [11]YANG D, RUNDENSTEINER E A, Ward M O. Neighbor⁃ based pattern detection for windows over streaming data [C ] / / International Conference on Extending Database Technology: Advances in Database Technology. Saint Petersburg, Russia, 2009: 529-540. [ 12 ] ANGIULLI F, FASSETTI F. Detecting distance⁃based outliers in streams of data [ C ] / / Sixteenth ACM Conference on Conference on Information and Knowledge Management. Lisboa, Portugal, 2007:811-820. [13]KONTAKI M, GOUNARIS A, PAPADOPOULOS A N, et al. Continuous monitoring of distance-based outliers over data streams [ C] / / IEEE, International Conference on Data Engineering. Hannover, Germany, 2011:135-146. [14] CAO L, YANG D, WANG Q, et al. Scalable distance⁃ based outlier detection over high⁃volume data streams [ C ] / / International Conference on Data Engineering. Chicago,USA, 2014: 76-87. [15 ] LEE J G, HAN J, LI X. Trajectory outlier detection: a partition⁃ and⁃detect framework[C] / / International Confe⁃ rence on Data Engineering. Cancun, Mexico, 2008: 140-149. [16] BU Yingyi, CHEN L, FU W C, et al. Efficient anomaly monitoring over moving object trajectory streams [ C] / / ACM SIGKDD International Conference on Knowledge Discovery and Data Mining. Paris, France, 2009: 159-168. [17] YU Yanwei, CAO Lei, RUNDENSTEINER E A, et al. Detecting moving object outliers in massive⁃scale trajectory streams [ C ] / / ACM SIGKDD International Conference on Knowledge Discovery and Data Mining. New York, USA, 2014: 422-431. [18] LI Zhenhui, WANG J, Han J. Mining event periodicity from incomplete observations [ C ] / / ACM SIGKDD International Conference on Knowledge Discovery and Data Mining. Beijing, China, 2012: 444-452. 作者简介: 赵冠哲,男,1992 年生,硕士研究 生,主要研究方向为数据挖掘。 齐建鹏,男,1992 年生,硕士研究 生,主要研究方向为数据挖掘。 于彦伟,男,1986 年生,讲师,博士, 主要研究方向为时空数据挖掘、流式数 据处理、分布式计算。 主持国家自然科 学基金青年基金 1 项,参与国家自然科 学基金面上项目 1 项,山东省重点研发 计划项目 1 项。 发表学术论文 30 余篇。 第 5 期 赵冠哲,等:移动社交网络异常签到在线检测算法 ·759·