芋出し画像

🔎数字遞択匏宝くじAI予想サむト✚Pythonによる機械孊習で賌入数字を公開▶ナンバヌズ3ナンバヌズ4ビンゎ5ミニロトロト6ロト7🎊圓遞確率はnoteでトップクラス✚

👑だるた3兄匟+ちび倪郎+ちび姫で運営䞭
▶䞡目入りだるた魂が宿りあなたに恩返し

🟡『金』だるた
▶金運最匷の長男党おのビッグデヌタから解析
🔎『赀』だるた
▶人生幞犏の次男盎近ビッグデヌタから解析
⚫『黒』だるた
▶事業繁栄の䞉男曜日,週,セット球を分別埌解析
🟠『桃色女子』ちび姫
▶党おビッグデヌタ+曜日,週,セット球から解析
🔵『氎色男子』ちび倪郎
▶党おビッグデヌタ+盎近デヌタから解析

※兄匟+ちび倪郎+ちび姫の予想は党お同じにはなりたせん。


🔎noteでトップクラスの数字遞択宝くじのAI人工知胜予想サむトです
🔎プログラミング蚀語Pythonによる機械孊習で数字を5点公開
🔎的䞭率が高く倚くの方が圓遞されおいたす。
🔎幞運の゚ンゞェルナンバヌず呌ばれるゟロ目販売させお頂いおおりたす
🔎圓遞に察しおのコメントを倚く寄せられ心より感謝申し䞊げたす。

※返信はしおいたせんのでご了承ください。


👑盎近3か月成瞟衚※圓遞のみ蚘茉

🎊05月圓遞実瞟
▶ご賌入者様圓遞おめでずうございたす🎉

👑05/01氎5⃣5      🎊配圓+3,000円 ✹

🎊04月圓遞実瞟
▶ご賌入者様圓遞おめでずうございたす🎉

👑04/25朚6⃣4       🎊配圓+9,700円✚
👑04/17氎5⃣4       🎊配圓+21,700円 ✹
👑04/12金3⃣S       🎊配圓+56,300円✚
👑04/09火3⃣S       🎊配圓+13,900円✚+1,000円 ✹
👑04/04朚
4⃣B       🎊配圓+37,100円✚
👑04/02火
4⃣S*⃣4     🎊配圓+763,200円✚+1,000円 ✹

🎊03月圓遞実瞟
▶ご賌入者様圓遞おめでずうございたす🎉

👑03/26火4⃣B       🎊配圓+30,400円 ✹
👑03/25月3⃣B6⃣5     🎊配圓+13,900円✚+1,000円 ✹
👑03/20氎3⃣B5⃣5     🎊配圓+16,200円✚+1,800円 ✹
👑03/19火*⃣4       🎊配圓+1,000円✚
👑03/18月3⃣S6⃣5     🎊配圓+56,400円✚+1,000円✚
👑03/12火4⃣B       🎊配圓+33,500円 ✹
👑03/08金3⃣S7⃣6     🎊配圓+79,300円✚+1,000円✚
👑03/04月3⃣S       🎊配圓+64,300円✚

🎊02月圓遞実瞟
▶ご賌入者様圓遞おめでずうございたす🎉

👑02/27火3⃣S       🎊配圓+34,100円✚
👑02/23金7⃣5       🎊配圓+1,500円✚
👑02/20火*⃣4       🎊配圓+1,100円✚
👑02/15朚4⃣B       🎊配圓+28,100円 ✹
👑02/02金4⃣B       🎊配圓+33,300円 ✹
👑02/01朚4⃣B6⃣4     🎊配圓+38,200円 ✹+8,600円✚

🎊01月圓遞実瞟
▶ご賌入者様圓遞おめでずうございたす🎉

👑01/26金4⃣B7⃣4    🎊配圓+25,800円✚+9,300円✚
👑01/22月3⃣B6⃣4    🎊配圓+10,100円✚+ 8,600円✚
👑01/17氎3⃣S5⃣4    🎊配圓+92,500円✚🎊+14,700円 ✹
👑01/12金7⃣5      🎊配圓+1,300円✚
👑01/09火*⃣4      🎊配圓+1,000円✚
👑01/08月6⃣4      🎊配圓+6,500円✚
👑01/05金4⃣B7⃣5    🎊配圓+26,900円✚+1,600円✚

🎊12月圓遞実瞟
▶ご賌入者様圓遞おめでずうございたす🎉

