基于python实现轨迹序列分析

track_sequence_anomaly_detection 由时间空间成对组成的轨迹序列,通过循环神经网络,自编码器,时空密度聚类完成异常检测 1

本文包含相关资料包-----> 点击直达获取<-------

track_sequence_anomaly_detection

由时间空间成对组成的轨迹序列,通过循环神经网络,自编码器,时空密度聚类完成异常检测

1.rnn

word embedding预训练时空点词向量,通过rnn预测下一个时空点的概率分布,计算和实际概率分布的kl离散度,kl距离越大异常分越高

执行代码 python data_preprocessing.py python data_loader.py python pre_embedding.py python main.py python predict.py

轨迹数据格式:hour_location hour_location hour_location ... [1] 6_10101 7_10094 8_10096 9_10102 10_10097 [2] 6_10094 8_10103 10_10101 11_10103 11_10095 14_10097 [3] 12_10094 12_10094 12_10097 13_10096 13_10094 14_10097 16_10096 18_10102

轨迹检测   [×]异常轨迹,[ ]正常轨迹 ``` 请输入轨迹序列:7_10106 7_10096 8_10095 8_10095 8_10100 9_10102 11_10101 11_10104 12_10103 12_10104 12_10097 13_10097 14_10094 15_10095 15_10103 15_10104 16_10097 17_10094 17_10094 17_10096 [ ] 交叉熵:7.609000205993652, kl离散度:7.873, 移动轨迹:['7_10106'] => 7_10096 [ ] 交叉熵:7.607999801635742, kl离散度:8.403, 移动轨迹:['7_10106', '7_10096'] => 8_10095 [ ] 交叉熵:7.60699987411499, kl离散度:8.662, 移动轨迹:['7_10106', '7_10096', '8_10095'] => 8_10095 [ ] 交叉熵:7.572999954223633, kl离散度:9.714, 移动轨迹:['7_10106', '7_10096', '8_10095', '8_10095'] => 8_10100 [ ] 交叉熵:7.599999904632568, kl离散度:10.423, 移动轨迹:['7_10096', '8_10095', '8_10095', '8_10100'] => 9_10102 [ ] 交叉熵:7.598999977111816, kl离散度:9.946, 移动轨迹:['8_10095', '8_10095', '8_10100', '9_10102'] => 11_10101 [ ] 交叉熵:7.5289998054504395, kl离散度:9.099, 移动轨迹:['8_10095', '8_10100', '9_10102', '11_10101'] => 11_10104 [ ] 交叉熵:7.59499979019165, kl离散度:10.283, 移动轨迹:['8_10100', '9_10102', '11_10101', '11_10104'] => 12_10103 [ ] 交叉熵:7.520999908447266, kl离散度:8.919, 移动轨迹:['9_10102', '11_10101', '11_10104', '12_10103'] => 12_10104 [ ] 交叉熵:7.453000068664551, kl离散度:8.242, 移动轨迹:['11_10101', '11_10104', '12_10103', '12_10104'] => 12_10097 [ ] 交叉熵:7.599999904632568, kl离散度:10.468, 移动轨迹:['11_10104', '12_10103', '12_10104', '12_10097'] => 13_10097 [ ] 交叉熵:7.567999839782715, kl离散度:9.526, 移动轨迹:['12_10103', '12_10104', '12_10097', '13_10097'] => 14_10094 [×] 交叉熵:7.609000205993652, kl离散度:10.895, 移动轨迹:['12_10104', '12_10097', '13_10097', '14_10094'] => 15_10095 [ ] 交叉熵:7.5970001220703125, kl离散度:9.827, 移动轨迹:['12_10097', '13_10097', '14_10094', '15_10095'] => 15_10103 [ ] 交叉熵:7.546000003814697, kl离散度:9.446, 移动轨迹:['13_10097', '14_10094', '15_10095', '15_10103'] => 15_10104 [ ] 交叉熵:7.548999786376953, kl离散度:9.49, 移动轨迹:['14_10094', '15_10095', '15_10103', '15_10104'] => 16_10097 [ ] 交叉熵:7.585999965667725, kl离散度:10.284, 移动轨迹:['15_10095', '15_10103', '15_10104', '16_10097'] => 17_10094 [ ] 交叉熵:7.455999851226807, kl离散度:8.381, 移动轨迹:['15_10103', '15_10104', '16_10097', '17_10094'] => 17_10094 [ ] 交叉熵:7.570000171661377, kl离散度:9.628, 移动轨迹:['15_10104', '16_10097', '17_10094', '17_10094'] => 17_10096

```

2.auto_encoder

时空维度展开记录出现次数,转tfidf,自编码预测复现损失MAE,复现损失越大异常分越高

执行代码 python data_preprocessing.py python main.py python predict.py

轨迹检测 cardno,loss be4fqkgr66n89gdna5cg,0.000996691407635808 be4d5d0r66n89gdldnj0,0.0009965329663828015 be4ct7or66n89gdl8760,0.000997029128484428 be4d12or66n89gdlat3g,0.0010041424538940191 be4d4ogr66n89gdldac0,0.0009971902472898364 be4fdogr66n89gdn0rh0,0.0009968323865905404 be4crt8r66n89gdl79cg,0.0009975525317713618

2.st-dbscan

以地理位置距离作为半径,时间范围作为高,在空间画圆柱,进行密度聚类检测异常点。使用KDTree,BallTree,Faiss进行近邻检索加速。

执行代码 python stdbscan.py python stdbscan_fast.py --tim 0.4 --geo 30 --min_samples 20 --method kdtree

轨迹检测

参考文献

  • 基于云计算的用户网络行为挖掘分析系统的研究与设计(湖北大学·皮健夫)
  • 主题网络爬虫的研究和实现(武汉理工大学·林捷)
  • 基于Actor模型的广域分布式爬虫的设计与实现(北京邮电大学·陈凌鹏)
  • 面向应用商店的主题爬虫设计与实现(东南大学·韩进宾)
  • 基于交叉熵的序列事件周期性检测及应用研究(电子科技大学·杨锐)
  • 分布式环境下大规模轨迹流伴随模式计算及优化(桂林电子科技大学·张康威)
  • 面向序列数据的个性化推荐技术研究(齐鲁工业大学·马凯洋)
  • 基于长短期偏好和时间间隔的序列推荐方法研究(山东师范大学·孙杰)
  • 主题网络爬虫的研究和实现(武汉理工大学·林捷)
  • 基于Actor模型的广域分布式爬虫的设计与实现(北京邮电大学·陈凌鹏)
  • 轨迹大数据的向量场可视化方法研究(北京建筑大学·李泰增)
  • 基于web的轨迹数据可视化研究与实现(湖南大学·王婷)
  • 面向应用商店的主题爬虫设计与实现(东南大学·韩进宾)
  • 基于web的轨迹数据可视化研究与实现(湖南大学·王婷)
  • 基于序列模式挖掘算法的恶意代码检测(中国科学技术大学·王丽娜)

本文内容包括但不限于文字、数据、图表及超链接等)均来源于该信息及资料的相关主题。发布者:代码小屋 ,原文地址:https://bishedaima.com/yuanma/35945.html

相关推荐

发表回复

登录后才能评论