DeepSpeech file path issue

I’m trying to train a model using the common voice dataset and after the import the CSV file seems to contain the wrong paths for the audio files. I’m not even sure that they have been converted to wav files but I’m not sure if there’s a good way to check. The CSV files paths seem to prefix an additional data/CV/en/clips for whatever reason.

It states the path here as
/home/mo/DeepSpeech/data/CV/en/clips/data/CV/en/clips/deb9b9bd3ab1daa5fb5dbb553b0230ff843bf338913c213e70c978676683be6a74b06b644a6ba368042a1d8b4eb1bf764fe5537b6231d4825d67dcb04f8a8c2b

when it should be /home/mo/DeepSpeech/data/CV/en/clips/deb9b9bd3ab1daa5fb5dbb553b0230ff843bf338913c213e70c978676683be6a74b06b644a6ba368042a1d8b4eb1bf764fe5537b6231d4825d67dcb04f8a8c2b

How do I change this? Or should I edit the CSV files to find the correct paths? If so how would I do that? It sounds like a noob question probably because it is.

WARNING:tensorflow:From /home/mo/tmp/deepspeech-venv/lib/python3.6/site-packages/tensorflow/python/data/ops/dataset_ops.py:429: py_func (from tensorflow.python.ops.script_ops) is deprecated and will be removed in a future version.
Instructions for updating:
tf.py_func is deprecated in TF V2. Instead, use
tf.py_function, which takes a python function which manipulates tf eager
tensors instead of numpy arrays. It’s easy to convert a tf eager tensor to
an ndarray (just call tensor.numpy()) but having access to eager tensors
means tf.py_functions can use accelerators such as GPUs as well as
being differentiable using a gradient tape.

WARNING:tensorflow:From /home/mo/tmp/deepspeech-venv/lib/python3.6/site-packages/tensorflow/python/data/ops/iterator_ops.py:358: colocate_with (from tensorflow.python.framework.ops) is deprecated and will be removed in a future version.
Instructions for updating:
Colocations handled automatically by placer.
WARNING:tensorflow:From /home/mo/tmp/deepspeech-venv/lib/python3.6/site-packages/tensorflow/contrib/rnn/python/ops/lstm_ops.py:696: to_int64 (from tensorflow.python.ops.math_ops) is deprecated and will be removed in a future version.
Instructions for updating:
Use tf.cast instead.
I Initializing variables…
I STARTING Optimization
Epoch 0 | Training | Elapsed Time: 0:00:00 | Steps: 0 | Loss: 0.000000 Traceback (most recent call last):
File “/home/mo/tmp/deepspeech-venv/lib/python3.6/site-packages/tensorflow/python/client/session.py”, line 1334, in _do_call
return fn(*args)
File “/home/mo/tmp/deepspeech-venv/lib/python3.6/site-packages/tensorflow/python/client/session.py”, line 1319, in _run_fn
options, feed_dict, fetch_list, target_list, run_metadata)
File “/home/mo/tmp/deepspeech-venv/lib/python3.6/site-packages/tensorflow/python/client/session.py”, line 1407, in _call_tf_sessionrun
run_metadata)
tensorflow.python.framework.errors_impl.NotFoundError: /home/mo/DeepSpeech/data/CV/en/clips/data/CV/en/clips/deb9b9bd3ab1daa5fb5dbb553b0230ff843bf338913c213e70c978676683be6a74b06b644a6ba368042a1d8b4eb1bf764fe5537b6231d4825d67dcb04f8a8c2b.wav; No such file or directory
[[{{node ReadFile}}]]
[[{{node tower_0/IteratorGetNext}}]]

During handling of the above exception, another exception occurred:

Traceback (most recent call last):
File “./DeepSpeech.py”, line 829, in
tf.app.run(main)
File “/home/mo/tmp/deepspeech-venv/lib/python3.6/site-packages/tensorflow/python/platform/app.py”, line 125, in run
_sys.exit(main(argv))
File “./DeepSpeech.py”, line 813, in main
train()
File “./DeepSpeech.py”, line 510, in train
train_loss, _ = run_set(‘train’, epoch, train_init_op)
File “./DeepSpeech.py”, line 483, in run_set
feed_dict=feed_dict)
File “/home/mo/tmp/deepspeech-venv/lib/python3.6/site-packages/tensorflow/python/client/session.py”, line 929, in run
run_metadata_ptr)
File “/home/mo/tmp/deepspeech-venv/lib/python3.6/site-packages/tensorflow/python/client/session.py”, line 1152, in _run
feed_dict_tensor, options, run_metadata)
File “/home/mo/tmp/deepspeech-venv/lib/python3.6/site-packages/tensorflow/python/client/session.py”, line 1328, in _do_run
run_metadata)
File “/home/mo/tmp/deepspeech-venv/lib/python3.6/site-packages/tensorflow/python/client/session.py”, line 1348, in _do_call
raise type(e)(node_def, op, message)
tensorflow.python.framework.errors_impl.NotFoundError: /home/mo/DeepSpeech/data/CV/en/clips/data/CV/en/clips/deb9b9bd3ab1daa5fb5dbb553b0230ff843bf338913c213e70c978676683be6a74b06b644a6ba368042a1d8b4eb1bf764fe5537b6231d4825d67dcb04f8a8c2b.wav; No such file or directory
[[{{node ReadFile}}]]
[[node tower_0/IteratorGetNext (defined at ./DeepSpeech.py:183) ]]

How exactly did you call the importer on the command line?

Where do the CSVs live? When the CSVs have relative file paths, they’re considered to be relative to the folder the CSV file is in. If your CSV files contain paths beginning with data/CV/en/clips then they should be next to the data folder, in this case in /home/mo/DeepSpeech.

I used this line from the DeepSpeech documentation.

bin/import_cv2.py --filter_alphabet path/to/some/alphabet.txt /path/to/extracted/language/archive

So I should simply move them to the data folder so they can find the path that’s stated… I can already tell this is probably the solution and I’m going to feel really silly. Thank you. I’ll try it.

Not to the data folder, next to it. So if data is in your DeepSpeech folder, put the CSV in the DeepSpeech folder.

Oh okay, I misread. That makes sense.