形態素解析の理論と実装
ケイタイソカイセキノリロントジツソウ
- 著者:
- 工藤 拓 / 言語処理学会(クドウ タク / ゲンゴショリガッカイ)
- 出版社:
- 近代科学社
- 出版日:
- 2018年10月04日頃
- ISBN:
- 9784764905771
- シリーズ:
- 実践・自然言語処理シリーズ 第 2 巻
- 在庫:
- 在庫あり
なぜ注目されているか
書籍紹介
<big><strong>あの工藤 拓が具体的に解説 !!</big></strong>
本書は, 汎用形態素解析システム MeCab を開発した著者が、言語において意味を成す最小の要素である「形態素」の解析方法について, 技術者向けにその理論や実装方法を網羅的, 体系的に解説する.実装や高速化なども扱う点がユニークであるが、辞書やコーパスなどの言語資源の構築・利用といった形態素解析では外せないテーマもきちんと解説している.
本書を読めば, 解析ツールを「ブラックボックス」として使っている人も中身を理解したうえで拡張・改良できる道筋ができ, ひいては独自の辞書の作成を目指せるようになる.C++11 を使った具体的な実装方法も掲載.AI・自然言語処理関係の技術者, 研究者には必携の書である.
1.形態素解析の概要
2.言語資源
3.テキスト処理の基礎
4.辞書引きアルゴリズム
5.最小コスト法
6.点予測
7.未知語処理
8.評価
9.高度な解析
技書の森解説
『形態素解析の理論と実装』 (工藤拓 著、近代科学社 (実践 / 自然言語処理シリーズ 第 2 巻)、2018 年 10 月 4 日発売) は、汎用形態素解析システム MeCab を開発した著者が、言語において意味を成す最小の要素である形態素の解析方法を、技術者向けに理論と実装の両面から解説した本です。シリーズの編者は言語処理学会です。版元の紹介文は、実装や高速化まで扱う一方で、辞書やコーパスといった言語資源の構築と利用も解説していると説明し、「C++11 を使った具体的な実装方法も掲載」と案内しています。解析器を使うだけでなく、中身を理解して辞書や処理に手を入れたい人に向けた一冊です。
全 9 章の構成、形態素解析の概要から高度な解析まで
本文はまえがきに続く全 9 章と付録で構成されています。第 1 章「形態素解析の概要」は形態素解析とは何かに始まり、MeCab のインストールと実行、主な形態素解析 / 単語分割システムを紹介します。第 2 章「言語資源」は辞書とコーパス、形態素解析のための辞書と注釈付きコーパス、辞書の選び方を、第 3 章「テキスト処理の基礎」は文字コード、Unicode と UTF-8、文字種の判定、文字の正規化、波ダッシュと全角チルダの問題を扱います。第 4 章「辞書引きアルゴリズム」は擬似トライ、共通接頭辞検索とトライ、ダブル配列、メモリマップトファイル、最長一致法、第 5 章「最小コスト法」はラティス、生起コストと連接コスト、ビタビアルゴリズム、MeCab を例にした最小コスト法、コスト推定法、選択的トライグラム、連語登録、高速化のための工夫を取り上げます。第 6 章「点予測」は点予測による単語分割と品詞推定、構造学習による点予測の学習、第 7 章「未知語処理」は解析時未知語処理、辞書拡充、新語のコスト推定、第 8 章「評価」は分割正解率から精度 / 再現率 / F 値、品詞出力の評価、分割の一貫性、回帰評価、mecab-system-eval を用いた評価までを扱います。第 9 章「高度な解析」は n-best 解析、ソフト分かち書き、制約付き解析、部分注釈付きコーパスからの学習で、付録には条件付き確率場の勾配の導出方法と logsumexp が収められています。
空白で区切られない日本語を解析する計算の背景
英語のように空白で単語が区切られない日本語では、文のどこで切るかと、切り出した語の品詞を同時に決めなければなりません。日本語の 自然言語処理 では、検索の索引づくりや文書の分類、機械翻訳の前に、文を語の並びに直す工程を置くのが一般的で、ここでの誤りは後ろの工程にそのまま持ち越されます。辞書に載る語の候補を文の各位置から拾い出すと、候補どうしのつながり方は文が長くなるほど組み合わせの数が急に増えますが、各位置までの最良の答えだけを記録して左から右へ進めば、すべての組み合わせを試さずに最良の切り方を選べます。これは部分問題の答えを使い回す 動的計画法 の典型的な使い方で、文の長さに比例する手間で計算が終わります。一方で、文の各位置で辞書を引く回数は文字数に比例して増えるため、辞書をどのような構造で持つかが解析器全体の速さを大きく左右します。
C++ のコードと数式を読み進めるための前提
版元は本書を AI / 自然言語処理関係の技術者と研究者に向けた本と案内しています。具体的な実装方法は C++11 で掲載されているため、コードを追うには C++ の基本的な文法を読める程度の経験があると進めやすくなります。付録で条件付き確率場の勾配の導出方法を扱うことから、確率の基本と偏微分の考え方にも触れておくと、学習の仕組みを式で確かめる場面で戸惑いが減ります。一方で、目次には Python から解析器を呼び出す使い方を主題にした章や、ニューラルネットワークによる解析を主題にした章はありません。また第 1 章で紹介する解析システムの顔ぶれは 2018 年 10 月の刊行時点のものです。
辞書を作り、解析器を改良したい技術者への判断材料
紹介文は、解析ツールをブラックボックスとして使っている人も中身を理解したうえで拡張と改良に進む道筋ができ、独自の辞書の作成を目指せるようになると述べています。業務の文書に固有の語が多く解析結果が思うように揃わない、新しい語の扱いを調整したい、解析器を入れ替えたときに結果の違いをどう測るかを決めたい、といった場面に向き合う技術者にとって、辞書と未知語と評価をそれぞれ独立の章として扱う本書は、調整の手がかりを章ごとに探していける一冊です。
言及した記事 (6 件)
【2023年版】機械学習の日本語無料学習教材まとめ
♡ 463Python, 環境構築, 機械学習, データサイエンス, 未経験エンジニアコロナ社「構文解析」本のレビュー
♡ 24自然言語処理, 機械学習, 人工知能ドコモケータイのT9入力をMeCabで再現する
♡ 23mecab, 自然言語処理, NLP, 形態素解析, かな漢字変換Sudachi の左連接、右連接の話
♡ 7mecab, 形態素解析, 隠れマルコフモデル, SudachiDS検定対策_用語説明_まとめ
♡ 5試験勉強, データサイエンティスト, 試験対策, データサイエンティスト検定DS検定最後の追い込み_用語のまとめ
♡ 0試験, 試験勉強, データサイエンティスト, 試験対策, データサイエンティスト検定
この本に興味がある方におすすめ
関連する本
関連記事
データベース本ガイド - SQL から設計まで学べる技術書の選び方
データベースの基礎から設計、パフォーマンスチューニングまで学べる技術書の選び方と学習順序を紹介します。
Python 本の選び方 - 独学の最初の 1 冊から実務品質まで
Python 本の選び方を「動機」から逆算して整理。プログラミング未経験の最初の 1 冊、業務自動化に直結する本、型ヒントとコード品質で実務水準へ進む本まで、2026 年 8 月時点の定番を独学ルートに沿って解説します。
アルゴリズム本ガイド - 競プロだけじゃない、実務に活きる選び方
アルゴリズム本の 3 タイプと、実務でアルゴリズムの知識が活きる場面、数学が苦手な人向けの学習ルートを紹介します。