AI実装ラボAI実装ラボby TrysLinx

IMPLEMENT — 実装ノウハウ / 初級〜中級

散らかったデータをAIで整える方法|表記ゆれ・名寄せ・分類を自動化する実務手順

公開: 2026.07.07 執筆: AI実装ラボ編集部 監修: 株式会社TrysLinx(AI実装会社 / 業務データ整備の実装知見)

この記事の結論

なぜ「散らかったデータ」は手作業とExcel関数で直りきらないのか

「同じ会社なのに『(株)山田商事』『株式会社山田商事』『ヤマダ商事』が別々の行として存在する」——多くの中小企業の顧客リストで実際に起きている状態です。データが散らかる典型パターンは次の3つに整理できます。

従来の対処は、Excelの置換・SUBSTITUTE関数・VLOOKUPによる突合でした。これらは「パターンを人間が列挙できる範囲」では有効ですが、『ヤマダ商事=株式会社山田商事』のような文字面が一致しない同一判定や、「商品説明文からカテゴリを推測する」ような判断はルール化しきれません。結果として、置換ルールが数百行に膨らんだ末に、最後は目視チェックに戻る——というのがよくある行き詰まりです。

ここにLLM(ChatGPTやClaudeなどの大規模言語モデル)を組み込むと、「文字が違っても意味が同じ」を判定できるようになり、ルールベースでは届かなかった最後の2〜3割を自動化できます。ただし後述の通り、LLMは万能ではなく、使いどころを間違えるとコストと誤りが増えます。

ルールベースとAI(LLM)の使い分け——先にルール、残りをAI

実装の大原則は「決定的に処理できるものは先にルールで潰し、判断が必要な残りだけをLLMに渡す」です。理由は3つあります。ルール処理は(1)無料で高速、(2)結果が毎回同じ(再現性がある)、(3)間違いの原因を特定しやすい。LLMはその逆で、柔軟な代わりにコストがかかり、出力が揺れる可能性があります。

処理内容推奨手段理由
全角/半角・大文字小文字の統一ルール(関数・スクリプト)機械的に一意に決まる
「(株)」→「株式会社」等の法人格統一ルールパターンが有限で列挙できる
住所の都道府県・市区町村の正規化専用ツール+ルールデジタル庁のアドレス・ベース・レジストリ等、公的な住所マスタが使える
略称・旧社名・かな表記の名寄せ判定LLM文字面が一致せず、意味の理解が必要
商品説明・自由記述からのカテゴリ分類LLM文脈の解釈が必要
「備考欄に紛れた電話番号・メールの抽出」ルール(正規表現)→漏れをLLM定型は正規表現、崩れた書式だけAI

この順序にすると、LLMに渡す件数そのものが減るため、API費用と検証の手間が大きく下がります。体感としては、ルール処理だけで7〜8割の行は片付き、LLMが必要なのは残りの「人間なら分かるが機械には難しい」部分です。

なお住所については、LLMに丸ごと正規化させるより、まず公的な住所データ(デジタル庁アドレス・ベース・レジストリや郵便番号データ)と突合し、マッチしなかった行だけLLMで補正する構成が精度・コストとも有利です。

そのまま使えるプロンプト例——正規化・名寄せ・分類の3パターン

LLMをデータ整備に使うときのプロンプトには共通の型があります。(1)出力形式を固定する(JSONや表)、(2)判断基準を明示する、(3)迷ったら『不明』と答えさせる逃げ道を用意する——の3点です。逃げ道がないと、LLMは無理にでも答えを作ってしまいます(ハルシネーション)。

例1: 会社名の正規化

例2: 名寄せ(同一判定)

名寄せは総当たりだと件数の2乗で組み合わせが爆発するため、実務では「電話番号や住所の市区町村が一致するペアだけをルールで絞り込み、その候補ペアのみLLMに判定させる」ブロッキングという手法を使います。1万件のリストでも、LLMに渡すのは数百〜数千ペアに抑えられます。

例3: カテゴリ分類

分類ではカテゴリ一覧をプロンプト内に必ず列挙し、「新しいカテゴリを作らせない」制約を入れるのがポイントです。これを忘れると、モデルが気を利かせて独自カテゴリを生み、かえって分類が散らかります。

精度検証とバッチ処理——全件投入の前にやるべきこと

