概要
- 2026年時点で、主流のLLM生成テキストは従来型機械学習モデルで高精度に識別可能
- 実験用デモとGitHubでコード・モデルファイル公開
- 85%以上の文単位検出精度を達成
- 複数AIモデルを活用したバイナリ分類と多数決方式
- Webブラウザ上で動作する軽量なJS実装
LLM生成テキスト検出の現状とデモ
- 2026年初頭、 主流のLLM生成テキスト は 明確な統計的特徴 を持ち、 従来型機械学習モデル で高精度に人間との識別が可能
- 多くの「AI盗作チェッカー」は、このような 機械学習的アプローチ を内部で利用していると推測
- オンラインデモ:https://lyc8503.github.io/AITextDetector/
- デモ用モデルは 一般用途データ未学習、 最適化未実施
- 単文検出精度:約85%
- コアコード(ドラフト)および学習済みモデルはGitHubで公開: lyc8503/AITextDetector
背景と動機
- 半年前、卒論執筆時に AIGC検出サービス (CNKI、Wanfang等)を試用
- 人間とAI生成テキスト の区別が可能で、精度も高め
- その仕組みや回避法に興味を持つも、他の趣味や多忙で一時中断
- 最近、Lofterで 低品質AI生成小説 の氾濫を目撃し、 自作検出器 開発を決意
既存手法(失敗例):テキストパープレキシティ
- LLMを用いて各単語の出現確率 を計算し、予測しやすい文=AI生成と判断
- 簡単な発想だが、 偽陽性・偽陰性が多く、閾値設定困難
- 実用面でも 推論コスト高、汎用性低、ローカル実装困難 など課題多数
- 結論: 実用的・信頼性不足
成功例:scikit-learnによるSVM分類
- scikit-learn の Linear SVC や Naive Bayes を活用し、 単文分類 に挑戦
- 教師データ は2010–2022年の人間執筆記事約1万件+各種LLMで生成した同数のAI文
- ジャンル多様性 ・ 内容類似性 を意識してデータ生成
- 複数LLM API (Gemini, Qwen, GLM-5, Kimi等)を 低コストで利用
- 利用規約違反のリスクあり、推奨はしない
- バッチ処理 でAPIコストを最適化し、大量生成を実現
モデル学習と精度
- 文単位で分割・前処理 し、 TF-IDF→LinearSVC で学習
- 文単位精度85%超、複数文での多数決により高信頼判定
- 8クラス分類(人間+7AI) は精度低下(約50%)、 バイナリ分類+多数決 で運用
- 主要モデルごとの 精度・F1スコア :全て85%以上を達成
- 他の分類器 (Naive Bayes, SGD, BERT, AutoGluon)は劣後、最終的にSVCを採用
Webデモ用JS実装
- Python API運用を避け、完全サーバーレス を目指し、 TF-IDF+SVMをJSで実装
- 50万特徴量で精度・パフォーマンスを両立(圧縮後38MB程度)
- 精度低下は約1% に留まり、実用上問題なし
- 入力文を 7つのバイナリモデルで分類し、多数決でAI判定
- AIスコア 算出:50%未満=人間、50–70%=人間寄り、70%以上=AI寄り
検出性能テスト
- 学習モデル(Doubao, Deepseek等) に対し高い検出率(78–93%)
- 未学習モデル(Claude Sonnet 4.6, GPT 5.2等) にも70%以上の検出率
- 多様なプロンプト・長文 にも対応可能
まとめ
- 従来型機械学習 でも、主流LLM生成テキストは高精度で識別可能
- Webデモ・コード・モデル を公開済み
- AIテキスト検出の仕組み や 限界 を理解したうえでの活用推奨