from __future__ import print_function import numpy as np import googleprediction model = googleprediction.GooglePredictor( "myproject", "mybucket/X_train_spectra_ave_goog.csv", "tswift_fft_ave", "client_secrets.json") model.list() model.fit('CLASSIFICATION') model.get_params() with np.load("data_files.npz") as data: X_train = data['X_train'] Y_train = data['Y_train'] X_test = data['X_test'] Y_test = data['Y_test'] X_comp = data['X_comp'] del data X_train = np.float64(X_train) X_test = np.float64(X_test) X_comp = np.float64(X_comp) def convert_to_spectra(X): out = [] for row in X: xfft = np.fft.fft(row) n = len(xfft) half_n = np.ceil(n/2.0) xfft = (2.0 / n) * xfft[1:half_n] out.append(np.abs(xfft)) out = np.array(out) return out X_train_spectra = convert_to_spectra(X_train) X_test_spectra = convert_to_spectra(X_test) X_comp_spectra = convert_to_spectra(X_comp) def moving_average(X, n=3): ret = [] for row in X: row = np.cumsum(row) row[n:] = row[n:] - row[:-n] row = row[n - 1:] / n ret.append(row) ret = np.array(ret) return ret X_train_spectra = moving_average(X_train_spectra, n=5) X_test_spectra = moving_average(X_test_spectra, n=5) X_comp_spectra = moving_average(X_comp_spectra, n=5) X_train_spectra = np.int16(X_train_spectra) X_test_spectra = np.int16(X_test_spectra) X_comp_spectra = np.int16(X_comp_spectra) Y_test.shape out = model.predict(X_test_spectra) print(out) out = np.int16(out) out.shape from sklearn.metrics import classification_report, accuracy_score, confusion_matrix print(classification_report(np.int16(Y_test), out)) confusion_matrix(Y_test, out, labels=[0, 1]) print(accuracy_score(Y_test, out)) np.savetxt("gpapi_test_pred_fft.csv", np.array(out,dtype=int), delimiter=',', fmt='%i')