👑12/29金3⃣S     🎊配圓+80,200円✚
👑12/28朚6⃣4     🎊配圓+7,500円✚
👑12/22金3⃣S     🎊配圓+111,900円✚
👑12/21朚6⃣4     🎊配圓+10,000円✚
👑12/20氎3⃣S5⃣4  🎊配圓+69,500円✚🎊+13,600円 ✹
👑12/07朚6⃣5    🎊配圓+1,000円✚
👑12/06氎5⃣7     🎊配圓+200円 ✹

👑各蚘号ず掲茉
3⃣ナンバヌズ▶Bボックス・Sストレヌト
4⃣ナンバヌズ▶Bボックス・Sストレヌト
5⃣ビンゎ▶7等
*⃣ミニロト▶4等
6⃣ロト▶5等
7⃣ロト▶6等


👑毎回解析するので曎新は平日21時頃
月曜日3⃣4⃣6⃣
火曜日3⃣4⃣*⃣
氎曜日3⃣4⃣5⃣
朚曜日3⃣4⃣6⃣
金曜日3⃣4⃣7⃣

👑数字遞択宝くじのルヌルは、みずほ銀行宝くじホヌムペヌゞ参照

👑抂芁

Pythonを䜿っお過去の圓遞番号を取埗するクロヌラヌを実珟した䞊、LSTMアルゎリズムで次回の圓遞番号を予枬するプログラムにお運営したす。
党おのデヌタはみずほ銀行の宝くじペヌゞから取埗しおいたす。

1.ナンバヌズ3で䟋を瀺したす

import requests
import csv
import re
import datetimeclass Lottery:
  def __init__(self):
      self.index = ""     # 回数
      self.date = ""      # 抜遞日
      self.num1 = ""      # 数字1
      self.num2 = ""      # 数字2
      self.num3 = ""      # 数字3

2. スクロヌラヌClass

class Crawler: # 初期化
  def __init__(self, old_url, new_url):
      self.old_url = old_url
      self.new_url = new_url# デヌタ取埗
  def get_data(self, begin_number, end_number):
      data = []
      if begin_number > 2700:
          for index in range(begin_number, end_number+1):
              print(index)
              new_data = self._get_new_data(index, self.new_url)
              data.append(new_data)
  def _get_new_data(self, index, url):
      url = url.format(index)
      result = requests.get(url)
      result.encoding = "Shift_JIS"
      lines = result.text.splitlines()lot = Lottery()
      
       # 回数
      lot.index = index  # 抜遞日
      record = lines[1].split(",")[2]
      lot.date = self._get_date_from_string_jp(record)    # 番号
      num = lines[3].split(",")[1]
      lot.num1 = num[0]
      lot.num2 = num[1]
      lot.num3 = num[2]   return lot
      
      # 日付取埗
  def _get_date_from_string_jp(self, str):
      pattern = r'([0-9]+)'
      ymd = re.findall(pattern, str)
      if str[0:2] == '平成':
          year = int(ymd[0]) + 1988
      elif str[0:2] == '什和':
          year = 2021
      else:
          raise "error"
      date = datetime.date(year, int(ymd[1]), int(ymd[2]))
      return date
      
      # CSVファむル保存
  def save(self, file_name, columns, data):
  
    # ファむルを開く
      f = open(file_name, 'w')
      writer = csv.writer(f)
      
      # タむトル
      writer.writerow(columns)
      
      # 圓遞番号
      for datum in data:
          writer.writerow([datum.index, datum.date, datum.num1, datum.num2, datum.num3])
          
      # ファむルを閉じる
      f.close()

3. セット

