0
0

Delete article

Deleted articles cannot be recovered.

Draft of this article would be also deleted.

Are you sure you want to delete this article?

AIで宝くじを予想してみる(その2)

0
Posted at

はじめに

前回の宝くじの予測では、当選番号を数値のまま大きさとして扱いましたが、今回はOne-Hotモデルを使用して数値をカテゴリー(独立したラベル)として扱って予測してみたいと思います。

環境

環境 version
Raspberry Pi 5 Ubuntu 26.04 LTS
Tensor Flow 2.20.0
Python3 3.13.7
JupyterLab 4.4.9

モデル

前回は当選番号を1から43の数値のまま扱いましたが、今回は当選番号をOne-Hotモデルとして扱います。
今回のモデルはこちらになります。

当選番号

1 2 3 4 5 6 ボーナス
2 8 10 13 27 30 39

の場合、One-Hotモデルでは

Number   1 2 3 4 5 6 7 8 9 10 11 12 13 14 ... 27 28 29 30 31 ... 38 39 ... 43
One-Hot  0 1 0 0 0 0 0 1 0  1  0  0  1  0 ...  1  0  0  1  0 ...  0  1 ...  0

とします。

活性化関数にはSigmoidを使用しています。
各数字が独立してその回に出現する確率を0から1で計算するため、全43個の出力を足しても1にはなりません。これをSoftmaxにすると、合計が1になるように分配されるため、全ての値が

1\div43\approx0.023

付近になります。

学習結果

直近の20回(第2082回から第2101回)の結果から第2102回の当選番号を予測してみました。
AIが出した予想は下記になります。
どの数字も15%から18%の間の確率で出現するという結果になりました。
どの数字が選ばれるかはランダムでありフラットということだと思われます。

活性化関数にはSigmoidを使用しているので、
出力結果はそれぞれの数字が出現する確率となります。

0.15052876 0.16989382 0.1613776  0.16770077 0.15495245 0.18441603
0.1514841  0.16332847 0.15156297 0.17578736 0.15825047 0.16213447
0.15130284 0.1583491  0.16759512 0.1601822  0.14779699 0.16058975
0.16188006 0.15836477 0.164791   0.16700073 0.15950052 0.16514318
0.15600598 0.16148485 0.17193832 0.17586912 0.14675365 0.16237979
0.15816776 0.16508798 0.15359959 0.15951845 0.15831767 0.15981893
0.17347278 0.16603951 0.16660036 0.15196516 0.15440544 0.16303362
0.17111774

第2102回の当選番号とAIが予測した数字の出現確率

当選番号 AIが予想した出現確率(0〜1)
18 0.16058975
21 0.164791
25 0.15600598
28 0.17586912
30 0.16237979
43 0.17111774
8 0.16332847

編集後記

全ての数字が選ばれる確率は大体同じという結果になったと思います。
宝くじは趣味で購入して、地道にやっていきなさいという人生の心理にAIが辿り着いたように思います。
次回は、宝くじの予想で学んだことを使って、気象情報から電力の使用量を予想してみたいと思います。

環境について

Ubuntuのバージョンを26.04 LTSにアップデートしたことで、既存のTensorFlowの環境が使用できなくなりました。
最新バージョンのPythonにTensorFlowが対応していないため、今回はPython3.12を使用しました。
下記の手順で復帰しました。

$> sudo apt upgrade
$> sudo apt install -y software-properties-common
$> sudo add-apt-repository ppa:deadsnakes/ppa
$> sudo apt update
$> sudo apt install -y python3.12 python3.12-venv

$> python3.12 -m venv .aienv
$> source .aienv/bin/activate
(.aienv) $> pip3 install --upgrade pip
(.aienv) $> pip install jupyterlab
(.aienv) $> pip install tensorflow
0
0
0

Register as a new user and use Qiita more conveniently

  1. You get articles that match your needs
  2. You can efficiently read back useful information
  3. You can use dark theme
What you can do with signing up
0
0

Delete article

Deleted articles cannot be recovered.

Draft of this article would be also deleted.

Are you sure you want to delete this article?