0
我想使用隔離森林來識別我的數據集中的異常值。隔離林實施
訓練集包含4000條記錄與40個專題欄目值爲1或0。
我知道如何使用scikit學會給出的樣本爲例,使用隔離森林2種功能。
如何使用所有40個功能並查看異常值?
我想使用隔離森林來識別我的數據集中的異常值。隔離林實施
訓練集包含4000條記錄與40個專題欄目值爲1或0。
我知道如何使用scikit學會給出的樣本爲例,使用隔離森林2種功能。
如何使用所有40個功能並查看異常值?
我簡化了scikit示例。 X是具有40個特徵和4000行的數據集。在這個例子中它是3個特徵和100行。您將clf.fit(X)的分類符合到您的數值數據X中,以便將分類器學習爲數據的「邊界」。在下一步中,您將針對您的學習模型對相同的數據X進行分類,並獲取包含100個條目的數組y,其中數據集中的每行一個。 y中的每個條目是-1(離羣值)或1(Inliner)。
import numpy as np
from sklearn.ensemble import IsolationForest
rng = np.random.RandomState(42)
# Generate train data
s = rng.randn(100, 5)
X = np.r_[s + 2, s - 2, s - 5]
# fit the model
clf = IsolationForest(max_samples=100, random_state=rng)
clf.fit(X)
y = clf.predict(X)