0

私は機械学習アプリケーションに取り組んでおり、テストや比較分類アルゴリズムなどに Weka を使用しています。Weka でのテスト操作の後、J48 決定木を使用することにしました。Weka が生成した枝刈りされた木を解析し、C の if-then 形式として実装しました。ただし、プログラムで Weka の入力として使用されたデータをテストすると、結果は Weka の混同行列と同じではありません。Weka のテスト オプションで、「トレーニング セットを使用する」を選択し、その決定木を使用しました。混同行列と私の結果は次のとおりです。

=== 混同行列 ===

    a    b    c    d    e    f    g   <-- classified as
  178    1    0    1   13    2    7 |    a = InstantMessaging
    4   29   11    1   14   46   25 |    b = Mail
    1    3 1051    4   32  921   54 |    c = Music
    4    0   14 9596   10    4   10 |    d = P2P
   10    1   46    6  607  263   59 |    e = SocialMedia
    4    1  230    2   44 7619   63 |    f = VideoStream
    5    0   57    1   57  167 1016 |    g = WebBrowsing

プログラムからの私の結果:

 "instantMessaging" => 210,
             "mail" => 33,
            "music" => 4933,
              "p2p" => 9886,
      "socialMedia" => 1220,
      "videoStream" => 4958,
      "webBrowsing" => 1054,
            "total" => 22294,

すべてが同じ (デシジョン ツリー、データ、特徴量、関数など) なのに、なぜこれらの異なる結果が得られるのでしょうか? Weka が間違った決定木を生成/表示する可能性はありますか?

4

1 に答える 1

0

より深く検索すると、答えが見つかりました。この問題は、機能を作成する機能の変更によって発生しました。この機能が変更されたため、機能セット内の機能の結果がarffファイルと等しくありませんでした。現在、すべての結果は論理的です。

于 2015-05-07T12:54:10.357 に答える