input: Write a python function to perform K-Fold cross-validation on a given model and dataset and return the average score.
  assert k_fold_cross_validation(Model(), data, n_splits=5) > 0
  assert k_fold_cross_validation(Model(), data, n_splits=10) > 0
output: def k_fold_cross_validation(model, data, n_splits):
      from sklearn.model_selection import KFold
      import numpy as np
      
      kf = KFold(n_splits=n_splits)
      scores = []
      
      for train_index, test_index in kf.split(data):
          train_data = data[train_index]
          test_data = data[test_index]
          
          model.fit(train_data)
          score = model.score(test_data)
          scores.append(score)
      
      average_score = np.mean(scores)
      return average_score