[GitHub - cerlymarco/tsmoothie: A python library for time-series smoothing and outlier detection in a vectorized way.](https://github.com/cerlymarco/tsmoothie)
- [[時系列データの平滑化]]のためのPythonライブラリ。
- Notebooks
- [tsmoothie/Basic Smoothing.ipynb at master · cerlymarco/tsmoothie · GitHub](https://github.com/cerlymarco/tsmoothie/blob/master/notebooks/Basic%20Smoothing.ipynb)
## ExponentialSmoother
> ExponentialSmoother は、重み付けされた窓を使用して、系列の一定次元の畳み込みを操作します。重みはすべての窓で同じであり、指数関数的な減衰を使用して計算されます。最新のオブザベーションは、過去のオブザベーションよりも重要です。これは,パラメータ(alpha)を選択して課される.エッジでの結果を変更しないために,パディングは行われない.この理由から,この手法は,位置 window_len のオブザベーションまで平滑化を行いません.
## BinnerSmoother
[tsmoothie/smoother.py at 5e950a13efaab818fa4358248d74ca2602169a4a · cerlymarco/tsmoothie · GitHub](https://github.com/cerlymarco/tsmoothie/blob/5e950a13efaab818fa4358248d74ca2602169a4a/tsmoothie/smoother.py#L853)
> BinnerSmootherは、アドホックな基底展開に線形回帰を適用して、時系列を平滑化します。このメソッドで作成される特徴は、入力空間を区間にビン分割して得られます。各ビンには、与えられたオブザベーションがどこに入るかを示す指標となる特徴が作成されます。時系列領域では、入力空間は連続的に増加する1つのシーケンスで構成される。
> 2つの可能性があります。
- 等間隔でタイムスケールを行う。間隔の数はユーザー定義のパラメータ(n_knots)である。
- カスタム長インターバルで時系列を平滑化。インターバル位置は正規化ポイント(ノット)としてユーザーにより定義される。
- この2つの方法は排他的であり、n_knotsの使用はknotsの使用を無効にし、その逆もまた同様です。
- BinnerSmoother は、効率的な方法で自動的にベクトル化します。受信したすべての系列に対して、希望する平滑化処理を行います。
![[Pasted image 20220329154027.png|400]]
- 系列の配列をビンの個数で分割してベクトル化し、各ベクトルごとに線形回帰してるような雰囲気のコードになっていそうです。