あなたが言及したすべてのテクニックには魔法はほとんどありません。最初に、遭遇する可能性のある典型的な異常を絞り込むことを試みる必要があると思います。これは、物事を単純に保つのに役立ちます.
次に、それらの機能に関連する派生量を計算することができます。例: 「急に方向が変わる数値を検出したい」 => u_{n+1} - u_n を計算し、一定の符号を持つか、ある範囲に収まることを期待します。これを柔軟に保ち、コード設計を拡張できるようにしたい場合があります (OOP を行う場合は、戦略パターンを検討する価値があります)。
次に、関心のある派生量がある場合は、それらに対して統計分析を行います。たとえば、派生量 A の場合、分布 P(a, b) (uniform([a, b])、または Beta(a, b)、おそらくもっと複雑) が必要であると仮定し、先験的な法則を置きます。 a、b で、連続する情報に基づいてそれらを調整します。次に、追加された最後のポイントによって提供される情報の事後尤度により、それが正常かどうかについての洞察が得られるはずです。各ステップでの事後法則と事前法則の間の相対エントロピーも監視するのに適しています。詳細については、ベイズ法に関する本を参照してください。
外れ値を検出したい場合、複雑な従来の機械学習 (パーセプトロン層または SVM のみを引用する) にはほとんど意味がありません。これらの方法は、適度にクリーンであることがわかっているデータを分類する場合に効果的です。