NDL Ngram Viewer

国立国会図書館の提供するデジタル化資料のOCR全文テキストデータを利用したNgram Viewer

国立国会図書館が提供するデジタル化資料のOCRテキスト化事業の成果物である全文テキストを活用した実験サービスです。
OCRによって作成されたテキストデータから、出版年代ごとの出現頻度を可視化することができます。(可視化対象は、デフォルトでは総出現頻度上位5件です)
可視化グラフの縦軸は、年代ごとに何回出現したかを表す出現頻度と、出現頻度を出版年代ごとの総ngram数で割った値を表す出現比率の2種類を切り替えることができます。

2023年1月現在の対象は次の通りです。

  • 図書・雑誌資料約230万点(約17億種類の単語及びフレーズ)
  • 図書資料約97万点(約8.5億種類の単語及びフレーズ)
  • 雑誌資料約132万点(約8.9億種類の単語及びフレーズ)
  • 著作権保護期間満了の図書資料約28万点(約8.3億種類の単語及びフレーズ)

図書については刊行年代が1960年代まで、雑誌については刊行年代が1990年代までの資料を主に対象としています。
・複数のキーワードをスラッシュ(/)区切りでクエリに指定することで、出現頻度を重ねて表示することができます。
例:「モダンガール/モダンボーイ

・正規表現を利用したクエリが可能です。
例:「平.盛」「風薫る.*」「.*温泉」「[^あ-んア-ン]{2,2}羊羹
演算子 クエリ例 説明
. 修.者 任意の1文字を表す
* 日*精進 直前の表現が0個以上あることを表す
+ 郵便局+長 直前の表現が1個以上あることを表す
? 巡査部?長 直前の表現が0個か1個あることを表す
{,} 私を.{2,3}にする 直前の文字の繰り返し回数の範囲を指定する。
例1:{2,4}:2回以上4回以下
例2:{3,} :3回以上
例3:{,5} :5回以下
[…] 大正[ーア-ン]{6,} ブラケット内の1文字を表す。「-」で範囲を、「^」で否定を表す。
例1:[abc]:a,b,cのうち1文字
例2:[ア-ン]:アからンまでの1文字(カタカナいずれか1文字)
例3:[^ア-ン]:アからンまで以外の1文字(カタカナ以外の1文字)
(…) 春の海ひねもす(のたり)* かっこで囲んだ範囲のグループを形成し、単一の文字として扱う。(他の演算子と組み合わせて用いる)
| ご(機嫌|きげん)よう 左辺または右辺の最長のパターンにマッチすることを表す
  • 【注意1】クエリにスラッシュ(/)が含まれる場合、正規表現は無効化されます。つまり複数キーワードクエリと正規表現クエリを併用することはできません。
  • 【注意2】処理の特性により、総出現頻度が10程度以下のものについては集計漏れが発生することがあります。
  • 【注意3】NDL Ngram Viewerの可視化対象は国立国会図書館デジタルコレクションの全文検索対象とほぼ同じですが、厳密に同じデータを参照するものではありません。クエリによっては差異が発生することがあります。
  • 【注意4】資料に含まれるキーワードの頻度を可視化するサービスであり、一つの資料に繰り返し同じキーワードが含まれる場合があるため、全文検索における検索ヒット件数(資料数)とは多くの場合異なります。
  • 【注意5】負荷対策のため、接頭及び接尾が両方とも正規表現で記述されたクエリは受け付けません。(受け付けない例:「.*テスト.*」)

【技術情報】全文テキストデータに対して異体字等の丸め処理を行った後、NormalモードのKuromojiで形態素解析を行い、形態素gramで1gramから5gramまでの総出現頻度が4以上の単語及びフレーズを集計しています。
本サービスが利用しているデータセットを次のリンクから公開しています。
・NDL Ngram Data https://github.com/ndl-lab/ndlngramdata (※新しいタブで開きます)
詳細についてはhttps://lab.ndl.go.jp/service/ngramviewer/ (※新しいタブで開きます)もご覧ください。