session2:「グローバル化する情報処理」/伊藤敬彦
Post on 11-Nov-2014
4.093 Views
Preview:
DESCRIPTION
TRANSCRIPT
グローバル化する情報処理
株式会社 Preferred Infrastructure
研究開発部門 リサーチャー
伊藤 敬彦
自己紹介
• 2007年奈良先端科学技術大学院大学博士後期課程修了
(工学博士)
• 2007年ファストサーチ&トランスファ株式会社入社
• 2009年株式会社ミクシィ入社
• 2012年株式会社プリファードインフラストラクチャーに
て検索エンジン Sedue の開発、国際化に従事
1
発表内容
• 検索プラットフォーム Sedue のご紹介
• 多言語処理に関する弊社の取り組み
2
発表内容
• 検索プラットフォーム Sedue のご紹介
• 多言語処理に関する弊社の取り組み
3
統合検索プラットフォーム
4
統合検索プラットフォーム Sedue • SSD に最適化させた高性能な検索を提供
• 特殊な検索方式(接尾辞配列)を採用
➥ どの言語でももれ無く高速に検索
• 参考:多くの検索エンジンが採用する検索方式
(転置インデクス、N-Gram)
• 言語サポートが必要、もしくは処理速度に問題
5
メディア業界
• 日経BP社様 全社横断検索
• 朝日新聞社様 公式ニュースサイト 朝日digital
• 株式会社インプレスビジネスメディア様
• 日本放送協会様 NHKニュース
• 株式会社電通様 ザッピングエンジン「XAPPY」
EC/Webサービス業界
• 株式会社イプロス様 製造技術データベースサイト
• 国立情報学研究所様 図書情報サービスWebcat Plus
• 株式会社エフルート様 モバイル検索サービス
• 株式会社コマースリンク様 ショッピングサーチ.jp
Sedue:製品提供/技術提供代表事例
6
Sedue が提供する機能
• Sedue はコアである検索インデクス以外に検索補助、
および導入を支援する仕組みを提供
• Sedue が提供する機能の抜粋
• レコメンド機能、サジェスト機能
• ドリルダウン機能、高いカスタマイズ性
• リアルタイム検索
7
検索を行ったユーザーに「この文書も興味があるかもしれません」と、オススメの提示が実現
Sedueの機能:検索とレコメンドの統合
Apache Solr との比較
9
Sedue Solr
サポート
体制
コンサルティング、インストール、運
用サポート、また開発チームとの連携
が可能。
インストール、運用についてのみサポー
ト。
安定性
ガベージコレクションはない。
JVM のガべージコレクションが起こる可
能性。
付加機能
・クエリ補正、補完
・レコメンド:コンテンツベース、行
動履歴ベース
・結果のクラスタリング
・クエリ補完
ただし、マルチバイト文字は未対応
検索の完
全性
接尾辞配列による漏れのない、完全な
検索を実現。
転置ファイルを利用した場合、検索漏れ
が発生する
発表内容
• 検索エンジン Sedue のご紹介
• 多言語処理に関する弊社の取り組み
10
多言語処理とは?
注意: 多言語処理は翻訳ではない。
多言語処理:
• システム、アプリケーションの機能が任意の言語で
動作させる、精度を向上させる処理
• 言語によって全く利用できないということがないよ
うにサポートする処理
11
多言語処理を行う背景
はじめに弊社が多言語処理を行うことになった背景と現状
の問題点について共有する
• サービスのグローバル化
• 言語の利用状況
• 会社組織のグローバル化
12
背景:サービスのグローバル化
• Web サービスが扱う言語の種類は多様化している
• Twitter の場合、非英語は 60% であり、非英語の伸び
が著しい
http://semiocast.com/publications/2011_11_24_Arabic_highest_growth_on_Twitter
非英語 61%
英語 39% 2010年時は50%
13
http://en.wikipedia.org/wiki/List_of_languages_by_number_of_native_speakers より
背景: 主要言語の利用状況
言語 第一言語:単位 100万人
中国語 845
スペイン語 329
英語 328
ヒンドゥー語 240
アラビア語 280
ポルトガル語 178
ロシア語 144
日本語 122
ドイツ語 101
14
言語 第一言語:単位100万人
ジャワ語 85
ベトナム語 69
フランス語 68
韓国語 66
トルコ語 51
イタリア語 62
ペルシア語 39
マレー語 37
タイ語 26
背景:会社組織のグローバル化
• 日本企業の現地法人数: 24,000 社
• 日本企業が進出した国と地域:130 カ国
• 海外進出企業データ 2012 より
15
社内文書が単一の言語であるとことが仮定できない
現状の問題点:多言語処理ツールの不備
多くの既存のアプリケーションは特定の言語以外を扱うよ
うに設計されていない
• 既存のアプリケーション: 検索エンジン、レコメンド、
ソーシャルモニタリング、文書分類・整理、マーケ
ティングツール
- 言語によっては全く使用できない
➥ 現地法人の従業員によっては検索等の社内ツール、アプ
リケーションを全く利用できない。
16
多言語処理:弊社の既存技術
• Sedue:検索プラットフォーム
• 言語に依存しない検索方式(接尾辞配列)を採用
• どの言語でも漏れ無く高速に検索できる
• Bazil / Jubatus:機械学習基盤
• 正解データさえあれば、任意の言語に対応できる
17
さらに精度を向上させるには言語ツールの整備が必要!
言語ツールの例:単語の正規化
• 単語の表層の変化を正規化する処理
• 入力: “tokenizing is important”
• 出力: “tokeniz is important”
• 検索エンジンにおけるメリット:表層の変化を正規化す
ることで、検索精度を向上できる。
• 注意:表層の変化は言語によって異なるため、言語毎に
実装する必要がある。
18
複数の言語を扱う難しさ
• 使用するツールの数が多い
- ツールの数=言語×ツールの種類
• アプリケーションが任意の言語で動作するには
➥ 各言語毎に存在するツール群を組み合わせる必要
➥ 各アプリケーション毎に作り込むとコストがかかる
19
言語同定 単語分割
単語正規化
固有表現抽出
評判分析
構文解析
多言語解析基盤: Screw の開発
• アプリケーションが任意の言語で動作することをサポー
ト
• Screw を既存のアプリケーションに組み込むことで
複数の言語に対応、精度を向上させる
• Screw は任意のアプリケーションに対応できるように
柔軟な設定ができる
20
多言語解析基盤:Screw の機能
1. アプリケーションが必要とする入力処理を設定された
順番に適用する
2. 入力言語に応じて必要なツールが自動で適用される
3. 柔軟な設定
21
Screw が提供する機能 1
必要な処理を順番に適用する
• 処理の順番は設定ファイルに記述
• 例:言語同定→単語分割→単語正規化 …
検索
レコメンド
言語同定
単語分割
単語正規化
…
入力文書
I would
like to have a cup of coffee …
アプリケーション
22
イメージ:Screw の出力
入力文書を言語処理ツールで適用した結果が出力される
• 出力:JSON 形式
23
入力文書
General Electric is an American corporation incorporated in New York and headquartered in United States
{ …,
Tokenized: [General, Electric, is, an, American corporation, incorporated …], Lemmatized: [General, Electric, is, an, American corporation, incorporat…], Location: [United States, New York], … }
言語同定
単語分割
単語正規化
…
Screw が提供する機能 2
言語毎に必要な処理を適用
• 入力文書の言語を自動同定した上で入力言語用のツール
を適用する
• NOTE: アプリケーションは入力言語を意識しなくてよ
い
検索
レコメンド
言語同定器
英語 単語分割
英語 正規化器
…
入力文書
I would
like to have a cup of coffee …
アプリケーション
日本語 単語分割
日本語 正規化器
…
Screw が提供する機能 3
柔軟な設定
• 必要な処理の流れはすべて設定
ファイルに記述
• アプリケーション毎、案件毎
に調整可能
• 新たに必要になった言語、ツー
ルの組み込みコストも低い
25
言語同定
単語分割
単語正規化
… 固有表現抽出
…
クエリ発行
Screw の利用例:検索エンジン
検索精度を向上させるためのツール群が適用される
• 入力:文書、クエリの二種類
26
検索
レコメンド
単語分割
言語同定
単語正規化
…
入力文書
I would
like to have a cup of coffee …
クエリ
coffee
インデクシング
… 言語処理
クエリ発行
Screw の利用例:多言語検索
状況:文書集合が複数の言語を含む
• 必要な言語処理は Screw が全てやってくれる
27
検索
レコメンド
言語同定
単語分割
単語正規化
…
入力文書(複数言語)
私は蟹が好き
です I would
like to have a cup of coffee …
クエリ
coffee
インデクシング
… 言語処理
現状のご報告
• Sedue の次期バージョンで多言語機能 (Screw のイン
テグレーション) をリリース
• サポート言語:日本語、英語、中国語
28
ロードマップ: 基本機能をサポートする言語(2012年9月時点 今後変更することもございます)
29
日本語、英語、中国語
スペイン語、ポルトガル語、ドイツ語、フランス語
タイ語、ロシア語、アラビア語、イタリア語、ヒンディー語
ギリシア語、フィンランド語、オランダ語、チェコ語、
ベトナム語等
2012/9
2013/3
2013/9
2014/3
将来の計画:Screw を単体で提供 既存のアプリケーションを多言語化、国際展開するための
フレームワークとしてリリース
• アプリケーション:BI・マーケティング、文書マイ
ニング、広告最適化
単語分割
言語同定
単語正規化
…
入力文書
I would
like to have a cup of coffee …
… 言語処理
BI
広告
30
既存アプリケーション
将来の計画: Jubatus, Bazil との連携 1
• Jubatus, Bazil への入力(多言語)の前処理を行い、分類
精度を向上させる。
31
単語分割
言語同定
単語正規化
…
入力文書
I would
like to have a cup of coffee …
… 言語処理
将来の計画: Jubatus, Bazil との連携 2
Screw が処理中の文書を Jubatus, Bazil に投げ、機械学習等
の結果を利用できるようにする。
単語分割
言語同定
Jubatus 接続
…
入力文書
I would
like to have a cup of coffee …
… 言語処理
32
BI
広告
アプリケーション
まとめ
• 統合検索 プラットフォーム Sedue について紹介
• 多言語解析基盤 Screw のご紹介
Confidential : Need To Known 33
ご清聴ありがとうございました
34
top related