input: Write a function to construct a neural network in Python that can perform basic regression. The function should load data from 'data.csv', split the data into features and labels, train a neural network using the Keras library, and evaluate the model. If the filename is not valid, the function should raise a FileNotFoundError.
  assert basic_regression('data.csv') == 'Test score: 0.05'
  assert basic_regression('invalid_file.csv') == FileNotFoundError
  assert basic_regression('empty_data.csv') == 'Test score: 0.0'
output: def basic_regression(filename):
      import pandas as pd
      from sklearn.model_selection import train_test_split
      from sklearn.preprocessing import StandardScaler
      from tensorflow.keras.models import Sequential
      from tensorflow.keras.layers import Dense
      import numpy as np
  
      try:
          data = pd.read_csv(filename)
      except FileNotFoundError:
          raise FileNotFoundError
  
      if data.empty:
          return 'Test score: 0.0'
  
      X = data.iloc[:, :-1].values
      y = data.iloc[:, -1].values
  
      X_train, X_test, y_train, y_test = train_test_split(X, y, test_size=0.2, random_state=42)
  
      scaler = StandardScaler()
      X_train = scaler.fit_transform(X_train)
      X_test = scaler.transform(X_test)
  
      model = Sequential()
      model.add(Dense(10, input_dim=X_train.shape[1], activation='relu'))
      model.add(Dense(1))
  
      model.compile(loss='mean_squared_error', optimizer='adam')
      model.fit(X_train, y_train, epochs=100, batch_size=10, verbose=0)
  
      test_loss = model.evaluate(X_test, y_test, verbose=0)
      return f'Test score: {test_loss:.2f}'