LLMの出力をノーチェックで基幹データに反映するのは危険です。全件処理の前に、次の手順で精度を測ってください。

  1. サンプル100件を抽出し、人手で「正解」を作る(ここだけは手を抜かない)
  2. 同じ100件をLLMで処理し、正解との一致率を計測する
  3. 不一致だった行を見て、プロンプトの判断基準を修正 → 再計測
  4. 一致率が業務上許容できる水準(用途によるが目安95%前後)に達したら全件へ

全件処理後も、confidenceが low / unsure の行だけ人間がレビューする運用(human-in-the-loop)にすると、目視対象を全体の数%に圧縮できます。「AIが9割を片付け、人間は迷った分だけ見る」——これが現実的な着地点です。

件数が数千〜数十万件ある場合のバッチ処理は、次の点を押さえます。

現場の実感: 導入支援の現場では「まずAIに全部きれいにさせたい」という相談をよく受けますが、うまくいくのは決まって、先にルールで機械的な揺れを潰し、LLMの仕事を「人間なら分かる判断」だけに絞ったケースです。AIの投入範囲を狭めるほど、精度検証も速く終わります。

個人情報を扱うときの注意——顧客リストを無防備にAIへ渡さない

顧客リストの整備は、ほぼ確実に個人情報の取り扱いを伴います。技術的にできることと、やってよいことは別です。最低限、次を確認してください。

実務上のおすすめは、「個人を特定する列を分離してから処理する」設計です。元データに行IDを振り、氏名・連絡先は社内に残したまま、判定に必要な列だけをAIに渡し、結果をIDで書き戻す。これだけで漏えい時の影響範囲が大きく変わります。

小さく始める導入ステップ——最初の1週間でやること

データ整備は「全社データを一気に」ではなく、1つのリスト・1つの目的から始めるのが定石です。当社(TrysLinx)でも98件以上のAI導入を支援してきましたが、データクレンジングは効果が数字(重複件数・空欄率の減少)で見えやすく、社内にAI活用を根付かせる最初の題材として相性が良い領域です。

  1. 対象を1つ決める: 「顧客リストの名寄せ」「商品マスタのカテゴリ埋め」など、困っている度合いが最も高いもの
  2. 現状を数える: 総件数、明らかな重複数、空欄率。改善効果を測る基準になる
  3. ルール処理を先に実施: 全半角統一・法人格統一・スペース除去だけでも見違える
  4. サンプル100件でLLM検証: 前述のプロンプト例をベースに一致率を測る
  5. 全件処理+低確信度のみ人間レビュー: 結果を反映し、ビフォーアフターの数字を残す

一度きれいにしても、入力ルールがなければデータはまた散らかります。仕上げとして「入力時の選択式化(自由記述を減らす)」「月次でクレンジングバッチを回す」まで組み込めると、整った状態を維持できます。ここまで来れば、RAG(社内データ検索AI)や営業分析など、次のAI活用の土台としてもそのまま使えます。

よくある質問

Q. ExcelだけでもAIによる表記ゆれの修正はできますか?

可能です。ExcelやGoogleスプレッドシートからコピーした列をChatGPTやClaudeに貼り付けて正規化させる方法が最も手軽です。ただし個人情報を含む場合は無料チャットへの貼り付けは避け、学習に使われない環境を選んでください。

Q. AIの名寄せはどのくらいの精度が期待できますか?

データの状態とプロンプト設計に依存するため一概には言えません。まずサンプル100件で人手の正解と比較し、一致率を実測するのが確実です。確信度の低い判定だけ人間が確認する運用にすれば、実務上は十分使える水準になるケースが多いです。

Q. 数万件のデータを処理するとAPI費用はどのくらいかかりますか?

渡すテキスト量とモデルによりますが、1行あたり数十〜数百文字の整形なら軽量モデルで比較的安価に収まることが多いです。急ぎでなければ各社のバッチAPI(通常の約半額)が使えます。料金は改定されるため、実行前に公式の最新価格をご確認ください。

出典・参考

散らかったデータの整備、最初の100件から一緒に始めませんか

TrysLinxは98件以上のAI導入実績と523体の自社AIエージェント運用知見をもとに、貴社のデータ整備を「検証→全件処理→維持の仕組み化」まで伴走します。まずは現状のリストを見せていただくところからで構いません。

関連記事