To develop a neural network regression model for the given dataset.
Neural networks consist of simple input/output units called neurons. These units are interconnected and each connection has a weight associated with it. Neural networks are flexible and can be used for both classification and regression. In this article, we will see how neural networks can be applied to regression problems.
Regression helps in establishing a relationship between a dependent variable and one or more independent variables. Regression models work well only when the regression equation is a good fit for the data. Although neural networks are complex and computationally expensive, they are flexible and can dynamically pick the best type of regression, and if that is not enough, hidden layers can be added to improve prediction.
Build your training and test set from the dataset, here we are making the neural network 3 hidden layer with activation layer as relu and with their nodes in them. Now we will fit our dataset and then predict the value.
![5DL Output](https://private-user-images.githubusercontent.com/94154679/261410557-805127af-a950-439d-a90a-874c100368b6.png?jwt=eyJhbGciOiJIUzI1NiIsInR5cCI6IkpXVCJ9.eyJpc3MiOiJnaXRodWIuY29tIiwiYXVkIjoicmF3LmdpdGh1YnVzZXJjb250ZW50LmNvbSIsImtleSI6ImtleTUiLCJleHAiOjE3MjIxMjAyMzcsIm5iZiI6MTcyMjExOTkzNywicGF0aCI6Ii85NDE1NDY3OS8yNjE0MTA1NTctODA1MTI3YWYtYTk1MC00MzlkLWE5MGEtODc0YzEwMDM2OGI2LnBuZz9YLUFtei1BbGdvcml0aG09QVdTNC1ITUFDLVNIQTI1NiZYLUFtei1DcmVkZW50aWFsPUFLSUFWQ09EWUxTQTUzUFFLNFpBJTJGMjAyNDA3MjclMkZ1cy1lYXN0LTElMkZzMyUyRmF3czRfcmVxdWVzdCZYLUFtei1EYXRlPTIwMjQwNzI3VDIyMzg1N1omWC1BbXotRXhwaXJlcz0zMDAmWC1BbXotU2lnbmF0dXJlPTA1ZWE0Nzc4ZjI2NzVhNzk2NjhjYWVlM2Y5YjMyZjg3MjI4NDNmMGYwNjQ5ZDkxM2NiYjM0MWU4OTMzNTc1ZGUmWC1BbXotU2lnbmVkSGVhZGVycz1ob3N0JmFjdG9yX2lkPTAma2V5X2lkPTAmcmVwb19pZD0wIn0.KgCAjq8M1hyR4S5-ujvpQYbrZJMD7clZ6IBgnqcTIV8)
STEP 1: Loading the dataset.
STEP 2: Split the dataset into training and testing.
STEP 3: Create MinMaxScalar objects ,fit the model and transform the data.
STEP 4: Build the Neural Network Model and compile the model.
STEP 5: Train the model with the training data.
STEP 6: Plot the performance plot.
STEP 7: Evaluate the model with the testing data.
Developed By: Palamakula Deepika
RegNo: 212221240035
import pandas as pd
from sklearn.model_selection import train_test_split
from sklearn.preprocessing import MinMaxScaler
from tensorflow.keras.models import Sequential
from tensorflow.keras.layers import Dense
from google.colab import auth
import gspread
from google.auth import default
auth.authenticate_user()
creds, _ = default()
gc = gspread.authorize(creds)
worksheet = gc.open('dl').sheet1
data = worksheet.get_all_values()
dataset = pd.DataFrame(data[1:], columns=data[0])
dataset = dataset.astype({'Input':'float'})
dataset = dataset.astype({'Output':'float'})
dataset.head()
X = dataset[['Input']].values
Y = dataset[['Output']].values
x_train,x_test,y_train,y_test = train_test_split(X,Y,test_size = 0.33,random_state = 20)
Scaler = MinMaxScaler()
Scaler.fit(x_train)
x_train_scale = Scaler.transform(x_train)
my_brain = Sequential([
Dense(units = 4, activation = 'relu' , input_shape=[1]),
Dense(units = 6),
Dense(units = 1)
])
my_brain.compile(optimizer='rmsprop',loss='mse')
my_brain.fit(x=x_train_scale,y=y_train,epochs=20000)
loss_df = pd.DataFrame(my_brain.history.history)
loss_df.plot()
x_test1 = Scaler.transform(x_test)
my_brain.evaluate(x_test1,y_test)
X_n1 = [[30]]
input_scaled = Scaler.transform(X_n1)
my_brain.predict(input_scaled)
![image](https://private-user-images.githubusercontent.com/94154679/261395926-26747e79-1a9a-4219-97ad-2fe6b79be2ee.png?jwt=eyJhbGciOiJIUzI1NiIsInR5cCI6IkpXVCJ9.eyJpc3MiOiJnaXRodWIuY29tIiwiYXVkIjoicmF3LmdpdGh1YnVzZXJjb250ZW50LmNvbSIsImtleSI6ImtleTUiLCJleHAiOjE3MjIxMjAyMzcsIm5iZiI6MTcyMjExOTkzNywicGF0aCI6Ii85NDE1NDY3OS8yNjEzOTU5MjYtMjY3NDdlNzktMWE5YS00MjE5LTk3YWQtMmZlNmI3OWJlMmVlLnBuZz9YLUFtei1BbGdvcml0aG09QVdTNC1ITUFDLVNIQTI1NiZYLUFtei1DcmVkZW50aWFsPUFLSUFWQ09EWUxTQTUzUFFLNFpBJTJGMjAyNDA3MjclMkZ1cy1lYXN0LTElMkZzMyUyRmF3czRfcmVxdWVzdCZYLUFtei1EYXRlPTIwMjQwNzI3VDIyMzg1N1omWC1BbXotRXhwaXJlcz0zMDAmWC1BbXotU2lnbmF0dXJlPWVlY2NmMDkzNjc1MjIxZGZmNGE1ODQ3MDEwMGJmNWEzNDFlNzA4YWFlMWMwMDdkOThjOTZlMjM1MDMyNDFkZmImWC1BbXotU2lnbmVkSGVhZGVycz1ob3N0JmFjdG9yX2lkPTAma2V5X2lkPTAmcmVwb19pZD0wIn0.kXaoOxpj8aoANXVOjWSC9-S8WNUDwfCIRmRrfN_Eag0)
![image](https://private-user-images.githubusercontent.com/94154679/261409293-75dc78b4-0531-45ff-8664-51517c472f03.png?jwt=eyJhbGciOiJIUzI1NiIsInR5cCI6IkpXVCJ9.eyJpc3MiOiJnaXRodWIuY29tIiwiYXVkIjoicmF3LmdpdGh1YnVzZXJjb250ZW50LmNvbSIsImtleSI6ImtleTUiLCJleHAiOjE3MjIxMjAyMzcsIm5iZiI6MTcyMjExOTkzNywicGF0aCI6Ii85NDE1NDY3OS8yNjE0MDkyOTMtNzVkYzc4YjQtMDUzMS00NWZmLTg2NjQtNTE1MTdjNDcyZjAzLnBuZz9YLUFtei1BbGdvcml0aG09QVdTNC1ITUFDLVNIQTI1NiZYLUFtei1DcmVkZW50aWFsPUFLSUFWQ09EWUxTQTUzUFFLNFpBJTJGMjAyNDA3MjclMkZ1cy1lYXN0LTElMkZzMyUyRmF3czRfcmVxdWVzdCZYLUFtei1EYXRlPTIwMjQwNzI3VDIyMzg1N1omWC1BbXotRXhwaXJlcz0zMDAmWC1BbXotU2lnbmF0dXJlPWE5YjBiNjYyODE1NzgzYmExNzllNDdkM2I0ZmYyMjNhZjUxNDUxMDIwMDA4NjJjNjkwMmNmMzg4ODcyNTFjMjImWC1BbXotU2lnbmVkSGVhZGVycz1ob3N0JmFjdG9yX2lkPTAma2V5X2lkPTAmcmVwb19pZD0wIn0.SwM-42c-g1k5eYCCUu4Ydx-5OkrgBlCj08kVmuiess0)
![image](https://private-user-images.githubusercontent.com/94154679/261409568-d13bd1f7-a2d9-4e25-9638-0b782b1e43bf.png?jwt=eyJhbGciOiJIUzI1NiIsInR5cCI6IkpXVCJ9.eyJpc3MiOiJnaXRodWIuY29tIiwiYXVkIjoicmF3LmdpdGh1YnVzZXJjb250ZW50LmNvbSIsImtleSI6ImtleTUiLCJleHAiOjE3MjIxMjAyMzcsIm5iZiI6MTcyMjExOTkzNywicGF0aCI6Ii85NDE1NDY3OS8yNjE0MDk1NjgtZDEzYmQxZjctYTJkOS00ZTI1LTk2MzgtMGI3ODJiMWU0M2JmLnBuZz9YLUFtei1BbGdvcml0aG09QVdTNC1ITUFDLVNIQTI1NiZYLUFtei1DcmVkZW50aWFsPUFLSUFWQ09EWUxTQTUzUFFLNFpBJTJGMjAyNDA3MjclMkZ1cy1lYXN0LTElMkZzMyUyRmF3czRfcmVxdWVzdCZYLUFtei1EYXRlPTIwMjQwNzI3VDIyMzg1N1omWC1BbXotRXhwaXJlcz0zMDAmWC1BbXotU2lnbmF0dXJlPTRjZWUyYzBiMDZkZjE2MTJlM2YyZWU1MWFlNDQzNWZkNWJhOWQ4OTU4Yjg0Mjc1NDMxNTRhOWU1N2ZhYWUyOWYmWC1BbXotU2lnbmVkSGVhZGVycz1ob3N0JmFjdG9yX2lkPTAma2V5X2lkPTAmcmVwb19pZD0wIn0.eavLq_AwdEq9-UEm_cGlvZ-1BnxpnONHpX2YYk3-o-I)
![image](https://private-user-images.githubusercontent.com/94154679/261409643-44902350-db35-4f75-9fdc-20b2add571cc.png?jwt=eyJhbGciOiJIUzI1NiIsInR5cCI6IkpXVCJ9.eyJpc3MiOiJnaXRodWIuY29tIiwiYXVkIjoicmF3LmdpdGh1YnVzZXJjb250ZW50LmNvbSIsImtleSI6ImtleTUiLCJleHAiOjE3MjIxMjAyMzcsIm5iZiI6MTcyMjExOTkzNywicGF0aCI6Ii85NDE1NDY3OS8yNjE0MDk2NDMtNDQ5MDIzNTAtZGIzNS00Zjc1LTlmZGMtMjBiMmFkZDU3MWNjLnBuZz9YLUFtei1BbGdvcml0aG09QVdTNC1ITUFDLVNIQTI1NiZYLUFtei1DcmVkZW50aWFsPUFLSUFWQ09EWUxTQTUzUFFLNFpBJTJGMjAyNDA3MjclMkZ1cy1lYXN0LTElMkZzMyUyRmF3czRfcmVxdWVzdCZYLUFtei1EYXRlPTIwMjQwNzI3VDIyMzg1N1omWC1BbXotRXhwaXJlcz0zMDAmWC1BbXotU2lnbmF0dXJlPTFjYWEzZmQwYjNkZjM1OWJhODlkMzY4NTRhZjhhMzUyY2Q5YWNlODM3ZDY2NTQ4YmRmYmU2MDQ3ODNmNGQ0MDgmWC1BbXotU2lnbmVkSGVhZGVycz1ob3N0JmFjdG9yX2lkPTAma2V5X2lkPTAmcmVwb19pZD0wIn0.YgN88vU07jqrStV8KykGwMorWW7-6w9e-0r_mUsDJeQ)
Therefore We successfully developed a neural network regression model for the given dataset.