def _get_small_datasets(padded=False, duration=False, padded_length=1000): if duration: X, Y = example_file_data_sources_for_duration_model() else: X, Y = example_file_data_sources_for_acoustic_model() if padded: X = PaddedFileSourceDataset(X, padded_length=padded_length) Y = PaddedFileSourceDataset(Y, padded_length=padded_length) else: X = FileSourceDataset(X) Y = FileSourceDataset(Y) return X, Y
def test_dtw_frame_length_adjastment(): _, X = example_file_data_sources_for_duration_model() X = FileSourceDataset(X) X_unaligned = X.asarray() # This should trigger frame length adjastment Y_unaligned = np.pad(X_unaligned, [(0, 0), (5, 0), (0, 0)], mode="constant", constant_values=0) Y_unaligned = Y_unaligned[:, :-5, :] for aligner in [DTWAligner(), IterativeDTWAligner( n_iter=1, max_iter_gmm=1, n_components_gmm=1)]: X_aligned, Y_aligned = aligner.transform((X_unaligned, Y_unaligned)) assert X_aligned.shape == Y_aligned.shape