すべてのメトリックが一致するとは限らない
前の演習では、最近傍の特定においてメトリック同士が必ずしも一致しないことを確認しました。では、外れ値についても不一致が起きるのでしょうか? これを確かめてみましょう。先ほどと同じデータを使いますが、今回は Local Outlier Factor による外れ値検出器に入力します。LocalOutlierFactor モジュールは lof として、データは features として用意されています。
この演習はコースの一部です
Python で設計する Machine Learning ワークフロー
演習の手順
euclideanメトリックを使ってfeaturesの外れ値を検出します。hammingメトリックを使ってfeaturesの外れ値を検出します。jaccardメトリックを使ってfeaturesの外れ値を検出します。- 3つのメトリックすべてが同じ外れ値に一致するかどうかを確認します。
実践的なインタラクティブ演習
このサンプルコードを完成させて、この演習に挑戦してみましょう。
# Compute outliers according to the euclidean metric
out_eucl = ____(metric='euclidean').fit_predict(features)
# Compute outliers according to the hamming metric
out_hamm = ____(metric=____).fit_predict(features)
# Compute outliers according to the jaccard metric
out_jacc = ____(____=____).____(features)
# Find if the metrics agree on any one datapoint
print(any(____ + ____ + ____ == ____))