input: Write a function to create and train a neural network in Python using the Keras library to predict the price of a house given a set of features. The function should compile the model with mean squared error (MSE) as the loss function and the Adam optimizer. After compiling, the function should train the model using the provided input features.
  
  def predict_house_price(features):
      import numpy as np
      from keras.models import Sequential
      from keras.layers import Dense
  
      model = Sequential()
      model.add(Dense(64, input_dim=features.shape[1], activation='relu'))
      model.add(Dense(32, activation='relu'))
      model.add(Dense(1, activation='linear'))
  
      model.compile(loss='mse', optimizer='adam', metrics=['mse'])
  
      model.fit(features, batch_size=3, epochs=200)
  
  assert predict_house_price(np.array([[0.8, 0.4, 0.7]])) is not None
  assert predict_house_price(np.array([[1.0, 0.5, 0.8]])) is not None
  assert predict_house_price(np.array([[0.1, 0.9, 0.2]])) is not None
  assert predict_house_price(np.array([[0.3, 0.6, 0.4]])) is not None
  assert predict_house_price(np.array([[0.2, 0.7, 0.1]])) is not None
output: 
  def predict_house_price(features):
      import numpy as np
      from keras.models import Sequential
      from keras.layers import Dense
  
      model = Sequential()
      model.add(Dense(64, input_dim=features.shape[1], activation='relu'))
      model.add(Dense(32, activation='relu'))
      model.add(Dense(1, activation='linear'))
  
      model.compile(loss='mse', optimizer='adam', metrics=['mse'])
  
      model.fit(features, np.zeros((features.shape[0], 1)), batch_size=3, epochs=200, verbose=0)
  
      return model.predict(features)
  