CoolFace
Apppublic

sandhiyabk/Nextnum_prediction-RNN

sourceHugging Faceupdated 1y agoView on Hugging Face
0likes
app.py61 linesDownload Raw Back to root
1# -*- coding: utf-8 -*-2"""app.ipynb3 4Automatically generated by Colab.5 6Original file is located at7    https://colab.research.google.com/drive/19GYFqCVk_WtiyASOcEeMQkqp5Mv5e03E8"""9 10import numpy as np11import tensorflow as tf12import gradio as gr13from tensorflow.keras.models import Sequential14from tensorflow.keras.layers import SimpleRNN, Dense15 16# Prepare data17sequence = np.array([i for i in range(1, 101)])18window_size = 319x, y = [], []20for i in range(len(sequence) - window_size):21    x.append(sequence[i:i+window_size])22    y.append(sequence[i + window_size])23x = np.array(x).reshape(-1, window_size, 1)24y = np.array(y)25 26# Build and train model27model = Sequential([28    SimpleRNN(50, activation='relu', input_shape=(window_size, 1)),29    Dense(1)30])31model.compile(optimizer='adam', loss='mse')32model.fit(x, y, epochs=100, verbose=0)33model.save("my_model.keras")34 35# Load model36model = tf.keras.models.load_model("my_model.keras")37 38# Gradio function39def predict_next(a: float, b: float, c: float):40    try:41        input_seq = np.array([a, b, c]).reshape(1, 3, 1)42        prediction = model.predict(input_seq, verbose=0)43        return f"Predicted next value: {prediction[0][0]:.2f}"44    except:45        return "Error in prediction. Please enter valid numbers."46 47# Gradio UI48interface = gr.Interface(49    fn=predict_next,50    inputs=[51        gr.Number(label="First number"),52        gr.Number(label="Second number"),53        gr.Number(label="Third number")54    ],55    outputs="text",56    title="๐Ÿ“ˆ RNN Time Series Predictor",57    description="Enter three sequential numbers to predict the next number using a trained SimpleRNN model."58)59 60# Launch the app61interface.launch()