言語処理学会 第30回年次大会 発表論文集（2024年3月）

日本語自然言語処理リポジトリ分類データセットの構築
池田大志 樋本一晴 寺中駿人
コニカミノルタ株式会社{taishi.ikeda, kazuharu.himoto, hayato.teranaka}@konicaminolta.com

概要
日本語の自然言語処理に関連する言語資源を集約し，「日本語自然言語処理リポジトリ分類データセット」を構築した．本研究では，6752 件の GitHubリポジトリに対して，日本語の自然言語処理に関連するか否かの二値の分類ラベルを付与した．本デー
タセットのタスク難易度を評価するために，テキス
ト分類による実験を行った．本稿では，本データセットの構築方法，テキスト分類の実験結果，既存研究との差分，今後の展望を述べる．本データセッ
トは，Hugging Face1）で公開されている．

1

はじめに大規模言語モデルの登場に伴い，自然言語処理研究の重要性が増している．この傾向は，日本語を解析対象とする言語処理の研究開発の活性化に寄与している．例えば，2023 年 5 月より国立情報学研究所が中心となり主催とする LLM 勉強会2）が開催され，産学連携し日本語大規模言語モデルの構築と，そのモデルの公開3）が行われている．さらに，企業間においても大規模言語モデルの開発競争が加熱している．例えば，大規模な日本語データセットで学習を行ったモデル [1, 2] や，LLaMA 2 [3] をベースとし日本語データセットで追加学習を行ったモデル [4, 5]が公開されている．
このように新たな大規模言語モデルが次々と登場する中，これらのモデルの言語理解能力を網羅的に評価し，効率的な性能向上を実現するためには，既存の言語資源の有効活用が不可欠である．しかしながら，これまで日本語の自然言語処理に関連する言語資源（ツール，コーパス，辞書，モデル）の情報が十分に集約されていない現状であり，情報の効率性に欠けるという問題が存在していた．
1） https://huggingface.co/datasets/taishi-i/
awesome-japanese-nlp-classification-dataset2） https://llm-jp.nii.ac.jp/
3） https://huggingface.co/llm-jp

そこで本研究では，日本語の自然言語処理に関連 す る 言 語 資 源 の 情 報 集 約 を 行 い，日 本 語 自 然
言語処理リポジトリ分類データセット（awesomejapanese-nlp-classiﬁcation-dataset）を構築した．このデータセットは，6752 件の GitHub リポジトリに対して，日本語の自然言語処理に関連するか否かの二値の分類ラベルを付与したものである．データセット構築の初期段階では，日本語の自然言語処理に関連する言語資源を人手により収集，構造化した情報を GitHub リポジトリを通じて公開した．ここで公開したリポジトリ情報を正例と位置づけ，対照的な負例を収集することにより，テキスト分類のためのデータセットの構築を行った．
本データセットは，以下の特徴を有する．
• 不均衡なラベル分布• 日本語と英語のテキストが混在• 主観的な判断に基づくアノテーション
これらの特性は，実世界おけるテキスト分類タスクが直面する一般的な課題である．そのため，本データセットを利用することで，現実的なテキスト分類タスクを想定し，モデル性能の評価を行うことが可能となる．さらに，本データセットを利用することで，日本語の自然言語処理に関連する言語資源を新たに検出するモデルの作成に活用でき，情報集約の効率化の観点で日本語の自然言語処理研究に貢献できると考える．

データセット構築

2

本データセットは，GitHub リポジトリ awesomejapanese-nlp-resources 4）に掲載された情報に基づいて構築されている．この GitHub リポジトリは 2022
年 6 月より情報の掲載を開始した．GitHub で公開されている日本語の自然言語処理に関連するツール，コーパス，辞書，モデルのリポジトリ情報を継続的
4） https://github.com/taishi-i/
awesome-japanese-nlp-resources― 851 ―

