- 445 名前:デフォルトの名無しさん [2008/01/28(月) 19:01:03 ]
- プログラムに関して質問があります.
データベースに登録した2つのテーブル内のカラムの類似度を求めたいんですが,ベクトル空間モデルにおける コサイン尺度を用いて類似度を求めようと考えています. しかし,コサイン尺度をどうプログラムで表せばいいのかがわかりません. どなたか教えていただけませんか? ↓RoRで作成したデータベースのテーブルとカラム ・Book(id, name) ・Word(id, noun) ・Relation(id, song_id, word_id, tf) ・User(id, user_name) ・Reference(id, user_id, Word_id, vector) Relationテーブルでは,Bookに登録した書籍と,各書籍内に出現する単語を関連付けています. Relationのtfとは各単語の出現頻度を登録しています. そして,Userが選択したBookが持つwordのTFをvectorに登録する仕組みになってます. なのでRelationテーブルにある各bookが持つword_idと, Referenceテーブルにある各userが持つword_idは同じ数だけあります. この2つのテーブルにある「tf」と「vector」の類似度を求めたいんです! 「tf」を本ベクトル,「vector」をユーザベクトルとして,ベクトル空間ベクトルとして, 類似度を求めたいんです. どなたか,この2つのベクトルの類似度を計算するプログラム,教えてください!!
|

|