レーベンシュタイン距離(レーベンシュタインきょり、英: Levenshtein distance)は、二つの文字列がどの程度異なっているかを示す距離の一種である。編集距離(へんしゅうきょり、英: edit distance)とも呼ばれる。具体的には、1文字の挿入・削除・置換によって、一方の文字列をもう一方の文字列に変形するのに必要な手順の最小回数として定義される[1]。名称は、1965年にこれを考案したロシアの学者ウラジーミル・レーベンシュタイン (露: Влади́мир Левенште́йн) にちなむ。 レーベンシュタイン距離は、同じ文字数の単語に対する置換編集に使われているハミング距離の一般化であると見なすことが可能である。レーベンシュタイン距離の更なる一般化として、例えば一回の操作で二文字を変換する等の方法が考えられる。 実際的な距離の求め方を例示すれば、「kitten」を「s
こんにちは。技術部検索グループの原島です。 上の画像は、スマートフォン(ブラウザ版)で見たクックパッドの検索結果ページです。レシピだけでなく、ニュースも表示されていますね。献立や掲示板のスレッドなどが表示されることもあります。 クックパッドでは、検索結果ページに表示するコンテンツをクエリなどに応じて最適化しています。最適化は、膨大なログデータと最新の機械学習を用いることで、実現しています。このエントリでは、クックパッドにおけるコンテンツ最適化の裏側を紹介します。 最適化の背景 スマートフォンの普及に伴って、ユーザが利用するプラットフォームは PC からモバイルにシフトしつつあります。クックパッドにおけるモバイル利用者の割合も、ここ 2 年で 10% 以上増加しました。最近では、60% 以上のユーザがモバイルからアクセスしています。 ユーザの利用形態が変化すれば、検索結果ページもその変化に対
前回は形態素解析を使う検索エンジンのしくみについて説明しました。今回は、FINDSPOTで使用しているN-gramという検索エンジンのしくみについて説明します。 N-gramによる見出し語の切り出し 前回は、形態素解析による検索エンジンでは、検索可能な最小単位が分かち書きの切り分け単位となる点を説明しました。 一方、N-gramを使った検索エンジンでは、単純に文字の並びを見出し語としてインデックスを作成します。1文字を元にインデックスを作成する方法をユニグラム、2文字の並びを元にインデックスを作成する方法をバイグラム、3文字の並びを元にインデックスを作成する方法をトリグラムと呼んでいます。 1文字:ユニグラム 2文字:バイグラム 3文字:トリグラム N-gramによる見出し語の切り出しは、形態素解析のための文法解析を伴わないため、特定の自然言語に依存しないという特徴があります。 FINDS
はじめに 検索エンジンと聞くと、みなさんは何を思い浮かべるでしょうか? GoogleやYahoo!などの検索ページを思い浮かべる方がほとんどだと思います。近年は、それら企業の努力によって検索エンジンというものが非常に身近になり、私たちの生活に欠かせないものとなりつつあります。 しかし、検索エンジンと一言で言っても、上記のような一般の方々へのUI(ユーザインターフェース)を指す場合もあれば、そのUIの裏側(バックエンド)にあるシステムを指す場合もあります。 本連載では、Google,Yahoo!などを代表とする検索エンジンの裏側のしくみに着目し、検索エンジンというシステムのアーキテクチャやその内部で使われているデータ構造やアルゴリズムを、近年の手法や研究事例などを交えて解説していきたいと思っています。 検索エンジンとは 検索エンジンには、さまざまな種類があります。GoogleのWeb検索のよ
あ、どうも。なんかアルゴリズムさんと気が合いそうかなって。 マッチングサイトは、人と人の色恋の場だけの話じゃないわけです。一緒に働く仲間や、旅するパートナーをマッチングさせる場合もあるわけです。そもそも、人と人だけがマッチングのすべてではないのです。アルゴリズムと私の出会いだって立派なマッチングですから。 とあるスタートアップサーヴィスのAlgorithmiaは、アルゴリズムのマッチングが目当て。研究者やデータ分析を行なう人が、自分の持つデータをどのようなアルゴリズムで解けばいいのか、それをマッチングしてくれます。 アカデミックな業界では、日々多くの研究で専用のアルゴリズムが作られ使われていますが、そのアルゴリズムが他の研究で使われることはあまりありません。たとえ1つの研究のために特別に作られたアルゴリズムでも、他の研究でちょっと目線を変えれば使えることが多々あるのに…これはもったいない。
先日の記事 いまさらgrepが10倍高速化したのはなぜか が思わぬ閲覧数を稼いでしまい、トルコ語の知識を日本に広めるのに大きな貢献をしたような気がしますが、みなさんいかがお過ごしでしょうか。 実は先日の記事を書いた時にはすでに2.18がリリースされてたのだが、今回は2.17のときと違って日本の大手メディアが取り上げてなかったので、ついつい見落としていた。しかし実は2.18でも大きな変更が!! リリースノート抜粋: grep -i in a multibyte, non-UTF8 locale could be up to 200 times slower than in 2.16. [bug introduced in grep-2.17] なんということでしょう。-iオプションでUTF8のときは2.17で10倍速くなっていたのだが、それ以外のマルチバイトロケールのときは200倍遅くなって
2007/08/15 検索サービスを提供するベンチャー企業のムーターは8月1日、辞書を必要としない形態素解析エンジン「マリモ」の提供を開始した。従来、形態素解析では品詞情報を含む日本語辞書を用意するのが常識だったが、マリモでは、そうした辞書を不要とした。新技術のアプローチと特性について、開発元のムーターに話を聞いた。 統計処理で単語部分を推定 形態素解析とは、与えられた文を、文法上意味のある最小の単位(形態素)に区切る処理。「今日は晴れています」なら、「今日(名詞)/は(助詞)/晴れ(動詞)/て(助詞)/い(助詞)/ます(助動詞)」と分ける。検索エンジンをはじめ、さまざまな自然言語処理の場面で必要となる基礎技術だ。 形態素解析を行うには、あらかじめ品詞情報が付加された数十万語からなる辞書を用意する必要がある。また、新語や造語、専門用語に対応するには、個別に人力で単語を登録する必要がある。
アルゴリズム検索の結果を相手に仕事をしている検索マーケティング担当者の大多数は、自分たちが少なくとも検索エンジンの「最新アルゴリズムを把握している」と主張しているし、僕がこれまでに聞いた(あるいは、そういう意味で言えば、担当した)クライアント仕事では、9割方この話が少なくとも1回は話題に上っていた。 しかし、この点については、まだ多くの点で本当のことがわかっておらず、最近SEOに手を染めたばかりの人たちにとっては、おそらく最も気の重い側面だろうと思う。 というわけで、みんなの苦労を少しでも軽くするため、しょっちゅう変わり続ける検索エンジンの検索結果算定式に、どうすれば遅れを取らずにいられるかという問題に関して、みんなが持つ共通の疑問に答えておいたほうがいいんじゃないかと思ったんだ。 アルゴリズムとは何か? グーグル、ヤフー、マイクロソフトは、それぞれどのようにして、検索アルゴリズムを検索結
まだgithubにはpushしていないのですが、さいきょうの組み込み型画像検索エンジンotamaに計量学習を用いて与えられたデータにあった画像間の距離関数を学習してそれを使って検索するというドライバを入れたので、先行的なデモとしてアニメ顔類似検索v3を作ってみました。 計量学習は、ベクトル間の距離の計り方を機械学習で決めるみたいな分野です。 アニメ顔類似検索v3 AnimeFace Search v3 - Otama LMCA_VLAD_HSV Driver randomボタンを押すと顔画像がランダムに出るのでどれかクリックするとそれをクエリに検索します。color weightは色の重みを調節するパラメーターで、1にすると色だけで検索します。0にすると形状やテクスチャだけで検索します。結果画像の上の数字は類似度的なもので、その横のgglは元画像をGoogle Search by Imag
リリース、障害情報などのサービスのお知らせ
最新の人気エントリーの配信
処理を実行中です
j次のブックマーク
k前のブックマーク
lあとで読む
eコメント一覧を開く
oページを開く