This work is licensed by the author(s) under CC BY 4.0(https://creativecommons.org/licenses/by/4.0/).

ラベル
概要URL
公開日

表 1 本データセットにおける正例と負例の例を示す．
正例
負例
10
JGLUE: Japanese General Language Understanding Oﬃcial repository of FaceLit: Neural 3D Relightable
Evaluation for huggingface datasets
Faces (CVPR 2023)
https://github.com/shunk031/
https://github.com/apple/ml-facelit
huggingface-datasets JGLUE
2023-02-25
2023-04-03に収集し，構造化した情報を GitHub リポジトリをとしては，日本語を解析対象とするツール，日本通じて公開している．2024 年 1 月時点で 528 件のリ語テキストに対してアノテーションされたコーパ

ポジトリ情報が掲載されている．

ス，日本語コーパスで学習されたモデルなどが存在構造化された掲載情報としては，リポジトリ名，する．

URL，リポジトリ概要（Description）が含まれる．ここのように『日本語の自然言語処理に関連する』

こでのリポジトリ概要とは，リポジトリの目的を簡という定義が広く曖昧であるため，明確なアノテー単に説明するテキストであり，各リポジトリに対しション基準はなく，主観的な判断に基づくリポジトて設定されている．実際に掲載されている情報は付
録 1 に示す．リポジトリ概要は，英語，日本語，中リの選定を行った．選定されたリポジトリは，本データセットの正例とした．負例は，Twitter API で国語に翻訳されており，多言語で情報を掲載してい取得した出現頻度が高いリポジトリから，日本語のる．さらに，ツールに関しては，ダウンロード数や自然言語処理に関連しないポジトリを選択した．

GitHub スター数の統計情報も掲載している．実際

日本語の自然言語処理に関連するか否かを示すラに掲載されている統計情報は付録 2 に示す．

2.1

各リポジトリには，アノテーション情報として，ベルを付与している．関連する場合はラベル 1，関アノテーション手順

連しない場合はラベル 0 を付与した．また，リポジ

本節では，具体的なリポジトリ情報の収集方法

トリ概要，URL，リポジトリ公開日も付与されてと，そのリポジトリに対する分類ラベルのアノテー

おり，これらの情報は，GitHub API を通じて取得しション手順について説明する．GitHub リポジトリた．表 1 は，本データセットの正例と負例の例を示

awesome-japanese-nlp-resources で は，Twitter API5）としている．ここでの正例は，日本語の言語理解能力

GitHub API6）を利用し，リポジトリ情報を収集した．

を評価するためのデータセットのリポジトリである

Twitter API では，GitHub の URL（https://github.com）

ため，ラベル 1 を付与している．また，負例は，画を含むツイートを収集した．ここでは，日々のツイートから出現頻度の上位 25 件のリポジトリを抽

像処理関連のリポジトリであるため，ラベル 0 を付与している．

出し，その中から日本語の自然言語処理に関連するリポジトリの選定を行った．

2.2

データセットの特徴

GitHub API では，Search API を用いて，日本語の表 2 は，本データセットの期間とラベル分布を示

自然言語処理に関連するリポジトリを検索し，リしている．学習データは，ラベル 0 が 5089 件，ラベポジトリの選定を行った．検索キーワードとして，

ル 1 が 407 件の合計 5496 件のリポジトリで構成さ1995 年から 2015 年にかけて発表された言語処理れている．これらは，2008 年 2 月から 2022 年 9 月

学会年次大会の論文集のタイトルから，出現頻度に公開されたものである．開発データは，ラベル 0の 高 い 単 語 を 取 得 し，検 索 に 利 用 し た．例 え ば，が 383 件，ラベル 1 が 17 件の合計 400 件のリポジ「日本語」「言語処理」「形態素解析」といったキートリで構成されている．これらは，2022 年 10 月かワードを検索に利用した．論文集のタイトルは，ら 2022 年 12 月に公開されたものである．評価デー

anlp-jp-history7）から取得した．選定したリポジトリ

タは，ラベル 0 が 796 件，ラベル 1 が 60 件の合計856 件のリポジトリで構成されている．これらは，

5） リ ポ ジ ト リ 情 報 取 得 時 に は，Twitte API v1.1 （https://developer.twitter.com/en/docs/twitter-api/v1）を利用した．
6） https://docs.github.com/ja/rest/search/search7） https://github.com/whym/anlp-jp-history

2023 年 1 月から 2023 年 8 月に公開されたものである．このように，過去のリポジトリ情報から学習する特徴を用いて，新たに公開されるリポジトリに対― 852 ―This work is licensed by the author(s) under CC BY 4.0(https://creativecommons.org/licenses/by/4.0/).

表 2 本データセットにおける GitHub リポジトリの公開日の期間とラベル分布を示す．

公開日の期間01

合計

学習2008/02 - 2022/09

5,089

407

5,496

開発

2022/10 - 2022/12

383

17

評価

2023/01 - 2023/08

796

60

表3

最小平均

最大

学習

258.05

609

400

開発

854.33

226

856

評価

358.85341

本データセットにおける言語の割合を示す．

セットに英語と日本語の両方が含まれているため，

日本語英語

bert-base-multilingual-cased9）を事前学習モデルに利学習

10.66%89.34%

用した．

開発

18.00%

82.00%

次に，大規模言語モデルを用いてゼロショットお評価

16.82%

83.18%

よび少数ショットを行うモデルとして，Vicuna [7]するラベル予測性能を評価するタスク設定としている．ラベル分布は，ラベル 1 の割合が少ない不均衡な分布であることが特徴である．
表 3 は，本データセットの言語の割合を示している．オープンソースライブラリ langdetect8）を用いて，概要に対する言語ラベルを付与し，言語判定を行った．この結果から日本語と英語が混在していることがわかる．表 4 は，本データセットの概要に対する文字数の統計情報を示している．この表では，最小文字数，平均文字数，最大文字数を示している．これらの特性は実世界のテキスト分類タスクにおける一般的な課題であり，現実的なモデル性能の評価に利用可能である．

を採用した．Vicuna は，ShareGPT 10）から収集された会話データに基づいて，LLaMA 2 [3] をファインチューニングしたモデルである．ここでは，Vicunaの 70 億と 130 億という異なるパラメータサイズによる性能比較を行う．Vicuna を利用する場合のラベル予測は，プロンプトに続く「Yes」と「No」の各トークンの対数尤度を計算し，対数尤度が高いものを予測ラベルとする．プロンプトに利用される少数事例は，学習データから選出され，開発データの F1スコアを参考に選定した．付録 A.1 には，実験で使用したプロンプトを示す．
最 後 に，OpenAI API [8] を 用 い る 場 合 と し て，gpt-3.5-turbo と gpt-4 を採用した．モデルの入力とするプロンプトは，Vicuna と同様のものを利用した．

実験

3

表 4 本データセットにおける概要の文字数の統計情報を示す．

OpenAI API を利用する場合，「Yes」または「No」を直接出力させ，それを予測ラベルとする．

3.1

タスク設定

3.3

本データセットのタスク難易度を評価するためにテキスト分類タスクによる実験を行う．テキスト分
類のタスク設定としては，リポジトリ概要を入力とし，そのリポジトリが日本語の自然言語処理に関連するか否かのラベルを正しく予測できるか評価する．評価指標として，テキスト分類タスクの一般的な指標である精度（Acc.），適合率（Prec.），再現率（Rec.），F1 スコア（F1）を用いた．これらの指標を用いて，各モデルの性能を比較し，データセットの難易度を示す．

3.2

表 5 に実験結果を示す．ここでは，F1 スコアに関する結果について述べる．参考として，ラベルをランダムに選択した場合，全てのラベルを 0 または 1と仮定した場合の結果について説明する．ランダムの場合，F1 スコアは 0.12 であった．ラベルを 0 と仮定した場合，F1 スコアは 0.0 であった．ラベルを1 と仮定した場合，F1 スコアは 0.13 であった．この結果を基準に，各モデルの性能を比較し，データセットの難易度を示す．
最も高い F1 スコアは，BERT [6] をファインチューモデルニングしたモデルと，パラメータサイズが 130 億

本節では，実験で採用したモデルについて述べる．学習データを用いて，ファインチューニングを行うモデルとして，BERT [6] を採用する．データ
8） https://github.com/Mimino666/langdetect

結果のモデルで少数ショットで予測を行った Vicuna [7]で，0.74 であった．Vicuna は，2 件の少数事例にもかかわらず，BERT をファインチューニングしたモ
9） https://huggingface.co/bert-base-multilingual-cased10） https://sharegpt.com/― 853 ―

This work is licensed by the author(s) under CC BY 4.0(https://creativecommons.org/licenses/by/4.0/).

表 5 本データセットにおける各モデルの実験結果を示す．
モデル
設定
学習 Acc. Prec.
ランダム0.50 0.07
ラベル 00.93 0.00
ラベル 10.07 0.07
bert-base-multilingual-cased [6] ファインチューニング
✓0.97 0.79
lmsys/vicuna-7b-v1.5 [7]ゼロショット0.29 0.09
少数ショット（2 件）
0.89 0.36
lmsys/vicuna-7b-v1.5 [7]lmsys/vicuna-13b-v1.5 [7]ゼロショット0.67 0.13
lmsys/vicuna-13b-v1.5 [7]少数ショット（2 件）
0.97 0.80
gpt-3.5-turbo [8]ゼロショット0.88 0.31
少数ショット（2 件）
0.86 0.31
gpt-3.5-turbo [8]gpt-4 [8]ゼロショット0.95 0.62
gpt-4 [8]少数ショット（2 件）
0.94 0.57

デルと同様の性能を示した．しかし，Vicuna のゼロ
ショット設定で予測を行った場合，ラベルをランダ

Rec.
0.50
0.00
1.00
0.700.98
0.87
0.63
0.68
0.47
0.83
0.82
0.82

F1
0.12
0.00
0.13
0.74
0.16
0.50
0.21
0.74
0.40
0.46
0.71
0.67

関連研究

4

ムに選択した場合との差がほとんどなく，正しい予

日本語の自然言語処理分野における研究動向に測が行われていないことがわかる．また，その他の関して，言語処理学会年次大会予稿集を分析対象結果から，パラメータの大きさやモデルの種類によにした研究が存在する．Murata ら [9] は，年次大会り性能の変化があるため，データセットの難易度はへの投稿を行う研究機関や論文タイトルの単語をバランスのとれた設定となっていると言える．

分析し，研究動向の調査を実施している．また，増

この結果から，本データセットはモデルの性能評

田ら [10] はテキストマイニングシステムを構築し，価に利用可能であると考える．また，日本語の自然研究動向の調査を実施している．さらに，「日本の言語処理に関連するリポジトリの検出性能（F1 スコ

言語資源・ツールのカタログ12）」では，複数の学会

ア）は 7 割を超えているため，新たな言語資源の検の論文集から自動抽出した言語資源の情報が公開されている．awesome-japanese-llm [11] では，GitHub出にも利用可能である．

3.4

リポジトリを通じて，日本語に関連する大規模言語エラー分析

本節では，BERT [6] をファインチューニングしたモデルについての情報が公開されている．
これらの研究は，日本語の自然言語処理におけるモデルのエラー分析結果について述べる．評価デー動向を調査し，情報を提供している点で本研究と類タには，ラベル 1 である「日本語の自然言語処理に似している．しかしながら，本研究は GitHub リポ関連するリポジトリ」が 60 件含まれている．このジトリから情報を収集し，これを構造化し，さらにうち 18 件が予測誤り（偽陰性）であった．例えば，負例を含む分類ラベルを付与してデータセットを構モデルの入力となる概要が「ChatGPT を使用して築した点において，既存研究とは異なる新規性を有VRChat 上で会話を可能にするプログラム」であるしていると考えられる．

場合，「ChatGPT」という単語が正しく判断されず，予測誤りとなった事例が存在した．さらに，ラベルおわりに50 であるリポジトリ 796 件のうち，11 件が予測誤り

本研究では，日本語の自然言語処理に関連する言（偽陽性）であった．例えば，モデルの入力となる概語資源の情報を集約し，日本語自然言語処理のため要が「Exercises on Riemannian geometry (in Japanese)」のリポジトリ分類データセットを構築した．今後のである場合，「Japanese」という単語に反応し，予測展望として，大学の各研究室で公開されている言語誤りとなった事例が存在した．今回ファインチュー
ニングしたモデル11）は，Hugging Face で公開して資源や，Hugging Face に公開されているリポジトリを収集し，データセットのさらなる充実を図る予定いるため，同様のエラー分析を再現することも可能である．付録には，本データセットの利用方法や検である．

索ツールに関する内容も掲載しているので，そちらも参考にしていただけたら幸いである．

11） https://huggingface.co/taishi-i/
awesome-japanese-nlp-classification-model12） https://www.jaist.ac.jp/project/NLP Portal/doc/LR/
lr-cat-j.html― 854 ―

This work is licensed by the author(s) under CC BY 4.0(https://creativecommons.org/licenses/by/4.0/).

参考文献[1] Meng Lee, Fujiki Nakamura, Makoto Shing, Paul McCann,
Takuya Akiba, and Naoki Orii. Japanese stablelm basealpha 7b.
https://huggingface.co/stabilityai/
japanese-stablelm-base-alpha-7b.
[2] Inc Preferred Networks. Plamo-13b, 2023. https://huggingface.co/pfnet/plamo-13b.
[3] Hugo Touvron, Louis Martin, Kevin Stone, Peter Albert,
Amjad Almahairi, Yasmine Babaei, Nikolay Bashlykov,
Soumya Batra, Prajjwal Bhargava, Shruti Bhosale, et al.
Llama 2: Open foundation and ﬁne-tuned chat models.
arXiv preprint arXiv:2307.09288, 2023.
[4] Tianyu Zhao, Akio Kaga, and Kei Sawada. rinna/youri-7b.
https://huggingface.co/rinna/youri-7b.
[5] Akira Sasaki, Masato Hirakawa, Shintaro Horie,and Tomoaki Nakamura.
Elyza-japanese-llama2-7b, 2023.
https://huggingface.co/elyza/
ELYZA-japanese-Llama-2-7b.
[6] Jacob Devlin, Ming-Wei Chang, Kenton Lee, and Kristina
Toutanova. Bert: Pre-training of deep bidirectional transformers for language understanding. arXiv preprint
arXiv:1810.04805, 2018.
[7] Wei-Lin Chiang, Zhuohan Li, Zi Lin, Ying Sheng, Zhanghao Wu, Hao Zhang, Lianmin Zheng, Siyuan Zhuang,
Yonghao Zhuang, Joseph E. Gonzalez, Ion Stoica, andEric P. Xing. Vicuna: An open-source chatbot impressing gpt-4 with 90%* chatgpt quality, March 2023.
https://lmsys.org/blog/2023-03-30-vicuna/.
[8] OpenAI. Gpt-4 technical report, 2023.
[9] Masaki Murata, Koji Ichii, Qing Ma, Tamotsu Shirado,Toshiyuki Kanamaru, and Hitoshi Isahara. Trend survey
on japanese natural language processing studies over thelast decade. In Companion Volume to the Proceedingsof Conference including Posters/Demos and tutorialabstracts, 2005.

[10] 増田勝也, 丹治信, 植松すみれ, 美馬秀樹. 研究動向分
析のための論文のデジタルテキスト化とマイニングシステム. 言語処理学会第 20 回年次大会発表論文集, pp. 792–795, 2014.
[11] LLM-jp. Overview of Japanese LLMs, July 2023. https://github.com/llm-jp/awesome-japanese-llm.

― 855 ―

This work is licensed by the author(s) under CC BY 4.0(https://creativecommons.org/licenses/by/4.0/).

測 対 象 と な る リ ポ ジ ト リ 概 要 は，プ ロ ン プ ト の付録

A{description} 部分に代入する．ゼロショットの設定の場合は，少数事例の部分を取り除いたプロンプトを利用する．
"""### Question :\ nIs this description relevant toJapanese natural language processing ? Pleaseanswer Yes or No .\ n \ n ### Description :\ nTheSymfony PHP framework \ n \ n ### Answer :\ nNo \ n \ n### Question :\ nIs this description relevant
to Japanese natural language processing ?
Please answer Yes or No .\ n \ n ### Description:\ nGLUE : Japanese General Language
Understanding Evaluation \ n \ n ### Answer :\ nYes
\ n \ n ### Question :\ nIs this description
relevant to Japanese natural language
processing ? Please answer Yes or No .\ n \ n ###Description :\ n { description }\ n \ n ### Answer :\ n3 """12

図 1 GitHub リポジトリ awesome-japanese-nlp-resources にて掲載されているリポジトリ情報をスクリーンショットした画像を示す．

A.2
図 2 GitHub リポジトリ awesome-japanese-nlp-resources にて掲載されている統計情報をスクリーンショットした画像を示す．

データセットの利用方法

本データセットは，Hugging Face 社によって開発された Python ライブラリ datasets14）から利用可能である．ここでは，データセットを読み込む際のサンプルコードを示す．
1

from datasets import load_dataset

2

dataset = load_dataset (" taishi - i/ awesome - japanese - nlp classification - dataset "5 )3
4

6

# Negative example
print ( dataset [ " train " ][0])9 { ' label ': 0 , ' text ': ' HTML Abstraction Markup
Language - A Markup Haiku ' , ' url ': ' https ://github . com / haml / haml ', ' created_at ': '2008 -02 -11 T22 :55:26 Z '}7810

# Positive example
print ( dataset [ " train " ][105])
13 { ' label ': 1 , ' text ': ' The Kyoto Text Analysis
Toolkit for word segmentation andpronunciation estimation , etc . ', ' url ': 'https :// github . com / neubig / kytea ', 'created_at ': ' 2010 -12 -22 T02 :56:51 Z '}1112

図 3 Hugging Face にて日本語の自然言語処理に関連するリポジトリを検索するためのツールを公開している．ここでは，ツールの画面をスクリーンショットした画像を示す．

図 3 の検索ツールは，こちらのページ13）から利用可能である．

A.1

プロンプト

ここでは，少数ショットの設定で利用したプロンプトを示す．少数事例は，各ラベルから 1 件ずつ正例と負例を選び，2 件の事例を利用した．予13） https://huggingface.co/spaces/taishi-i/
awesome-japanese-nlp-resources-search14） https://github.com/huggingface/datasets． pip install
datasets でインストール可能である．

― 856 ―

This work is licensed by the author(s) under CC BY 4.0(https://creativecommons.org/licenses/by/4.0/).