nlpに関するooiwaのブックマーク (5)

  • MeCab: 単語の追加方法

    $Id: dic.html 161 2008-02-03 09:58:46Z taku-ku $; 概要 辞書への単語追加には, 二つの方法があります. システム辞書への追加 ユーザ辞書への追加 システム辞書への追加 辞書更新が頻繁でないときや, 解析速度を落としたくない時は, 直接 システム辞書を変更するのがよいでしょう. mecab-ipadic があるディレクトリに移動 foo.csv というファイルを作成 (拡張子が .csv なら何でも可) foo.csv に単語を追加 辞書の再コンパイル + インストール % /usr/local/libexec/mecab/mecab-dict-index -f euc-jp -t euc-jp % su # make install -f charset: CSVの文字コード -t charset: バイナリ辞書の文字コード 例: u

  • MySQLでTF-IDFの計算、あと2つのベクトルの内積の計算 (2006-12-19)

    文を形態素分解し、必要な品詞をtfテーブルとdfテーブルに入れる。分析対象となる文書群すべてについてこの処理を行い、各形態素のTF-IDF値を求めて文書をベクトル化する。他の文書ベクトルと内積を比較し、小さい順に「似ている記事」を求めたい (クラスタリングとかは別途)。 HarmanによるTF値の正規化とSparok JonesによるDF値の正規化をする場合のTF-IDF値の計算式は以下のようになる (参考文献): tfidf(i,j) = log2(freq(i,j) + 1) / log2(NoT) * (log2(N / Dfreq(i)) + 1)

  • ruby でレーベンシュタイン距離(編集距離)の計算 - Λάδι Βιώσας

    なんとなく暇だったので、ruby でレーベンシュタイン距離(編集距離)を求めるコードを書いてみた。編集距離とは、文字列間の類似度を求める方法のことらしいです。詳しくは、wikipedia:レーベンシュタイン距離を見てください。コードはこんな感じ↓。 # doctest: abc and abc # >> levenshtein_distance("abc", "abc") # => 0 # doctest: kitten and sitting # >> levenshtein_distance("kitten", "sitting") # => 3 # doctest: aaaaa and bbbbb # >> levenshtein_distance("aaaaa", "bbbbb") # => 5 def levenshtein_distance(str1, str2) col, r

    ruby でレーベンシュタイン距離(編集距離)の計算 - Λάδι Βιώσας
    ooiwa
    ooiwa 2010/10/03
  • http://blog.fulltext-search.biz/articles/2007/09/08/tf-idf-by-ruby

  • レーベンシュタイン距離 - Wikipedia

    レーベンシュタイン距離(レーベンシュタインきょり、英: Levenshtein distance)は、二つの文字列がどの程度異なっているかを示す距離の一種である。編集距離(へんしゅうきょり、英: edit distance)とも呼ばれる。具体的には、1文字の挿入・削除・置換によって、一方の文字列をもう一方の文字列に変形するのに必要な手順の最小回数として定義される[1]。名称は、1965年にこれを考案したロシアの学者ウラジーミル・レーベンシュタイン (露: Влади́мир Левенште́йн) にちなむ。 レーベンシュタイン距離は、同じ文字数の単語に対する置換編集に使われているハミング距離の一般化であると見なすことが可能である。レーベンシュタイン距離の更なる一般化として、例えば一回の操作で二文字を変換する等の方法が考えられる。 例[編集] 実際的な距離の求め方を例示すれば、「kitt

  • 1