我想使用隔离森林来识别帐户访问系统的持续时间(分钟)的异常值。当系统访问时间超过 40 分钟时,则表示存在异常,需要找出异常情况。
训练集包含18k-20k条记录。常见访问时长一般为1-2分钟,但有时访问系统时,往往会导致时长超过40分钟,属于异常现象。从整个数据集中可以看出,该数据集出现异常持续时间的可能性约为 0.5 到 1%。
我需要知道,如何使用隔离森林这个要求。
转换后的数据集包含帐户ID、持续时间、IP 地址和帐户类型。我需要找出与异常持续时间相关的 AccountId 列表。
sklearn 有专用的 IsolationForest 函数。
https://scikit-learn.org/stable/modules/ generated/sklearn.ensemble.IsolationForest.html