Advertisement
max2201111

VLADIMIR DEEP NN pst vyhry na zaklade ELO rozdilu

Aug 13th, 2024
122
0
Never
Not a member of Pastebin yet? Sign Up, it unlocks many cool features!
Python 2.33 KB | Science | 0 0
  1. import numpy as np
  2. from tensorflow.keras.models import Sequential
  3. from tensorflow.keras.layers import Dense
  4. import matplotlib.pyplot as plt
  5.  
  6. # Trénovací data
  7. train_data = np.array([
  8.     [332, 1], [289, 1], [250, 1], [91, 1], [-91, 1], [-206, 1], [-206, 1],
  9.     [-228, 1], [-239, 1], [-256, 1], [-266, 1], [-278, 1], [-279, 1],
  10.     [-289, 1], [-297, 1], [-297, 1], [-311, 1], [-312, 1], [-324, 1],
  11.     [-348, 1], [-396, 1], [-509, 1], [-521, 1], [-526, 1], [-550, 1],
  12.     [-606, 1], [-633, 1], [-728, 1], [550, 0], [385, 0], [341, 0], [289, 0],
  13.     [228, 0], [137, 0], [110, 0], [75, 0], [-33, 0], [-70, 0], [-226, 0],
  14.     [-251, 0], [-263, 0], [-273, 0], [-280, 0], [-390, 0], [-440, 0],
  15.     [792, 0], [757, 0], [718, 0], [591, 0], [585, 0], [578, 0], [524, 0],
  16.     [512, 0], [463, 0], [455, 0], [431, 0], [421, 0], [396, 0], [387, 0],
  17.     [386, 0], [379, 0], [370, 0], [361, 0], [341, 0], [339, 0], [338, 0],
  18.     [328, 0], [323, 0], [307, 0], [303, 0], [288, 0], [284, 0], [282, 0],
  19.     [277, 0], [232, 0], [164, 0], [131, 0], [108, 0], [35, 0], [8, 0],
  20.     [-87, 0], [-228, 0], [-230, 0], [-276, 0], [-347, 0], [-367, 0],
  21.     [-543, 0], [294, 1], [284, 1], [104, 1], [-186, 1], [-238, 1], [-262, 1],
  22.     [-280, 1], [-325, 1], [-326, 1], [-384, 1], [-422, 1], [-498, 1],
  23.     [390, 0], [266, 0], [-297, 0], [-331, 0], [585, 0], [531, 0], [520, 0],
  24.     [465, 0], [251, 0], [133, 0], [55, 0], [-228, 0], [-248, 0], [-306, 0]
  25. ])
  26.  
  27. # Rozdělení na vstupy (X) a výstupy (y)
  28. X_train = train_data[:, 0].reshape(-1, 1)
  29. y_train = train_data[:, 1]
  30.  
  31. # Definování modelu
  32. model = Sequential([
  33.     Dense(10, input_dim=1, activation='relu'),
  34.     Dense(8, activation='relu'),
  35.     Dense(1, activation='sigmoid')
  36. ])
  37.  
  38. # Kompilace modelu
  39. model.compile(optimizer='adam', loss='binary_crossentropy', metrics=['accuracy'])
  40.  
  41. # Trénování modelu
  42. model.fit(X_train, y_train, epochs=100, batch_size=10, verbose=1)
  43.  
  44. # Vykreslení pravděpodobností výhry na základě Elo rozdílu
  45. elo_values = np.arange(-1000, 1000, 10)
  46. elo_probabilities = model.predict(elo_values)
  47.  
  48. plt.figure(figsize=(10, 6))
  49. plt.plot(elo_values, elo_probabilities, label='Pravděpodobnost výhry')
  50. plt.xlabel('Elo rozdíl')
  51. plt.ylabel('Pravděpodobnost výhry')
  52. plt.title('Pravděpodobnost výhry na základě Elo rozdílu')
  53. plt.grid(True)
  54. plt.legend()
  55. plt.show()
  56.  
Advertisement
Add Comment
Please, Sign In to add comment
Advertisement