Upgrade to Pro
— share decks privately, control downloads, hide ads and more …
Speaker Deck
Features
Speaker Deck
PRO
Sign in
Sign up for free
Search
Search
Sudachi辞書のつくり方
Search
WAP
December 09, 2020
Research
4
2.2k
Sudachi辞書のつくり方
WAP
December 09, 2020
Tweet
Share
More Decks by WAP
See All by WAP
単語分散表現と事前学習モデル - chiVe _ chiTra 利活用のための下準備 at WAP NLP Tech Talk #5
waptech
0
1.3k
事前学習モデル chiTra の活用方法 at WAP NLP Tech Talk #5
waptech
0
330
単語分散表現 chiVeの活用方法 at WAP NLP Tech Talk #5
waptech
0
630
Sudachi Family近況報告 at WAP NLP Tech Talk #5
waptech
0
230
Sudachi近況報告 at WAP NLP Tech Talk #4
waptech
1
520
日本語形態素解析器 SudachiPy の 現状と今後について
waptech
4
7.2k
企業(ワークスアプリケーションズ)での研究開発の楽しさと苦労
waptech
0
350
chiVe_実用的な日本語単語ベクトル実現にむけて_20201208.pdf
waptech
2
600
Other Decks in Research
See All in Research
公立高校入試等に対する受入保留アルゴリズム(DA)導入の提言
shunyanoda
0
6k
数理最適化に基づく制御
mickey_kubo
5
680
Google Agent Development Kit (ADK) 入門 🚀
mickey_kubo
2
1.1k
Large Language Model Agent: A Survey on Methodology, Applications and Challenges
shunk031
12
8.5k
Pix2Poly: A Sequence Prediction Method for End-to-end Polygonal Building Footprint Extraction from Remote Sensing Imagery
satai
3
490
NLP Colloquium
junokim
1
160
Computational OT #4 - Gradient flow and diffusion models
gpeyre
0
310
引力・斥力を制御可能なランダム部分集合の確率分布
wasyro
0
190
Self-supervised audiovisual representation learning for remote sensing data
satai
3
230
ASSADS:ASMR動画に合わせて撫でられる感覚を提示するシステムの開発と評価 / ec75-shimizu
yumulab
1
400
AIによる画像認識技術の進化 -25年の技術変遷を振り返る-
hf149
6
3.6k
20250605_新交通システム推進議連_熊本都市圏「車1割削減、渋滞半減、公共交通2倍」から考える地方都市交通政策
trafficbrain
0
520
Featured
See All Featured
Designing for humans not robots
tammielis
253
25k
Let's Do A Bunch of Simple Stuff to Make Websites Faster
chriscoyier
507
140k
Building Better People: How to give real-time feedback that sticks.
wjessup
367
19k
How STYLIGHT went responsive
nonsquared
100
5.6k
Making Projects Easy
brettharned
116
6.3k
Connecting the Dots Between Site Speed, User Experience & Your Business [WebExpo 2025]
tammyeverts
6
310
The World Runs on Bad Software
bkeepers
PRO
69
11k
How To Stay Up To Date on Web Technology
chriscoyier
790
250k
Building a Scalable Design System with Sketch
lauravandoore
462
33k
Improving Core Web Vitals using Speculation Rules API
sergeychernyshev
18
980
[Rails World 2023 - Day 1 Closing Keynote] - The Magic of Rails
eileencodes
35
2.4k
Designing for Performance
lara
610
69k
Transcript
Sudachi辞書のつくり方 株式会社ワークスアプリケーションズ ワークス徳島人工知能NLP研究所 高岡一馬
2 自己紹介 • 奈良先端科学技術大学院大学で自然言語処理をまなぶ 形態素解析器茶筌と出会う • 2004-2016年 株式会社ジャストシステム かな漢字変換、テキストマイニングなどに従事 2つの形態素解析器の開発にたずさわる
• 2016年- 株式会社ワークスアプリケーションズ 形態素解析器Sudachiを開発
3 徳島って • 四国の右下 • 人口72万人(徳島市25万人) • 電車のない唯一の県
4 実務でつかう形態素解析
5 実務でつかえる形態素解析器 プロプラエタリ OSS • 処理系 MeCabとそのクローン • 辞書 IPADic
/ UniDic NEologd
6 MeCabをつかうと よいところ • 速い • カスタマイズの柔軟性(辞書、未知語処理) つらいところ • 単機能
前処理、後処理が必須 区切り、品詞(連接ID)以外は辞書次第
7 実務で必要になる機能 • 文字正規化(表記統制) • 語彙正規化(表記統制) • 未知語処理 • 文区切り
• 記号類や非テキストのクリーニング • 典型的な誤解析の訂正(再学習はほぼ不可能) • 読み付与 • 同義語 などなど 非NLPerにはむずかしい & ノウハウが共有されていない
8 未知語の処理 ただしい区切りをあたえる • 未知の未知語 • 既知の未知語 部分は知っているが全体は未知 例)既知語「世界的」、未知語「地球 /
的」 読み推定
9 辞書の比較 IPADic • 区切りが直観にあう • メンテナンスされていない UniDic • 解析精度がよい(見かけ上)
• 区切りが直観的でない • 短すぎる
10 辞書の比較 NEologd • 膨大な語彙 • 読み推定 • 癖がつよい 検索などには向いている
11 なので形態素解析器を(また)つくった • 処理系と辞書を一体で • プラグイン機構による処理のパッケージ化 よくつかう機能の提供 ノウハウの共有 • 目的にあわせた複数粒度分割
• 文字、単語の正規化 • 同義語辞書との連携
12 辞書のつくり方
13 表記正規化 文字正規化 • いわゆる半角・全角、組み立て文字、記号類 例)㈱、ー―-‐ • 異体字 例)辺、邉、邊 語彙正規化 • 単語単位での正規化
• 送り仮名 例)組み替え、組替え、組替 • 誤用 例)シュミレーション
14 正規化と代表表記 正規化 • 一意であればよい 代表表記 • 「代表」をきめる • どの表記が代表的なのか
15 代表表記のきめかた 機械的:頻度による決定 • 一貫性がない • 頻度が直観に反する場合 • 頻度がとれない場合 •
特定のIMEを再現しているだけかも 人手で • 根拠 • ルール 例)生物名はカタカナ きりん→キリン、象→ゾウ
16 人手による代表表記付与 例)蛸と凧 • 「タコ」=「蛸」 生物名なので「タコ」に正規化 • 「たこ」→ どちらか判断できない 「たこ」は正規化しない
「凧」→「たこ」にしてはいけない • さじ加減がむずかしい • まちがっていても傷があさくなるようにきめる [蛸] 「蛸」 「タコ」 「章魚」 「たこ」 「凧」 [凧]
17 正規化と語分割 例)松葉ガニ • 原則)生物名はカタカナ • A単位「松葉 / ガニ」 •
「ガニ」と「カニ」が同一視できない → 「蟹」に正規化
18 生成処理への流用 サジェストや文生成にもつかいたい → 解析処理とはちがった問題 • 代表性 ユーザからみて奇異な表記は出せない UniDic 語彙素は原則漢字表記「ちりばめる」→「鏤める」
• 規範性 誤用の抑制、不快語の扱い
19 Sudachiの分割単位 A単位 • UniDic相当(互換性) • カバレッジの確保 B単位 • ひとにとって一番自然な単位(にしたい)「心的辞書」
C単位 • 固有表現 • 検索や外延の認識
20 分割情報の付与 語構成は2次元的 徳島研究所 徳島 研究所 研究 所 C単位 B単位
A単位
21 分割情報の付与 県立美術館前駅 県立美術館前 駅 県立美術館 前 県立 美術館 美術
館 C単位分割「県立美術館前駅」 B単位分割「県立 / 美術館 / 前 / 駅」 A単位分割「県立 / 美術 / 館 / 前 / 駅」
22 分割情報の付与 自由民主党 自由 民主 党 C単位分割「自由民主党」 B単位分割「自由 / 民主
/ 党」 A単位分割「自由 / 民主 / 党」 自由民主党 自由民主 民主 党 自由 略称「自民」に対応する C単位「自由民主」? ???
23 語構成と分割 多段分割 vs 分割レベルの固定 • Sudachiでは分割レベルを3つに固定 • 多段にすればすべての分割を導出できる 分割に意味づけがないのでつかいにくい
24 他のリソースとの連携 形態素解析を他の処理とつなげていきたい • 辞書をつかう意味 語の同定 → 他の資源と直接むすびつけられる 同義語辞書との連携 •
Sudachi同義語辞書 同義語処理ライブラリChikkarもGitHubで公開中
25 実務でつかえる同義語辞書とは 本当に必要なのは同義語なのか? 例)「Suica」と書かれたテキストを他のICカード名でも検索 できるようにしたい タスクによって解像度がちがう 例)一般ドメイン:「借金」≒「債務」≒「負債」 会計・法律ドメイン: • 債務:金銭や物品の給付、なんらかの行為をする義務がある
• 負債:企業が第三者に支払う義務があるもの • 借金:金銭消費貸借契約をかわしてお金をかりる
26 実務でつかえる同義語辞書とは なにを同義とみなすかは自明ではない • 「同義」にこだわらない Is-a, part-ofなども • タスクを意識する なやみだすと泥沼に
ドメインによってちがう • システム辞書は抑制的に • 専門辞書で踏み込む
27 まとめ 実務でつかえる形態素解析器 • コア以外の機能も重要 人手での辞書チューニングが必須 • 総合的な判断が必要 • 原則をまげることも
辞書ベースだからできること • 他リソースとの結合