2016-09-13 2 views
0

文字列類似性測定に使用するテストとトレーニングデータセットを取得しました。トレーニングセット(35個のサンプル)およびテストセット(15のサンプル:我々は2に設定されたデータを分割する必要がTwitterの話題文字列の類似性を測定するためのJaccard係数の使用

TWEET_SENT_1 – Tweet sentence 1 
TWEET_SENT_2 – Tweet sentence 2 
HAVE_SIMILAR_MEANING – a binary label (True – two sentences are similar, false – two sentences are not similar) assigned by a human annotator 

- ここで私は、

Brandon Bass ||| what the hell is Brandon bass thinking ||| Brandon Bass Has 5 Personal Fouls ||| False 
Sac ||| Congrats to Sac Kings fans ||| why yall forcing the kings to stay in sac town smh ||| False 
Stella ||| hello Stella can you follow me please ||| STELLA DO U HATE ME ||| False 


The data file has 50 entries of the form 
TOPIC ||| TWEET_SENT_1 ||| TWEET_SENT_2 ||| HAVE_SIMILAR_MEANING 

TOPICをデータセットの数行を与えています)、アルゴリズムのパラメータ調整にトレーニングセットを使用する必要があります。また、最適な調整パラメータを使用してテストセットをテストします。

アルゴリズムがJaccard係数の場合

このタスクはどのように実行できますか?誰かが私に使用できるアプローチを教えてもらえますか?

答えて

0

ヤコカードの類似性は、(あなたの場合はnグラムの)2つのセットがどのように似ているかの尺度です。 2つの文字列が類似しているかどうかを判断するためのしきい値を除いて、ここでは "チューニング"はありません。例えば

あなたは2列abcdeabdcdeを持っている場合、それは次のように動作します。

ngrams (n=2) : 'abcde' & 'abdcde' 
    ab bc cd de dc bd 
A 1 1 1 1 0 0 
B 1 0 1 1 1 1 

J(A、B)=(A∩B)/(A∪B)

J( 、B)=(3/6)= 0.5

があり、また2つのセットの間の非類似性を捕捉ジャカードの距離であり、oneマイナスこの場合、ジャカードcoeeficient(1 - 0.5 = 0.5をとることによって計算される)

問題のために、あなたの文字列が似ている/違うと見なされる適切なしきい値を定義するために、ラベル付きトレーニングセットを使用します。

関連する問題