forked from taku910/mecab
-
-
Notifications
You must be signed in to change notification settings - Fork 15
/
index.html
592 lines (516 loc) · 23.3 KB
/
index.html
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
75
76
77
78
79
80
81
82
83
84
85
86
87
88
89
90
91
92
93
94
95
96
97
98
99
100
101
102
103
104
105
106
107
108
109
110
111
112
113
114
115
116
117
118
119
120
121
122
123
124
125
126
127
128
129
130
131
132
133
134
135
136
137
138
139
140
141
142
143
144
145
146
147
148
149
150
151
152
153
154
155
156
157
158
159
160
161
162
163
164
165
166
167
168
169
170
171
172
173
174
175
176
177
178
179
180
181
182
183
184
185
186
187
188
189
190
191
192
193
194
195
196
197
198
199
200
201
202
203
204
205
206
207
208
209
210
211
212
213
214
215
216
217
218
219
220
221
222
223
224
225
226
227
228
229
230
231
232
233
234
235
236
237
238
239
240
241
242
243
244
245
246
247
248
249
250
251
252
253
254
255
256
257
258
259
260
261
262
263
264
265
266
267
268
269
270
271
272
273
274
275
276
277
278
279
280
281
282
283
284
285
286
287
288
289
290
291
292
293
294
295
296
297
298
299
300
301
302
303
304
305
306
307
308
309
310
311
312
313
314
315
316
317
318
319
320
321
322
323
324
325
326
327
328
329
330
331
332
333
334
335
336
337
338
339
340
341
342
343
344
345
346
347
348
349
350
351
352
353
354
355
356
357
358
359
360
361
362
363
364
365
366
367
368
369
370
371
372
373
374
375
376
377
378
379
380
381
382
383
384
385
386
387
388
389
390
391
392
393
394
395
396
397
398
399
400
401
402
403
404
405
406
407
408
409
410
411
412
413
414
415
416
417
418
419
420
421
422
423
424
425
426
427
428
429
430
431
432
433
434
435
436
437
438
439
440
441
442
443
444
445
446
447
448
449
450
451
452
453
454
455
456
457
458
459
460
461
462
463
464
465
466
467
468
469
470
471
472
473
474
475
476
477
478
479
480
481
482
483
484
485
486
487
488
489
490
491
492
493
494
495
496
497
498
499
500
501
502
503
504
505
506
507
508
509
510
511
512
513
514
515
516
517
518
519
520
521
522
523
524
525
526
527
528
529
530
531
532
533
534
535
536
537
538
539
540
541
542
543
544
545
546
547
548
549
550
551
552
553
554
555
556
557
558
559
560
561
562
563
564
565
566
567
568
569
570
571
572
573
574
575
576
577
578
579
580
581
582
583
584
585
586
587
588
589
590
<html>
<head>
<meta http-equiv="Content-Type" content="text/html; charset=UTF-8">
<title>MeCab: Yet Another Part-of-Speech and Morphological Analyzer</title>
<link type="text/css" rel="stylesheet" href="mecab.css">
</head>
<body>
<h1>MeCab: Yet Another Part-of-Speech and Morphological Analyzer</h1>
<script src="http://www.google-analytics.com/urchin.js"
type="text/javascript">
</script>
<script type="text/javascript">
_uacct = "UA-395189-3";
urchinTracker();
</script>
<h2>MeCab (和布蕪)とは</h2>
<p>
MeCabは<a href="http://pine.kuee.kyoto-u.ac.jp/KU-NTT-WS-2005/">
京都大学情報学研究科−日本電信電話株式会社コミュニケーション科学基礎研究所
共同研究ユニットプロジェクト</a>を通じて開発されたオープンソース
形態素解析エンジンです。 言語, 辞書,コーパスに依存しない汎用的な設計を
基本方針としています。 パラメータの推定に Conditional Random Fields (<a href="http://www.cis.upenn.edu/~pereira/papers/crf.pdf">CRF</a>) を用
いており, <a href="http://chasen.naist.jp">ChaSen</a>が採用している
隠れマルコフモデルに比べ性能が向上しています。また、平均的に
<a href="http://chasen.naist.jp">ChaSen</a>, <a href="http://www.kc.t.u-tokyo.ac.jp/nl-resource/juman.html">Juman</a>,
<a href="http://kakasi.namazu.org">KAKASI</a>より高速に動作します。
ちなみに和布蕪(めかぶ)は, 作者の好物です。
</p>
</ul>
<h2>目次</h2>
<ul>
<li><a href="#feature">特徴</a></li>
<li><a href="#diff">比較</a></li>
<li><a href="#news">新着情報</a></li>
<li><a href="feature.html">開発までの経緯</a></li>
<li><a href="#download">ダウンロード</a></li>
<li><a href="#install">インストール</a>
<ul>
<li><a href="#install-unix">Unix</a></li>
<li><a href="#install-windows">Windows</a></li>
</ul>
</li>
<li><a href="#usage-tools">使い方</a>
<ul>
<li><a href="#parse">とりあえず解析する</a></li>
<li><a href="#wakati">わかち書きをする</a></li>
<li><a href="#format">出力フォーマットの変更</a>
</ul>
<li><a href="#usage-tools2">高度な使い方</a>
<ul>
<li><a href="#charset">文字コードの変更</a></li>
<li><a href="#nbest">N-Best 解の出力</a></li>
<li><a href="dic.html">単語の追加方法</a></li>
<li><a href="format.html">出力フォーマットの詳細定義</a></li>
<li><a href="posid.html">品詞IDの定義</a></li>
<li><a href="partial.html">制約付き解析(部分解析)</a></li>
<li><a href="soft.html">ソフトわかち書き</a></li>
<li><a href="libmecab.html">C/C++ ライブラリインタフェース</a> </li>
<li><a href="mecab.html">その他のコマンドラインオプション</a></li>
<li><a href="dic-detail.html">MeCab の辞書構造と汎用テキスト変換ツールとしての利用</a></li>
<li><a href="unk.html">未知語処理の再定義</a></li>
<li><a href="learn.html">オリジナル辞書/コーパスからのパラメータ推定</a></li>
<li><a href="bindings.html">スクリプト言語(perl/ruby/python/Java) バインディング</a></li>
</ul>
<li><a href="#thanks">謝辞</a></li>
</ul>
<h2><a name="feature">特徴</a></h2>
<ul>
<li>辞書, コーパスに依存しない汎用的な設計</li>
<li>条件付き確率場(<a href="http://www.cis.upenn.edu/~pereira/papers/crf.pdf">CRF</a>)に基づく高い解析精度
<li><a href="http://chasen.naist.jp">ChaSen</a> や <a
href="http://kakasi.namazu.org">KAKASI</a> に比べ高速</li>
<li>辞書引きアルゴリズム/データ構造に, 高速な TRIE 構造である
<a href="http://cl.naist.jp/~taku-ku/software/darts">Double-Array</a>を採用.
<li>再入可能なライブラリ</li>
<li>各種スクリプト言語バインディング(perl/ruby/python/java/C#)</li>
</ul>
<h2><a name="diff">比較</a></h2>
<table>
<tr class="even">
<td align="center"></td>
<td align="center"><b>MeCab</b></td>
<td align="center"><a href=
"http://chasen.naist.jp/">ChaSen</a></td>
<td align="center"><a href="http://pine.kuee.kyoto-u.ac.jp/nl-resource/juman.html">JUMAN</a></td>
<td align="center"><a href="http://kakasi.namazu.org">KAKASI</a></td>
</tr>
<tr class="odd">
<td align="center">解析モデル</td>
<td align="center">bi-gram マルコフモデル</td>
<td align="center">可変長マルコフモデル</td>
<td align="center">bi-gram マルコフモデル</td>
<td align="center">最長一致</td>
</tr>
<tr class="even">
<td align="center">コスト推定</td>
<td align="center">コーパスから学習</td>
<td align="center">コーパスから学習</td>
<td align="center">人手</td>
<td align="center">コストという概念無し</td>
</tr>
<tr class="odd">
<td align="center">学習モデル</td>
<td align="center"><a href="http://www.cis.upenn.edu/~pereira/papers/crf.pdf">CRF</a> (識別モデル)</td>
<td align="center">HMM (生成モデル)</td>
<td align="center"></td>
<td align="center"></td>
</tr>
<tr class="even">
<td align="center">辞書引きアルゴリズム</td>
<td align="center">Double Array</td>
<td align="center">Double Array</td>
<td align="center">パトリシア木</td>
<td align="center">Hash?</td>
</tr>
<tr class="odd">
<td align="center">解探索アルゴリズム</td>
<td align="center">Viterbi</td>
<td align="center">Viterbi</td>
<td align="center">Viterbi</td>
<td align="center">決定的?</td>
</tr>
<tr class="even">
<td align="center">連接表の実装</td>
<td align="center">2次元 Table</td>
<td align="center">オートマトン</td>
<td align="center">2次元 Table?</td>
<td align="center">連接表無し?</td>
</tr>
<tr class="odd">
<td align="center">品詞の階層</td>
<td align="center">無制限多階層品詞</td>
<td align="center">無制限多階層品詞</td>
<td align="center">2段階固定</td>
<td align="center">品詞という概念無し?</td>
</tr>
<tr class="even">
<td align="center">未知語処理</td>
<td align="center">字種 (動作定義を変更可能)</td>
<td align="center">字種 (変更不可能)</td>
<td align="center">字種 (変更不可能)</td>
<td align="center"></td>
</tr>
<tr class="odd">
<td align="center">制約つき解析</td>
<td align="center">可能</td>
<td align="center">2.4.0で可能</td>
<td align="center">不可能</td>
<td align="center">不可能</td>
</tr>
<tr class="even">
<td align="center">N-best解</td>
<td align="center">可能</td>
<td align="center">不可能</td>
<td align="center">不可能</td>
<td align="center">不可能</td>
</tr>
</table>
<p>MeCab に至るまでの形態素解析器開発の歴史等は<a href="feature.html">こちら</a>をご覧ください</li>
<h2>メーリングリスト</h2>
<ul>
<li><a href="http://lists.sourceforge.jp/mailman/listinfo/mecab-users">
一般ユーザ向けメーリングリスト</a>
<li><a href="http://lists.sourceforge.jp/mailman/listinfo/mecab-devel">
開発者向けメーリングリスト</a>
</ul>
<h2><a name="news">新着情報</a></h2>
<ul>
<li><strong>2013-02-18</strong> MeCab 0.996<br>
<ul>
<li>configure script の不備によりこiconvへのリンクに失敗する問題を修正
<li>ユーザ辞書用CSVファイルのコストと左/右文脈IDを付与し, 新たなCSVファイルを生成する機能の追加
<li>解析結果からLattice を作成する Lattice::set_result() メソッドを追加. 単体テスト時のスタブの作成等に利用可能
</ul>
<li><strong>2013-01-24</strong> MeCab 0.995<br>
<ul>
<li><a href="partial.html">部分解析機能</a>の再実装
<li><a href="partial.html">部分解析機能</a>のためのAPI (Lattice:set_boundary_constarint,
Lattice::set_feature_constraint) の追加
</ul>
<li><strong>2012-06-03</strong> MeCab 0.994<br>
<ul>
<li><a href="learn.html#retrain">再学習機能</a>の追加 (少量のコーパスと既存モデルを使ったCRFパラメータの更新)
<li>ユーザ辞書の単語コストの自動推定機能の追加 (CRFモデルが必要)
</ul>
<li><strong>2012-01-27</strong> MeCab 0.993<br>
<ul>
<li>MeCab::Tagger::formatNode()が正しく動いていなかった問題の修正
<li>スタックの消費を抑えるため、ほとんどのローカル変数(配列)をヒープ上に退避
</ul>
<li><strong>2012-01-14</strong> MeCab 0.992<br>
<ul>
<li>ソースコード中のTypoの修正
</ul>
<li><strong>2012-01-14</strong> MeCab 0.991<br>
<ul>
<li>空文字列もしくは空白文字列を解析した時に解析エラーとなる問題を修正
<li>ユーザ辞書の作成に失敗する場合がある問題を修正
</ul>
<li><stong>2011-12-24</strong> MeCab 0.99<br>
<ul>
<li>MeCab::Model, MeCab::Lattice クラスを追加<br>
マルチスレッド環境でのユーザビリティの向上。複数スレッドが同一辞書を共有しながら解析可能に
<li>同一辞書を参照する場合、辞書へのリファレンスを自動的に共有する機能の削除。
(MeCab::Model を使って同一のことが可能なため)
<li>解析中にアトミックに辞書をアップデートする機能の追加 Model::swap()
<li>Windows版のバイナリを Unicodeバイナリに変更
<li>online learning, HMM, EM learning の各実験コードを削除
<li>MeCab::Node:(begin|end)_node_list メンバの削除
<li>細かいバグの修正
</ul>
<li><strong>2009-09-27</strong> MeCab 0.98<br>
<ul>
<li>UTF16のサポート(実験的)
<li>Windows版での文字コード変換に MutlByteToWideChar等の Native APIを使うように変更
<li>ソースコードを Google coding style に変更
<li>フォーマット指定で EON (end of N-best) の追加 (-S or --eon-format)
<li>Shift-JIS環境で半角カタカナの扱いに問題があったのを修正
<li>online learning のサポート (実験的)
<li>Wno-deprecatedをつけなくてもコンパイルできるようにした
<li>細かいバグの修正
</ul>
<li><strong>2008-02-03</strong> MeCab 0.97<br>
<ul>
<li>マルチスレッド環境で辞書を開くときの排他制御がうまくいっていなかったバグの修正
<li>Windows版でインストール時に辞書の文字コードを指定できるようになった
<li>一部のコンパイラで正しくコンパイルできなかった問題の修正
<li>部分解析モードを変更するAPI の追加 (Tagger::set_partial())
<li>ラティスの生成レベルを変更するAPI の追加 (Tagger::set_lattice_level())
<li>温度パラメータを変更するAPIの追加 (Tagger::set_theta())
<li>全候補出力モードを変更するAPIの追加 (Tagger::set_all_morphs())
</ul>
<li><strong>2007-06-10</strong> MeCab 0.96<br>
<ul>
<li>バッファオーバフローのバグを修正
<li>常にPOS-IDを作成するようにした (-p オプションの廃止)
<li>ユーザ辞書のデリミタを : から , (CSV) に変更 (Windows対策)
<li>charsetの判定にバグがあり, ある条件でユーザ辞書とシステム辞書が非互換になるバグを修正
<li>ユーザ辞書ファイルの文字コードとシステム辞書ファイルの文字コー
ドが異なる場合, 辞書の構築がうまくいかなかった問題の修正
<li>コマンドラインオプションをダンプする --dump-config オプションの追加
<li>EMベースのHMM学習をサポートできるような学習ルーチンの追加
(experimental)
</ul>
<li><strong>2007-03-11</strong> MeCab 0.95<br>
<ul>
<li>古いコンパイラでコンパイルできない問題を修正
<li>csvのエスケープの不具合で ","を含む単語が追加できなかった問題を修正
<li>UTF8辞書が一部正常に作成できなかったバグの修正
<li>recall/precisionの表示が反対になっていたバグの修正
<li>コマンドライン解析の不具合の修正
<li>その他細かなバグの修正
</ul>
<li><strong>2007-02-24</strong>MeCab 0.94<br>
<ul>
<li>多くのバグフィックス
<li>HMMによる学習をサポート (実験的)
<li>解析結果の全情報を取得できるAPIを追加 (begin_node_list, end_node_list)
<li>char.def, unk.def, matrix.def が未定義の場合でも辞書が作成できるよう変更
<li>Windows版の iconv.dllへの依存を廃止
<li>コードのクリーンアップ
</ul>
<li><strong>2006-07-30</strong> MeCab 0.93<br>
<ul>
<li>ライセンスをLGPLからBSD,LGPL,GPLのトリプルライセンスに変更
</ul>
<li><strong>2006-07-10</strong> MeCab 0.92<br>
<ul>
<li>辞書コンパイラ等, 一部Perlで実装されていたコードをC++で再実装. Perlへの依存性の排除
<li>辞書コンパイラ (mecab-dict-index) の高速化
<li>rewrite.def のシンタックスの変更
<li>-x "未知語品詞" オプションの追加: 未知語推定を行わず,
ユーザが指定した "未知語品詞" を出力
<li><a href="posid.html">品詞 id</a> のサポート
<li>文字種情報が一部学習できていなかったバグの修正
<li>学習の際, 頻度による足切りができていなかったバグの修正
<li>その他細いバグの修正
</ul>
<li><strong>2006-04-30</strong> MeCab 0.91<br>
<ul>
<li>Windows 環境で文字列の最後が半角スペースの時に落ちるバグの修正
<li>連接表の前件と後件のサイズが異なるときに正しく解析できないバグ
の修正
<li>mecab-dict-index に -f オプションを追加し, CSV の文字コードをユー
ザが指定できるようにした
<li>一部の API関数が export されていない問題の修正
<li>CRFの学習を pthread を使って並列に行えるようにした
(experimental)
<li>ユーザ辞書が作成できない問題の修正
<li>example ディレクトリに MeCabの応用例を追加 (unittest)
<li>その他細いバグの修正
</ul>
<li><strong>2006-03-26</strong> MeCab 0.90<br>
<ul>
<li>Initial release!
</ul>
</ul>
<h2><a name="download">ダウンロード</a></h2>
<ul>
<li><b>MeCab</b> はフリーソフトウェアです.<a href="http://www.gnu.org/licenses/gpl.txt">GPL</a>(the GNU General Public
License), <a href="http://www.gnu.org/licenses/lgpl.txt">LGPL</a>(Lesser GNU General Public License), または BSD
ライセンスに従って本ソフトウェアを使用,再配布することができます。
詳細は COPYING, GPL, LGPL, BSD各ファイルを参照して下さい.
<li><b>MeCab</b> 本体
<h3><a name="source">Source</a></h3>
<ul>
<li>mecab-0.996.tar.gz:<a href="https://drive.google.com/uc?export=download&id=0B4y35FiV1wh7cENtOXlicTFaRUE">ダウンロード</a>
<li>辞書は含まれていません. 動作には別途辞書が必要です。
</ul>
<h3><a name="win">Binary package for MS-Windows</a></h3>
<ul>
<li>mecab-0.996.exe:<a href="https://drive.google.com/uc?export=download&id=0B4y35FiV1wh7WElGUGt6ejlpVXc">ダウンロード</a>
<li>Windows 版には コンパイル済みの IPA 辞書が含まれています</a>
</li>
</ul>
<li><b>MeCab</b> 用の辞書
<h3>IPA 辞書</h3>
<ul>
<li>IPA 辞書, IPAコーパス に基づき
<a href="http://www.cis.upenn.edu/~pereira/papers/crf.pdf">CRF</a>
でパラメータ推定した辞書です。 <b>(推奨)</b> <a href="https://drive.google.com/uc?export=download&id=0B4y35FiV1wh7MWVlSDBCSXZMTXM">ダウンロード</a></li>
</ul>
<h3>Juman 辞書</h3>
<ul>
<li>Juamn 辞書, 京都コーパスに基づき
<a href="http://www.cis.upenn.edu/~pereira/papers/crf.pdf">CRF</a>
でパラメータ推定した辞書です。 <a href="https://drive.google.com/uc?export=download&id=0B4y35FiV1wh7X2pESGlLREpxdXM">ダウンロード</a></li>
</ul>
<h3>Unidic 辞書</h3>
<ul>
<li>Unidic 辞書, BCCWJコーパスに基づき <a href="http://www.cis.upenn.edu/~pereira/papers/crf.pdf">CRF</a>
でパラーメータ推定した辞書です。<a href="https://clrd.ninjal.ac.jp/unidic/">ダウンロード</a></li>
</ul>
<li><a name="script"><b>perl/ruby/python/java バインディング</b></a>
<ul>
<li> <a href="https://drive.google.com/open?id=0B4y35FiV1wh7fjQ5SkJETEJEYzlqcUY4WUlpZmR4dDlJMWI5ZUlXN2xZN2s2b0pqT3hMbTQ&authuser=1">ダウンロード</a>
</ul>
</ul>
</ul>
<h2><a name="install">インストール</a></h2>
<h3><a name="install-unix">UNIX</a></h3>
<ul>
<li>動作に必要なもの
<ul>
<li>C++ コンパイラ (g++ 3.4.3 と VC7 でのコンパイルを確認しています)</li>
<li>iconv (libiconv): 辞書のコード変換に使います</li>
</ul>
<li>インストール手順
<p>一般的なフリーソフトウェアと同じ手順でインストールできます。</p>
<pre>
% tar zxfv mecab-X.X.tar.gz
% cd mecab-X.X
% ./configure
% make
% make check
% su
# make install
</pre>
</li>
<p>辞書のインストール</p>
<pre>
% tar zxfv mecab-ipadic-2.7.0-XXXX.tar.gz
% mecab-ipadic-2.7.0-XXXX
% ./configure
% make
% su
# make install
</pre>
</ul>
</ul>
<h3><a name="install-windows">Windows</a></h3>
<p>バイナリをインストールする場合は,
自己解凍インストーラ (mecab-X.X.exe)
を実行してください. 辞書も同時にインストールされます。</p>
<h2><a name="usage-tools">使い方</a></h2>
<h3><a name="parse">とりあえず解析してみる</a></h3>
<p>mecab を起動して,
生文を標準入力から入力してみてください.MeCab では, 一行一文を前提として解析を行ないます。</p>
<pre>
% mecab
すもももももももものうち
すもも 名詞,一般,*,*,*,*,すもも,スモモ,スモモ
も 助詞,係助詞,*,*,*,*,も,モ,モ
もも 名詞,一般,*,*,*,*,もも,モモ,モモ
も 助詞,係助詞,*,*,*,*,も,モ,モ
もも 名詞,一般,*,*,*,*,もも,モモ,モモ
の 助詞,連体化,*,*,*,*,の,ノ,ノ
うち 名詞,非自立,副詞可能,*,*,*,うち,ウチ,ウチ
EOS
</pre>
<p>
出力フォーマットは, ChaSen のそれと大きく異なります。
左から, </p>
<pre>
表層形\t品詞,品詞細分類1,品詞細分類2,品詞細分類3,活用形,活用型,原形,読み,発音
</pre>
<p>となっています。 </p>
<p>引数にファイルを与えると,
そのファイルが解析対象となります。 また, -o
オプションにて,
別のファイルに結果を出力することも可能です。</p>
<pre>
% mecab INPUT -o OUTPUT
</pre>
<h3><a name="wakati">わかち書きをする</a></h3>
<p>以下のように -O オプションを使います。</p>
<pre>
% mecab -O wakati
太郎はこの本を二郎を見た女性に渡した。
太郎 は この 本 を 二郎 を 見 た 女性 に 渡し た 。
</pre>
<h3><a name="format">出力フォーマットの変更</a></h3>
<p>以下のように -O オプションを使います。</p>
<pre>
% mecab -Oyomi (ヨミ付与)
% mecab -Ochasen (ChaSen互換)
% mecab -Odump (全情報を出力)
</pre>
<p>
これらの出力フォーマットは, /usr/local/lib/mecab/ipadic/dicrc
に定義されています。 さらに,
ユーザがこれらのフォーマットを自由に定義することが可能です。
<a href="format.html">こちら</a>をご覧ください.</p>
<h2><a name="usage-tools2">高度な使い方</a></h2>
<h3><a name="charset">文字コード変更</a></h3>
<p>特に指定しない限り, euc が使用されます。 もし,
shift-jis や utf8 を 使いたい場合は, 辞書の configure オプションにて charset を変更し,
辞書を再構築してください. これで, shift-jis や,
utf8 の辞書が作成されます。</p>
<pre>
% tar zxfv mecab-ipadic-2.7.0-xxxx
% cd mecab-ipadic-2.7.0-xxxx
% ./configure --with-charset=sjis
% make
% tar zxfv mecab-ipadic-2.7.0-xxxx
% ./configure --with-charset=utf8
% make
</pre>
<p>また, mecab-dict-index の -t オプションを使って直接文字コードの異なる
辞書を再構築できます。 -f オプションはオリジナルのテキスト辞書の文字コードです。
</p>
<pre>
% cd mecab-ipadic-2.7.0-xxxx
% /usr/local/libexec/mecab/mecab-dict-index -f euc-jp -t utf-8
# make install
</pre>
</pre>
<h3><a name="utf-8">UTF-8 only mode</a></h3>
<p>
configure option で --enable-utf8-only を指定すると. MeCab が扱う
文字コードを utf8 に固定します。 euc-jp や shift-jis をサポートする場合,
MeCab 内部に変換用のテーブルを埋めこみます。 --enable-utf8-only を
指定することでテーブルの埋めこみを抑制し, 結果として実行バイナリを
小さくすることができます。</p>
<h3><a name="unk">未知語推定</a></h3>
<p>
MeCab は, 辞書に単語が未登録の場合でも適当にその品詞を推定します。 </p>
<pre>
ホリエモン市
ホリエモン 名詞,固有名詞,地域,一般,*,*,*
市 名詞,接尾,地域,*,*,*,市,シ,シ
EOS
ホリエモンさん
ホリエモン 名詞,固有名詞,人名,一般,*,*,*
さん 名詞,接尾,人名,*,*,*,さん,サン,サン
</pre>
<p>ただし, その精度は正確ではありません. 品詞推定をやめ, 未知語は常に
"未知語" 品詞を出力したい場合は -x (--unk-feature) オプションを使います。
オプションで指定された文字列が品詞として使われます。</p>
</p>
<pre>%mecab --unk-feature "未知語"
ホリエモンさん
ホリエモン 未知語
さん 名詞,接尾,人名,*,*,*,さん,サン,サン
</pre>
</p>
<h3><a name="nbest">N-Best 解の出力</a></h3>
<p>
-N #NUM オプションを使うことで, 確からしいものから#NUM 個解析結果を出力
します。 理論的にはすべての可能な解析解を出力することが
可能ですが, 出力バッファのかねあいから, -N の最大値を 512 に制限しています。
</p>
<pre>
% mecab -N2
今日もしないとね。
今日 名詞,副詞可能,*,*,*,*,今日,キョウ,キョー
も 助詞,係助詞,*,*,*,*,も,モ,モ
し 動詞,自立,*,*,サ変・スル,未然形,する,シ,シ
ない 助動詞,*,*,*,特殊・ナイ,基本形,ない,ナイ,ナイ
と 助詞,接続助詞,*,*,*,*,と,ト,ト
ね 助詞,終助詞,*,*,*,*,ね,ネ,ネ
。 記号,句点,*,*,*,*,。,。,。
EOS
今日 名詞,副詞可能,*,*,*,*,今日,キョウ,キョー
もし 副詞,一般,*,*,*,*,もし,モシ,モシ
ない 形容詞,自立,*,*,形容詞・アウオ段,基本形,ない,ナイ,ナイ
と 助詞,接続助詞,*,*,*,*,と,ト,ト
ね 助詞,終助詞,*,*,*,*,ね,ネ,ネ
。 記号,句点,*,*,*,*,。,。,。
EOS
</pre>
<h2><a name="thanks">謝辞</a></h2>
<p>
CRF のパラメータ推定に <a href="http://www.ece.nwu.edu/~nocedal">Jorge Nocedal</a> 氏が考案した L-BFGS
と同氏が公開している FORTRAN 実装を使わせていただいております。ありがとうございます。</p>
<p><a
href="http://www.ece.northwestern.edu/~nocedal/lbfgs.html">http://www.ece.northwestern.edu/~nocedal/lbfgs.html</a></p>
<ul>
<li> J. Nocedal. Updating Quasi-Newton Matrices with Limited Storage
(1980), Mathematics of Computation 35, pp. 773-782.
<li>D.C. Liu and J. Nocedal. On the Limited Memory Method for Large Scale
Optimization (1989), Mathematical Programming B, 45, 3, pp. 503-528.
</ul>
</p>
</body>
</html>