Exemplo n.º 1
0
def test_actual_results_dtw_multiscale(params, res_desired):
    """Test that the actual results are the expected ones."""
    x = np.arange(4)
    y = np.arange(1, 5)

    (dtw_actual, cost_mat_actual, acc_cost_mat_actual,
     path_actual) = dtw_multiscale(x, y, **params_return, **params)
    np.testing.assert_allclose(cost_mat_actual, res_desired['cost_mat'])
    np.testing.assert_allclose(dtw_actual, res_desired['dtw'])
    np.testing.assert_allclose(path_actual, res_desired['path'])
    np.testing.assert_allclose(acc_cost_mat_actual,
                               res_desired['acc_cost_mat'])
Exemplo n.º 2
0
def test_parameter_check_dtw_multiscale(params, error, err_msg):
    """Test parameter validation."""
    with pytest.raises(error, match=re.escape(err_msg)):
        dtw_multiscale(x, y, **params)
Exemplo n.º 3
0
@pytest.mark.parametrize(
    'params, res_desired',
    [({}, dtw_classic(x, y, **params_return)),

     ({'method': 'sakoechiba'}, dtw_sakoechiba(x, y, **params_return)),

     ({'method': 'sakoechiba', 'options': {'window_size': 0.5}},
      dtw_sakoechiba(x, y, **params_return)),

     ({'method': 'itakura'}, dtw_itakura(x, y, **params_return)),

     ({'method': 'itakura', 'options': {'max_slope': 8}},
      dtw_itakura(x, y, max_slope=8, **params_return)),

     ({'method': 'multiscale'}, dtw_multiscale(x, y, **params_return)),

     ({'method': 'multiscale', 'options': {'resolution': 1}},
      dtw_multiscale(x, y, resolution=1, **params_return)),

     ({'method': 'multiscale', 'options': {'radius': 2}},
      dtw_multiscale(x, y, radius=2, **params_return)),

     ({'method': 'fast'}, dtw_fast(x, y, **params_return)),

     ({'method': 'fast', 'options': {'radius': 1}},
      dtw_fast(x, y, radius=1, **params_return))]
)
def test_actual_results_dtw(params, res_desired):
    """Test that the actual results are the expected ones."""
    (dtw_actual, cost_mat_actual, acc_cost_mat_actual, path_actual) = dtw(
Exemplo n.º 4
0
     'options': {
         'window_size': 2
     }
 }, dtw_sakoechiba(x, y, window_size=2, **params_return)),
 ({
     'method': 'itakura'
 }, dtw_itakura(x, y, **params_return)),
 ({
     'method': 'itakura',
     'options': {
         'max_slope': 8
     }
 }, dtw_itakura(x, y, max_slope=8, **params_return)),
 ({
     'method': 'multiscale'
 }, dtw_multiscale(x, y, **params_return)),
 ({
     'method': 'multiscale',
     'options': {
         'resolution': 1
     }
 }, dtw_multiscale(x, y, resolution=1, **params_return)),
 ({
     'method': 'multiscale',
     'options': {
         'radius': 2
     }
 }, dtw_multiscale(x, y, radius=2, **params_return)),
 ({
     'method': 'fast'
 }, dtw_fast(x, y, **params_return)),