SlideShare a Scribd company logo
1 of 18
検索サービスにSudachiを適用して運用コストを
削減した話
2018/3/16
Acroquest Technology株式会社
佐々木 峻
Copyright © Acroquest Technology Co., Ltd. All rights reserved.
目次
1. 自己紹介
2. 全文検索における課題
3. 対策と問題点
4. なぜSudachi?
5. Sudachiを適用してみて
Copyright © Acroquest Technology Co., Ltd. All rights reserved.
2
• 名前:佐々木 峻(ささき たかし)
• Twitter:@Ssk1029Takashi
• Acroquest Technology株式会社
• 時々、会社の技術ブログに執筆しています。
• http://acro-engineer.hatenablog.com/archive
• 自然言語処理やElasticsearchを使ったデータ分析基盤構築を
行っています。
• 新人
Copyright © Acroquest Technology Co., Ltd. All rights reserved.
3
1.自己紹介1.自己紹介
2.全文検索における課題①
• 表記揺れ
① 送り字違い
ex. 「忌引き/忌引」「見積もり/見積り/見積」 etc
② 字体違い
ex. 「斎藤/斉藤」「渡邉/渡辺」「慶應/慶応」
③ 外来語の表記違い
ex. 「インタフェース/インターフェース/インターフェイス」
Copyright © Acroquest Technology Co., Ltd. All rights reserved.
4
忌引き
忌引き
忌引
〇
×
2.全文検索における課題②
• 複数単語の組み合わせによる固有の単語
ex.「関西国際空港」
→このような単語を辞書に登録すると、「空港」でヒットしなくなる
Copyright © Acroquest Technology Co., Ltd. All rights reserved.
5
空港
関西
国際
空港
関西国際空港
×
〇
3.対策と問題点
–
Copyright © Acroquest Technology Co., Ltd. All rights reserved.
6
No. 課題 対策
① 表記ゆれ
表記ゆれしている単語をすべてシノニム(同
義語)辞書に登録した
② ドメイン固有語
固有語をユーザー辞書に登録した+Ngram
分割
この2つの問題を解決するためには、大量の語彙を持つ
辞書を用意する必要がある。
検索システムとして辞書登録をGUIで簡略化している
しかし、辞書を用意、さらには運用する手間はまだまだ多い
Sudachiとの出会い
どうしようかと悩んでいるとき、、、
「佐々木、Sudachiあるってよ」
Copyright © Acroquest Technology Co., Ltd. All rights reserved.
7
Sudachiとの出会い
Copyright © Acroquest Technology Co., Ltd. All rights reserved.
8
?
Sudachiに期待したこと
1. シノニム辞書を使わずに表記ゆれに対応できること
– 表記正規化
送り違い
• 例)打込む → 打ち込む
2. ドメイン固有語をいい感じに分割してくれること
– 複数の分割モードを活用した適切な分かち書き
• 例)「組織価値経営部」 → 「組織価値経営部」「組織」「価値」「経営」「部」
3. Elasticsearchとの親和性
– 公式でElasticsearch Pluginが開発されている
– https://github.com/WorksApplications/elasticsearch-sudachi
Copyright © Acroquest Technology Co., Ltd. All rights reserved.
9
4.なぜSudachi?
• 表記ゆれを吸収してくれる
Copyright © Acroquest Technology Co., Ltd. All rights reserved.
10
4.なぜSudachi?
• 単語を複数単位で分割できる
Copyright © Acroquest Technology Co., Ltd. All rights reserved.
11
5.Sudachiを入れてみて
Copyright © Acroquest Technology Co., Ltd. All rights reserved.
12
1. 表記揺れの単語でも同一単語として検索できるようになった
2. 固有単語でも部分単語でヒットできるようになった
5.Sudachiを入れてみて
Copyright © Acroquest Technology Co., Ltd. All rights reserved.
13
送り字違いを吸収してくれる
5.Sudachiを入れてみて
Copyright © Acroquest Technology Co., Ltd. All rights reserved.
14
インターフェースの表記揺れも吸収できる
5.Sudachiを入れてみて
Copyright © Acroquest Technology Co., Ltd. All rights reserved.
15
英単語でも引っかかる
5.Sudachiを入れてみて
Copyright © Acroquest Technology Co., Ltd. All rights reserved.
16
他の英単語でも変換してくれる
5.Sudachiを入れてみて
Copyright © Acroquest Technology Co., Ltd. All rights reserved.
17
字体違いも対応している
まとめと要望
1. Sudachiを導入することによって辞書構築、運用のコストを
軽減することできた
2. 複数単位の分割すごい便利
3. 辞書の適用範囲を知りたい
① 表記ゆれはどこまで対応できるのか?
② ドキュメントとしてあると説明がしやすく導入しやすくなる
4. Elasticsearch version6に対応してほしい
Copyright © Acroquest Technology Co., Ltd. All rights reserved.
18

