この記事は abicky.net の MeCab ソースコードリーディング私的メモ(形態素解析編) に移行しました
こんにちは、買物情報事業部の荒引 (@a_bicky) です。 前回、「検索結果の疑問を解消するための検索の基礎」で単語単位でインデキシングする前提で説明しましたが、今回は文などを単語単位で分割するために使う技術である形態素解析について触れます。 形態素解析器には色々ありますが、中でもメジャーと思われる MeCab の仕組みについて説明します。 MeCab の解析精度を上げるために辞書に単語を追加したことのある方もいると思いますが、動作原理を理解することで単語を追加する際に適切な生起コストを設定できるようになったり、学習の際に適切なパラメータを設定できるようになったりするはずです。 なお、MeCab は汎用テキスト変換ツールとしても使用できます が、簡単のため MeCab + IPA 辞書のデフォルト設定前提で説明します。 アジェンダ 形態素解析とは MeCab における最適な解析結果の推
PythonやPL/Python、PostgreSQLを使ってデータ分析をIn-Database処理させるのがマイブームです。 今回は、データベース内に保存された文章のテキストデータから単語の出現頻度を使って話題になっているトピックを抽出する、という処理を行ってみます。 テキストを形態素解析する 形態素解析した結果をJSONBで取得する JSONBデータを対象に集計処理を行う 上記すべてをサーバサイドで実行する といったことをPostgreSQLを使って処理してみます。 ■データの準備 今回も東京カレンダーの「東京女子図鑑」からの文章をサンプルとして使ってみます。 31歳女性がするべき、銀座での“上質な”暮らし。大人の女の流儀とは?(1/2)[東京カレンダー] https://tokyo-calendar.jp/article/4640 今回は、docidという主キーとテキストを値としてd
形態素解析を行なうためのライブラリとして有名なものにMeCabがあります。 これを用いて名詞を抽出する機会があったので、 mecab-noun_parser として公開しました。 インストール方法 Gemfile に以下を書いて bundle します。 gem 'mecab' gem 'mecab-noun_parser' もちろん、別途 MeCab 本体のインストールを行なう必要があります。 使い方 使い方としては、 MeCab::NounParser のインスタンスを生成し、それに解析したい文章を追加します。 parse メソッドでこれを解析し、 nouns メソッドで結果を取得できます。 require 'mecab' require 'mecab-noun_parser' parser = MeCab::NounParser.new parser << 'Rubyは、手軽なオブジェ
MeCab に至るまでの形態素解析器開発の歴史等はこちらをご覧ください メーリングリスト 一般ユーザ向けメーリングリスト 開発者向けメーリングリスト 新着情報 2013-02-18 MeCab 0.996 configure script の不備によりiconvへのリンクに失敗する問題を修正 ユーザ辞書用CSVファイルのコストと左/右文脈IDを付与し, 新たなCSVファイルを生成する機能の追加 解析結果からLattice を作成する Lattice::set_result() メソッドを追加. 単体テスト時のスタブの作成等に利用可能 2013-01-24 MeCab 0.995 部分解析機能の再実装 部分解析機能のためのAPI (Lattice:set_boundary_constarint, Lattice::set_feature_constraint) の追加 2012-06-03
MeCab 用の新語辞書 mecab-ipadic-neologd を公開しました Tweet [NLP] 日本語の文書を機械的に処理しようと思った時に、ほとんどの人が MeCabとIPADIC(IPA辞書)の両方、または、どちらかを使うことになります。 IPADICはとてもよく出来ていますが、更新されないまま年月が過ぎているので、例えば2015年3月上旬に急に流行ったような言葉は収録していません。そのため、今日生まれたような新しい文書(例、Apple Watch発売)を解析する時に困ります。困らない人もいますけど、僕は困ります。 その課題に対処するために、日本全国津々浦々、自然言語処理に関わる全ての人は独自にMeCabの新語辞書を作って対応しているわけです。その際に元データとして使われることが多いのは Wikipedia 日本語版やはてなキーワードなどです。 困ったことに、新語辞書を生成
リリース、障害情報などのサービスのお知らせ
最新の人気エントリーの配信
処理を実行中です
j次のブックマーク
k前のブックマーク
lあとで読む
eコメント一覧を開く
oページを開く