私は、階層からのラベルで注釈が付けられた文のデータセットを持っています。階層は音楽ジャンルの選択です。これはツリーであり、DAGではなく、各ノードには親と親がそれぞれ1つしかありません。ここでは一例として、抽出物である:例えば、文Mozart is the best
については機械学習の階層分類トップダウンアプローチ
root = music
parent = latin
child = afro-cuban
child = salsa
child = brazilian
child = axe
parent = non-latin
child = classical
...
、収集された注釈から、大半がこの文章や地面の真実のためのクラスラベルがclassical
であることに同意します。階層から、我々はclassical
もという形式のnon-latin
音楽の形式であることを知っています。一方、i prefer salsa
はlatin
と注釈されている可能性があります。
分類の面では、クラス階層を完全に無視しているため、直感的に問題を解決することはできません。また、Wekaを使用している間に、結果が低くなります。また、複数の分類器の問題に直面しているため、分類器が選択されています。
私の問題は、階層分類がどのように実装されているか、非常にあいまいな文献やオンライン記事を読んだことです。私はWekaとPythonを使いたいです。しかし、私はちょうどこの状況で階層的な分類を実行する方法を明確にしたかっただけです。だから私の質問は:
1)これを回避するための最善の提案は何ですか?トップダウンアプローチを実施するのが最善の選択肢でしょうか?これを行うと、各レベルで誤って分類されてしまうという問題を避けるにはどうすればよいですか?すなわち、レベル1でlatin
、レベル2でclassical
と予測できます。バイナリクラシファイアはどうですか?私は提案に開放されています。
2)トレーニングデータとテストデータはどのようにして入力されますか?
3)どのように分類性能を評価できますか?特にトップダウンのアプローチでは、各レベルごとに評価が行われるため、
お返事ありがとうございます。私は、データの訓練とテストの目的、そしてそれらが何をするのか、そして一般的な機械学習の目的を認識しています。私はちょうどあなたが階層的な方法でそれをやり遂げる方法を理解していない。だから私の文章から特徴を抽出することをお勧めしますか?これは、より小さな空間に文を生成するだけです。これはどのように私の階層的な問題を解決するのですか?問題は、クラスが複数のレベルに属していることです。私が説明したように、概念的には正解でもあるので、ノードを親として分類することもできます。どのようにこれを行うのですか? – user47467
文章からの特徴抽出 - まず最初に、不要なデータがたくさん残ってしまいます。例文の中で2番目に意味のある言葉が残っています。 階層的な問題はツリー内で解決され、非常に直感的です。 例えば:_ "i prefer salsa" _というサルサは強力な機能であり、クラシファイアに入ると、おそらくアフリカキューバやラテンや音楽に強い信号を示しているでしょう。あなたのラベルは です。正確にどの部分に興味がありますか?トップレベル?二つ目? – lazary
私は木を知っているわけではないので、もしあなたがこのwekaをどうやってやっているのか分かっていれば、それは素晴らしいことでしょう。私は木全体に興味があります。これは、文章のクラスラベルに依存していると思いますか? – user47467