More Related Content

Similar to 検索サービスにSudachiを適用して運用コストを削減した話

Elasticsearch workshop 23_sql
Elasticsearch workshop 23_sqlElasticsearch workshop 23_sql
Elasticsearch workshop 23_sqlshinhiguchi
 
Elastic Community Conference
Elastic Community ConferenceElastic Community Conference
Elastic Community ConferenceHiroshi Yoshioka
 
Elasticsearchによるリモートワーク時代のセキュリティ対策
Elasticsearchによるリモートワーク時代のセキュリティ対策Elasticsearchによるリモートワーク時代のセキュリティ対策
Elasticsearchによるリモートワーク時代のセキュリティ対策Elasticsearch
 
Learn, build, and scale with elastic - realizing great programming experience...
Learn, build, and scale with elastic - realizing great programming experience...Learn, build, and scale with elastic - realizing great programming experience...
Learn, build, and scale with elastic - realizing great programming experience...Shotaro Suzuki
 
賢くツールを使って脱人海戦術駆動テスト
賢くツールを使って脱人海戦術駆動テスト賢くツールを使って脱人海戦術駆動テスト
賢くツールを使って脱人海戦術駆動テストMitsuru Ogawa
 
20151024 Azureデータストア概要
20151024 Azureデータストア概要20151024 Azureデータストア概要
20151024 Azureデータストア概要Keiji Kamebuchi
 
シラサギ紹介 OSC島根
シラサギ紹介 OSC島根シラサギ紹介 OSC島根
シラサギ紹介 OSC島根Naokazu Nohara
 
テストマネジメントツールSquash TMを利用した継続的テスト改善
テストマネジメントツールSquash TMを利用した継続的テスト改善テストマネジメントツールSquash TMを利用した継続的テスト改善
テストマネジメントツールSquash TMを利用した継続的テスト改善Mizuho Wakai
 
【Tech-Circle #3 & OCDET #7 SDS勉強会】 Ceph on SoftLayer
【Tech-Circle #3 & OCDET #7 SDS勉強会】 Ceph on SoftLayer【Tech-Circle #3 & OCDET #7 SDS勉強会】 Ceph on SoftLayer
【Tech-Circle #3 & OCDET #7 SDS勉強会】 Ceph on SoftLayerNobuyuki Matsui
 
Spath for enterprise
Spath for enterpriseSpath for enterprise
Spath for enterpriseKoichiro Sumi
 
おすすめインフラ! for スタートアップ
おすすめインフラ! for スタートアップおすすめインフラ! for スタートアップ
おすすめインフラ! for スタートアップKoichiro Sumi
 
会社にGitHub Enterpriseを導入してみた話
会社にGitHub Enterpriseを導入してみた話会社にGitHub Enterpriseを導入してみた話
会社にGitHub Enterpriseを導入してみた話Shuji Yamada
 
[data analytics showcase] B11: ビッグデータを高速に検索・分析する「Elasticsearch」~新プラグイン「Graph」...
[data analytics showcase] B11: ビッグデータを高速に検索・分析する「Elasticsearch」~新プラグイン「Graph」...[data analytics showcase] B11: ビッグデータを高速に検索・分析する「Elasticsearch」~新プラグイン「Graph」...
[data analytics showcase] B11: ビッグデータを高速に検索・分析する「Elasticsearch」~新プラグイン「Graph」...Insight Technology, Inc.
 
マイクロサービスにおけるテスト自動化 with Karate
マイクロサービスにおけるテスト自動化 with Karateマイクロサービスにおけるテスト自動化 with Karate
マイクロサービスにおけるテスト自動化 with KarateTakanori Suzuki
 
Tech circle#2 Vagrant+Docker handson
Tech circle#2 Vagrant+Docker handsonTech circle#2 Vagrant+Docker handson
Tech circle#2 Vagrant+Docker handsonDaisuke Ikeda
 
Ibis: すごい pandas ⼤規模データ分析もらっくらく #summerDS
Ibis: すごい pandas ⼤規模データ分析もらっくらく #summerDSIbis: すごい pandas ⼤規模データ分析もらっくらく #summerDS
Ibis: すごい pandas ⼤規模データ分析もらっくらく #summerDSCloudera Japan
 
OpenStack Congress Deep Dive
OpenStack Congress Deep DiveOpenStack Congress Deep Dive
OpenStack Congress Deep Divemasahito12
 
なぜRustか?
なぜRustか?なぜRustか?
なぜRustか?emakryo
 
