1. 定義と概要
ラベルエンコーディングとは、カテゴリ変数の各カテゴリに対して、0,1,2…のような連番の整数を1つずつ割り当て、数値に変換する処理の手法です。例えば「東京」「大阪」「福岡」の都市名にそれぞれ0,1,2を割り振ったり、「小」「中」「大」のサイズ区分に0,1,2を割り振ったりする変換が、これにあたります。
機械学習のアルゴリズムは数値でなければ計算に使えないため、文字列のままのカテゴリ変数を、そのまま学習に使うことはできません。そこで従来は、ワンホットエンコーディング(カテゴリの数だけ0と1の列を作って表す変換方法)が使われてきましたが、カテゴリ数が多いと列数が急増してしまう課題があります。
そこで登場したのが、1つの列のまま連番の整数に置き換えるラベルエンコーディングです。ただし整数を割り当てる以上、本来は存在しない大小関係をモデルに与えてしまう副作用と、表裏一体の関係にあります。
2. 試験対策ポイント
まず整理しておきたいのは、本来は順序を持たないカテゴリ、つまり名義尺度(順序に意味のない分類で、都市名や血液型が例にあたります)に、0,1,2という整数を割り当てる場合の副作用です。この場合、モデルが数値の大小関係や順序があるものとして、誤って解釈してしまいます。整数の大小と実際のカテゴリの意味には本来関係がないにもかかわらず、モデル側は数値としてそのまま計算に使ってしまう点が、取り違えやすいところです。
一方で、「小・中・大」や「低・中・高」のように、カテゴリ自体に自然な大小関係を持つ変数は、順序尺度(大小関係に意味がある分類で、満足度の低・中・高などが例にあたります)と呼ばれます。この場合は、その順序をそのまま整数の大小に対応させられるため、ラベルエンコーディングが適した手法です。
2つの尺度と相性の違いを並べると、次のように整理できます。
| 尺度 | 例 | ラベルエンコーディングとの相性 |
|---|---|---|
| 名義尺度 | 都市名、血液型 | 本来は存在しない大小関係をモデルに与えてしまう |
| 順序尺度 | 小・中・大、満足度の低・中・高 | 順序をそのまま整数の大小に対応させられる |
どちらの尺度にあたる変数なのかを見きわめるところが、この手法を使う前の出発点になります。
決定木(ある条件を満たすかどうかで枝分かれさせながら分類・予測を行うモデル)は、ツリー系のモデルの基本形です。これを土台にしたランダムフォレスト(複数の決定木の結果を組み合わせて精度を高める手法)や、勾配ブースティング(決定木を少しずつ改良しながら順番に組み合わせていく手法)も、同じ系統のモデルに含まれます。
これらのモデルは、特徴量(分析に使う個々のデータ項目)の値がある閾値(データを分ける境目となる基準の値)を境に大きいか小さいかで分割しながら学習を進めます。そのため、数値として割り振られた大小関係が人為的なものであっても、その影響を受けにくいとされる点が特徴です。数値の大小をそのまま計算に使う線形回帰(データの関係を直線の式で表して予測するモデル)のようなモデルとの違いとして、あわせて整理しておきたいところです。
ワンホットエンコーディングとの使い分けは、対象のカテゴリ変数が順序のない名義尺度か、順序のある順序尺度かで判断するのが基本的な考え方になります。
3. 関連概念との比較・相違点
近い場面で使われる変換手法を、変換のしかたで並べると違いがつかみやすくなります。
| 手法 | 変換のしかた | 性格 |
|---|---|---|
| ラベルエンコーディング | 連番の整数を1つずつ割り当てる | 列数は増えないが順序を誤解させるリスクがある |
| ワンホットエンコーディング | カテゴリの数だけ0と1の列を作る | 列数は増えるが順序の誤解は生じない |
| ターゲットエンコーディング | 目的変数の平均などの統計量に置き換える | 統計量を使う、より高度な手法 |
| カウントエンコーディング | データ内での出現回数に置き換える | 出現回数を使う、より高度な手法 |
ワンホットエンコーディングとの最大の違いは、次元の増減と順序の誤解が、トレードオフの関係にある点です。ラベルエンコーディングは列数を増やさずに1つの列のまま変換できる一方、順序を誤解させるリスクを抱えます。反対にワンホットエンコーディングは、カテゴリ数だけ列が増える代わりに、順序の誤解が生じない性質を持ちます。つまり両者は、次元を抑えるか順序の誤解を避けるか、という点で表裏の関係にある手法です。
ターゲットエンコーディング(カテゴリを目的変数(予測したい値)の平均などの統計量に置き換える手法)との違いは、整数を振るか、統計量に置き換えるかという発想の差です。カウントエンコーディング(カテゴリをデータ内での出現回数に置き換える手法)との違いも同様で、単純な連番を振るラベルエンコーディングとは発想の異なる、より高度な手法として位置づけられます。
4. ビジネス・実務での活用シナリオ
アンケート分析や顧客満足度調査の現場では、「不満・普通・満足」のような順序のある回答をラベルエンコーディングで整数化し、満足度の傾向を予測するモデルの入力に使う運用が見られます。回答の順序をそのまま整数の大小に対応させられるため、順序尺度に対する適切な使い方の代表例です。
小売業の会員ランク管理でも、「ブロンズ・シルバー・ゴールド」のようなランクをラベルエンコーディングし、ランクが上がるほど数値が大きくなる関係をそのままモデルに反映させます。会員ランクという順序尺度の性質と、整数の大小関係が自然に一致する場面です。
決定木系のモデルを使う実務全般では、住所や商品カテゴリのように順序を持たない変数であっても、ラベルエンコーディングが選ばれる場面があります。列数を増やしたくないという実務上の判断から、ワンホットエンコーディングより簡便な前処理として採用されるケースです。
5. 要点まとめ
- ラベルエンコーディングは、カテゴリ変数の各カテゴリに0,1,2…の連番の整数を割り当てて数値化する手法です。
- 順序のないカテゴリに使うと、モデルが数値の大小関係を誤って学習してしまう副作用があり、順序のあるカテゴリ(順序尺度)には適した手法になります。
- ワンホットエンコーディングとは、次元を増やさない代わりに順序を誤解させるリスクがあるという表裏の関係にあり、決定木系のモデルではこの副作用の影響を受けにくいとされています。
6. 確認問題
問1ラベルエンコーディングは、カテゴリごとに0,1,2…という連番の整数を割り当てて数値に変換する手法である。
解答・解説をみる
○ 正しい
ラベルエンコーディングの定義そのものです。カテゴリの数だけ列を増やすワンホットエンコーディングとは異なり、1つの列のまま整数に置き換える点が特徴です。
問2ラベルエンコーディングは、東京・大阪・福岡のように順序を持たないカテゴリに使っても、モデルが大小関係を誤って学習することはない。
解答・解説をみる
× 誤り
正しくは、順序のないカテゴリにラベルエンコーディングを使うと、本来存在しない大小関係をモデルが数値として解釈してしまう副作用があります。順序のないカテゴリには、次元は増えるものの順序を誤解させないワンホットエンコーディングの方が適した選択です。
問3決定木やランダムフォレストのようなツリー系のモデルは、特徴量の値を閾値で分割して学習する性質上、ラベルエンコーディングによる順序の誤解の影響を受けにくいとされる。
解答・解説をみる
○ 正しい
ツリー系のモデルは数値の大小をそのまま計算に使う線形回帰などとは異なり、閾値による分割で学習するため、人為的に振られた整数の順序があっても影響を受けにくいという特徴があります。

