コメントには多すぎるため、より一般的なアプローチを扱うため、私は別の答えを出します。
したがって、ESLでは、分岐境界の計算時間を実際に記述します(より正確には、分割統治のように見えます)。
と表す N 観測数と Kツリーを成長させるときの子ノードの数。考えれば一般的には緩んでいないと思いますK修正される。また、f(N) 特定のノードで分割ポイントを計算するための処理時間。
したがって、次のように実行時間の式を再帰的に記述できます。
T(N)= f(N)+ K∗ T(N/ K)
ここでは、子ノードがサイズの入力データセットを分割すると考えました
N に
K 同じサイズのサブセット
N/ K。tisが最良のケースであることはわかっています。
しかし、これはマスター定理のよく知られたアプリケーションであることがわかります。これはCLRSブックに詳しく記載されています。私は第3版を持っています。詳細はセクション4.5にあり、証明は次のセクションにあります。詳細はよく覚えていませんが、再帰を拡張していくつかの用語をグループ化しても、それほど複雑ではないことを覚えています。
ただし、この場合に重要なのは、 f(N)= O (N) -線形時間、アルゴリズムの結果の時間は T(N)= O (Nl o gN)。この時間は単一の入力変数に対して計算されるため、合計時間はP 変数は O (PNl o gN)
すべての入力が最初にソートされている場合、この時間はツリーの成長で達成可能です。 O (PNl o gN)、分割値を見つけるには、このソートされた入力で線形時間がかかります。ここでは、以前の回答で述べたように、オンライン分散アルゴリズムを適用できますL2=1N(y−y^)2。ためにL1=1N| y−y^|中央値を見つけるのはさらに簡単です。私は木のために他のいくつかの損失関数を試したことがないことを告白します。
ただし、分割のサイズが等しい場合、マスター定理が最良のケースに適用されることに注意してください。最悪のケースは、分割が非常に不均衡な場合です。そこで、マスター定理の別のケースを適用することができ、時間はO (PN2)。
結論として、ESLの作成者は通常、クイックソートアルゴリズムの説明に使用される方法でこの用語を使用していると思います。通常、クイックソートによりO (Nl o gN) 実行時間、最悪の場合 O (N2)、いくつかの特定のデータ設定用。
お役に立てば幸いです。