المشاركات

Write in Python using Keras to Predict Bitcoin Prices using Recurrent Neural Network and a Bitcoin Dataset.

Bane Sons

 import numpy as np

import pandas as pd

import matplotlib.pyplot as plt


from sklearn.preprocessing import MinMaxScaler

from sklearn.metrics import mean_squared_error


from keras.models import Sequential

from keras.layers import SimpleRNN, Dense


# Load data

df = pd.read_csv("bitcoin.csv", parse_dates=["Date"], index_col="Date")

data = df[["Close"]].values


# Normalize + prepare dataset

scaler = MinMaxScaler()

scaled = scaler.fit_transform(data)



def make_dataset(seq, step=60):

    X, y = [], []

    for i in range(step, len(seq)):

        X.append(seq[i-step:i, 0])

        y.append(seq[i, 0])

    return np.array(X), np.array(y)



X, y = make_dataset(scaled)

X = X.reshape((X.shape[0], X.shape[1], 1))


# Build model

model = Sequential([

    SimpleRNN(50, input_shape=(X.shape[1], 1)),

    Dense(1)

])


model.compile(optimizer="adam", loss="mse")

model.fit(X, y, epochs=20, batch_size=32, verbose=1)


# Predict

pred = scaler.inverse_transform(model.predict(X))

actual = scaler.inverse_transform(y.reshape(-1, 1))


# Plot

plt.plot(actual, label="Actual")

plt.plot(pred, label="Predicted")

plt.title("Bitcoin Price Prediction (RNN)")

plt.legend()

plt.show()


# Evaluate

rmse = np.sqrt(mean_squared_error(actual, pred))

print("RMSE:", rmse)

إرسال تعليق