Amazon Web Services ブログ 日本語形態素解析器 Sudachi の語彙データ(SudachiDict)および単語ベクトル(chiVe)が AWS 上で Open Data として公開されました 多くの機械学習デベロッパーの方々が、AWS 上でさまざまなアルゴリズムの開発やモデルの構築を行なっています。中でも自然言語処理を行う際には、対象言語の言語ごとの辞書データや単語ベクトルデータを用いることが一般的です。これらのデータは GB 以上のサイズにおよび、また計算の際にも大量の GPU および CPU を必要とするため、従来こうしたモデルを構築する際には常にストレージおよびコンピューティングのリソースの調達が問題となってきました。AWS 上で自然言語処理モデルの開発を行う際には、Amazon SageMaker を用いて学習に必要なリソースを確保することで、ALBERT の
形態素解析は日本語処理の初歩であり、文を単語に分割したり、品詞や活用形、基本形を分析するために行います。本記事では形態素解析のツールをいくつかの出力例を交えて比較していきます。 (SentencePieceでいいじゃん、という人はお呼びでないですが、そういう方には、Twitterのトレンドが変な分割になってたら嫌では?と申し上げておきたいです) MeCab 言わずと知れた形態素解析器。とりあえずMeCabを使うという人は今なお多いことでしょう。とにかく高速であるということと、システムと辞書が分離されているのが特徴です。またPythonから使うのも簡単になりました(Janomeというものがありましたがmecab-python3の方が高速です)。Javaから使いたい人はKuromojiを使えばmecab(+ipadic)相当の結果が得られるはずです。 辞書はIPA辞書が推奨されていますが、Un
tl;dr (要約) Kuromojiに代わる新しい形態素解析器「Sudachi」 なにが良いの? 最新の辞書 企業(ワークスアプリケーションズ)による継続的な更新 複数の分割単位 → 検索用途での再現率と適合率の向上 プラグインによる拡張 省メモリ Elasticsearchで使いたい プラグイン: WorksApplications/elasticsearch-sudachi 使い方は当記事の後半をご覧ください 注: この記事の執筆者はSudachiの開発に関わっています さまざまな形態素解析器 形態素解析は、伝統的な自然言語処理(Natural Language Processing, NLP)において基盤となる技術です。そして世の中にはさまざまな形態素解析器が存在します。販売されているものもありますが、一般に公開されているものだけでもいくつか例をあげると、JUMANとRNNLMを利
日本語形態素解析システム Juman++ † Juman++は言語モデルを利用した高性能な形態素解析システムです.言語モデルとして Recurrent Neural Network Language Model (RNNLM) を用いることにより,単語の並びの意味的な自然さを考慮した解析を行います.それにより JUMAN,MeCab に比べ大きく性能が向上しています.文法・辞書・出力フォーマット等は JUMAN から引き継いだものを利用しています.本システムは CREST「知識に基づく構造的言語処理の確立と知識インフラの構築」の支援により開発されました. ↑ 使用方法 † たとえば,次のようなテキストを入力すると, % cat sample.txt 外国人参政権 私もあさって日曜最終日 以下の解析結果が得られます. % cat sample.txt | jumanpp 外国 がいこく 外国
JUMAN++は最近黒橋・河原研究室から発表された、JUMANの後継となる形態素解析器です。 これまでの形態素解析器と比べて違うのは、RNN言語モデルを用いて意味的自然さを考慮する、ニューラルネットワークを利用した形態素解析器となっている点です。 速度や語彙等の課題はあるものの、解析能力自体はMeCab以上なので、導入方法と共に触ってみた所感を述べてみます。 導入方法 前提 OS X Yosemite 10.10.5 VirtualBox 5.1.6 Vagrant 1.8.6 インストール vagrant boxは bento/ubuntu-16.04を使用します。 推奨はCentOSですが、自分の環境ではCentOSではビルドに失敗しました。 また、OSはubuntu16.04でもboxによっては上手くインストールすることができないため、bentoのboxがおすすめです。 $ vagr
MeCab 用の新語辞書 mecab-ipadic-neologd を公開しました Tweet [NLP] 日本語の文書を機械的に処理しようと思った時に、ほとんどの人が MeCabとIPADIC(IPA辞書)の両方、または、どちらかを使うことになります。 IPADICはとてもよく出来ていますが、更新されないまま年月が過ぎているので、例えば2015年3月上旬に急に流行ったような言葉は収録していません。そのため、今日生まれたような新しい文書(例、Apple Watch発売)を解析する時に困ります。困らない人もいますけど、僕は困ります。 その課題に対処するために、日本全国津々浦々、自然言語処理に関わる全ての人は独自にMeCabの新語辞書を作って対応しているわけです。その際に元データとして使われることが多いのは Wikipedia 日本語版やはてなキーワードなどです。 困ったことに、新語辞書を生成
目次 日本語Wikipediaエントリの係り受けデータベースとは 新着情報 ダウンロード 利用方法 利用条件 リンク 公開しているその他のオープンソースツール・言語資源 高度言語情報融合フォーラム(ALAGIN)言語資源サイト 日本語Wikipediaエントリの係り受けデータベースとは 本データベースは、日本語の大量(約6億ページ、約430億文、クロール時期は 2007年5月19日から11月13日)のWeb文書から、Wikipediaの記事のタイトル(エントリ)の内、二文節以上のもの(例:「三保の松原」「風と共に去りぬ」)に関する係り受けとその頻度を抽出したものです。通常の形態素解析・係り受け解析では、これらのエントリが複数の文節に分割されてしまうため、これまで高度言語情報融合フォーラム(ALAGIN)で公開してきた日本語係り受けデータベース (Version 1.0)では、これらのエント
こんばんは。夜の@oscillographです。 最近DMMアダルトがAPIを公開しました。 つまり、プログラムで直接データを取得できるようになったわけです。 ということで、今回はDMMアダルト(動画)の全タイトルを取得して 形態素解析を行うことによって日本のAVタイトルの特徴を分析しよう ということになりました。 手順としては、 DMM(ビデオ)のメーカーページを「あ」~「ん」までHTMLで取得 メーカーが特定タグに囲われていたので、正規表現パターンマッチで全メーカーを取得し、メーカー羅列をテキストに保存 テキストを読み込みながら各AVメーカーごとにapiを用いてAVタイトルを展開し、全メーカーのタイトルを取得 タイトルについて形態素解析を行うことによって単語を集計 正規化(全体の数で割ることによって割合で表す) という感じでやりました。 とりあえず、集計結果です。 上位30位を抜き出し
Java で書かれた日本語形態素解析ライブラリ Kuromoji を Perl から使ってみたいなー、と思って、別の言語のプログラムから使いやすいようなインターフェイスを書きました。 Kuromoji について kuromoji - japanese morphological analyzer Java で書かれたオープンソースの日本語の形態素解析ライブラリです。 検索用のライブラリらしくて、Apache Lucene と Apache Solr に組み込まれているらしいです。 もちろん検索エンジンとは独立して利用することも可能です。 独立して使用する場合は、単に jar ファイルをダウンロードしてきて Java のライブラリパスに追加するだけ (あるいは公開されている Maven リポジトリを使用して依存関係を解決するだけ) で形態素解析できるようになります。 便利ですね。 Java
さて、定期的に大幅に書き直しをするBotですが、今回もまた色々書き直したついでに新機能付けました。 いや、新機能付けたついでに書き直したのか。 今回は、入力から感情を判断する機能です。 大雑把に言うと、文章から愛情の度合いを算出します。 「君の事を愛してるよ!」 -> 100% 「俺は君の事が嫌い」 -> 0% みたいな感じになると嬉しいわけです。 どんな利用価値があるかと言うと、いつも好き好き言ってくれる人には、優しく会話したいので、そういう用途に利用します。具体的には、愛情の度合いを算出した後に、それを溜め込んで、いつもどんな風に接してくれているのかをBotが参照できるようにしました。 ここからは技術の話。 どうやって感情を判別しているのか? ですが、ぶっちゃけただの教師ありニューラルネットワークです。 ニューラルネットワーク - Wikipedia ニューラルネットワークを全く知らな
これまでに、N-gramと形態素解析の2つの検索エンジンの、見出し語の切り出し方法を説明しました。今回は、2つの見出し語の切り出し方法を比較し、それぞれの得意な点、不得意な点を明らかにしていきます。 2つの手法の概要 はじめに、2つの手法をおさらいしてみます。 形態素解析 検索対象のテキストを形態素解析を行い分かち書きを行う 分かち書きした単位を見出し語として転置インデックスを作成する 転置インデックスを元に検索を行う N-gram 検索対象のテキストをN文字単位の文字列片に分解する 分解した文字列片を見出し語として転置インデックスを作成する 検索語をN文字単位の文字列片に分け検索を行う 文字列の出現位置情報を利用すれば、漏れのない完全一致の検索が可能 大きな違いは、「転置インデックスの見出し語をどのように作るか」というプロセスが異なる点です。形態素解析は構文解析を行って分かち書きを行う
ソフトウェア的な索引では見出し語に対して、その見出し語が使われている文書(ファイル名、文書ID等)のリストを保存します。検索時は索引から見出し語を見つけ、その見出し語が使われている文書のリストを取得するだけなので、高速に検索が行えます。 全文照合方式と索引方式には、それぞれメリットとデメリットがあります。全文照合方式は、検索のたびに対象のテキストデータをメモリ上に読み込んで照合処理を行うため、大量の検索対象の場合、どうしても検索時間がかかるという欠点があります。 索引方式は、高速に検索が行える反面、あらかじめ索引を作成しておかなければなりません。索引の作成処理は、かなり負荷の高い処理になってしまいます。 このため、全文照合方式と索引方式には、それぞれ向き、不向きがあります。利用する場面に応じて使い分けるのがポイントです。検索対象が少量で検索回数も少ないなら全文照合方式、検索対象が大量で頻繁
TinySegmenterはJavascriptだけ書かれた極めてコンパクトな日本語分かち書きソフトウェアです。 わずか25kバイトのソースコードで、日本語の新聞記事であれば文字単位で95%程度の精度で分かち書きが行えます。 Yahoo!の形態素解析のように サーバーサイドで解析するのではなく、全てクライアントサイドで解析を行うため、セキュリティの 観点から見ても安全です。分かち書きの単位はMeCab + ipadicと互換性があります。 デモ 日本語の文章を入力し、解析ボタンをクリックしてください。 ダウンロード TinySegmenterはフリーソフトウェアです. 修正BSDライセンスに従って本ソフトウェアを使用,再配布することができます. Download TinySegmenter version 0.2 使い方 <script type="text/javascript" src
リリース、障害情報などのサービスのお知らせ
最新の人気エントリーの配信
処理を実行中です
j次のブックマーク
k前のブックマーク
lあとで読む
eコメント一覧を開く
oページを開く