PR:この記事にはアフィリエイトリンクが含まれます。
Pythonで機械学習を仕事に使うと、モデルを決める前に欠損値やカテゴリ、日時の扱いで迷いがちです。scikit-learnの前処理や特徴量設計を本で学ぶなら、基礎・実装・実データのどこで手が止まるのか、まず整理しましょう。
前処理からケーススタディまで、学べる範囲は本ごとに異なります。データリークを避ける分割や、予測時点に合わせた特徴量づくりも身につけると、学習したことを仕事のデータにつなげやすくなりますよ。
本の早見表
| 書名 | 刊行 | ページ | 主な内容 | 参考価格(税込) |
|---|---|---|---|---|
scikit-learn、Keras、TensorFlowによる実践機械学習 第3版 | 2024年 | 796頁 | scikit-learnから深層学習まで | 5,830円 |
Pythonではじめる機械学習 — scikit-learnで学ぶ特徴量エンジニアリングと機械学習の基礎 | 2017年 | 392頁 | 前処理と特徴量設計の基礎 | 3,740円 |
Python機械学習クックブック 第2版 | 2024年 | 428頁 | 216の実装レシピ | 4,180円 |
Kaggleで勝つデータ分析の技術 | 2019年 | 424頁 | 実データ、検証、特徴量作成 | 3,608円 |
機械学習のための特徴量エンジニアリング — その原理とPythonによる実践 | 2019年 | 224頁 | 特徴量変換の原理と実例 | 3,300円 |
事例で学ぶ特徴量エンジニアリング | 2023年 | 320頁 | 5つのケーススタディ | 3,960円 |
表示価格は税込の参考価格です。販売価格は時期や店によって変わるため、購入時に確認してください。
scikit-learnを使い始めたばかりなら、前処理の流れを追える本から読むと理解しやすいでしょう。モデルを作った経験がある人は、実装レシピや事例でデータに応じた特徴量の考え方を深められます。
前処理の勘所
欠損値は、埋めれば済むとは限りません。入力忘れなのか、記録対象外なのかで意味が違います。値がないこと自体を示す欠損フラグが、予測の手がかりになる場合もありますね。
数値の桁や尺度が大きく違うと、距離や係数を使うモデルは一部の列に引っぱられやすくなります。標準化や正規化が助けになる一方、決定木系では変換の影響が小さいことも。モデルの性質に合わせたいところです。
カテゴリ値は、段階を表すのか、単なる名前なのかを見分けて扱います。名称に整数を割り当てると、モデルが値の大小に意味があると受け取ることもあります。順序のないカテゴリは、ワンホット表現で扱えます。
外れ値を見つけても、すぐに削除するのは早計です。入力ミスなら修正や除外を検討できますが、取引額の急増が現実の変化なら大事な信号かもしれません。処理前後の分布と予測への影響を見て判断します。
分割とリーク
学習用とテスト用に分ける前に、全体の平均や標準偏差を計算するとテスト側の情報が学習へ漏れます。補完や尺度変換、特徴量選択は、分割後に学習データだけで当てはめるのが基本です。
scikit-learnのPipelineに前処理とモデルをまとめると、交差検証の各分割で変換を学習し直せます。数値列とカテゴリ列を別々に処理するなら、ColumnTransformerも便利です。処理順がコードに残るので、再現もしやすくなります。
時系列予測でランダムにデータを分けると、未来の情報が過去側へ入り込むことがあります。予測日より後に確定する値は使わず、過去から未来へ進む順で検証しましょう。顧客や店舗ごとの予測でも、同じ対象が両側に入る影響を点検します。
特徴量の考え方
特徴量設計では、予測に関係する情報を、予測時点で使える形に整えます。解約予測なら契約期間に加え、直近の利用回数や前月からの変化も手がかりになるでしょう。
数値を区間に分けるビニングは、値と結果の関係が直線的でないときに役立ちます。年齢帯のような区分のほか、二つの値の積や多項式項を加える方法もあります。検証データでも効果が続くかは確かめてください。
特徴量を増やすほど精度が上がるとは限りません。似た列や偶然の相関を含めると、学習データに過度に適合し、未知のデータで崩れることがあります。特徴量選択も、交差検証の内側で学習させる必要があります。
実務では精度とあわせて、特徴量の意味を説明できるかも大切です。注文数そのものに加え、予測日までや直近30日間と集計期間を明記すれば、値の意味や再現条件が伝わりやすくなります。
データ別の変換
文章データなら、単語の出現を数えるBag-of-Wordsや、文書内の重要度を重みづけるTF-IDFが基本的な表現です。語彙が増えるほど特徴量は疎で高次元になりがち。メモリや処理時間も考えて設計しましょう。
日時は年や曜日に分けるだけでなく、経過日数、締め日までの日数、過去期間の集計にも変換できます。売上予測で移動平均やラグ特徴量を作るときは、予測時点より前の値だけを使い、未来の情報が紛れないようにします。
カテゴリ数の多い列をワンホット化すると、列数が膨らみます。低頻度の値をまとめたり、特徴量ハッシングを使ったりする方法もありますが、希少なカテゴリが重要な信号のことも。変換後の列数と未知の値への対応を確認しましょう。
入門から実装へ
「Pythonではじめる機械学習」は、Pythonとscikit-learnの基礎から前処理、特徴量エンジニアリングへ進む構成です。392頁で、スケール変換やパイプライン、カテゴリ変数、ビニング、交互作用、多項式変換、特徴量選択まで扱います。
学習データとテストデータに変換をどう適用するかも学べます。ここが実務で役立つところ。scikit-learnで一連の処理を組みたい初学者には、最初の一冊としてすすめやすい内容です。参考価格は税込3,740円。
「Python機械学習クックブック 第2版」は、欠損値や外れ値、スケーリングから日時・画像データまで扱う216のレシピを収録した428頁の本です。通読はもちろん、目の前の課題に近い項目を開き、実装のたたき台にする使い方もできます。
事例で深める
「Kaggleで勝つデータ分析の技術」は、分析コンペの実データを使い、欠損値処理やテーブル結合、集約、ラグ特徴量に加えて、検証やデータリークも扱います。表形式データで分析の工夫を学びたい人に合う一冊。参考価格は税込3,608円です。
「機械学習のための特徴量エンジニアリング」は、モデルの基礎を押さえた人が、特徴量加工を掘り下げるための224頁の本です。数値変換に加えて、カテゴリ表現、Bag-of-Words、TF-IDF、特徴量ハッシング、PCAも扱います。
「事例で学ぶ特徴量エンジニアリング」には、自然言語処理、画像、時系列などを対象とする5つのケーススタディを収録。Pythonに慣れた機械学習エンジニアが、分野ごとの特徴量設計を学ぶのにおすすめです。参考価格は税込3,960円です。
現場の検証
特徴量を足したら、同じ分割条件で追加前後を比べます。分類では適合率や再現率、回帰では誤差指標など、業務上の損失に近い評価軸を設定しましょう。全体のスコアだけでなく、顧客群や期間ごとの偏りも見ておきたいですね。
前処理とモデルを一つのPipelineにまとめれば、交差検証でも本番予測でも同じ変換を通せます。学習時の列定義や集計期間、欠損処理を記録しておくと、あとから予測の変化を追いやすくなります。
運用中にデータの分布が変わると、以前の検証で予測精度に寄与した特徴量が、運用後には役立たなくなることがあります。月ごとの欠損率やカテゴリ頻度、予測誤差を見て、変化があれば再検証を。特徴量設計は作って終わりではなく、観測と更新が続きます。
結論
Pythonとscikit-learnをこれから実務で使うなら、最初の一冊には「Pythonではじめる機械学習」をすすめます。前処理パイプラインと特徴量設計を基礎からつなげて学べます。税込の参考価格は3,740円です。
すぐ参照できる実装例が必要なら「Python機械学習クックブック 第2版」、表形式データの検証やリークまで知りたいなら「Kaggleで勝つデータ分析の技術」を選んでください。特徴量の原理を深めるなら、224頁の「機械学習のための特徴量エンジニアリング」が合います。
機械学習全体を広く学びたい人には「scikit-learn、Keras、TensorFlowによる実践機械学習 第3版」、分野別のケースから設計を考えたい人には「事例で学ぶ特徴量エンジニアリング」をすすめます。価格は税込の参考価格で、実売価格は時期や販売店によって変わります。
Amazon の PC をスコア化してみた
Amazonにある8〜14インチの小型WindowsタブレットやノートPCを、スペック別にスコア化して比較・ランキング。







