【问题标题】:Data preprocessing of click stream data in real time实时对点击流数据进行数据预处理
【发布时间】:2021-06-22 04:34:15
【问题描述】:

我正在开展一个实时检测网络用户活动异常的项目。必须实时检测用户的任何恶意或恶意活动。输入数据是用户的点击流数据。点击数据包含用户 ID(唯一用户 ID)、点击 URL(网页的 URL)、点击文本(用户点击的网站中的文本/功能)和信息(用户输入的任何信息)。该项目类似于入侵检测系统 (IDS)。我正在使用 python 3.6,我有以下查询,

  1. 什么是执行数据预处理的最佳方法,考虑到数据集中的所有属性都是分类值。
  2. 可以应用热编码或标签编码等编码方法,但必须实时处理数据,因此难以应用
  3. 根据项目要求将3列(点击URL、点击文本和类型信息)视为特征列。

我真的很困惑如何进行数据预处理。任何见解或建议将不胜感激

【问题讨论】:

    标签: pandas python-3.6 real-time-data data-preprocessing clickstream


    【解决方案1】:

    在最近的一些个人和专业项目中,当面临将 ML 应用于流数据的挑战时,我使用 Python 库 River https://github.com/online-ml/river 取得了成功。

    1. 一些在线算法可以处理带标签的值(如 hoeffding 树),因此根据您想要实现的目标,您可能不需要进行预处理。

    2. 如果您确实需要进行预处理,可以以增量方式应用标签编码和一种热编码。下面是一些帮助您入门的代码。 River 也有许多类来帮助进行特征提取和特征选择,例如:TF-IDF、词袋或频率聚合。

    online_label_enc = {}
    
    for click in click_stream:
        try:
            label_enc = click[click__feature_label_of_interest]
        except KeyError:
            click[click__feature_label_of_interest] = len(online_label_enc)
            label_enc = click[click__feature_label_of_interest]
    
    1. 我不确定您在问什么 - 但如果您在线/增量地解决问题,然后提取您想要的特征并将它们传递给您选择的在线算法 - 然后应该在每个数据增量时更新和学习。

    【讨论】:

      猜你喜欢
      • 1970-01-01
      • 2021-04-26
      • 1970-01-01
      • 2022-07-08
      • 1970-01-01
      • 1970-01-01
      • 2021-10-17
      • 1970-01-01
      • 2021-01-01
      相关资源
      最近更新 更多