weka dataset classifier
このチュートリアルでは、決定木のWEKAデータセット、分類子、およびJ48アルゴリズムについて説明します。 WekaのサンプルARFFデータセットに関する情報も提供します。
の中に 前のチュートリアル 、Weka Machine Learningツールとその機能、およびWeka Machine Learningソフトウェアをダウンロード、インストール、使用する方法について学びました。
WEKAは、実際のデータのデータマイニング問題を解決するための機械学習アルゴリズムのライブラリです。 WEKAは、多くの機械学習アルゴリズムを開発するための環境も提供します。データ分類、データクラスタリング、回帰、属性選択、頻繁なアイテムセットマイニングなど、さまざまなデータマイニングタスクを実行するための一連のツールがあります。
これらのタスクはすべて、WEKAリポジトリで利用可能なsample.ARFFファイルで実行するか、ユーザーがデータファイルを準備することができます。サンプルの.arffファイルは、研究者によって収集された履歴データが組み込まれたデータセットです。
=> 完全な機械学習トレーニングシリーズを読む
このチュートリアルでは、WEKAのいくつかのサンプルデータセットを確認し、weather.arffデータセットを使用して決定木アルゴリズムのデータマイニングも実行します。
学習内容:
WEKAデータセットの探索
WEKA機械学習ツールは、いくつかのサンプルデータセットのディレクトリを提供します。これらのデータセットをWEKAに直接ロードして、ユーザーがモデルの開発をすぐに開始できるようにすることができます。
WEKAデータセットは、「C: ProgramFiles Weka-3-8 data」リンクから探索できます。データセットは.arff形式です。
WEKAデータセットのサンプル
WEKAに存在するいくつかのサンプルデータセットは、以下の表にリストされています。
S.No. | サンプルデータセット |
---|---|
7。 | 糖尿病.arff |
1.1。 | airline.arff |
2.2。 | 乳がん.arff |
3.3。 | contact-lens.arff |
四。 | cpu.arff |
5.5。 | cpu.with-vendor.arff |
6.6。 | クレジット-g.arff |
8.8。 | glass.arff |
9.9。 | 甲状腺機能低下症.arff |
10.10。 | ionospehre.arff |
十一。 | iris.2D.arff |
12.12。 | iris.arff |
13.13。 | Labor.arff |
14.14。 | ReutersCorn-train.arff |
15。 | ReutersCorn-test.arff |
16.16。 | ReutersGrain-train.arff |
17.17。 | ReutersGrain-test.arff |
18.18。 | セグメント-challenge.arff |
19。 | セグメント-test.arff |
20。 | soybean.arff |
21。 | supermarket.arff |
22。 | unbalanced.arff |
2.3。 | 投票.arff |
24。 | weather.numeric.arff |
25。 | weather.nominal.arff |
これらのいくつかを見てみましょう:
contact-lens.arff
contact-lens.arffデータセットは、コンタクトレンズを装着するためのデータベースです。 1990年に寄贈者のブノワ・ジュリアンから寄贈されました。
データベース: このデータベースが完成しました。このデータベースで使用されている例は完全で、ノイズがありません。データベースには、24のインスタンスと4つの属性があります。
属性: 4つの属性はすべて名目上のものです。欠落している属性値はありません。 4つの属性は次のとおりです。
#1) 患者の年齢:属性ageは値を取ることができます:
- 若い
- 老眼前
- 老眼
#二) 眼鏡処方:この属性は値を取ることができます:
- 近視の
- 遠視
#3) 非点収差:この属性は値を取ることができます
- 番号
- はい
#4) 涙の生成率:値は次のようになります
- 削減
- 正常
クラス:ここでは、3つのクラスラベルが定義されています。これらは:
- 患者はハードコンタクトレンズを装着する必要があります。
- 患者はソフトコンタクトレンズを装着する必要があります。
- 患者はコンタクトレンズを装着してはいけません。
クラスの分布:クラスラベルに分類されるインスタンスを以下に示します。
クラスラベル | インスタンスの数 | |
---|---|---|
1.1。 | ハードコンタクトレンズ | 4 |
2.2。 | ソフトコンタクトレンズ | 5 |
3.3。 | コンタクトレンズなし | 15 |
iris.arff
iris.arffデータセットは、1988年にMichaelMarshallによって作成されました。アイリス植物データベースです。
経験豊富な人のためのqaテスト面接の質問
データベース: このデータベースは、パターン認識に使用されます。データセットには、50インスタンスの3つのクラスが含まれています。各クラスは、アイリス植物の種類を表します。 1つのクラスは他の2つから線形分離可能ですが、後者は互いに線形分離可能ではありません。観察結果が3つのアイリスの花のどの種に属するかを予測します。これは、マルチクラス分類データセットと呼ばれます。
属性: これには、4つの数値、予測属性、およびクラスがあります。欠落している属性はありません。
属性は次のとおりです。
- がく片の長さ(cm)
- がく片の幅(cm)
- 花びらの長さ(cm)
- 花びらの幅(cm)
- クラス:
- アイリスセトサ
- アイリスバーシカラー
- アイリスバージニカ
要約統計量:
最小 | マックス | 平均 | SD | クラス相関 | |
---|---|---|---|---|---|
がく片の長さ | 4.3 | 7.9 | 5.84 | 0.83 | 0.7826 |
がく片の幅 | 2.0 | 4.4 | 3.05 | 0.43 | -0.4194 |
花びらの長さ | 1.0 | 6.9 | 3.76 | 1.76 | 0.9490(高!) |
花びらの幅 | 0.1 | 2.5 | 1.20 | 0.76 | 0.9565(高!) |
クラスの分布: 3つのクラスのそれぞれについて33.3%
他のいくつかのデータセット:
糖尿病.arff
このデータセットのデータベースはPimaIndiansDiabetesです。このデータセットは、患者が今後5年間で糖尿病になる傾向があるかどうかを予測します。このデータセットの患者はすべて、ピマインディアンヘリテージの21歳以上の女性です。 768のインスタンスと8つの数値属性に加えてクラスがあります。これは、予測される出力変数が2つのクラスで構成される名目上のバイナリ分類データセットです。
ionosphere.arff
これは、二項分類で人気のあるデータセットです。このデータセットのインスタンスは、大気からのレーダーリターンのプロパティを記述しています。電離層が構造を持っているかどうかを予測するために使用されます。 34個の数値属性と1つのクラスがあります。
クラス属性は「良い」または「悪い」であり、34の属性の観察に基づいて予測されます。受信信号は、時間パルスとパルス数を引数として自己相関関数で処理されます。
回帰データセット
回帰データセットは、WEKAのWebページからダウンロードできます。 データセットのコレクション 」。さまざまなソースから取得した37の回帰問題があります。ダウンロードしたファイルは、.arff形式の回帰データセットを含む数値/ディレクトリを作成します。
ディレクトリに存在する一般的なデータセットは次のとおりです。 Longley経済データセット(longley.arff)、ボストン住宅価格データセット(housing.arff)、および哺乳類の睡眠データセット(sleep.arff)。
ここで、WEKAエクスプローラーを使用して、データセット内の実数値と名目属性を識別する方法を見てみましょう。
実数値および名目属性とは
実数値属性は、実数値のみを含む数値属性です。これらは測定可能な量です。これらの属性は、温度などの間隔でスケーリングしたり、平均、中央値などの比率でスケーリングしたりできます。
名目属性は、名前または物事の表現を表します。そのような属性には順序がなく、それらはいくつかのカテゴリーを表しています。 例えば、 色。
WEKAを使用してデータセット内の実際の値と名目上の属性を識別するには、以下の手順に従ってください。
#1) WEKAを開き、(アプリケーション)の下の(エクスプローラー)を選択します。
#二) 「前処理」タブを選択します。 「ファイルを開く」をクリックします。 WEKAユーザーを使用すると、WEKAサンプルファイルにアクセスできます。
#3) ローカルシステムに保存されているWEKA3.8フォルダから入力ファイルを選択します。事前定義された.arffファイル「credit-g.arff」ファイルを選択し、「開く」をクリックします。
#4) 左側のパネルに属性リストが開きます。選択した属性統計がヒストグラムとともに右側のパネルに表示されます。
データセットの分析:
左側のパネルでは、現在の関係は次のことを示しています。
- 関係名: German_creditはサンプルファイルです。
- インスタンス: データセット内の1000個のデータ行。
- 属性: データセット内の21の属性。
現在の関係の下のパネルには、属性の名前が表示されます。
右側のパネルで、 選択した属性統計が表示されます。を選択 属性「checking_status」。
それが示している:
- 属性の名前
- 行方不明: データセット内の属性の欠落値。この場合は0%です。
- 明確: 属性には4つの異なる値があります。
- タイプ: 属性は名義型です。つまり、数値を取りません。
- カウント: 1000個のインスタンスのうち、個別のクラスラベルのカウントがカウント列に書き込まれます。
- ヒストグラム: 属性の出力クラスラベルが表示されます。このデータセットのクラスラベルは、良いか悪いかのどちらかです。 700の良いインスタンス(青でマーク)と300の悪いインスタンス(赤でマーク)があります。
- ラベル用<0, the instances for good or bad are almost the same in number.
- ラベルの場合、0<= X<200, the instances with decision good are more than instances with bad.
- 同様に、ラベル> = 200の場合、最大インスタンスは正常に発生し、チェックラベルには決定が良好なインスタンスがこれ以上ありません。
次の属性「期間」について。
右側のパネルは次のことを示しています。
- 名前: これは属性の名前です。
- タイプ: 属性のタイプは数値です。
- 欠測値: 属性に欠落している値はありません。
- 明確: 1000インスタンスで33の異なる値があります。これは、1000のインスタンスで33の異なる値があることを意味します。
- ユニーク: 互いに一致しない5つの一意の値があります。
- 最小値: 属性の最小値は4です。
- 最大値: 属性の最大値は72です。
- 平均: 平均は、インスタンスで割ったすべての値を加算することです。
- 標準偏差: 属性期間の標準偏差。
- ヒストグラム: ヒストグラムは4ユニットの期間を示しており、最大インスタンスは適切なクラスで発生します。期間が38ユニットに増加すると、インスタンスの数は減少し、適切なクラスラベルになります。期間は72ユニットに達し、決定を不良として分類するインスタンスが1つだけあります。
クラスは、名義型の分類機能です。 これには2つの異なる値があります。 善と悪。良いクラスラベルには700個のインスタンスがあり、悪いクラスラベルには300個のインスタンスがあります。
データセットのすべての属性を視覚化するには、「すべて視覚化」をクリックします。
#5) 数値属性のみを検索するには、(フィルター)ボタンをクリックします。そこから、をクリックします -> WEKA> FILTERS-> Unsupervised Type-> RemoveTypeを選択します。
WEKAフィルターには、データセットの属性値を変換してアルゴリズムに適したものにするための多くの機能があります。 例えば、 属性の数値変換。
データセットから名目属性と実際の値の属性をフィルタリングすることは、WEKAフィルターを使用するもう1つの例です。
#6) フィルタタブでRemoveTypeをクリックします。オブジェクトエディタウィンドウが開きます。 attributeType「数値属性の削除」を選択し、「OK」をクリックします。
# 7) フィルタを適用します。数値属性のみが表示されます。
class属性は名義型です。出力を分類するため、削除できません。したがって、それは数値属性で見られます。
出力:
データセット内の実数値と公称値の属性が識別されます。クラスラベルによる視覚化は、ヒストグラムの形式で表示されます。
Wekaディシジョンツリー分類アルゴリズム
次に、J48分類器を使用してweather.nominal.arffデータセットに決定木分類を実装する方法を説明します。
weather.nominal.arff
これは、WEKAの直接に存在するサンプルデータセットです。このデータセットは、天気がクリケットのプレーに適しているかどうかを予測します。データセットには5つの属性と14のインスタンスがあります。クラスラベル「play」は、出力を「yes」または「no」に分類します。
デシジョンツリーとは
デシジョンツリーは、ルートノード、ブランチ(エッジまたはリンク)、およびリーフノードの3つのコンポーネントで構成される分類手法です。ルートはさまざまな属性のテスト条件を表し、ブランチはテストに含まれる可能性のあるすべての結果を表し、リーフノードにはそれが属するクラスのラベルが含まれます。ルートノードは、ツリーの先頭とも呼ばれるツリーの先頭にあります。
J48分類子
これは、C4.5(ID3の拡張)によって生成される決定木を生成するためのアルゴリズムです。統計的分類子としても知られています。デシジョンツリーの分類には、データベースが必要です。
手順は次のとおりです。
#1) WEKAエクスプローラーを開きます。
#二) (前処理)タブオプションの(ファイルの選択)からweather.nominal.arffファイルを選択します。
#3) 未分類のデータを分類するには、(分類)タブに移動します。 「選択」ボタンをクリックします。これから、「trees-> J48」を選択します。 (選択)ボタンの他のオプションについても簡単に見てみましょう。
- ベイズ: これは、数値属性の密度推定です。
- メタ: これは、マルチレスポンス線形回帰です。
- 機能: ロジスティック回帰です。
- 怠惰: ブレンドエントロピーを自動的に設定します。
- ルール: ルール学習者です。
- 木: ツリーはデータを分類します。
#4) スタートボタンをクリックします。分類子の出力は右側のパネルに表示されます。 パネルに実行情報が次のように表示されます。
- スキーム: 使用される分類アルゴリズム。
- インスタンス: データセット内のデータ行の数。
- 属性: データセットには5つの属性があります。
- 葉の数とツリーのサイズは、決定木を表します。
- モデルの構築にかかった時間: 出力の時間。
- 属性とインスタンス数でプルーニングされたJ48の完全な分類。
#5) ツリーを視覚化するには、結果を右クリックして、(ツリーの視覚化)を選択します。
出力 :
出力は決定木の形式です。主な属性は「見通し」です。
見通しが晴れている場合は、 次に、ツリーはさらに湿度を分析します。湿度が高い場合、クラスラベルplay =“ yes”。
見通しが曇っている場合は、 クラスラベル、遊びは「はい」です。分類に従うインスタンスの数は4です。
見通しが雨の場合、 属性「風が強い」を分析するために、さらに分類が行われます。 windy = trueの場合、play =“ no”。 outlook = windyおよびwindy = trueの分類に従うインスタンスの数は2です。
結論
WEKAは、機械学習アルゴリズムを適用するための幅広いサンプルデータセットを提供しています。ユーザーは、分類、回帰、属性選択、これらのサンプルデータセットの関連付けなどの機械学習タスクを実行でき、それらを使用してツールを学習することもできます。
WEKAエクスプローラーは、前処理から始まるいくつかの機能を実行するために使用されます。前処理は、入力を.arffファイルとして受け取り、入力を処理して、他のコンピュータープログラムで使用できる出力を提供します。 WEKAでは、前処理の出力により、データセットに存在する属性が得られます。この属性は、統計分析やクラスラベルとの比較にさらに使用できます。
WEKAは、決定木の多くの分類アルゴリズムも提供します。 J48は、決定木を出力する一般的な分類アルゴリズムの1つです。 (分類)タブを使用すると、ユーザーは決定木を視覚化できます。デシジョンツリーの数が多すぎる場合は、不要な属性を削除して分類プロセスを再開することにより、(前処理)タブからツリーの剪定を適用できます。
=> 独占的な機械学習シリーズについては、こちらをご覧ください