def _load_embeddings(self, trial_folder): X = [] for embed_json in Tools.search(trial_folder, ('embed_', ), substr=True): with open(embed_json, 'r') as f: D = json.load(f) x = np.zeros((len(list(D)), Config.TCN_EMB_SIZE), dtype=float) for ii, key in enumerate(sorted(list(D))): x[ii, :] = np.array(D[key]) X.append(np.copy(x)) X = np.stack(X, axis=0) X = np.mean(X, axis=0) return (trial_folder, X)
def _init_dimred(self, data_root, n_components): Y = [] pbar = tqdm(Tools.search(data_root, ('embed_left.json', 'embed_middle.json', 'embed_right.json', 'embed_steady.json', 'embed_mobile.json'))) pbar.set_description('load tcn embeddings') for embed_file in pbar: with open(embed_file, 'r') as f: embed_dict = json.load(f) for k, embedding in embed_dict.items(): if np.isnan(embedding).any(): pyout(k, embed_file) sys.exit(0) Y.append(embedding) Y = np.array(Y) return self._dimred_fit(Y, n_components=n_components)