Sudachi辞書の紹介 Part 6　-正規化表記-

# Sudachi辞書の紹介 Part 6　-正規化表記-


[第1回の記事](https://qiita.com/sakamoto_mi/items/4b55898aa221c290f411)
[第2回の記事](https://qiita.com/sakamoto_mi/items/c1787973dd1a591c9957)
[第3回の記事](https://qiita.com/sakamoto_mi/items/9b5105cb7881442a716c)
[第4回の記事](https://qiita.com/sakamoto_mi/items/a1cd65700a12cc8fb218)
[第5回の記事](https://qiita.com/sakamoto_mi/items/ada3d8cd0b0cbf4b83b1)
***
『Sudachi辞書の紹介』の続きです。
今回は、正規化表記について紹介します。

## Sudachiにおける正規化表記とは

正規化表記は、表記ゆれを同一視することを想定して設けられた情報です。

Sudachi辞書の登録語には、すべて正規化表記の情報を付与しています。
未知語については、辞書情報としての正規化表記はありませんので、規定のルールに基づいて機械的に行われる文字正規化(*1)を適用した表記が正規化表記となります。
(*1)文字正規化については、[こちら](https://github.com/WorksApplications/Sudachi#%E8%A1%A8%E8%A8%98%E6%AD%A3%E8%A6%8F%E5%8C%96)を参照してください。

これにより、利用者は、入力テキストを形態素解析した後、各形態素の正規化表記を取得することができます。


## 表記ゆれへの対応

Sudachi辞書では、1つの語について様々な表記を登録しています。
よくある表記のバリエーションとして、文字種の違い、送り仮名の違い、漢字の字体違い、外来語の表記違い、誤用などがあります。
これらは別々の見出しとして登録していますが、同じ語の表記違い（＝表記ゆれ）であれば、同じ正規化表記を付与しています。これにより、利用者は、取得した正規化表記が同じ形態素を同一視することができます。

どの表記を正規化表記とするかについては、厳密なルールはありませんが、以下のような方針でメンテナンスしています。

* 文字種の違いによる表記ゆれは、できるだけ漢字を多く用いた表記を正規化表記とする。
* 送り仮名の違いによる表記ゆれは、できるだけ[「送り仮名の付け方」](https://www.bunka.go.jp/kokugo_nihongo/sisaku/joho/joho/kijun/naikaku/okurikana/index.html)に沿う表記を正規化表記とする。
* 外来語の表記ゆれは、できるだけ[「外来語の表記」](https://www.bunka.go.jp/kokugo_nihongo/sisaku/joho/joho/kijun/naikaku/gairai/index.html)に沿う表記を正規化表記とする。
* 漢字の字体違いによる表記ゆれは、できるだけ[「常用漢字表」](https://www.bunka.go.jp/kokugo_nihongo/sisaku/joho/joho/kijun/naikaku/kanji/)に沿う表記を正規化表記とする。
* 誤用については、正用を正規化表記とする。
* 固有名称については、よく目にする表記を正規化表記とする。

厳密なルールを設けないのは、次項で述べるように表記競合の問題があり例外が多数発生すること、また、正規化表記の情報は、正書法等での利用ではなく、検索等での利用を想定しているためです。

例）
|登録見出し|正規化表記|
|:-----|:---|
|ひまわり|向日葵|
|ヒマワリ|向日葵|
|向日葵|向日葵|
|かきあらわす|書き表す|
|かき表す|書き表す|
|かき表わす|書き表す|
|書き表す|書き表す|
|書き表わす|書き表す|
|書きあらわす|書き表す|
|日当たり|日当たり|
|日当り|日当たり|
|コンピュータ|コンピューター|
|コンピューター|コンピューター|
|Computer|コンピューター|
|芸術|芸術|
|藝術|芸術|
|シミュレーション|シミュレーション|
|シュミレーション|シミュレーション|
|アボカド|アボカド|
|アボガド|アボカド|
|グーグル|Google|
|Google|Google|


## 表記競合する場合

或る語の表記が、たまたま別の語と同じ表記であるケースがあります。
例えば、仮名表記は、同音異義語があれば競合します。
また、外来語の場合は、原語は別でも、カタカナで表記すると発音の差異が消失して同表記となっているものがあります。
逆に、原語は同じでも、カタカナで書き分けることにより、日本語としては別の意味を与えられているものもあります。

例）

|【語Aの表記違い】|【語Bの表記違い】|
|:-----|:---|
|他人事、**人事（ひとごと）**|**人事（じんじ）**|
|雨、**あめ**|飴、**あめ**|
|癌、**ガン**|雁、**ガン**|
|**触（ふ）れる**|触（さわ）る、**触（さわ）れる**|
|waist、**ウエスト**|west、**ウエスト**|
|**iron**、アイロン|**iron**、アイアン|

※太字のものが表記競合

このように他の語と競合する表記は、不適切な正規化を避けるため、正規化表記には見出し表記と同じ表記を付与し、他の表記と同一視されないようにしています。
例えば、「ガン」は、「癌」の可能性もありますし「雁」の可能性もあります。Web検索すると「癌」が多くヒットしますが、鳥類などを取り扱う専門書であれば「雁」の可能性が高くなるでしょう。そのため、「ガン」は、「癌」にも「雁」にも正規化せず、「ガン」を正規化表記としています。「ガン」を「癌」あるいは「雁」と同一視したい利用者は、Sudachiの正規化表記に不足を感じるかもしれません。
汎用的に使用されるシステム辞書では、これらを正規化しませんが、これらを同一視したい場合は、[ユーザー辞書](https://github.com/WorksApplications/Sudachi/blob/develop/docs/user_dict.md)に任意の正規化表記を付与して登録することができます。


## 略語や同義語

略語や同義語にあたるものは、Sudachiの正規化表記の枠組みでは対応していません。
これらは語形が異なり、同じ語の表記違いではないからです。表現のゆれとして同一視する必要があれば、[同義語辞書](https://github.com/WorksApplications/SudachiDict/tree/develop/src/main/text)に登録しています。

例）

|**略語**||
|:-----|:---|
||スマートフォン - スマホ|
||簡易生命保険 - 簡保|
||パーソナルコンピューター - パソコン - PC|
|**同義語**||
||台所 - キッチン - 厨房 - 調理場|
||贈り物 -プレゼント - ギフト - 贈答品|
||微笑む - 微笑 - スマイル|


## 活用のある語についての特記事項

### 正規化表記は終止形

活用のある語については、上述の表記ゆれに加え、活用形の違いがあります。
文書中では様々な活用形で出現しますので、これらを同一視できるよう、正規化表記は終止形で付与しています。

例）

|登録見出し|正規化表記|
|:-----|:---|
|うつくし(形容詞,一般,*,*,形容詞,語幹-一般)|美しい|
|うつくしい(形容詞,一般,*,*,形容詞,終止形-一般)|美しい|
|うつくしい(形容詞,一般,*,*,形容詞,連体形-一般)|美しい|
|うつくしかっ(形容詞,一般,*,*,形容詞,連用形-促音便)|美しい|
|うつくしかろ(形容詞,一般,*,*,形容詞,意志推量形)|美しい|
|うつくしかろう(形容詞,一般,*,*,形容詞,意志推量形)|美しい|
|うつくしきゃ(形容詞,一般,*,*,形容詞,仮定形-融合)|美しい|
|うつくしく(形容詞,一般,*,*,形容詞,連用形-一般)|美しい|
|うつくしけりゃ(形容詞,一般,*,*,形容詞,仮定形-融合)|美しい|
|うつくしけれ(形容詞,一般,*,*,形容詞,仮定形-一般)|美しい|
|うつくしゅう(形容詞,一般,*,*,形容詞,連用形-ウ音便)|美しい|
|現われ(動詞,一般,*,*,下一段-ラ行,未然形-一般)|現れる|
|現われ(動詞,一般,*,*,下一段-ラ行,連用形-一般)|現れる|
|現われよ(動詞,一般,*,*,下一段-ラ行,命令形)|現れる|
|現われよ(動詞,一般,*,*,下一段-ラ行,意志推量形)|現れる|
|現われよう(動詞,一般,*,*,下一段-ラ行,意志推量形)|現れる|
|現われよっ(動詞,一般,*,*,下一段-ラ行,意志推量形)|現れる|
|現われりゃ(動詞,一般,*,*,下一段-ラ行,仮定形-融合)|現れる|
|現われる(動詞,一般,*,*,下一段-ラ行,終止形-一般)|現れる|
|現われる(動詞,一般,*,*,下一段-ラ行,連体形-一般)|現れる|
|現われれ(動詞,一般,*,*,下一段-ラ行,仮定形-一般)|現れる|
|現われろ(動詞,一般,*,*,下一段-ラ行,命令形)|現れる|
|現われん(動詞,一般,*,*,下一段-ラ行,終止形-撥音便)|現れる|
|現われん(動詞,一般,*,*,下一段-ラ行,連体形-撥音便)|現れる|



### 可能動詞の扱い

現代日本語で可能の意味を表現する場合、元の語が一段動詞の場合は、助動詞「れる・られる」を接続して表しますが、五段動詞の場合は、[可能動詞](https://ja.wikipedia.org/wiki/%E5%8F%AF%E8%83%BD%E5%8B%95%E8%A9%9E)が存在します。
両者の対応を揃えるため、語形は異なりますが、可能動詞は、対応する五段動詞の終止形を正規化表記としています。


例）

* 元の語が五段動詞の可能表現
    「歩く」→「歩ける」、「飛ぶ」→「飛べる」、「買う」→「買える」

* 元の語が一段動詞の可能表現(*2)
    「受ける」→「受け・れる/られる」、「着る」→「着・れる/られる」「寝る」→「寝・れる/られる」

(*2)Suachi辞書では、一段動詞に「れる」が接続した可能表現は、一塊で登録されています。これらも同様に、元の語の終止形を正規化表記としています。


|登録見出し|正規化表記|
|:-----|:---|
|歩ける|歩く|
|飛べる|飛ぶ|
|買える|買う|
|受けれる|受ける|
|着れる|着る|
|寝れる|寝る|


## 形態素単位で行う表記正規化の制約

以下のような場合、正規化表記が不適切であったり、不自然に見えることがあります。

* 一塊で登録されていない固有名称等が、登録されている形態素単位で解析され、表記が正規化される。

例）「CICOUTE BAKERY」

|形態素解析結果|正規化表記|
|:-----|:---|
|CICOUTE(名詞,普通名詞,一般,*,*,*)|cicoute|
| (空白,*,*,*,*,*)|| 
|BAKERY(名詞,普通名詞,一般,*,*,*)|ベーカリー|


* URL等の文字列が、登録されている形態素単位で解析され、表記が正規化される。

例）「http:\/\/amazon-press.jp」

|形態素解析結果|正規化表記|
|:-----|:---|
|http:\/\/(記号,一般,*,*,*,*)|http:\/\/|
|amazon(名詞,固有名詞,一般,*,*,*)|アマゾン|
|-(補助記号,一般,*,*,*,*)|-|
|press(名詞,普通名詞,サ変可能,*,*,*)|プレス|
|.jp(記号,一般,*,*,*,*)|.jp|


* 登録されている複合語を、[より短い分割モード](https://qiita.com/sakamoto_mi/items/9b5105cb7881442a716c)で解析すると、正規化表記が異なる場合がある。

例）「取扱説明書」

|形態素解析結果（C単位）|正規化表記|
|:-----|:---|
|取扱説明書(名詞,普通名詞,一般,*,*,*)|取扱説明書|

|形態素解析結果（B単位）|正規化表記|
|:-----|:---|
|取扱(名詞,普通名詞,一般,*,*,*)|取り扱い|
|説明書(名詞,普通名詞,一般,*,*,*)|説明書|

|形態素解析結果（A単位）|正規化表記|
|:-----|:---|
|取扱(名詞,普通名詞,一般,*,*,*)|取り扱い|
|説明(名詞,普通名詞,サ変可能,*,*,*)|説明|
|書(接尾辞,名詞的,一般,*,*,*)|書|


例）「取締役」

|形態素解析結果（B単位）|正規化表記|
|:-----|:---|
|取締役(名詞,普通名詞,一般,*,*,*)|取締役|

|形態素解析結果（A単位）|正規化表記|
|:-----|:---|
|取締(名詞,普通名詞,一般,*,*,*)|取り締まり|
|役(名詞,普通名詞,一般,*,*,*)|役|