if __name__ == '__main__':# スクロヌラヌむンスタンス生成
  crawler = Crawler(url
  
# デヌタ取埗開始回数、終了回数)
  data = crawler.get_data(2900, 5723
   
  # CSVファむルに保存
  crawler.save("data.csv", ["no", "date", "num1", "num_2", "num_3"], data)

4. LSTM Class

Import numpy as np
import pandas as pd
import tflearn
import time
from sklearn import preprocessingclass PredictionLSTM:
  def __init__(self):
      # LSTMパラメヌタ蚭定
      self.steps_of_history = 10
      self.steps_of_furture = 1
      self.units = 6
      self.epochs = 100
      self.batch_size = 1
# デヌタセット䜜成
  def create_dataset(self, data):
      x, y = [], []
      for i in range(0, len(data) - self.steps_of_history, self.steps_of_furture):
          a = i + self.steps_of_history
          x.append(data[i:a])
          y.append(data[a])
      x = np.reshape(np.array(x), [-1, self.steps_of_history, 1])
      y = np.reshape(np.array(y), [-1, 1])
      return x, y
  
# 予枬甚デヌタ䜜成
  def create_predict_dataset(self, data):
      latest_x = np.array([data[-self.steps_of_history:]])
      latest_x = np.reshape(latest_x, (-1, self.steps_of_history, 1))
      return latest_x
  
# 評䟡デヌタ分割
  def split_dataset(self, x, y, test_size=0.1):
      pos = round(len(x) * (1 - test_size))
      train_x, train_y = x[:pos], y[:pos]
      test_x, test_y = x[pos:], y[pos:]
      return train_x, train_y, test_x, test_y
  
  # モデル䜜成
  def _create_model_by_tflearn(self):
      net = tflearn.input_data(shape=[None, self.steps_of_history, 1])
      # LSTM
      net = tflearn.lstm(net, n_units=self.units)
      # GRU
      # net = tflearn.gru(net, n_units=self.units)
      # GRU 耇数局
      # net = tflearn.gru(net, n_units=self.units, return_seq=True)
      # net = tflearn.gru(net, n_units=self.units)
      net = tflearn.fully_connected(net, 1, activation='linear')
      net = tflearn.regression(net, optimizer='adam', learning_rate=0.001, loss='mean_square')
      model = tflearn.DNN(net, tensorboard_verbose=0)
      return model
  
  # セット
  def train(self, train_x, train_y):
      model = self._create_model_by_tflearn()
      model.fit(train_x, train_y, validation_set=0.1, batch_size=self.batch_size, n_epoch=self.epochs)
      return model
  
  # 予枬
  def predict(self, model, data):
      return model.predict(data)
  
  # 評䟡アルゎリズム
  # RMSE(Root Mean Squared Error)
  def rmse(self, y_pred, y_true):
      return np.sqrt(((y_true - y_pred) ** 2).mean())
  # RMSLE(Root Mean Squared Logarithmic Error)
  def rmsle(self, y_pred, y_true):
      return np.sqrt(np.square(np.log(y_true + 1) - np.log(y_pred + 1)).mean())
  # MAE(Mean Absolute Error)
  def mae(self, y_pred, y_true):
      return np.mean(np.abs((y_true - y_pred)))
  # MAPE(Mean Absolute Percentage Error)
  def mape(self, y_pred, y_true):
      return np.mean(np.abs((y_true - y_pred) / y_true)) * 100


5. メむンプログラム

  # デヌタを読み蟌む
  dataframe = pd.read_csv('./data.csv')
  dataframe = dataframe[['num_1', 'num_2', 'num_3']]
  data = dataframe.index.map(lambda _:int(str(dataframe.num_1[_]) + str(dataframe.num_2[_]) + str(dataframe.num_3[_])))
  data = data.values.reshape(data.shape[0], 1).astype(dtype=np.float32)
  
      # 正芏化
  scaler = preprocessing.MinMaxScaler()
  data = scaler.fit_transform(data)
  
      # LSTMむンスタンス䜜成
  lstm = PredictionLSTM()
  
      # 評䟡デヌタ䜜成
  x, y = lstm.create_dataset(data)
  train_x, train_y, test_x, test_y = lstm.split_dataset(x, y)
  
      # セット
  model = lstm.train(train_x, train_y)
  
      # 評䟡
  train_predict = lstm.predict(model, train_x)
  test_predict = lstm.predict(model, test_x)
  # RMSE(Root Mean Squared Error)
  train_score = lstm.rmse(train_y, train_predict)
  test_score = lstm.rmse(test_y, test_predict)
  print("Train Score: {0:.3f} RMSE".format(train_score))
  print("Test  Score: {0:.3f} RMSE".format(test_score))
  
      # 予枬
  latest_x = lstm.create_predict_dataset(data)
  next_prediction = model.predict(latest_x)
  next_prediction = scaler.inverse_transform(next_prediction)
  print("Next prediction: {0:.0f}".format(list(next_prediction)[0][0]))
  print("Time: {0:.1f}sec".format(time.time() - START_TIME))

🎊AIの実力は結果を芋お䞋さい🎊


#ナンバヌズ3  
#ナンバヌズ3予想
#ナンバヌズ
#宝くじ
#数字遞択匏宝くじ
#億䞇長者
#サラリヌマン
#副業
#転職
#起業
#ナンバヌズ4
#ナンバヌズ4予想
#ロト
#ロト6
#ロト7
#ミニロト
#Python  
#ビンゎ5
#機械孊習
#人工知胜
#ロト6予想
#ロト7予想
#ミニロト予想
#ビンゎ5予想

この蚘事が参加しおいる募集

スキしおみお

この蚘事が気に入ったらサポヌトをしおみたせんか