2

質問アナライザーを実装するための適切なリソースは何ですか?

技術者以外のユーザーが質問しやすくするために、質問に自動タグを付ける方法を見つけようとしています。ベイズ定理を使用してこれを達成できることがわかりましたが、実装方法がわかりません。

これに関するオープンソースのライブラリや研究論文はありますか?

4

2 に答える 2

3

単純ベイズ確率分類器は、テキストの分類で一般的に使用されます。基本的な考え方は、単語とカテゴリの結合確率を使用して、ドキュメントが与えられたカテゴリの確率を推定することです。このようなモデルの素朴な部分は、単語の独立性の仮定です。この仮定の単純さにより、単純ベイズ分類器の計算は、単語の組み合わせを予測子として使用しないため、非単純ベイズ アプローチの指数関数的な複雑さよりもはるかに効率的になります。タスクがテスト ドキュメントを 1 つのクラスに分類することである場合、事後確率が最も高いクラスが選択されます。

[1] Tom Mitchell、「Machine Learning」、McGraw-Hill、1997. (セクション 6.10)

各質問カテゴリをテキスト タイプと仮定すると、テキスト カテゴリ化を使用できます。

単純ベイズ分類器は、すべての機能 (または属性) が独立していると仮定するベイズの定理に基づいています。

実装はとても簡単です。実装を含む多くのソフトウェア パッケージを見つけることができます。e1071 Package in R で実装されています。単純ベイズ分類器を使用する R のサンプル コードを次に示します。


N <- nrow(data)
Ntrain <- round(N*0.7)
data <- data[sample(1:N),]
train <- data[1:Ntrain,]
test <- data[(Ntrain+1):N,]
y<-as.factor(train[,13])
x<-train[,3:12]
y_test <- as.factor(test[,13])
x_test <- test[,3:12]
library(e1071)
m <- naiveBayes(x, y) 
pred_test <- predict(m,x_test, type = "class")
pred <- predict(m,x, type = "class")

于 2010-08-17T03:57:05.260 に答える
1

あなたのアルゴリズムはテーブル(または同様のもの)を維持する必要があります

Word            Category
-------------------------------------
algo            algorithm
design          algorithm
...
...
libraries       library
open            open-source
open-source     open-source
paper           research-paper
research        research-paper
source          source-code
...

この表に従ってステートメントを分析すると(フィラーワードを無視した後)

1. "Any open source libraries or research papers on this?"

2. open source libraries research papers

3. 
open            open-source
source          source-code
open-source     open-source
libraries       library
research        research-paper
paper           research-paper
research-paper  research-paper

4. by a simple majority, (you can also use a more complex algorithm here,
   like assigning weights to the Categories)
selected category = research paper

選択したアルゴリズムを使用して学習を続けると、テーブルが更新され続け、より良い結果が得られます。

于 2010-08-17T20:22:06.190 に答える