🐈
loto6の当選番号を予想しようとして失敗
愚者の思考
loto6、当たらないよね。
43個の数字の内、6個が同時に当たる、1等の確率は609万分の1。
3個が同時に当たる、最低の五等でも約40分の1という小さな確率だ。
5等に当たるために、40口購入すれば8000円。
当選金は1000円だから、必ず損する仕組みになっている。
だから、このくじを買う事はお勧めしない。
しかし買わなければ、当たる可能性もない。
609万分の1が、いかに小さな確率であっても、人は夢を見る
そうだ。Tensorflowでデータの特徴量が抽出できないだろうか?
このような馬鹿げた予想に、コーディングエージェントを利用しよう、という浅はかさ。
そして、見事に失敗する、という予想された結末。
- julesに以下のプロンプトで指示。
tensorflowを用いて、loto6の予想プログラムを作ります。
データはxlsx形式で、
開催回|日付|第1数字|第2数字|第3数字|第4数字|第5数字|第6数字
という構造になっています。
実際に使用する本番データの代わりに、ダミーデータを作成し、読み込みます。
それを学習データとし、LSTMモデルを構築し、それを用いて次回の本数字の番号を予測します。
過学習を防ぐために、Early Stopping、Normalizationなどを組み込みます。
また、学習曲線をグラフ出力します。
- 生成されたコード
- これをColabで実行するには、ドライブをマウントするコードを書く必要があります。
def is_drive_mounted():
return os.path.exists('/content/drive/MyDrive')
if __name__ == '__main__':
if not is_drive_mounted():
from google.colab import drive
drive.mount('/content/drive')
# --- 設定 ---
# 実際のLOTO6データが入ったExcelファイルのパスを指定してください。
# このパスが空欄の場合、プログラムは自動でダミーデータを生成して実行します。
# 例: FILE_PATH = 'C:/Users/YourUser/Documents/loto6_data.xlsx'
FILE_PATH = '/content/drive/MyDrive/tf_models/loto6.xlsx' # ← ここに実際のファイルのパスを入力
データはtf_modelsというフォルダに置きます。ここにloto6.xlsx(過去の当選番号一覧)を置き、モデルのトレーニングを実施します。
結果
loss,val_lossともに0.04付近を行き来し、安定しない。
これは、モデルが特徴量を見いだせないことを示す。
[6,12,25,31,35]が平均値になるのだが、このプログラムで予想出来る数値は
[6,12,27,32,35]で、ほぼ「平均値」に収束することがわかった。
したがって、このプロジェクトは失敗だ、ということになる。
当たり前のことであるが、AIを利用してランダムな値を予想しようなどと思わないことだ。
このプロジェクトを作る過程で学習した事
- Colabの使い道
- kerasの使い方
- モデルのチューニングのやりかた
- データをモデルに学習させる方法
Discussion