nkululeko 0.95.7__tar.gz → 0.95.9__tar.gz
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
- {nkululeko-0.95.7 → nkululeko-0.95.9}/CHANGELOG.md +9 -0
- {nkululeko-0.95.7/nkululeko.egg-info → nkululeko-0.95.9}/PKG-INFO +1 -1
- nkululeko-0.95.9/nkululeko/autopredict/ap_translate.py +39 -0
- nkululeko-0.95.9/nkululeko/autopredict/google_translator.py +63 -0
- {nkululeko-0.95.7 → nkululeko-0.95.9}/nkululeko/constants.py +1 -1
- {nkululeko-0.95.7 → nkululeko-0.95.9}/nkululeko/experiment.py +5 -0
- {nkululeko-0.95.7 → nkululeko-0.95.9}/nkululeko/plots.py +8 -2
- {nkululeko-0.95.7 → nkululeko-0.95.9}/nkululeko/utils/util.py +5 -2
- {nkululeko-0.95.7 → nkululeko-0.95.9/nkululeko.egg-info}/PKG-INFO +1 -1
- {nkululeko-0.95.7 → nkululeko-0.95.9}/nkululeko.egg-info/SOURCES.txt +2 -0
- {nkululeko-0.95.7 → nkululeko-0.95.9}/pyproject.toml +1 -1
- {nkululeko-0.95.7 → nkululeko-0.95.9}/LICENSE +0 -0
- {nkululeko-0.95.7 → nkululeko-0.95.9}/README.md +0 -0
- {nkululeko-0.95.7 → nkululeko-0.95.9}/data/aesdd/process_database.py +0 -0
- {nkululeko-0.95.7 → nkululeko-0.95.9}/data/ased/process_database.py +0 -0
- {nkululeko-0.95.7 → nkululeko-0.95.9}/data/asvp-esd/process_database.py +0 -0
- {nkululeko-0.95.7 → nkululeko-0.95.9}/data/baved/process_database.py +0 -0
- {nkululeko-0.95.7 → nkululeko-0.95.9}/data/cafe/process_database.py +0 -0
- {nkululeko-0.95.7 → nkululeko-0.95.9}/data/clac/process_database.py +0 -0
- {nkululeko-0.95.7 → nkululeko-0.95.9}/data/cmu-mosei/process_database.py +0 -0
- {nkululeko-0.95.7 → nkululeko-0.95.9}/data/demos/process_database.py +0 -0
- {nkululeko-0.95.7 → nkululeko-0.95.9}/data/ekorpus/process_database.py +0 -0
- {nkululeko-0.95.7 → nkululeko-0.95.9}/data/emns/process_database.py +0 -0
- {nkululeko-0.95.7 → nkululeko-0.95.9}/data/emofilm/convert_to_16k.py +0 -0
- {nkululeko-0.95.7 → nkululeko-0.95.9}/data/emofilm/process_database.py +0 -0
- {nkululeko-0.95.7 → nkululeko-0.95.9}/data/emorynlp/process_database.py +0 -0
- {nkululeko-0.95.7 → nkululeko-0.95.9}/data/emov-db/process_database.py +0 -0
- {nkululeko-0.95.7 → nkululeko-0.95.9}/data/emovo/process_database.py +0 -0
- {nkululeko-0.95.7 → nkululeko-0.95.9}/data/emozionalmente/create.py +0 -0
- {nkululeko-0.95.7 → nkululeko-0.95.9}/data/enterface/process_database.py +0 -0
- {nkululeko-0.95.7 → nkululeko-0.95.9}/data/esd/process_database.py +0 -0
- {nkululeko-0.95.7 → nkululeko-0.95.9}/data/gerparas/process_database.py +0 -0
- {nkululeko-0.95.7 → nkululeko-0.95.9}/data/iemocap/process_database.py +0 -0
- {nkululeko-0.95.7 → nkululeko-0.95.9}/data/jl/process_database.py +0 -0
- {nkululeko-0.95.7 → nkululeko-0.95.9}/data/jtes/process_database.py +0 -0
- {nkululeko-0.95.7 → nkululeko-0.95.9}/data/meld/process_database.py +0 -0
- {nkululeko-0.95.7 → nkululeko-0.95.9}/data/mesd/process_database.py +0 -0
- {nkululeko-0.95.7 → nkululeko-0.95.9}/data/mess/process_database.py +0 -0
- {nkululeko-0.95.7 → nkululeko-0.95.9}/data/mlendsnd/process_database.py +0 -0
- {nkululeko-0.95.7 → nkululeko-0.95.9}/data/msp-improv/process_database2.py +0 -0
- {nkululeko-0.95.7 → nkululeko-0.95.9}/data/msp-podcast/process_database.py +0 -0
- {nkululeko-0.95.7 → nkululeko-0.95.9}/data/oreau2/process_database.py +0 -0
- {nkululeko-0.95.7 → nkululeko-0.95.9}/data/portuguese/process_database.py +0 -0
- {nkululeko-0.95.7 → nkululeko-0.95.9}/data/ravdess/process_database.py +0 -0
- {nkululeko-0.95.7 → nkululeko-0.95.9}/data/ravdess/process_database_speaker.py +0 -0
- {nkululeko-0.95.7 → nkululeko-0.95.9}/data/savee/process_database.py +0 -0
- {nkululeko-0.95.7 → nkululeko-0.95.9}/data/shemo/process_database.py +0 -0
- {nkululeko-0.95.7 → nkululeko-0.95.9}/data/subesco/process_database.py +0 -0
- {nkululeko-0.95.7 → nkululeko-0.95.9}/data/tess/process_database.py +0 -0
- {nkululeko-0.95.7 → nkululeko-0.95.9}/data/thorsten-emotional/process_database.py +0 -0
- {nkululeko-0.95.7 → nkululeko-0.95.9}/data/urdu/process_database.py +0 -0
- {nkululeko-0.95.7 → nkululeko-0.95.9}/data/vivae/process_database.py +0 -0
- {nkululeko-0.95.7 → nkululeko-0.95.9}/docs/source/conf.py +0 -0
- {nkululeko-0.95.7 → nkululeko-0.95.9}/examples/__init__.py +0 -0
- {nkululeko-0.95.7 → nkululeko-0.95.9}/meta/demos/demo_best_model.py +0 -0
- {nkululeko-0.95.7 → nkululeko-0.95.9}/meta/demos/my_experiment.py +0 -0
- {nkululeko-0.95.7 → nkululeko-0.95.9}/meta/demos/my_experiment_local.py +0 -0
- {nkululeko-0.95.7 → nkululeko-0.95.9}/meta/demos/plot_faster_anim.py +0 -0
- {nkululeko-0.95.7 → nkululeko-0.95.9}/nkululeko/__init__.py +0 -0
- {nkululeko-0.95.7 → nkululeko-0.95.9}/nkululeko/aug_train.py +0 -0
- {nkululeko-0.95.7 → nkululeko-0.95.9}/nkululeko/augment.py +0 -0
- {nkululeko-0.95.7 → nkululeko-0.95.9}/nkululeko/augmenting/__init__.py +0 -0
- {nkululeko-0.95.7 → nkululeko-0.95.9}/nkululeko/augmenting/augmenter.py +0 -0
- {nkululeko-0.95.7 → nkululeko-0.95.9}/nkululeko/augmenting/randomsplicer.py +0 -0
- {nkululeko-0.95.7 → nkululeko-0.95.9}/nkululeko/augmenting/randomsplicing.py +0 -0
- {nkululeko-0.95.7 → nkululeko-0.95.9}/nkululeko/augmenting/resampler.py +0 -0
- {nkululeko-0.95.7 → nkululeko-0.95.9}/nkululeko/autopredict/__init__.py +0 -0
- {nkululeko-0.95.7 → nkululeko-0.95.9}/nkululeko/autopredict/ap_age.py +0 -0
- {nkululeko-0.95.7 → nkululeko-0.95.9}/nkululeko/autopredict/ap_arousal.py +0 -0
- {nkululeko-0.95.7 → nkululeko-0.95.9}/nkululeko/autopredict/ap_dominance.py +0 -0
- {nkululeko-0.95.7 → nkululeko-0.95.9}/nkululeko/autopredict/ap_emotion.py +0 -0
- {nkululeko-0.95.7 → nkululeko-0.95.9}/nkululeko/autopredict/ap_gender.py +0 -0
- {nkululeko-0.95.7 → nkululeko-0.95.9}/nkululeko/autopredict/ap_mos.py +0 -0
- {nkululeko-0.95.7 → nkululeko-0.95.9}/nkululeko/autopredict/ap_pesq.py +0 -0
- {nkululeko-0.95.7 → nkululeko-0.95.9}/nkululeko/autopredict/ap_sdr.py +0 -0
- {nkululeko-0.95.7 → nkululeko-0.95.9}/nkululeko/autopredict/ap_sid.py +0 -0
- {nkululeko-0.95.7 → nkululeko-0.95.9}/nkululeko/autopredict/ap_snr.py +0 -0
- {nkululeko-0.95.7 → nkululeko-0.95.9}/nkululeko/autopredict/ap_stoi.py +0 -0
- {nkululeko-0.95.7 → nkululeko-0.95.9}/nkululeko/autopredict/ap_text.py +0 -0
- {nkululeko-0.95.7 → nkululeko-0.95.9}/nkululeko/autopredict/ap_valence.py +0 -0
- {nkululeko-0.95.7 → nkululeko-0.95.9}/nkululeko/autopredict/estimate_snr.py +0 -0
- {nkululeko-0.95.7 → nkululeko-0.95.9}/nkululeko/autopredict/tests/__init__.py +0 -0
- {nkululeko-0.95.7 → nkululeko-0.95.9}/nkululeko/autopredict/tests/test_whisper_transcriber.py +0 -0
- {nkululeko-0.95.7 → nkululeko-0.95.9}/nkululeko/autopredict/whisper_transcriber.py +0 -0
- {nkululeko-0.95.7 → nkululeko-0.95.9}/nkululeko/balance.py +0 -0
- {nkululeko-0.95.7 → nkululeko-0.95.9}/nkululeko/cacheddataset.py +0 -0
- {nkululeko-0.95.7 → nkululeko-0.95.9}/nkululeko/data/__init__.py +0 -0
- {nkululeko-0.95.7 → nkululeko-0.95.9}/nkululeko/data/dataset.py +0 -0
- {nkululeko-0.95.7 → nkululeko-0.95.9}/nkululeko/data/dataset_csv.py +0 -0
- {nkululeko-0.95.7 → nkululeko-0.95.9}/nkululeko/demo-ft.py +0 -0
- {nkululeko-0.95.7 → nkululeko-0.95.9}/nkululeko/demo.py +0 -0
- {nkululeko-0.95.7 → nkululeko-0.95.9}/nkululeko/demo_feats.py +0 -0
- {nkululeko-0.95.7 → nkululeko-0.95.9}/nkululeko/demo_predictor.py +0 -0
- {nkululeko-0.95.7 → nkululeko-0.95.9}/nkululeko/ensemble.py +0 -0
- {nkululeko-0.95.7 → nkululeko-0.95.9}/nkululeko/explore.py +0 -0
- {nkululeko-0.95.7 → nkululeko-0.95.9}/nkululeko/export.py +0 -0
- {nkululeko-0.95.7 → nkululeko-0.95.9}/nkululeko/feat_extract/__init__.py +0 -0
- {nkululeko-0.95.7 → nkululeko-0.95.9}/nkululeko/feat_extract/feats_agender.py +0 -0
- {nkululeko-0.95.7 → nkululeko-0.95.9}/nkululeko/feat_extract/feats_agender_agender.py +0 -0
- {nkululeko-0.95.7 → nkululeko-0.95.9}/nkululeko/feat_extract/feats_analyser.py +0 -0
- {nkululeko-0.95.7 → nkululeko-0.95.9}/nkululeko/feat_extract/feats_ast.py +0 -0
- {nkululeko-0.95.7 → nkululeko-0.95.9}/nkululeko/feat_extract/feats_auddim.py +0 -0
- {nkululeko-0.95.7 → nkululeko-0.95.9}/nkululeko/feat_extract/feats_audmodel.py +0 -0
- {nkululeko-0.95.7 → nkululeko-0.95.9}/nkululeko/feat_extract/feats_clap.py +0 -0
- {nkululeko-0.95.7 → nkululeko-0.95.9}/nkululeko/feat_extract/feats_emotion2vec.py +0 -0
- {nkululeko-0.95.7 → nkululeko-0.95.9}/nkululeko/feat_extract/feats_hubert.py +0 -0
- {nkululeko-0.95.7 → nkululeko-0.95.9}/nkululeko/feat_extract/feats_import.py +0 -0
- {nkululeko-0.95.7 → nkululeko-0.95.9}/nkululeko/feat_extract/feats_mld.py +0 -0
- {nkululeko-0.95.7 → nkululeko-0.95.9}/nkululeko/feat_extract/feats_mos.py +0 -0
- {nkululeko-0.95.7 → nkululeko-0.95.9}/nkululeko/feat_extract/feats_opensmile.py +0 -0
- {nkululeko-0.95.7 → nkululeko-0.95.9}/nkululeko/feat_extract/feats_oxbow.py +0 -0
- {nkululeko-0.95.7 → nkululeko-0.95.9}/nkululeko/feat_extract/feats_praat.py +0 -0
- {nkululeko-0.95.7 → nkululeko-0.95.9}/nkululeko/feat_extract/feats_praat_core.py +0 -0
- {nkululeko-0.95.7 → nkululeko-0.95.9}/nkululeko/feat_extract/feats_snr.py +0 -0
- {nkululeko-0.95.7 → nkululeko-0.95.9}/nkululeko/feat_extract/feats_spectra.py +0 -0
- {nkululeko-0.95.7 → nkululeko-0.95.9}/nkululeko/feat_extract/feats_spkrec.py +0 -0
- {nkululeko-0.95.7 → nkululeko-0.95.9}/nkululeko/feat_extract/feats_squim.py +0 -0
- {nkululeko-0.95.7 → nkululeko-0.95.9}/nkululeko/feat_extract/feats_trill.py +0 -0
- {nkululeko-0.95.7 → nkululeko-0.95.9}/nkululeko/feat_extract/feats_wav2vec2.py +0 -0
- {nkululeko-0.95.7 → nkululeko-0.95.9}/nkululeko/feat_extract/feats_wavlm.py +0 -0
- {nkululeko-0.95.7 → nkululeko-0.95.9}/nkululeko/feat_extract/feats_whisper.py +0 -0
- {nkululeko-0.95.7 → nkululeko-0.95.9}/nkululeko/feat_extract/featureset.py +0 -0
- {nkululeko-0.95.7 → nkululeko-0.95.9}/nkululeko/feat_extract/tests/__init__.py +0 -0
- {nkululeko-0.95.7 → nkululeko-0.95.9}/nkululeko/feat_extract/tests/test_feats_opensmile.py +0 -0
- {nkululeko-0.95.7 → nkululeko-0.95.9}/nkululeko/feat_extract/tests/test_feats_praat_core.py +0 -0
- {nkululeko-0.95.7 → nkululeko-0.95.9}/nkululeko/feat_extract/transformer_feature_extractor.py +0 -0
- {nkululeko-0.95.7 → nkululeko-0.95.9}/nkululeko/feature_extractor.py +0 -0
- {nkululeko-0.95.7 → nkululeko-0.95.9}/nkululeko/file_checker.py +0 -0
- {nkululeko-0.95.7 → nkululeko-0.95.9}/nkululeko/filter_data.py +0 -0
- {nkululeko-0.95.7 → nkululeko-0.95.9}/nkululeko/fixedsegment.py +0 -0
- {nkululeko-0.95.7 → nkululeko-0.95.9}/nkululeko/glob_conf.py +0 -0
- {nkululeko-0.95.7 → nkululeko-0.95.9}/nkululeko/losses/__init__.py +0 -0
- {nkululeko-0.95.7 → nkululeko-0.95.9}/nkululeko/losses/loss_ccc.py +0 -0
- {nkululeko-0.95.7 → nkululeko-0.95.9}/nkululeko/losses/loss_softf1loss.py +0 -0
- {nkululeko-0.95.7 → nkululeko-0.95.9}/nkululeko/modelrunner.py +0 -0
- {nkululeko-0.95.7 → nkululeko-0.95.9}/nkululeko/models/__init__.py +0 -0
- {nkululeko-0.95.7 → nkululeko-0.95.9}/nkululeko/models/model.py +0 -0
- {nkululeko-0.95.7 → nkululeko-0.95.9}/nkululeko/models/model_bayes.py +0 -0
- {nkululeko-0.95.7 → nkululeko-0.95.9}/nkululeko/models/model_cnn.py +0 -0
- {nkululeko-0.95.7 → nkululeko-0.95.9}/nkululeko/models/model_gmm.py +0 -0
- {nkululeko-0.95.7 → nkululeko-0.95.9}/nkululeko/models/model_knn.py +0 -0
- {nkululeko-0.95.7 → nkululeko-0.95.9}/nkululeko/models/model_knn_reg.py +0 -0
- {nkululeko-0.95.7 → nkululeko-0.95.9}/nkululeko/models/model_lin_reg.py +0 -0
- {nkululeko-0.95.7 → nkululeko-0.95.9}/nkululeko/models/model_mlp.py +0 -0
- {nkululeko-0.95.7 → nkululeko-0.95.9}/nkululeko/models/model_mlp_regression.py +0 -0
- {nkululeko-0.95.7 → nkululeko-0.95.9}/nkululeko/models/model_svm.py +0 -0
- {nkululeko-0.95.7 → nkululeko-0.95.9}/nkululeko/models/model_svr.py +0 -0
- {nkululeko-0.95.7 → nkululeko-0.95.9}/nkululeko/models/model_tree.py +0 -0
- {nkululeko-0.95.7 → nkululeko-0.95.9}/nkululeko/models/model_tree_reg.py +0 -0
- {nkululeko-0.95.7 → nkululeko-0.95.9}/nkululeko/models/model_tuned.py +0 -0
- {nkululeko-0.95.7 → nkululeko-0.95.9}/nkululeko/models/model_xgb.py +0 -0
- {nkululeko-0.95.7 → nkululeko-0.95.9}/nkululeko/models/model_xgr.py +0 -0
- {nkululeko-0.95.7 → nkululeko-0.95.9}/nkululeko/models/tests/__init__.py +0 -0
- {nkululeko-0.95.7 → nkululeko-0.95.9}/nkululeko/models/tests/test_model_knn.py +0 -0
- {nkululeko-0.95.7 → nkululeko-0.95.9}/nkululeko/models/tests/test_model_mlp.py +0 -0
- {nkululeko-0.95.7 → nkululeko-0.95.9}/nkululeko/models/tests/test_model_svm.py +0 -0
- {nkululeko-0.95.7 → nkululeko-0.95.9}/nkululeko/models/tests/test_model_xgb.py +0 -0
- {nkululeko-0.95.7 → nkululeko-0.95.9}/nkululeko/multidb.py +0 -0
- {nkululeko-0.95.7 → nkululeko-0.95.9}/nkululeko/nkuluflag.py +0 -0
- {nkululeko-0.95.7 → nkululeko-0.95.9}/nkululeko/nkululeko.py +0 -0
- {nkululeko-0.95.7 → nkululeko-0.95.9}/nkululeko/optim.py +0 -0
- {nkululeko-0.95.7 → nkululeko-0.95.9}/nkululeko/optimizationrunner.py +0 -0
- {nkululeko-0.95.7 → nkululeko-0.95.9}/nkululeko/predict.py +0 -0
- {nkululeko-0.95.7 → nkululeko-0.95.9}/nkululeko/reporting/__init__.py +0 -0
- {nkululeko-0.95.7 → nkululeko-0.95.9}/nkululeko/reporting/defines.py +0 -0
- {nkululeko-0.95.7 → nkululeko-0.95.9}/nkululeko/reporting/latex_writer.py +0 -0
- {nkululeko-0.95.7 → nkululeko-0.95.9}/nkululeko/reporting/report.py +0 -0
- {nkululeko-0.95.7 → nkululeko-0.95.9}/nkululeko/reporting/report_item.py +0 -0
- {nkululeko-0.95.7 → nkululeko-0.95.9}/nkululeko/reporting/reporter.py +0 -0
- {nkululeko-0.95.7 → nkululeko-0.95.9}/nkululeko/reporting/result.py +0 -0
- {nkululeko-0.95.7 → nkululeko-0.95.9}/nkululeko/resample.py +0 -0
- {nkululeko-0.95.7 → nkululeko-0.95.9}/nkululeko/runmanager.py +0 -0
- {nkululeko-0.95.7 → nkululeko-0.95.9}/nkululeko/scaler.py +0 -0
- {nkululeko-0.95.7 → nkululeko-0.95.9}/nkululeko/segment.py +0 -0
- {nkululeko-0.95.7 → nkululeko-0.95.9}/nkululeko/segmenting/__init__.py +0 -0
- {nkululeko-0.95.7 → nkululeko-0.95.9}/nkululeko/segmenting/seg_inaspeechsegmenter.py +0 -0
- {nkululeko-0.95.7 → nkululeko-0.95.9}/nkululeko/segmenting/seg_pyannote.py +0 -0
- {nkululeko-0.95.7 → nkululeko-0.95.9}/nkululeko/segmenting/seg_silero.py +0 -0
- {nkululeko-0.95.7 → nkululeko-0.95.9}/nkululeko/syllable_nuclei.py +0 -0
- {nkululeko-0.95.7 → nkululeko-0.95.9}/nkululeko/testing.py +0 -0
- {nkululeko-0.95.7 → nkululeko-0.95.9}/nkululeko/testing_predictor.py +0 -0
- {nkululeko-0.95.7 → nkululeko-0.95.9}/nkululeko/testing_pretrain.py +0 -0
- {nkululeko-0.95.7 → nkululeko-0.95.9}/nkululeko/tests/__init__.py +0 -0
- {nkululeko-0.95.7 → nkululeko-0.95.9}/nkululeko/tests/test_balancing.py +0 -0
- {nkululeko-0.95.7 → nkululeko-0.95.9}/nkululeko/tests/test_optim.py +0 -0
- {nkululeko-0.95.7 → nkululeko-0.95.9}/nkululeko/utils/__init__.py +0 -0
- {nkululeko-0.95.7 → nkululeko-0.95.9}/nkululeko/utils/files.py +0 -0
- {nkululeko-0.95.7 → nkululeko-0.95.9}/nkululeko/utils/stats.py +0 -0
- {nkululeko-0.95.7 → nkululeko-0.95.9}/nkululeko/utils/unzip.py +0 -0
- {nkululeko-0.95.7 → nkululeko-0.95.9}/nkululeko.egg-info/dependency_links.txt +0 -0
- {nkululeko-0.95.7 → nkululeko-0.95.9}/nkululeko.egg-info/entry_points.txt +0 -0
- {nkululeko-0.95.7 → nkululeko-0.95.9}/nkululeko.egg-info/requires.txt +0 -0
- {nkululeko-0.95.7 → nkululeko-0.95.9}/nkululeko.egg-info/top_level.txt +0 -0
- {nkululeko-0.95.7 → nkululeko-0.95.9}/setup.cfg +0 -0
- {nkululeko-0.95.7 → nkululeko-0.95.9}/setup.py +0 -0
- {nkululeko-0.95.7 → nkululeko-0.95.9}/tests/test_install.py +0 -0
- {nkululeko-0.95.7 → nkululeko-0.95.9}/tests/test_modules.py +0 -0
@@ -1,6 +1,15 @@
|
|
1
1
|
Changelog
|
2
2
|
=========
|
3
3
|
|
4
|
+
Version 0.95.9 (25-07-14)
|
5
|
+
--------------------------
|
6
|
+
* added google translation
|
7
|
+
|
8
|
+
Version 0.95.8 (25-07-14)
|
9
|
+
--------------------------
|
10
|
+
* fix bug that bool was not detected as categorical
|
11
|
+
|
12
|
+
|
4
13
|
Version 0.95.7 (25-07-11)
|
5
14
|
--------------------------
|
6
15
|
* infer gender and age from audb misc table
|
@@ -0,0 +1,39 @@
|
|
1
|
+
"""A translator for text.
|
2
|
+
|
3
|
+
Currently based on google translate.
|
4
|
+
"""
|
5
|
+
|
6
|
+
from nkululeko.utils.util import Util
|
7
|
+
|
8
|
+
|
9
|
+
class TextTranslator:
|
10
|
+
"""Translator.
|
11
|
+
|
12
|
+
translate text with the google translate model
|
13
|
+
"""
|
14
|
+
|
15
|
+
def __init__(self, df, util=None):
|
16
|
+
self.df = df
|
17
|
+
if util is not None:
|
18
|
+
self.util = util
|
19
|
+
else:
|
20
|
+
# create a new util instance
|
21
|
+
# this is needed to access the config and other utilities
|
22
|
+
# in the autopredict module
|
23
|
+
self.util = Util("translator")
|
24
|
+
|
25
|
+
self.language = self.util.config_val("PREDICT", "target_language", "en")
|
26
|
+
from nkululeko.autopredict.google_translator import GoogleTranslator
|
27
|
+
self.translator = GoogleTranslator(
|
28
|
+
language=self.language,
|
29
|
+
util=self.util,
|
30
|
+
)
|
31
|
+
|
32
|
+
def predict(self, split_selection):
|
33
|
+
self.util.debug(f"translating text for {split_selection} samples")
|
34
|
+
df = self.translator.translate_index(
|
35
|
+
self.df
|
36
|
+
)
|
37
|
+
return_df = self.df.copy()
|
38
|
+
return_df[self.language] = df[self.language].values
|
39
|
+
return return_df
|
@@ -0,0 +1,63 @@
|
|
1
|
+
import os
|
2
|
+
|
3
|
+
import pandas as pd
|
4
|
+
import torch
|
5
|
+
from tqdm import tqdm
|
6
|
+
|
7
|
+
import asyncio
|
8
|
+
from googletrans import Translator
|
9
|
+
|
10
|
+
import audeer
|
11
|
+
import audiofile
|
12
|
+
|
13
|
+
from nkululeko.utils.util import Util
|
14
|
+
|
15
|
+
import httpx
|
16
|
+
|
17
|
+
class GoogleTranslator:
|
18
|
+
def __init__(self, language="en", util=None):
|
19
|
+
self.language = language
|
20
|
+
self.util = util
|
21
|
+
|
22
|
+
async def translate_text(self, text):
|
23
|
+
async with Translator() as translator:
|
24
|
+
result = translator.translate(text, dest="en")
|
25
|
+
return (await result).text
|
26
|
+
|
27
|
+
def translate_index(self, df:pd.DataFrame) -> pd.DataFrame:
|
28
|
+
"""Transcribe the audio files in the given index.
|
29
|
+
|
30
|
+
:param index: Index containing tuples of (file, start, end).
|
31
|
+
:return: DataFrame with transcriptions indexed by the original index.
|
32
|
+
:rtype: pd.DataFrame
|
33
|
+
"""
|
34
|
+
file_name = ""
|
35
|
+
seg_index = 0
|
36
|
+
translations = []
|
37
|
+
translator_cache = audeer.mkdir(
|
38
|
+
audeer.path(self.util.get_path("cache"), "translations"))
|
39
|
+
file_name = ""
|
40
|
+
for idx, row in tqdm(df.iterrows(), total=len(df)):
|
41
|
+
file = idx[0]
|
42
|
+
start = idx[1]
|
43
|
+
end = idx[2]
|
44
|
+
if file != file_name:
|
45
|
+
file_name = file
|
46
|
+
seg_index = 0
|
47
|
+
cache_name = audeer.basename_wo_ext(file)+str(seg_index)
|
48
|
+
cache_path = audeer.path(translator_cache, cache_name + ".json")
|
49
|
+
if os.path.isfile(cache_path):
|
50
|
+
translation = self.util.read_json(cache_path)["translation"]
|
51
|
+
else:
|
52
|
+
text = row['text']
|
53
|
+
translation = asyncio.run(self.translate_text(text))
|
54
|
+
self.util.save_json(cache_path,
|
55
|
+
{"translation": translation,
|
56
|
+
"file": file,
|
57
|
+
"start": start.total_seconds(),
|
58
|
+
"end": end.total_seconds()})
|
59
|
+
translations.append(translation)
|
60
|
+
seg_index += 1
|
61
|
+
|
62
|
+
df = pd.DataFrame({self.language:translations}, index=df.index)
|
63
|
+
return df
|
@@ -1,2 +1,2 @@
|
|
1
|
-
VERSION="0.95.
|
1
|
+
VERSION="0.95.9"
|
2
2
|
SAMPLING_RATE = 16000
|
@@ -574,6 +574,11 @@ class Experiment:
|
|
574
574
|
|
575
575
|
predictor = TextPredictor(df, self.util)
|
576
576
|
df = predictor.predict(sample_selection)
|
577
|
+
elif target == "translation":
|
578
|
+
from nkululeko.autopredict.ap_translate import TextTranslator
|
579
|
+
|
580
|
+
predictor = TextTranslator(df, self.util)
|
581
|
+
df = predictor.predict(sample_selection)
|
577
582
|
elif target == "arousal":
|
578
583
|
from nkululeko.autopredict.ap_arousal import ArousalPredictor
|
579
584
|
|
@@ -28,7 +28,10 @@ class Plots:
|
|
28
28
|
self.with_ccc = eval(self.util.config_val("PLOT", "ccc", "False"))
|
29
29
|
self.type_s = "samples"
|
30
30
|
|
31
|
-
def plot_distributions_speaker(self, df):
|
31
|
+
def plot_distributions_speaker(self, df: pd.DataFrame):
|
32
|
+
if df.empty:
|
33
|
+
self.util.warn("plot_distributions_speaker: empty DataFrame, nothing to plot")
|
34
|
+
return
|
32
35
|
self.type_s = "speaker"
|
33
36
|
df_speakers = pd.DataFrame()
|
34
37
|
pd.options.mode.chained_assignment = None # default='warn'
|
@@ -87,7 +90,10 @@ class Plots:
|
|
87
90
|
|
88
91
|
self.plot_distributions(df_speakers, type_s="speakers")
|
89
92
|
|
90
|
-
def plot_distributions(self, df, type_s="samples"):
|
93
|
+
def plot_distributions(self, df: pd.DataFrame, type_s: str = "samples"):
|
94
|
+
if df.empty:
|
95
|
+
self.util.warn("plot_distributions: empty DataFrame, nothing to plot")
|
96
|
+
return
|
91
97
|
class_label, df = self._check_binning("class_label", df)
|
92
98
|
value_counts_conf = self.util.config_val("EXPL", "value_counts", False)
|
93
99
|
if not isinstance(value_counts_conf, str):
|
@@ -189,8 +189,11 @@ class Util:
|
|
189
189
|
|
190
190
|
def is_categorical(self, pd_series):
|
191
191
|
"""Check if a dataframe column is categorical."""
|
192
|
-
return
|
193
|
-
pd_series.dtype
|
192
|
+
return (
|
193
|
+
pd_series.dtype.name == "object"
|
194
|
+
or pd_series.dtype.name == "bool"
|
195
|
+
or isinstance(pd_series.dtype, pd.CategoricalDtype)
|
196
|
+
or isinstance(pd_series.dtype, pd.BooleanDtype)
|
194
197
|
)
|
195
198
|
|
196
199
|
def get_name(self):
|
@@ -108,8 +108,10 @@ nkululeko/autopredict/ap_sid.py
|
|
108
108
|
nkululeko/autopredict/ap_snr.py
|
109
109
|
nkululeko/autopredict/ap_stoi.py
|
110
110
|
nkululeko/autopredict/ap_text.py
|
111
|
+
nkululeko/autopredict/ap_translate.py
|
111
112
|
nkululeko/autopredict/ap_valence.py
|
112
113
|
nkululeko/autopredict/estimate_snr.py
|
114
|
+
nkululeko/autopredict/google_translator.py
|
113
115
|
nkululeko/autopredict/whisper_transcriber.py
|
114
116
|
nkululeko/autopredict/tests/__init__.py
|
115
117
|
nkululeko/autopredict/tests/test_whisper_transcriber.py
|
@@ -7,7 +7,7 @@ build-backend = "setuptools.build_meta"
|
|
7
7
|
|
8
8
|
[project]
|
9
9
|
name = "nkululeko"
|
10
|
-
version = "0.95.
|
10
|
+
version = "0.95.9"
|
11
11
|
description = "Machine learning audio prediction experiments based on templates"
|
12
12
|
authors = [
|
13
13
|
{name = "Felix Burkhardt", email = "fxburk@gmail.com"},
|
File without changes
|
File without changes
|
File without changes
|
File without changes
|
File without changes
|
File without changes
|
File without changes
|
File without changes
|
File without changes
|
File without changes
|
File without changes
|
File without changes
|
File without changes
|
File without changes
|
File without changes
|
File without changes
|
File without changes
|
File without changes
|
File without changes
|
File without changes
|
File without changes
|
File without changes
|
File without changes
|
File without changes
|
File without changes
|
File without changes
|
File without changes
|
File without changes
|
File without changes
|
File without changes
|
File without changes
|
File without changes
|
File without changes
|
File without changes
|
File without changes
|
File without changes
|
File without changes
|
File without changes
|
File without changes
|
File without changes
|
File without changes
|
File without changes
|
File without changes
|
File without changes
|
File without changes
|
File without changes
|
File without changes
|
File without changes
|
File without changes
|
File without changes
|
File without changes
|
File without changes
|
File without changes
|
File without changes
|
File without changes
|
File without changes
|
File without changes
|
File without changes
|
File without changes
|
File without changes
|
File without changes
|
File without changes
|
File without changes
|
File without changes
|
File without changes
|
File without changes
|
File without changes
|
File without changes
|
File without changes
|
File without changes
|
File without changes
|
{nkululeko-0.95.7 → nkululeko-0.95.9}/nkululeko/autopredict/tests/test_whisper_transcriber.py
RENAMED
File without changes
|
File without changes
|
File without changes
|
File without changes
|
File without changes
|
File without changes
|
File without changes
|
File without changes
|
File without changes
|
File without changes
|
File without changes
|
File without changes
|
File without changes
|
File without changes
|
File without changes
|
File without changes
|
File without changes
|
File without changes
|
File without changes
|
File without changes
|
File without changes
|
File without changes
|
File without changes
|
File without changes
|
File without changes
|
File without changes
|
File without changes
|
File without changes
|
File without changes
|
File without changes
|
File without changes
|
File without changes
|
File without changes
|
File without changes
|
File without changes
|
File without changes
|
File without changes
|
File without changes
|
File without changes
|
File without changes
|
File without changes
|
File without changes
|
File without changes
|
{nkululeko-0.95.7 → nkululeko-0.95.9}/nkululeko/feat_extract/transformer_feature_extractor.py
RENAMED
File without changes
|
File without changes
|
File without changes
|
File without changes
|
File without changes
|
File without changes
|
File without changes
|
File without changes
|
File without changes
|
File without changes
|
File without changes
|
File without changes
|
File without changes
|
File without changes
|
File without changes
|
File without changes
|
File without changes
|
File without changes
|
File without changes
|
File without changes
|
File without changes
|
File without changes
|
File without changes
|
File without changes
|
File without changes
|
File without changes
|
File without changes
|
File without changes
|
File without changes
|
File without changes
|
File without changes
|
File without changes
|
File without changes
|
File without changes
|
File without changes
|
File without changes
|
File without changes
|
File without changes
|
File without changes
|
File without changes
|
File without changes
|
File without changes
|
File without changes
|
File without changes
|
File without changes
|
File without changes
|
File without changes
|
File without changes
|
File without changes
|
File without changes
|
File without changes
|
File without changes
|
File without changes
|
File without changes
|
File without changes
|
File without changes
|
File without changes
|
File without changes
|
File without changes
|
File without changes
|
File without changes
|
File without changes
|
File without changes
|
File without changes
|
File without changes
|
File without changes
|
File without changes
|
File without changes
|
File without changes
|
File without changes
|
File without changes
|
File without changes
|