Industry Classification of GitHub Repositories Using the North American Industry Classification System (NAICS)
本論文は、BAAI/bge-large-enの埋め込みとGPT-4.1を組み合わせた検索・検証パイプラインを用いることで、96.98%の人間による検証精度を達成し、オープンソース・イノベーション研究における産業分類のベンチマークとして機能する、NAICS 2022産業セクターでラベル付けされた6,588個のGitHubリポジトリからなる高精度な公開コーパスであるNAICS-GHを紹介するものである。
原論文は CC BY 4.0 (http://creativecommons.org/licenses/by/4.0/) でライセンスされています。 これは以下の論文のAI生成解説です。著者が執筆または承認したものではありません。技術的な正確性については原論文を参照してください。 免責事項の全文を読む
GitHubを、何億もの本(コードのリポジトリ)が詰まった巨大で混沌とした図書館だと想像してください。問題は、図書館はすべての本のタイトルは知っているものの、その本がどのようなビジネスや産業のためのものかを示す「デューイ十進分類法」のようなものを持っていないことです。このコードは銀行のためのものか?農場のためか?それともビデオゲームスタジオのためのものか?このラベルがないと、経済学者や政策立案者、あるいは企業が、オープンソースソフトウェアをどのように異なる産業で使用しているのかを理解することが困難になります。
本論文は、これらの本を、米国、カナダ、メキシコの政府が使用する標準的な分類システムである**北米産業分類システム(NAICS)**に従って整理する、「超スマートな司書」として機能する新しいシステム、NAICS-GHを紹介するものです。
以下に、その構築方法を分かりやすく説明します。
1. 「漁網」(検索)
まず、チームは図書館内のすべての本(候補は130万件以上)をすべて読むことはできませんでした。そこで、彼らはBGE埋め込み(embeddings)とFAISSというデジタル漁網を使用しました。
- 比喩: 特定のキーワード(例:「作物の収穫量」、「銀行セキュリティ」、「病院のスケジューリング」など)のリストが1,000個あると想像してください。これらのキーワードを図書館に投げ込むと、網はそれらのキーワードに最も「似ている」響きを持つ上位20冊の本を瞬時に捕まえます。
- 結果: この網は、約31,000件の潜在的な一致候補を捕まえました。取りこぼしがないように広く網を投げましたが、その結果、似ているけれど完全には一致しない「惜しい」本もいくつか捕らえてしまいました。
2. 「専門家による判定」(検証)
網は目が粗すぎたため、捕まえたものを検証するための厳格な判定役が必要でした。彼らは、ドメインの専門家として振る舞う高度なAIであるGPT-4.1を採用しました。
- 比喩: GPT-4.1を熟練の検査官と考えてください。網が捕まえたすべての本に対して、検査官は表紙、要約、そして最初の数ページ(リポジトリの説明とREADME)を読みます。
- 評価基準(ルーブリック): 検査官は単に推測するのではなく、厳格なチェックリスト(ルーブリック)を使用します。彼らはこう問いかけます。「このコードは、本当にこの特定の産業の課題を解決するものか?」
- もし答えが明確な「Yes」であれば、検査官は9点または10点のスコアを与えます。
- もし「おそらく(Maybe)」であれば、スコアは下がります。
- 基本的な計算機のような、誰にでも使われる汎用的なツールである場合は、低いスコアになります。
- カットオフ: 彼らはスコアが8以上のものだけを保持しました。これにより、信頼性の高い一致のみを確保しました。
3. 「最終的なコレクション」(データセット)
AI判定士が弱い一致を排除した後、6,588件の高品質なリポジトリが残りました。
- これらは、19の異なる産業(農業、製造業、ヘルスケア、金融など)にまたがっています。
- 彼らは、信頼できるグループを作成するための十分な例がなかったため、一つのカテゴリー(「企業の管理」)を意図的に除外しました。
- 重要な点: プライバシーを保護するため、所有者の名前は削除し、コードの内容と産業ラベルのみを保持しました。
4. 「効果はあったか?」(検証)
AI判定士が幻覚(ハルシネーション)を起こしていないかを確認するため、チームは人間のリサーチアシスタントを雇い、ランダムに選んだ2,421件のラベル付けされた本をチェックさせました。
- 結果: 人間の判定士は、AIと**96.98%**の割合で一致しました。
- ニュアンス: AIは、「公的機関」や「芸術・娯楽」のような明確な産業についてはほぼ完璧でした。しかし、「製造業」や「卸売業」のように、ソフトウェアが時として汎用的に見える分野では、少し苦戦しました。論文では、スコアの要件を9または10に引き上げれば、これらの難しい産業における精度はさらに高まると指摘されています。
5. 「学習ツール」(ベンチマーク)
最後に、チームはこの新しいラベル付きの図書館を使用して、6つの異なるAIモデルに、コードを独自に分類する方法を教えました。
- 彼らはRoBERTa、ModernBERT、DeBERTaといったモデルをテストしました。
- 勝者: RoBERTa-largeと呼ばれるモデルが最も優れた学習を行い、一度も見たことのないテストセットに対して86.45%の精度を達成しました。
- 教訓: これにより、優れた「ラベル付きの図書館」さえあれば、将来的に自動で分類を行うための、より小さく高速なAIモデルを訓練できることが証明されました。
まとめ
本論文は、GitHubのコードを現実世界の産業にマッピングした、公開可能なデータセットを提示しています。それは以下の手順で構築されました:
- 潜在的な一致を見つけるために広く網を投げ、
- 詳細なチェックリストに基づいて検証するために厳格なAI判定士を使用し、
- 97%の精度を確保するために人間によるダブルチェックを行い、
- 異なる産業がオープンソースソフトウェアをどのように使用しているかを誰もが研究できるように、データとコードを公開しました。
著者らは、これはグローバルに適用された北米の分類システムであることを明示しており、ラベルは非常に正確ではあるものの、すべての産業(特に製造業と卸売業)において完璧ではない可能性があると警告しています。また、このシステムは現在、英語のコード記述において最もよく機能すると述べています。
自分の分野の論文に埋もれていませんか?
研究キーワードに一致する最新の論文のダイジェストを毎日受け取りましょう——技術要約付き、あなたの言語で。