着信ネットワークパケットの到着間時間を予測しようとしています。 xi = 0,1,1,1,0、... xi = 0到着間時間が0の場合、ネットワークパケットの到達時間を測定し、このデータをバイナリフィーチャの形式で表します。 ブレーク・イーブン・タイムとそれ以外の場合は1です。データは、2つの可能なクラス= 0Cは、長い到着時間を表す短い到着時間間隔及び1を表す。C = {0,1}、にマッピングされなければなりません私がオンラインフィーチャーに分類器を実装したいので、フィーチャーのベクトルを観察するとすぐに、私はMAPクラスを計算します。xi = 0,1,1,0 ...私はMAPクラスを計算します。私は条件付きと事前確率の事前の見積もりを持っていないので、次のように、私はそれらを初期化:各特徴ベクトルについてはNaive Bayesクラシファイアによるオンライン学習
p(x=0|c=0)=p(x=1|c=0)=p(x=0|c=1)=p(x=1|c=1)=0.5
p(c=0)=p(c=1)=0.5
(X1 = M1、X2 = M2、...、XN = MN次のように私は、出力クラスCが、私は条件付きと事前確率を更新)、:
p(xi=mi|y=c)=a+(1-a)*p(p(xi=mi|c)
p(y=c)=b+(1-b)*p(y=c)
問題は、私はいつも偏った予測を取得しています、ということです。 の数が長い到着時間が短いよりも比較的少ないので、事後短いのは常に長いよりも高いまま。これを改善する方法はありますか?または私は間違って何かをしていますか?どんな助けもありがとう。
バイナリ機能を使用するのではなく、実際の値についてのヒントを教えてください。分類に実際の値を使用するにはどうすればよいですか?データの分割に関するあなたの提案によると、時間_k_で長さ_n_個のフィーチャを取ると、予測のために_k-n_フィーチャを取る必要があります。新しいデータが到着したら、k + 1個のフィーチャに_k-n + 1_を取ります。右? – user846400
実際の値の使用に関しては、実際の測定値をデータポイントとして使用することをお勧めします。これは、慎重な分類ではなく回帰ツールを使用する場合に可能です。たとえば、あなたの測定値が4,9,5,7,11,5ミリ秒であるとします。例えば境界として6ms、そしてその系列を0,1,0,1,1,0に変換する - トレーニングと予測のために元の実数値を使用します。分割については、同じ例を参照すると、分割することができる。 〜4,9,5〜7; 9,5,7→11; 5,7,11 - > 5(フォーマットはx1、x2..xk - >予期される予測) – etov
あなたのアドバイスをありがとう。実際の値を使用する場合は、平均と標準偏差(オンライン学習中)を維持する必要がありますか? – user846400