背景・目的
私は、現在データエンジニアリングを生業としています。普段は、データ基盤の構築や、パフォーマンスチューニングなどビックデータに関する業務に従事しています。
ビックデータの収集や、蓄積、分析などの環境構築の経験はそこそこありますが、機械学習による予測や分類などのスキルは持ち合わせていませんでした。
今まで機械学習を避け続けてきましたが、一念発起し学ぼうと思います。
学び方としては、AWS Certified Machine Learning – Specialty(以降、ML試験という。)の勉強を通して、理解を深めていきます。ML試験のガイドの第2分野に、探索的データ解析が登場しましたのでそこから学びたいと思います。
今回は、以下のうちトークナイゼーションについて学びたいと思います。
特徴エンジニアリングの概念を分析/評価する (データのビニング、トークナイゼーション、外れ値、合成的特徴、One-Hot エンコーディング、次元低減)
なお、過去の機械学習の調べてみたシリースは下記にまとめています。
-
2.探索的データ分析
-
2.1.モデリング用のデータをサニタイズおよび準備する
-
2.2.特徴エンジニアリングを実行する
-
機械学習プロセス
まとめ
トークナイゼーションとは、元ある文字を乱数に置き換えること。変換前後で1:1の関係となるため文字数の増減はない。
復号を前提にしておらず、機密情報の長期保存に適している。
概要
トークナイゼーション
トークナイゼーションを検索したものの、機械学習に特化した記事は見つかりませんでした。
トークナイゼーションは、機械学習に限った話ではなく一般的な物を指すのでしょうか。ちょっとわからないので、ITトレンドさんの記事にトークナイゼーションとは?概要や仕組みについて詳しく解説!が載っていましたので、気にせず読み進めたいと思います。
トークナイゼーションとは、カード番号などの機密情報を乱数に置き換えることで、第三者による取得を防止する技術です。置き換えられた乱数をトークンと呼びます。
- 機密情報などを乱数に置換すること、置き換えられた乱数をトークンという。
- 暗号化とは異なる。暗号化は復号を前提にしているがトークナイゼーションは違う。マイナンバーやクレカの情報などを長期保存する仕組みと指定利用されている。
トークナイゼーションの仕組み
- 暗号化とは異なり、数学的な法則は存在しない。変換後データから変換前データに戻すことは不可能。
- 変換後データと変換前データは1:1で対応しているため、変換後データが有れば変換前データを特定することは可能。
- これにより、普段検索や、照合する際にはトークンを使い、必要に応じて元データにアクセスする。
- メリット
- 桁数が変わることはないため、今あるシステムの改修が不要。
- 様々な機密データに対応できる。マイナンバー、クレカ、健保番号、年金番号などの保護も可能。
- トークナイゼーションは、PCI DSS(PCI DSSは以下を参照。)のデータ保護の要件に記載されている4つのデータ保護方法の1つとなっている。
- 機密データをトークン化により変換した場合、無意味な文字列のみを持つクラウドサービス側はPCI DSSの審査対象から除外(非保持化)することができるため、PCI DSS審査範囲(スコープ)の縮小できる。
- トークナイゼーションは、改正個人情報保護法にて新たに定められた「匿名加工情報」における加工方法の1つであり、同法対応の手段として活用することも可能.
PCI DSSとは?
Wikipediaによると、以下のように記載がありました。
PCI DSS(Payment Card Industry Data Security Standard)は、 クレジットカード情報および取り引き情報を保護するために2004年12月、JCB・American Express・Discover・マスターカード・VISAの国際ペイメントブランド5社が共同で策定した、クレジット業界におけるグローバルセキュリティ基準である。 2016年4月28日に改訂版であるV3.2が発表された。このバージョンは2016年11月1日発効となる。 これに伴いV3.1は2016年10月31日に失効し、PCI SSCは、2016年4月28日付でPCI DSS v3.2の公開を行った。[1]
- Payment Card Industry Data Security Standard
- クレカ、取引情報を保護するために策定されたクレジット業界におけるグローバルセキュリティ基準
- PCI DSSバージョン3.2には、以下の12の要件がある。
- ネットワークとシステムの安全な構成
- システムのデフォルトパスワードの変更
- 保有するカードデータの保護
- 送信するカードデータの暗号化
- システムとウイルス対策のアップデート
- 安全なシステムの開発と保守
- カードデータの利用目的の制限
- システムへのアクセス制限
- カードデータへのアクセス制限
- システムやカードデータへのアクセスログ監視
- システムと手順の定期的な確認
考察
トークナイゼーションの理屈は分かりましたが、これを機械学習とどう結びつけていくかが未だ想像出来ていません。
今後、明らかになり次第、本ページを更新していこうと思います。
参考