並び順

ブックマーク数

期間指定

  • から
  • まで

1 - 40 件 / 106件

新着順 人気順

n-gramの検索結果1 - 40 件 / 106件

  • Google Japan Blog: 大規模日本語 n-gram データの公開

    メディア関係者向けお問い合わせ先 メールでのお問い合わせ: pr-jp@google.com メディア関係者以外からのお問い合わせにはお答えいたしかねます。 その他すべてのお問い合わせにつきましては、ヘルプセンターをご覧ください。

      Google Japan Blog: 大規模日本語 n-gram データの公開
    • Ngram(N-gram)とは何か & 形態素解析との比較

      全て 1.このサイトについて 2.作品DB開発/運用 3.ホームページ制作技術 4.Perl 5.C言語 / C++ 6.検索エンジン&SEO 7.サッカー 8.自分のこと 9.Linux 10.旅行 11.思ったこと 12.パソコン 13.Berkeley DB 14.その他技術系 15.企画 16.スマートフォン 17.鑑賞 18.皆声.jpニュース 19.インターネット業界 20.運用マニュアル(自分用) 21.技術系以外実用書 22.料理 23.ALEXA 24.アニメ 25.会計 26.漫画 27.設計書 28.色々サイト作成 29.サーバー 30.自分専用 31.生活 32.OP/ED/PV 33.ゲーム 34.DB整備 35.新規開始作品紹介 36.英語圏の話題 37.大道芸 38.映画 39.PHP 40.ダイエット 41.Mac 42.JavaScript 43.MySQ

      • Google N-gram V.S. Baidu N-gram 〜ケータイウェブは本当にエロいのか?〜 - nokunoの日記

        近年検索エンジンのBaiduは不自然言語処理コンテストなるものを開催し、今日が締切のはずだったのだが24時間延長されたらしいことを聞いてBaiduコーパスをダウンロードしたid:nokunoは仕事帰りの電車で思いついたアイデアを30分ほどで実装してみたところそれなりに面白い結果がでたので応募してみることにした。そもそもBaiduのコーパスはエロいというのを最初に誰かが言ったら@mhagiwaraさんがこんなツイートをしたことに話は遡る。インターネットがエロいのは誰でも知っている。けれど、ケータイウェブが特別にエロいのか? については寡聞にして知らなかったため、検証してみることにした。今回はケータイウェブがエロいかどうかを検証するため、以下のコーパス(N-gramデータ)を相互に比較することとした。Baidu N-gram(Baidu絵文字入りモバイルウェブコーパス) 今回のメインターゲット

        • N-gramモデルを利用したテキスト分析 ―インデックスページ―

          ↑ページ先頭 N-gramモデルを利用した事例 あるテキストから、任意のN-gram単位で共起頻度を集計し(N-gram統計を取る)、その結果を利用してテキストや言語の性格を見いだす研究によく利用される。 N-gramモデルで、ある文字列の直後に、特定の別な文字列は出現する確率を求める。 「an」の後には、必ず母音(aiueo)で始まる単語が結びつく確率が100% 「q」の後には、「u」が結びつく可能性が高い。 『論語』では「子」の後に「曰」が結びつく可能性が高い。 「百人一首」を平仮名に開いた場合の延べ数は、上位十五位までで全体の五割の使用量を占める(全部で六十八種の異なる平仮名(濁点含む)が使われている) 音声認識やOCR(原稿読みとりソフト)での利用 読みにくい文字でも、共起頻度の発生確率を考慮すれば、正しく原稿を可読出来る ↑ページ先頭 人文学的へのN-gramモデル導入 近藤みゆ

          • 第5回 N-gramのしくみ | gihyo.jp

            前回は形態素解析を使う検索エンジンのしくみについて説明しました。今回は、FINDSPOTで使用しているN-gramという検索エンジンのしくみについて説明します。 N-gramによる見出し語の切り出し 前回は、形態素解析による検索エンジンでは、検索可能な最小単位が分かち書きの切り分け単位となる点を説明しました。 一方、N-gramを使った検索エンジンでは、単純に文字の並びを見出し語としてインデックスを作成します。1文字を元にインデックスを作成する方法をユニグラム、2文字の並びを元にインデックスを作成する方法をバイグラム、3文字の並びを元にインデックスを作成する方法をトリグラムと呼んでいます。 1文字:ユニグラム 2文字:バイグラム 3文字:トリグラム N-gramによる見出し語の切り出しは、形態素解析のための文法解析を伴わないため、特定の自然言語に依存しないという特徴があります。 FINDS

              第5回 N-gramのしくみ | gihyo.jp
            • ElasticsearchとKuromojiを使った形態素解析とN-Gramによる検索の適合率と再現率の向上

              ElasticsearchとKuromojiを使った形態素解析とN-Gramによる検索の適合率と再現率の向上:Elasticsearch+Hadoopベースの大規模検索基盤大解剖(2)(1/3 ページ) リクルートの事例を基に、大規模BtoCサービスに求められる検索基盤はどう構築されるものなのか、どんな技術が採用されているのか、運用はどうなっているのかなどについて解説する連載。今回は、テンプレートを利用したインデックス生成など、検索結果の品質を向上させるためのさまざまな取り組みを紹介する。 連載目次 リクルートの全社検索基盤「Qass」の事例を基に、大規模BtoCサービスに求められる検索基盤はどう構築されるものなのか、どんな技術が採用されているのか、運用はどうなっているのかなどについて解説する本連載。初回の前回「リクルート全社検索基盤のアーキテクチャ、採用技術、開発体制はどうなっているのか

                ElasticsearchとKuromojiを使った形態素解析とN-Gramによる検索の適合率と再現率の向上
              • JavaScriptで全文検索(N-gram)を実装してみる! | Simple is Beautiful.

                プラコレアドベントカレンダーもラストスパート!こんにちは、森です! 仕組みをちゃんと理解するには実装してみることが一番!ということで、N-gramの中でも一番実装が簡単なuni-gramをjsで実装してみました! 目次 全文検索とは uni-gram インデックスの作成 文章にdocument IDを振る 文字列の分割 文字位置付与 トークンごとに位置情報をまとめる トークンをキーに引けるように保存 インデックスから検索 検索文字列をトークンに分割 インデックスからトークンのデータを取得 取得したデータをつなぎ合わせる 実装 動かし方 インデックスの作成 インデックスから文字列を検索 コード 参考文献 最後に 全文検索とは まず最初に全文検索とはなにかってことですが、Wikipediaで調べてみました「コンピュータにおいて、複数の文書(ファイル)から特定の文字列を検索すること。「ファイル名

                  JavaScriptで全文検索(N-gram)を実装してみる! | Simple is Beautiful.
                • N-gram コーパス - 日本語ウェブコーパス 2010

                  概要 ウェブページに出現する形態素 N-gram と文字 N-gram を頻度とともに収録したコーパスです.各 N-gram コーパスには,頻度 10/100/1000 以上の 1-gram から 7-gram までが収録されています. N-gram コーパスの構築においては,Google N-gram コーパスと同様の前処理を施しています.句点・感嘆符・疑問符を文の区切りとして利用しているので,「モーニング娘。」や「Yahoo!」などの固有名詞については,不適切な文の区切りがおこなわれています.また,文の区切りは削除するようになっているため,コーパス中に句点・感嘆符・疑問符は出現しません. 形態素 N-gram コーパス,文字 N-gram コーパスともに,文境界マーク(<S>,</S>)は採用していますが,未知語トークン(<UNK>)は採用していません.また,文字 N-gram コーパ

                  • 第6回 N-gramと形態素解析との比較 | gihyo.jp

                    これまでに、N-gramと形態素解析の2つの検索エンジンの、見出し語の切り出し方法を説明しました。今回は、2つの見出し語の切り出し方法を比較し、それぞれの得意な点、不得意な点を明らかにしていきます。 2つの手法の概要 はじめに、2つの手法をおさらいしてみます。 形態素解析 検索対象のテキストを形態素解析を行い分かち書きを行う 分かち書きした単位を見出し語として転置インデックスを作成する 転置インデックスを元に検索を行う N-gram 検索対象のテキストをN文字単位の文字列片に分解する 分解した文字列片を見出し語として転置インデックスを作成する 検索語をN文字単位の文字列片に分け検索を行う 文字列の出現位置情報を利用すれば、漏れのない完全一致の検索が可能 大きな違いは、「⁠転置インデックスの見出し語をどのように作るか」というプロセスが異なる点です。形態素解析は構文解析を行って分かち書きを行う

                      第6回 N-gramと形態素解析との比較 | gihyo.jp
                    • 本当に必要なN-gramは2割しかない - nokunoの日記

                      Entropy-based Pruning of Backoff Language Modelsを読んだ.単語N-gramはとてもよくできていて言語モデルとしての性能はかなりのものなのだが,なんの枝刈りもせずに中規模〜大規模なデータに適用しようとするとサイズが馬鹿でかくなってしまう.そのための対策としてよくあるのが語彙のサイズを制限する方法と,N-gramの頻度が一定以下のものを切り捨てるという方法(後者の場合は語彙も自動的に制限される).Google 日本語N-gramなども頻度20以上のものが配布されており,効率よくデータサイズを減らすためには頻度でカットオフする方式がよく使われていると思う(語彙だけだとかなり制限しないとサイズが減らない).しかしカットオフしすぎると性能はかなり落ち込むので,うまい方法はないものかと考えられたのがこの論文の手法である.N-gramのデータには頻度の高い

                      • 可変次数 N-gram デコードのアルゴリズム - アスペ日記

                        前に書いた N-gram 漢字-かな変換 - アスペ日記 のアルゴリズムについて。 かなり縦に長いエントリになると思う。途中までは一般的な日本語自然言語処理にかかわること。 例として、「かれがくるまでまつ」というひらがなの文をデコードして、対応する漢字かな混じり文にすることを考える。 こういう時に使われるのが「ラティス構造」。こういうやつ↓ (この図は一回しか出てきません。ちなみにこのために Keynote 買ったようなもの) それぞれのノードで、そこに入ってくるエッジの中で一番確率が高いものとその確率を覚えていくことで、動的計画法によって最適なパスを導くことができる。 これをプログラム上でどう実現するか。 まず、共通接頭辞検索というものを使う。 これは、あるキーを渡すと、そのキーに前から一致するようなキーを持つ候補を列挙してくれるというもの。 例えば、「くるまで」をキーとして使うと、「く

                          可変次数 N-gram デコードのアルゴリズム - アスペ日記
                        • ライブドア、ブログ検索をN-gram方式へ--対象は2000万ブログ超 - CNET Japan

                          ライブドアは2月2日、「livedoor 検索」のブログ検索において新たにN-gram方式による検索エンジンへ移行し、検索ワードの一部しか知らなくても目的のサイトを見つけられる「部分一致検索」が可能になったと発表した。N-gram方式の検索対象ブログは2000万件を突破したという。 また、これと同時にワンクリックで文字サイズを「大」「中」「小」に変更できる機能も付けた。 検索エンジンは、検索ワード(文章)を単語単位に分割して認識しており、その単語に関連性が高いと判断したサイトを順番に検索結果として表示する。ここで、文章を単語に分割する方法は大きく2つに分かれる。1つは、あらかじめ検索エンジンに用意した単語の辞書ファイルに沿って分割する「形態素解析」だ。もう1つは、文章をN文字単位で分割して単語として扱う「N-gram」だ。 たとえば、「ライブドアの検索」という文章ならば、形態素解析では「ラ

                            ライブドア、ブログ検索をN-gram方式へ--対象は2000万ブログ超 - CNET Japan
                          • グーグルが日本語N-gramデータを公開 ― @IT

                            2007/11/01 グーグルは11月1日、大規模日本語コーパスのN-gramデータを公開した。N-gramは自然言語処理の領域で、単語同士の結びつきを統計的に処理する計算モデル。「グーグルで検索」「グーグルで調べる」「グーグルで探す」のように特定の単語(例では“グーグル”)と、他の単語の結びつきを予測できる。 N-gramは特定の位置にある単語が何であるかを、その直前の単語、さらに前の単語……、とN個分さかのぼって推測できるという仮説に基づいている。かな漢字変換、OCRのエラー訂正、機械翻訳、音声認識などに使われている。 公開したのはグーグルがWebサイトから抽出した約200億文(約2550億単語)の日本語データから作成したN-gramデータ(1~7gram)。データは特定非営利活動法人 言語資源協会を通じて配布しており、団体・個人の区別なく利用できる。これまで米グーグルは英語について同

                            • 大規模テキストにおけるN-gram統計 - Negative/Positive Thinking

                              はじめに 大規模なテキストデータでのN-gram統計を取る場合、特にNが大きい場合(N>=3)は、組み合わせの数が多くなり出てくるN-gramをすべてメモリに保持しながら個数をカウントするのが難しい。効率的な方法があるのを知ったのでちょっと試してみた。 大規模テキストにおけるN-gram統計の取り方 岩波講座ソフトウェア科学15「自然言語処理」 論文: http://ci.nii.ac.jp/naid/110002934647 手順 ngramを取りたい文章を1つの文として扱う この文をメモリに読み込み、各文字の先頭アドレスを保持する配列を作成 その先頭アドレスの場所の文字から文最後までの部分文字列を1つの単語とみる この単語を辞書順に並び替える(アドレス配列だけ) ソートした単語の順番で、次の単語と「先頭から共通している文字数」を保持する配列を作成 Ngramをカウントするときは、単語の

                                大規模テキストにおけるN-gram統計 - Negative/Positive Thinking
                              • All Our N-gram are Belong to You

                                Posted by Alex Franz and Thorsten Brants, Google Machine Translation Team Here at Google Research we have been using word n-gram models for a variety of R&D projects, such as statistical machine translation, speech recognition, spelling correction, entity detection, information extraction, and others. While such models have usually been estimated from training corpora containing at most a few bill

                                  All Our N-gram are Belong to You
                                • Wikipediaから作成したN-gramデータを公開しました - nokunoの日記

                                  id:toilet_lunch さんに先を越された感がありますが、Wikipediaから作成したN-gramデータを公開しました。Downloads - nokuno - Project Hosting on Google Code処理方法については先日の日記を御覧下さい。Wikipediaによるテキストマイニング入門 - nokunoの日記

                                  • N-gram かな漢字・漢字かな変換(C++版) - アスペ日記

                                    作った。 リポジトリはこちら。 https://github.com/hiroshi-manabe/ngram-converter-cpp 以前、N-gram 漢字-かな変換という記事で、N-gram を使ったかな漢字・漢字かな変換を公開した。 内部で使用しているアルゴリズムについては、可変次数 N-gram デコードのアルゴリズムの記事や、N-gram かな漢字変換 (スライド)で紹介した通り。 精度は、http://d.hatena.ne.jp/nokuno/20111103/1320317225で検証していただいた通り、それなりに出ていたと思うが、いかんせん速度が遅いのが問題だった。ちょっと長い文章を変換すると数秒間も時間がかかってしまう。これでは実用にならない。 それで、仕事を辞めて時間があるので、それを C++ で書き直してみた。N-gram の保存には、Faster and S

                                      N-gram かな漢字・漢字かな変換(C++版) - アスペ日記
                                    • 三経義疏を N-gram分析してみれば共通性と和習と学風の古さは一目瞭然 - 聖徳太子研究の最前線

                                      先日、勤務先で教員向けに N-gramを用いたコンピュータ処理による古典研究法の講習をし、例として三経義疏の分析をやってみました。文系のパソコンおたく仲間である漢字文献情報処理研究会のメンバーたちで開発したこのNGSM(N-Gram based System for Multiple document comparison and analysis)という比較分析法に関しては、2002年に東京大学東洋文化研究所の『明日の東洋学』No.8 に簡単な概説(こちら)を載せ、その威力を強調してあります。それ以来、宣伝し続けてきたのですが、文系の研究者には処理が複雑すぎたため、まったく広まりませんでした。 ところが、一昨年の暮に、上記の主要な開発メンバーであった師茂樹さんが、私の要望に応えてきわめて簡単で高速な形に改善してくれました。その結果、大学院の私の演習に出ている院生たちは、1回講習したらほと

                                        三経義疏を N-gram分析してみれば共通性と和習と学風の古さは一目瞭然 - 聖徳太子研究の最前線
                                      • MySQL と N-gram による高速な日本語全文検索の実装 - Born Too Late

                                        この通り、 7 倍近い性能を出すことに成功しています ! 以下では、実装のために実際に行った手順と、実装の一部を紹介します。 動作環境 私の手元では以下のような環境で、動作を確認しております。基本的に、 Ubuntu 10.04 上でパッケージマネージャを用いただけの、簡単な LAMP (Linux / Apache / MySQL / PHP) 構成です。 # Linux $ cat /etc/lsb-release DISTRIB_ID=Ubuntu DISTRIB_RELEASE=10.04 DISTRIB_CODENAME=lucid DISTRIB_DESCRIPTION="Ubuntu 10.04.1 LTS" # Apache $ apache2 -v Server version: Apache/2.2.14 (Ubuntu) Server built: Sep 28 20

                                          MySQL と N-gram による高速な日本語全文検索の実装 - Born Too Late
                                        • 開発メモ: WikipediaのN-gram頻度DBを作る

                                          Wikipedia英語版の本文中に出てくる単語の5-gramまでの組み合わせの頻度を数えてみた。全部で10億N-gramくらい処理した。 背景 英和辞書の収録語を選定するにあたり、単語N-gramの出現頻度を知っておくことが重要だ。前回の記事ではCOCA(Corpus of Contemporary American English)のN-gram頻度DBを利用したが、その他の選択肢も検討してみたい。COCAは口語とフィクションと雑誌と新聞と学術論文をバランスよく選定していると主張していて、確かに俺が知っているような英単語・熟語は大抵網羅されている。が、コーパス自体を自分で入手して前処理できると各種のチューニングができて嬉しいこともあるだろう。 で、簡単に手に入る大量のコーパスといえば、Wikipediaの記事である。Wikipediaの方が偏りがひどいという話もあるが、一般人が書く英語と

                                          • ACL2011論文「Faster and Smaller N-Gram Language Models」を読んだ - EchizenBlog-Zwei

                                            ACL2011の論文で「Faster and Smaller N-Gram Language Models」というのが気になったので読んでみた。 ACL Anthology » P11 Faster and Smaller N-Gram Language Models Adam Pauls, Dan Klein; 2011 本論文はこれまで提案されている言語モデルの圧縮・高速化の手法を実装して比較したよ、というもの。各種法が丁寧に解説されており、性能比較もよく知られているツールであるSRILMをベースラインとして行っているので参考になる。サーベイ論文として優れていると感じた。 本論文で紹介されている手法はモデルのサイズ圧縮と高速化の2点に関するもの。 まずはサイズ圧縮について。これはTRIEを使うことで各Nグラムの共通したプレフィクスを圧縮するのが基本らしい。でTRIEについてはノードの持

                                              ACL2011論文「Faster and Smaller N-Gram Language Models」を読んだ - EchizenBlog-Zwei
                                            • レーベンシュタイン距離とN-gramモデルのアルゴリズム。それは擬似Google Suggestっぽい何か。 - Bug Catharsis

                                              きっかけは レーベンシュタイン距離 - shin5papaの日記 http://d.hatena.ne.jp/shin5papa/20090311/1236745197 レーベンシュタイン距離とN-gramモデルで、擬似的なGoogle Suggestレーベンシュタイン距離を使うことによって、擬似的にGoogle先生の「もしかして」とか、 Google Suggestっぽいことができそうかなーと思って、面白そうなのでお勉強してみた。 PHPでは標準で関数があるのかー。んー、面白いですねコレ。ということで、さっそくC#で書いてみることにしました。 ただ、このレーベンシュタイン距離のみの判定だけでは、距離が等しい結果が複数あるような場合の結果が、 イマイチ納得のゆくものにはならなかったので、更に N-gram *1による共起頻度での判定も併用することにしました。 Wikipedia - レーベ

                                                レーベンシュタイン距離とN-gramモデルのアルゴリズム。それは擬似Google Suggestっぽい何か。 - Bug Catharsis
                                              • sourceforge - オープンソースソフトウェアの開発メモ - クローリング、N-Gram など。

                                                • ウェブコーパスの一部から形態素 N-gram コーパスを作成しました - やた@はてな日記

                                                  追記(2010-09-22):完成版がこちら(N-gram コーパス - 日本語ウェブコーパス 2010)にあります. 追記(2010-08-06):文末記号(</S>)を追加したものを作成しました(形態素 N-gram コーパスの修正版 - やた@はてな日記). ダウンロード 頻度が 100 以上の N-gram を収録したもの(over99)と,頻度が 10 以上の N-gram を収録したもの(over9)を用意しました.少しでも圧縮できるように,形態素数によるファイルの分割はおこなっていません. ファイル名 サイズ 展開時のサイズ over99-0000.xz 84,443,192 bytes 459,278,821 bytes ファイル名 サイズ 展開時のサイズ over9-0000.xz 329,101,340 bytes 2,147,483,623 bytes over9-0

                                                    ウェブコーパスの一部から形態素 N-gram コーパスを作成しました - やた@はてな日記
                                                  • elasticsearch-rails0.1.4を使ってRails4.1.5でN-gram検索する

                                                    Elasticsearch / Ruby / Rails この記事ではレシピ検索をする場合を例に検索機能を追加します. 検索機能を追加するモデルを作る まずは基本となるRecipeモデルを作成します $ rails new search_recipe $ cd search_recipe $ bundle install $ bundle exec rails g model recipe title:string description:text url:string $ bundle exec rake db:create $ bundle exec rake db:migrate $ bundle exec rails console > Recipe.create(title: "ミックス赤玉で豚玉を作ってみた", description: "業務スーパーで買ったのは卵(ミックス赤

                                                    • N-gram 言語モデルを圧縮するには - やた@はてな日記

                                                      はじめに 今回の記事は,以下の論文に関するものです.他にも紹介記事(ACL2011論文「Faster and Smaller N-Gram Language Models」を読んだ - EchizenBlog-Zwei)があるので,そちらでは特に触れられていない部分を(独断と偏見により)解説しています. http://nlp.cs.berkeley.edu/pubs/Pauls-Klein_2011_LM_paper.pdf Adam Pauls and Dan Klein. Faster and Smaller N-Gram Language Models. In Proceedings of the 49th Annual Meeting of the Association for Computational Linguistics, pp. 258--267, 2011. 概要 こ

                                                        N-gram 言語モデルを圧縮するには - やた@はてな日記
                                                      • 超大規模テキストにおけるN-gram統計 - Negative/Positive Thinking

                                                        はじめに 超大規模なテキストデータでのN-gram統計を取る場合、そもそもデータがメモリにのらなくてSuffixArrayを使ったカウントも無理だったりする。近似値でよい場合、効率的な方法があると知ったのでちょっとメモ&試してみた。 与えられるデータ 大量のデータがストリーム形式で与えられるとする 高速にどんどん与えられる 例えば、データパケット監視やtwitterなど カウントしたいデータの種類が膨大 種類をメモリに保持するのが無理 ストリームデータにおける頻度カウント法 正確なカウントは難しいが、近似的に頻度カウントを行うことができる Sticky Sampling Algorithmは解釈が間違っているかもしれない Sticky Sampling Algorithm カウントする要素をサンプリングで選ぶ方法 保持するのは以下の2つのペアの集合 e : 要素(例えばN-gram) f

                                                          超大規模テキストにおけるN-gram統計 - Negative/Positive Thinking
                                                        • N-gram統計量からの係り受け情報の復元 (YANS2011)

                                                          ACL2011読み会 Exploiting Web-Derived Selectional Preference to Improve Statistic...Yuya Unno

                                                            N-gram統計量からの係り受け情報の復元 (YANS2011)
                                                          • Class N-gramモデルとHMM、もしくはどこが隠れてるねん - 射撃しつつ前転 改

                                                            Class N-gramモデルというのは、各単語はあるクラスに所属するものとし、クラスの連なりによって次の単語の確率分布を予測する言語モデルである。各単語がどのクラスに所属するかは、コーパスの対数尤度を最大化するように決定される。 このモデルはHMMと非常に似ている。HMMとの違いは、HMMでは単語があるクラスへと所属する確率が存在するのに対し、Class N-gramモデルでは単語はあるクラスへと確実に所属するところだ。つまり、クラスAに所属する単語は、クラスBやCには絶対に所属しない。(HMMだと、クラスAへの所属確率0.8, クラスBへの所属確率0.1、みたいになる。)比べてみるとつまり、HMMの方がちょっと柔らかい印象を受ける。 今、ちょっと嘘を書いた。もしかするとClass N-gramモデルという言葉で、各単語のクラスへの所属確率をイメージする人もいるかもしれない。ただ、この日

                                                              Class N-gramモデルとHMM、もしくはどこが隠れてるねん - 射撃しつつ前転 改
                                                            • グーグル、日本語N-gramデータを公開

                                                              Windows SQL Server 2005サポート終了の4月12日が迫る、報告済み脆弱性の深刻度も高く、早急な移行を

                                                              • SennaによるN-gramインデックスで注意すべき挙動 - グニャラくんのグニャグニャ備忘録@はてな

                                                                追記:以下の文書について 現在リリースされているSenna 1.0.7では、 N-gramで1文字の日本語を検索する場合は 直接部分一致検索を動作させるようにしました。 というわけで、以下で説明している挙動は今現在当てはまりません。 1文字の単語について uchiuchiyamaさんのブログにあった、Sennaのクエリ書式に対する質問 http://d.hatena.ne.jp/uchiuchiyama/20070317/senna_query_problem この問題ですが、 おそらくN-gramでインデックスを作成している場合に起こっていると考えられます。 SennaのN-gramインデックスはbi-gram、 すなわち2文字を1つのトークンとみなし、 インデックスへの登録を行っています。 ということは、文書の末尾を除いて、 すべてのトークンは2文字となり、 1文字のトークンで検索をし

                                                                  SennaによるN-gramインデックスで注意すべき挙動 - グニャラくんのグニャグニャ備忘録@はてな
                                                                • The basic PHP N-gram Functions

                                                                  Want your own domain name? Learn more about the domain name extensions we manage Find a domain name similar to boxoffice.ch

                                                                  • Microsoft Web N-gram Service homepage

                                                                    Microsoft Web N-gram Service homepage Microsoft Web N-gram Service (Beta) Please read the terms of use to get started. Please send all inquiries and report issues to Microsoft Web Ngram alias. Thanks!

                                                                    • N-gram 漢字<=>かな変換 - アスペ日記

                                                                      @gologo13さんの言語モデル配布ページのデータを利用して簡単な漢字->かな/かな->漢字変換ができないかなーと思って作ってみた。 言語モデルの作成には SRILMを使用。 配布中のデータを SRILM で扱うには多少加工しないといけないので、その変換スクリプトも作った。 GitHub リポジトリは https://github.com/hiroshi-manabe/ngram-converter 。 [追記]最新のバージョンでは、4-gram のかな漢字変換用辞書をあらかじめリポジトリに入れてある。 marisa-trie モジュールさえ入れてあれば、 ./converter_sample.py --dicname-prefix=dics/bccwj4_rev_dic --order=4 --interactiveですぐにかな漢字変換が実行できる。 まず、@gologo13さんの言語

                                                                        N-gram 漢字<=>かな変換 - アスペ日記
                                                                      • Solr による N-Gram 検索 - MOYO Laboratory

                                                                        日本語の文章に対して全文検索用のインデックスを作成する方法としては、形態素解析により分解した単語をインデックスする方法や、N-Gram によってインデックスを作成する方法などがあります。形態素解析はインデックスが小さく検索が早いこと、N-Gram は業界用語などの特定ドメインの言葉や日本語以外にも対応できて部分一致検索が可能であることなど、双方に利点があります。 今回は Solr を使用した N-Gram 系トークナイザーについて記述します。 N-Gram 検索を行うには Solr コアの schema.xml を開いてフィールド型を定義します。 <fieldtype name="text" class="solr.textField" positionIncrementGap="100"> <analyzer> <tokenizer class="solr.CJKTokenizerFac

                                                                          Solr による N-Gram 検索 - MOYO Laboratory
                                                                        • N-gramってなんだ

                                                                          ぴいこは研究で、類似度を求める機能をシステムに組み込んでいます。そこで、どうしたら人間の思う「似ている」に機械が近づけるかな?と思って試行錯誤しているのですが、似ているといえばコサイン類似度以外にもN-gram(えぬぐらむ)というやり方があるということにたどり着きました。 今回は、こちらのページを大いに参考にしています!研究のソースでも、ベースにこちらのプログラムを利用させてもらって、カスタマイズして組み込んでいます。やりたいことから技術を得るのにわかりやすいページでした NEO INSPIRATION – Ngramを利用したページ類似度チェッカー+Ngram計算のphpクラス N-gramのNには、1(ユニグラム)とか2(バイグラム)とか3(トリグラム)とか、Nは好きな数字にできますが、一般的には1~3が有効です。私のシステムには2-gramを取り入れています。今回はそのN-gramに

                                                                          • javascript N-gram解析 keyword extraction

                                                                            キーワード抽出君 (ver.20051016_0) 今後更新しません(20051201追記)。xmlHttpRequestを使って書き直しました。非同期なのはわかってたのでめんどくさがらずにxmlHttpRequest使って書けばよかった。 これはアレですね DF値(例えばblogなら、ある語が出てくるエントリの数を「ある語のDF値」というよ)をてきとうに自分用データベースからとってきて、TF-IDF法を使ったキーワードランキングをしてみよう!TagCloudを出してみよう! という話。肝心のデータは、ためしにopenfbのクラスタリング用DF値データベースへの簡易APIを作ってみて、それを叩くという形で実装しています。同じ文字種の連続した部分や、その他色々な部分文字列を単語と解釈します。気になるひとはソースをよみなさい。 N-gramをつかうとすごくなりますが、すごく遅くなります。ブラク

                                                                            • Search::Fulltext で N-gram 検索できるように Search::Fulltext::Tokenizer::Ngram を書いた

                                                                              Search::Fulltext で N-gram 検索できるように Search::Fulltext::Tokenizer::Ngram を書いた 2014-01-01: CPAN にアップロードしたので追記。 要旨 Search::Fulltext という大変シンプルな全文検索モジュールがリリースされていたので、N-gram トークナイザを提供する Search::Fulltext::Tokenizer::Ngram を書きました。 Github MetaCPAN これを使うと日本語として怪しい表現でもとりあえずヒットするような全文検索ができます。 動機 大変シンプルなモジュールだったのでシンプルに使ってみようと思ったら現在のところ日本語のトークナイザは Search::Fulltext::Tokenizer::MeCab のみでした。Text::MeCab のインストールが億劫なのと

                                                                              • 今度は文字 N-gram コーパスを作成しました - やた@はてな日記

                                                                                追記(2010-09-22):完成版がこちら(N-gram コーパス - 日本語ウェブコーパス 2010)にあります. 前回は形態素 N-gram コーパスを作成したので,今回は文字 N-gram コーパスを作成してみました.正確には,Unicode のコードポイント N-gram です. ダウンロード 文字 N-gram コーパス(頻度 100 以上) ファイル名(URL) サイズ [bytes] http://dist.s-yata.jp/2010/0807/over99/1gms/1gm-0000.xz 27,932 http://dist.s-yata.jp/2010/0807/over99/2gms/2gm-0000.xz 3,086,292 http://dist.s-yata.jp/2010/0807/over99/3gms/3gm-0000.xz 21,169,168 ht

                                                                                  今度は文字 N-gram コーパスを作成しました - やた@はてな日記
                                                                                • MySQL5.7 InnoDB のN-gram全文検索を検証&サービス導入した

                                                                                  MySQL5.7・InnoDB・N-gram という環境下で全文検索の挙動やパフォーマンスについて検証を行った。FULLTEXT INDEXは以前はMyISAMでしか利用できなかったが、 5.6.4からInnoDBでのサポートが始まっていた。 InnoDBの全文検索は5.7、特に5.7.6以降でいわゆるCJK(中国語・日本語・韓国語)がN-gramで標準サポートされ始め、 CREATE TABLE文で簡単にパーサーを指定できる構文のサポート、 設定やクエリの組立で考えないといけない事が減った事で導入障壁がかなり下がっている。 ※4.1と5.0でサービス導入経験がある私の個人的な比較感想です。 FULLTEXT INDEXも他のINDEXと同様にデータ更新・削除の際にINDEXのrebuildが走るので更新時の負荷には注意が必要で、FULLTEXT INDEXの場合は「rebuild負荷が列