第20回 『かな漢字変換』
皆様こんにちは.同志社大学の土屋誠司です.自然言語処理の第20回目の今回は自然言語処理技術を応用利用した,かな漢字変換について書いてみたいと思います.
かな漢字変換は,なくてはならない技術で,皆さんもコンピュータを使う際には必ず利用されているかと思います.特に日本語は,ひらがな,カタカナ,漢字,そしてアルファベットを利用しながら表現する言語ですので,かな漢字変換がなくては,自由に文字を入力することはできません.
システムのイメージとしては,自然言語処理の第4回で紹介させていただいた『形態素解析』という技術を逆に適応するものになります.『形態素解析』では,文を解析して単語に分割していきますが,かな漢字変換では,入力される文字を辞書を参照しながら繋ぎ合わせ,意味ある単語にしていくイメージになります.そのため,これまでにも書かせていただいたように,言葉のあいまい性に起因した難しさがあります.例えば,「行う」や「行なう」のような送り仮名の個人差,「保障」や「保証」などの同音異義語,「飲む」や「呑む」などの同音異字語などが変換の際に問題になります.
昔は,コンピュータが非力でしたので,単語単位で区切って入力し,その都度,変換作業を行った方が入力し易かったのですが,最近では,スマートフォンであったとしても,高度な処理ができるようになりましたので,ある程度長い文でも一気に入力してからまとめて変換した方が変換効率は良くなっています.これは,前後の関係やこれまでの単語の使用傾向などを学習し,それらを参考にしながらユーザが入力するであろう単語を予測しながら変換処理を行うことができるためです.
また,最近では,人間が入力ミスをしたことをも察知して,ユーザに入力ミスを指摘したり,自動的に訂正したりするような機能なども搭載されたりしています.例えば,以下のような誤りと訂正処理があります.
・誤字 :ある文字が別の文字と置き換わる(置換処理)
・脱字 :ある文字が抜け落ちる(挿入処理)
・誤挿入:ある文字が余分に入る(欠落処理)
・転置 :隣り合う文字が入れ替わる(転置処理)
その他,日本語であれば母音(「a」,「i」,「u」,「e」,「o」)部分の間違い,英語の場合は「f」と「ph」の間違い,キーボードで隣接するキーの打ち間違い,「は」と「ば」と「ぱ」などの濁音,半濁音の打ち間違いなどがあります.これらについては,誤りの傾向を掴むことができますので,類似した文字列のグループをあらかじめデータベースに登録しておき,そのグループ内で置換処理を行うことで対応します.
近年では,通信速度も上がりましたので,複雑な処理をサーバー上で行う(クラウドと呼ばれる仕組みを使った)ソフトウェアがたくさんあります.かな漢字変換も例外ではありません.信頼できる企業のソフトウェアは大丈夫かと思いますが,もし悪意のあるソフトウェアを使ってしまうと,情報が筒抜けになってしまう危険性があります.かな漢字変換の場合,我々は,このかな漢字変換を利用して様々な入力をしますので,入力した内容がすべて盗聴されてしまうということになり兼ねません.ソフトウェアには十分に注意をしていただき,信頼できるものを利用するようにしていただいたらと思います.
次回は,機械翻訳について書いてみたいと思います.