# Collapse strided so that it has one more dimension than the window. I.e., # the new array is a flat list of slices. meat = len(ws) if ws.shape else 0 firstdim = (np.product(newshape[:-meat]), ) if ws.shape else () dim = firstdim + (newshape[-meat:]) return strided.reshape(dim) #(X_train, y_train), (X_test, y_test) = full_bpm_to_data(get_interesting_heartrates(HEART_AV_ROOT)) ns = NormalizedSubjectSplitSpectrograms( subjectIdependant=True) #NormalizedSpectrograms() #ns = NormalizedSubjectSplitSpectrograms(subjectIdependant=False)#NormalizedSpectrograms() ns = NormalizedSpectrograms(getVideoSpectrograms()) X_train, Y_train = ns.getTrainData() print(X_train.shape) ws = np.array(X_train.shape) ss = np.array(X_train.shape) ws = (1, 1, 200, 50) ss = (1, 1, 200, 5) X_train = sliding_window(X_train, ws, ss, True) X_train = X_train[:, 0, :, :, :] X_val, Y_val = ns.getValidationData() X_val = X_val[:, :, :, 0:50] repeat_cnt = 4 Y_train = repeat_n_times(Y_train, repeat_cnt) Y_train = np.repeat(Y_train, X_train.shape[0] // Y_train.shape[0], axis=0)
from spectrogram import full_bpm_to_data, HEART_AV_ROOT, NormalizedSpectrograms, NormalizedSubjectSplitSpectrograms, getVideoSpectrograms from get_heartrates import get_interesting_heartrates from keras.callbacks import EarlyStopping from kbhit import KBHit import numpy as np import code import random import learnLib kb = KBHit() #(X_train, y_train), (X_test, y_test) = full_bpm_to_data(get_interesting_heartrates(HEART_AV_ROOT)) #ns = NormalizedSubjectSplitSpectrograms(subjectIdependant=False)#NormalizedSpectrograms() ns = NormalizedSpectrograms(getVideoSpectrograms()) def sliceToTimeSeries(X): divisibleTime = X[:, 0, :, :21] slicedTime = np.reshape(divisibleTime, (-1, X.shape[2], 7, 3)) swappedAxes = np.swapaxes(slicedTime, 1, 2) flattenLastTwo = np.reshape(swappedAxes, (X.shape[0], 7, -1)) return flattenLastTwo X_train, Y_train = ns.getTrainData() X_val, Y_val = ns.getValidationData() #slice the spectrogram X_train = sliceToTimeSeries(X_train) print(X_train.shape)
from spectrogram import full_bpm_to_data, HEART_AV_ROOT, NormalizedSpectrograms from get_heartrates import get_interesting_heartrates from keras.callbacks import EarlyStopping from kbhit import KBHit import numpy as np import code import random import learnLib kb = KBHit() #(X_train, y_train), (X_test, y_test) = full_bpm_to_data(get_interesting_heartrates(HEART_AV_ROOT)) ns = NormalizedSpectrograms() (X_train, Y_train) , valTuple = ns.getTrainAndValidationData() print(X_train.shape) print("Model: nb_hiddens, drop1s") prevLoss = 34534645735673 maxModel = None stop = False models = {} X_validate, Y_validate = valTuple for args in learnLib.RandomMlpParameters(): #itertools.product(nb_hiddens, drop1s): print("Model: ", args) model = learnLib.get_2_layer_MLP_model(X_train[0].shape, *args)
from spectrogram import full_bpm_to_data, HEART_AV_ROOT, NormalizedSpectrograms, NormalizedSubjectSplitSpectrograms, getVideoSpectrograms from get_heartrates import get_interesting_heartrates from keras.callbacks import EarlyStopping from kbhit import KBHit import numpy as np import code import random import learnLib kb = KBHit() #(X_train, y_train), (X_test, y_test) = full_bpm_to_data(get_interesting_heartrates(HEART_AV_ROOT)) #ns = NormalizedSubjectSplitSpectrograms(subjectIdependant=False)#NormalizedSpectrograms() ns = NormalizedSpectrograms(getVideoSpectrograms()) def sliceToTimeSeries(X): divisibleTime = X[:,0,:,:21] slicedTime = np.reshape(divisibleTime, (-1, X.shape[2], 7, 3)) swappedAxes = np.swapaxes(slicedTime, 1, 2) flattenLastTwo = np.reshape(swappedAxes,(X.shape[0],7 , -1)) return flattenLastTwo X_train, Y_train = ns.getTrainData() X_val, Y_val = ns.getValidationData() #slice the spectrogram X_train = sliceToTimeSeries(X_train) print(X_train.shape) #Y_train = np.repeat(np.reshape(-1,1), X_train.shape[1], axis=1)
from spectrogram import full_bpm_to_data, HEART_AV_ROOT, NormalizedSpectrograms from get_heartrates import get_interesting_heartrates from keras.callbacks import EarlyStopping from kbhit import KBHit import numpy as np import code import random import learnLib kb = KBHit() # (X_train, y_train), (X_test, y_test) = full_bpm_to_data(get_interesting_heartrates(HEART_AV_ROOT)) ns = NormalizedSpectrograms() def sliceToTimeSeries(X): divisibleTime = X[:, 0, :, :150] slicedTime = np.reshape(divisibleTime, (-1, X.shape[2], 30, 5)) swappedAxes = np.swapaxes(slicedTime, 1, 2) flattenLastTwo = np.reshape(swappedAxes, (X.shape[0], 30, -1)) return flattenLastTwo (X_train, Y_train), (X_val, Y_val) = ns.getTrainAndValidationData() # slice the spectrogram X_train = sliceToTimeSeries(X_train) print(X_train.shape) # Y_train = np.repeat(np.reshape(-1,1), X_train.shape[1], axis=1) print(Y_train.shape)
from spectrogram import full_bpm_to_data, HEART_AV_ROOT, NormalizedSpectrograms, NormalizedSubjectSplitSpectrograms, getVideoSpectrograms from get_heartrates import get_interesting_heartrates from keras.callbacks import EarlyStopping from kbhit import KBHit import numpy as np import code import random import learnLib kb = KBHit() #(X_train, y_train), (X_test, y_test) = full_bpm_to_data(get_interesting_heartrates(HEART_AV_ROOT)) #ns = NormalizedSubjectSplitSpectrograms() ns = NormalizedSpectrograms(getVideoSpectrograms()) (X_train, Y_train) = ns.getTrainData() valTuple = ns.getValidationData() print(X_train.shape) print("Model: nb_hiddens, drop1s") prevLoss = 34534645735673 maxModel = None stop = False models = {} X_validate, Y_validate = valTuple for args in learnLib.RandomMlpParameters(): #itertools.product(nb_hiddens, drop1s):