■MeCabについて MeCab は、オープンソースの形態素解析エンジンです。 MeCab 以外でもフリーで入手可能なものには、ChaSen、Juman、KAKASI などがある。有償のものだと Basis Technology の Rosette 形態素解析システムなどもある。 MeCab - Wikipedia によると、 MeCabはオープンソースの形態素解析エンジンで、奈良先端科学技術大学院大学出身、現GoogleソフトウェアエンジニアでGoogle 日本語入力開発者の一人である工藤拓氏によって開発されている。名称は開発者の好物「和布蕪(めかぶ)」から取られた。 開発開始当初はChaSenを基にし、ChaSenTNGという名前で開発されていたが、現在はChaSenとは独立にスクラッチから開発されている。ChaSenに比べて解析精度は同程度で、解析速度は平均3-4倍速い。 品詞情報を
初めに 方針 ・pandasは、CSVや、Mysql、SQLiteなど様々なデータベースから、取り扱いやすい自身のDataFrameに変換することができる。 ・pandasのDataFrameはscikit-learnとの連携も容易である。 ・自然言語処理を日本語で行う場合、適切に前処理を行わなければ、良い結果をだすことはできない。 今回は自然言語処理における前処理の種類とその威力を参考にさせていただき、 具体的にpandasのDataFrameの形で存在する日本語データの前処理について考えていきます。 ※引用文は記載が無い場合、上記の記事からのものです。 準備と想定 sqlite3からpandasのデータフレームへ変換しています。 import pandas as pd import sqlite3 con = sqlite3.connect("db/development.sqlite
こんにちは、買物情報事業部の荒引 (@a_bicky) です。 前回、「検索結果の疑問を解消するための検索の基礎」で単語単位でインデキシングする前提で説明しましたが、今回は文などを単語単位で分割するために使う技術である形態素解析について触れます。 形態素解析器には色々ありますが、中でもメジャーと思われる MeCab の仕組みについて説明します。 MeCab の解析精度を上げるために辞書に単語を追加したことのある方もいると思いますが、動作原理を理解することで単語を追加する際に適切な生起コストを設定できるようになったり、学習の際に適切なパラメータを設定できるようになったりするはずです。 なお、MeCab は汎用テキスト変換ツールとしても使用できます が、簡単のため MeCab + IPA 辞書のデフォルト設定前提で説明します。 アジェンダ 形態素解析とは MeCab における最適な解析結果の推
背景 平成の次の元号は何になるの? エンジニアに限らず、多くの人が気になる話題である。 エライ学者先生ががんばって調べたり選んだりして決めるんでしょ。 しかし、時はAIが囲碁や将棋で名人を負かす時代。 そうだ!AIに新元号を決めてもらえばいいじゃん!! まさに悪魔的発想・・・! 「OK、Google、新しい元号は何になるの?」 ⇒ 教えてくれるワケがない。(元号関連記事くらいは教えてくれる) じゃあ自分で作ってみよう! 人の判断を一切入れずに、AIだけで新元号作ることが出来るのか?が今回のテーマ 余談: ちなみに大喜利人工知能の、大喜利βさんに聞いたところ 「アメリカ」との答えが返ってきた。 このタイミングで、アメリカ合衆国51番目の州は「本州」です、とせよとの啓示なのか!? 新元号のルールは? 以下のように決められているらしい。 1. 国民の理想としてふさわしいようなよい意味を持つもので
問題 mecab-ruby を本格的に使う必要が出てきたので mecab-ruby を触っていました. mecab-ruby は SWIG という一度書いたものをより高級な言語で使いまわせるようにするツールで実装されているので, インターフェイスが Ruby っぽくないです. あと各言語向けバインディングの Doc の MeCab::Node の振舞い で触れられているように MeCab::Node の振る舞いはすこし癖があります. 書いてみた というわけで, 不満があるならラッパーを書けばいいじゃない!ということで gem を書いてみました. https://github.com/taiki45/mecab-ext https://rubygems.org/gems/mecab-ext どこが便利なったのか・使い方 まずは Node インスタンスを作ります.
$ mecab 吐き気を催す邪悪とは 吐き気 名詞,一般,*,*,*,*,吐き気,ハキケ,ハキケ を 助詞,格助詞,一般,*,*,*,を,ヲ,ヲ 催す 動詞,自立,*,*,五段・サ行,基本形,催す,モヨオス,モヨオス 邪悪 名詞,一般,*,*,*,*,邪悪,ジャアク,ジャアク と 助詞,格助詞,一般,*,*,*,と,ト,ト は 助詞,係助詞,*,*,*,*,は,ハ,ワ
TD;LR mecab標準のフォーマットは少し扱いづらい 出力フォーマットを弄ろう! 表層系+品詞の組み合わせができるようになり幸せ mecabのデフォルトの出力形式は使いづらくないですか? 前回の投稿の複数の形態素解析を一度に見るコマンドを作った話に引き続き, 形態素解析器の利用に関するtipsです. 形態素解析と言えば, mecabを使われている方が非常に多いかと思います. 企業利用だと, 製品への組み込みやすさから kuromojiを使ってる方も多いでしょうか? kuromojiを使ったことはないですが mecabを使っていて思うことは, "標準の出力形式扱いづらくない?"ということです. よく利用するのは, 僕は単語分割(分かち書き)と品詞取得, 活用形の原形化ぐらいなものなのですが 標準の出力形式だと, どうしても後段の処理で扱いづらいです. ある問題に対する分析を行うため, と
NLP2018のワークショップに行ってきたのですが、そこで聞いてきたことのうち、形態素解析ツールに関することを大雑把にまとめておきます。聞いたことをまとめることが目的なので、詳細は各ツールのWebサイトやgithubページへ行ってください。 間違っている部分、追加したい内容があればコメントでお願いします。 追記: 2018/04/02 nlp2018の発表資料が公開されました。 Juman++ (リンク) MeCab (リンク) KyTea (リンク) Unidic (リンク) https://sites.google.com/view/nlp2018ws/ NLP2018 形態素解析の今とこれから 趣旨: どういう手法・ツールをどのようなタスクに対して使うべきかを選べるように、各ツールの開発者の発表を基に比較してもらうこと。 さまざまな発表がありましたが、形態素解析ツールに焦点を当ててま
はじめに オープンソースの日本語形態素解析器:MeCabの辞書を利用する方法を備忘録として記録します。 MeCabの辞書には、システム辞書とユーザ辞書があります。 システム辞書の方が処理が早いと言われており、ユーザ辞書を使用する機会は少ないと思われる。 また、MeCab用の新語辞書・固有表現に強いシステム辞書:mecab-ipadic-NEologdが公開されている。mecab-ipadic-NEologdは、毎週2回(月曜日と木曜日)に一般サイト(はてなキーワードや郵便番号データやSNS,ニュース記事など)から情報を収集して更新されている。 参考サイト: MeCab公式サイト MeCabの辞書をカスタマイズする mecab-ipadic-neologd - GitHub 環境 OS:Red Hat Enterprise Linux 7.2 MeCab:0.996 MeCabのシステム辞書
はじめに 自然言語処理を学ぼうと思い、PythonにMeCabをインストールしようと考える人は多くいると思う。 MacやLinux環境では比較的簡単に(HomeBrewやapt-getを使用して)インストールすることが可能だが、Windows環境では一筋縄ではいかない。(現に2,3日ハマった) 多くの先人達がブログの記事にしているが、個人によって環境は異なるので、私がインストールに成功した方法を記事にしたいと思う。 インストール(に試して成功した)環境 OS:Windows10, Windows7 Pythonの環境:Anaconda3系 先にダウンロードしておくべきもの https://www.visualstudio.com/vs/older-downloads/ VS2015 Community (私の手元ではVS2017だと失敗した) http://taku910.github.i
人のツイートを可視化するまでの目的・環境 今回の目的 どんな単語をよく使っているのかを調べ、頻度が高い単語を大きな文字で表す。成果物はさっきの通り。 実行環境 Windows10RStudioMeCabインストール済み MeCabをインストールしていない方は、【MeCab】を【R】で使えるようにするための【RMeCab】を導入する方法・流れ【Windows編】の記事をみてください。 RでMeCabを使う方法を書いています。 ツイートを可視化する流れ 超具体的に書いているので、長く感じると思います。実際は簡単なんで心配しないでください。 TwitterのAPIに登録パッケージの導入RからTwitterAPIにアクセスツイートの取得テキスト部分を取得いらない部分の削除文字コード変換ファイルの結合と保存名詞・動詞などの残す部分を決める列名の変更一度表にしてみるツイートの可視化 コードを実行してい
#!/usr/bin/env python # -*- coding:utf-8 -*- import MeCab m = MeCab.Tagger() print m.parse("犬も歩けば棒に当たる。") $ ./mecab.py 犬 名詞,一般,*,*,*,*,犬,イヌ,イヌ も 助詞,係助詞,*,*,*,*,も,モ,モ 歩け 動詞,自立,*,*,五段・カ行イ音便,仮定形,歩く,アルケ,アルケ ば 助詞,接続助詞,*,*,*,*,ば,バ,バ 棒 名詞,一般,*,*,*,*,棒,ボウ,ボー に 助詞,格助詞,一般,*,*,*,に,ニ,ニ 当たる 動詞,自立,*,*,五段・ラ行,基本形,当たる,アタル,アタル 。 記号,句点,*,*,*,*,。,。,。 EOS #!/usr/bin/env python # -*- coding:utf-8 -*- import sys param =
手軽にトピック分析を実行できるgensimを知ったので、gensimを使用して簡単な文章をトピック分析するチュートリアルを実行してみました。 トピック分析、LDA、gensimとは 詳しく理解してはいないので、簡単に言うと、 トピック分析とは、大量の文章からいくつかのトピックを分類して、与えられた文章がどのトピックに属するかを分類する手法 LDAとは、トピック分析の1種 gensimとは、トピック分析を行うことができるPython製のソフトウェア gensimを使ったトピック分析は、以下の手順で行えるようです。 文章を準備 文章を単語ごとに分割、調整 辞書を作成 コーパスを作成 LDAモデルを作成 分類したい文章をLDAモデルで分類 前提 Docker Python 2環境を作るのが面倒だったのでDockerを使っているだけです。 $ docker version Client: Vers
<ruby><rb>私</rb><rt>わたし</rt></ruby>は <ruby><rb>大学</rb><rt>だいがく</rt></ruby>を <ruby><rb>辞</rb><rt>や</rt></ruby>めたい 私わたしは大学だいがくを辞やめたい とルビがふれるようになる 必要なもの 環境はMacOS,Pythonのバージョンは3.5.1。 1.Mecab(筆者の場合デフォルトでmacに入っていたので省略します) 2.mecab-python3 3.pip(mecab-python3をインストールするのに必要) 必要なものをそろえる Mecabというのは辞書解析ツールでこれを使うことに漢字のよみがなを取得することができます。 コマンドライン上からmecabコマンドを実行し、次の行にテキストを入力することで実行・取得できます。 $ mecab 私は大学を辞めたい 私 名詞,代名
リリース、障害情報などのサービスのお知らせ
最新の人気エントリーの配信
処理を実行中です
j次のブックマーク
k前のブックマーク
lあとで読む
eコメント一覧を開く
oページを開く