シンプルなノベルティ
アウトライア検出よりもノベルティ検出のほうが有用だと感じていますが、以前に作成したシンプルな例でも動作するか確認したいと考えています。今回は、値がすべて 1.0 の30個の例からなるシーケンスを学習用データとして使い、例 10.0 がノベルティとしてラベル付けされるかを確かめます。pandas は pd として、LocalOutlierFactor モジュールは lof として利用できます。
この演習はコースの一部です
Python で設計する Machine Learning ワークフロー
演習の手順
- 値がすべて
1.0の30個の例を含む pandas の DataFrame を作成します。 - ローカル外れ値因子のノベルティ検出器を初期化します。
- 検出器を学習データにフィットします。
- データポイント
10.0を DataFrame にキャストしてノベルティのラベルを出力します。
実践的なインタラクティブ演習
このサンプルコードを完成させて、この演習に挑戦してみましょう。
# Create a list of thirty 1s and cast to a dataframe
X = ____([1.0]*30)
# Create an instance of a lof novelty detector
detector = lof(____)
# Fit the detector to the data
detector.____(____)
# Use it to predict the label of an example with value 10.0
print(detector.____(____(____)))