ロボット型検索エンジン開発・全文検索エンジン構築受託案内
検索エンジンについて
検索エンジン(英語: search engine)は、広義にはホームページを検索するサービスサイトやインターネットに限定せず情報を検索するシステム全般が含まれます。
狭義にはインターネットに存在する情報(ウェブページ、ウェブサイト、画像ファイル、ネットニュースなど)を検索する機能およびそのプログラムです。
広義の検索エンジンとして、全文検索エンジンがあり、grep型と索引(インデックス)型に区分されます。
狭義の検索エンジンには、大きくロボット型検索エンジンとディレクトリ型検索エンジンがあります。
(1)全文検索エンジン
- ○grep型
- 一般に「grep型」と呼ばれる検索手法は、事前に索引ファイル(インデックス)を作成せず、ファイルを順次走査していくもので順次走査検索、逐次検索ともいわれます。ホームページのサイト内検索は、「grep型」に含まれます。
- ○索引(インデックス)型
- 索引(インデックス)型は、あらかじめ検索対象となる文書群を走査しておき、高速な検索が可能になるような索引データを準備することで、検索時のパフォーマンスを向上させる手法です。「全文検索エンジン」の「索引型」に「ロボット(クローラー)」機能が附加されると「ロボット型検索エンジン」となります。この意味で、一般的に「全文検索エンジン」=「ロボット型検索エンジン」と言われています。
(2)ロボット型検索エンジンとディレクトリ型検索エンジンの相違
- ○ロボット型検索エンジン
- ロボット(クローラー)によってインターネット上のホームページのデータを収集し、一定の方式でその文章等を索引化し、与えられた検索式(アルゴリズム)に従って、ウェブページ等を検索するサーバ、システムのことです。対象データが多い場合や、ページ内に記載されている文章や、言葉が検索可能で、データも機械的に更新されているため現在のデータを検索可能等のメリットがあります。基本的に文章や言葉やコンピュターが機械的に処理しているため特定分野や地域等のカテゴリを正確に把握できないという欠点があります。
- ○ディレクトリ型検索エンジン
- 人手によってホームページデータをデイレクトリ(カテゴリ)に分類し、そのウェブディレクトリ内を検索するサーバ、システムのことことをいきます。 人手で構築しているため、質の高いウェブサイトを検索可能で、検索結果の一覧から目的のサイトを探しやすい、サイトのカテゴリ分けがされていることから、特定分野や地区などに限定したサイトを探しやすいという特長があります。 しかし、検索対象となるサイトは人手で入力するため、検索対象のサイト数が多くなると構築できない、ページ内の文章を検索できないという欠点があります。
ロボット型検索エンジンの仕組み(索引型全文検索エンジンサーバ+クローラーサーバ)
ロボット型検索エンジンは、他のシステムと同様に,複数のコンポーネントから構成されています。ざっくり分けると以下のようなコンポーネントから構成されています。
- ロボット(Crawler クローラー)
- 索引構築部(Indexer インデクサー)
- 索引(Index インデックス)
- 検索部(Searcher サーチャー)

弊社のロボット型検索エンジンの主な機能
1. ホームページ・ドキュメントの追加・更新
サイトを登録、またはディレクトリ等を管理画面より登録することで、自動でサイト内のホームページやドキュメントをクローラー(ロボット)により取得します。
2. 自動クローリング、インデックス機能
クローラーにより定期的にホームページのコンテンツ、ドキュメント等を取得して解析、インデックス化までを自動化します。クロールの周期については、定期的に行うパターン、ドキュメントの更新頻度によって動的に変化するパターンを選択可能です。
3. クロールの状況をグラフにより視覚化
定期的にクロールを行った結果をサイトごとに日別、月別でグラフ化しクロールの状況を確認することが可能です。これによりホームページやドキュメントの更新・増加傾向を視覚的に判断する事が可能です。
4. ランキングアルゴリズムのカスタマイズ
特定のタグやキーワードに応じて重み付け処理等、ランキングアルゴリズムのカスタマイズが可能です。また、特定のサイトやドキュメントに対する重要度のカスタマイズにも対応しています。
5. 言語解析
言語解析には、形態素解析として標準でKuromojiを利用します。形態素解析システムやN-gramの利用も可能です。
- (1)形態素解析
- 形態素解析とは、自然言語処理(NLP)の一種で、文を言語において意味を持つ最小の単位(形態素)に分解し、品詞や変化などを判別する作業です。 形態素解析は、自然言語処理の基礎技術として、テキストマイニングや機械翻訳など、さまざまな言語処理において用いられています。かな漢字変換やWeb検索、翻訳アプリなどのサービスでも、形態素解析が用いられています。
- (2)n-gram(エングラム)
- n-gram(エングラム)とは、自然言語処理における重要な概念の一つで、テキストデータを分析する際に、単語や文字の連続性に着目し、それらの出現頻度を統計的に扱うための手法です。 この手法を用いることで、テキストの特徴を数値化し、機械学習などに活用することが可能となります。
n-gramの単位は、単語区切りが明示されている言語では単語単位、単語境界があいまいな言語では文字単位で数えます。nが1の場合をuni-gram(ユニグラム)、2の場合をbi-gram(バイグラム)、3の場合をtri-gram(トライグラム)と呼びます。 n-gramの利点は、単純なアルゴリズムであるため、多くの言語に適用でき、検索漏れがないことです。一方、ノイズや必要なデータ量が大きくなるといった欠点もあります。
n-gramは、検索サービスのデータベースに登録する文字列をインデックス化する処理にも用いられます。多くの検索エンジンでは、N-グラムと形態素解析の両方の方式を取り入れています。
6. ユーザー定義辞書
基本辞書に加えて地域・企業による様々な単語等を処理するためのユーザー定義辞書について、管理者により簡単に追加・編集が可能です。
7. カテゴリ機能
全文検索の他、カテゴリ分けされたホームページやドキュメントに対してのハイブリッド検索の構築も可能です。カテゴリ分類については地域や職種に応じてカスタマイズが可能です。
8. 検索結果のデザインカスタマイズ
検索結果表示画面に対して自由にカスタマイズすることが可能です。
9. 複数サーバ対応
1台のサーバで処理しきれないような大量のホームページ・ドキュメントで検索エンジンを構築する場合でも、複数のサーバに分散して検索を行うクラスタ機能を利用することが可能です。
ロボット型検索エンジンの課題と対応について
GIS連動ロボット検索エンジン(G-Attole) ロボット型+ディレクトリ型+GIS検索エンジン
◆ GIS連動ロボット検索エンジン(G-Attole)の概要
ロボット検索エンジンは言葉を検索しているため検索結果の情報の場所を把握できない事を解決し、検索結果の位置を地図表示・確率の色別表示等を可能とするシステムです。指定の場所から距離条件で検索することも可能となっています。
(特許3984263号:特願2007-032704)

弊社では、ロボット型検索エンジンから全文検索エンジン、ディレクトリ型検索エンジンまで様々な検索システムのサーバー構築を行っています。