Давая радиус r и площадь круга, я хочу, чтобы NN предсказывал правильные значения. Однако приведенный ниже код не предсказывал. Какие изменения мне нужно внести в функцию потери / оптимизации? Было бы здорово, если бы вы предоставили некоторые причины для выбора функции потери / оптимизации.
from tensorflow import keras
import numpy as np
model = keras.Sequential([keras.layers.Dense(units=1, input_shape=[1])])
model.compile(optimizer='sgd', loss='mean_squared_error')
radiusTrainValues = np.array([1.0,2.0,3.0, 4.0, 5.0, 6.0], dtype=float)
areaTrainValues = np.array([3.14159,12.56637, 28.27433,50.26548,78.53982,113.09734], dtype=float)
model.fit(radiusTrainValues, areaTrainValues, epochs=5000)
radiusTestVlues = np.array([7.0,8.0,9.0, 10.0], dtype=float)
areaTestVlues = np.array([153.93804,201.06193,254.469,314.15927], dtype=float)
print("Input :",radiusTestVlues)
print("CorrectVlues :",areaTestVlues)
print("TF Predicted:",model.predict(radiusTestVlues))