Setta soft layersummit(公開用)_creationline
Setta soft layersummit(公開用)_creationlineSetta soft layersummit(公開用)_creationline
Setta soft layersummit(公開用)_creationlinechenree3
 

Similar to 検索サービスにSudachiを適用して運用コストを削減した話 (20)

Elasticsearch workshop 23_sql
Elasticsearch workshop 23_sqlElasticsearch workshop 23_sql
Elasticsearch workshop 23_sql
 
Elastic Community Conference
Elastic Community ConferenceElastic Community Conference
Elastic Community Conference
 
Elasticsearchによるリモートワーク時代のセキュリティ対策
Elasticsearchによるリモートワーク時代のセキュリティ対策Elasticsearchによるリモートワーク時代のセキュリティ対策
Elasticsearchによるリモートワーク時代のセキュリティ対策
 
Learn, build, and scale with elastic - realizing great programming experience...
Learn, build, and scale with elastic - realizing great programming experience...Learn, build, and scale with elastic - realizing great programming experience...
Learn, build, and scale with elastic - realizing great programming experience...
 
賢くツールを使って脱人海戦術駆動テスト
賢くツールを使って脱人海戦術駆動テスト賢くツールを使って脱人海戦術駆動テスト
賢くツールを使って脱人海戦術駆動テスト
 
20151024 Azureデータストア概要
20151024 Azureデータストア概要20151024 Azureデータストア概要
20151024 Azureデータストア概要
 
シラサギ紹介 OSC島根
シラサギ紹介 OSC島根シラサギ紹介 OSC島根
シラサギ紹介 OSC島根
 
テストマネジメントツールSquash TMを利用した継続的テスト改善
テストマネジメントツールSquash TMを利用した継続的テスト改善テストマネジメントツールSquash TMを利用した継続的テスト改善
テストマネジメントツールSquash TMを利用した継続的テスト改善
 
【Tech-Circle #3 & OCDET #7 SDS勉強会】 Ceph on SoftLayer
【Tech-Circle #3 & OCDET #7 SDS勉強会】 Ceph on SoftLayer【Tech-Circle #3 & OCDET #7 SDS勉強会】 Ceph on SoftLayer
【Tech-Circle #3 & OCDET #7 SDS勉強会】 Ceph on SoftLayer
 
Spath for enterprise
Spath for enterpriseSpath for enterprise
Spath for enterprise
 
おすすめインフラ! for スタートアップ
おすすめインフラ! for スタートアップおすすめインフラ! for スタートアップ
おすすめインフラ! for スタートアップ
 
会社にGitHub Enterpriseを導入してみた話
会社にGitHub Enterpriseを導入してみた話会社にGitHub Enterpriseを導入してみた話
会社にGitHub Enterpriseを導入してみた話
 
[data analytics showcase] B11: ビッグデータを高速に検索・分析する「Elasticsearch」~新プラグイン「Graph」...
[data analytics showcase] B11: ビッグデータを高速に検索・分析する「Elasticsearch」~新プラグイン「Graph」...[data analytics showcase] B11: ビッグデータを高速に検索・分析する「Elasticsearch」~新プラグイン「Graph」...
[data analytics showcase] B11: ビッグデータを高速に検索・分析する「Elasticsearch」~新プラグイン「Graph」...
 
マイクロサービスにおけるテスト自動化 with Karate
マイクロサービスにおけるテスト自動化 with Karateマイクロサービスにおけるテスト自動化 with Karate
マイクロサービスにおけるテスト自動化 with Karate
 
Tech circle#2 Vagrant+Docker handson
Tech circle#2 Vagrant+Docker handsonTech circle#2 Vagrant+Docker handson
Tech circle#2 Vagrant+Docker handson
 
Ibis: すごい pandas ⼤規模データ分析もらっくらく #summerDS
Ibis: すごい pandas ⼤規模データ分析もらっくらく #summerDSIbis: すごい pandas ⼤規模データ分析もらっくらく #summerDS
Ibis: すごい pandas ⼤規模データ分析もらっくらく #summerDS
 
20190827_AWS_Loft_LT
20190827_AWS_Loft_LT20190827_AWS_Loft_LT
20190827_AWS_Loft_LT
 
OpenStack Congress Deep Dive
OpenStack Congress Deep DiveOpenStack Congress Deep Dive
OpenStack Congress Deep Dive
 
なぜRustか?
なぜRustか?なぜRustか?
なぜRustか?
 
Setta soft layersummit(公開用)_creationline
Setta soft layersummit(公開用)_creationlineSetta soft layersummit(公開用)_creationline
Setta soft layersummit(公開用)_creationline
 

検索サービスにSudachiを適用して運用コストを削減した話