まず、「プログラミング」とは何でしょうか。 プログラミングとは、コンピュータに「これをやってください」と指示を出すことです。 ただし、コンピュータは日本語を理解できません。そこで、コンピュータが理解できる特別な言葉、つま...
日々の売上やアクセス数といった時系列データは、ノイズや季節性の影響で「本当の流れ」が見えにくくなりがちです。 そんなときに役立つのが 移動平均(Moving Average)です。 シンプルながら、データのトレンドや周期...
これまでの2回の記事で、アップリフト分析の基礎とその可視化方法についてお話ししてきました。 第1回ではTwo-Model法を用いてアップリフトスコアを計算する方法を説明しました。 第2回では累積効果曲線やQini曲線を通...
データ分析をしていると、「数万行のデータなのに集計が遅い」「メモリ不足でエラーが出る」といった問題に直面することがあります。 実は、これらの問題の多くは、データ型を適切に設定するだけで解決できることをご存知でしょうか。 ...
前回の第1回の記事では、Two-Model法を用いてアップリフトスコアを計算する方法を学びました。 前回出力したアップリフトスコアの数値の羅列だけでは、どの顧客にアプローチすべきか、モデルがどの程度うまく機能しているかを...
ECサイトやアプリケーションでクーポンを配布したところ、売上が20%向上したという報告を受けたとします。 一見すると施策は成功のように思えますが、ここで重要な疑問が生じます。「そのお客様は、クーポンがなくても購入していた...
Python で時系列予測といえば Prophet。 しかし実務では、データ前処理やハイパーパラメータ調整、追加説明変数(外生変数)との組み合わせが欠かせません。 今回は Prophet を scikit-learn の...
データ分析の世界では、多様な機械学習モデルが活用されています。 そのなかでも「決定木(Decision Tree)」は、判断過程が可視化しやすく解釈性の高いモデルとして人気です。 しかし、実際に決定木を使う際、「どうやっ...
機械学習モデルを本番環境で運用していると、ある日突然「予測精度が急落した」「思ったように結果が出ない」といった問題に直面することがあります。 これらの症状はしばしばデータドリフトと呼ばれる、訓練時と本番時におけるデータ分...
Pandas が登場してから Python はデータ分析の事実上の標準言語になりました。 しかし、データ量が数千万行を超えると途端に RAM が足りない・処理が遅い という現実にぶつかります。 クラスタ環境に逃げる選択肢...