The machine learning package examines audio files submitted from a user
Project description
speaker-verification
This project aims to address the issues concerning contract cheating within online learning management platforms as educational institutions have struggled to monitor and evaluate online activity. The Speaker Verification project aims to utilize machine learning technologies to evaluate audio files submitted from a user and obtain a confidence score of how likely it is that the voice in the recording is the user in question.
Table of Contents
Usage
The speaker_verification tool has a enroll and validate workflow in order to perform speaker verification for a given user.
Enroll stage
The enroll workflow requires two parameters, one being a unique numeric id that must be 9 characters long and a path to a wav or flac file of the users voice. Below is the required syntax and format for the this stage.
python -m speaker_verification enroll --id <ID_NUMBER> --audio-path <PATH/TO/FILE>
Validate stage
The validate workflow retrives a user enrollment based on the given id parameter given and then uses the --audio-path input to accept an audio file as speaker input to verify against the given user enrollment.
python -m speaker_verification validate --id <ID_NUMBER> --audio-path <PATH/TO/FILE>
Installation
The speak-verification package requires Python 3.8.*
Install via PyPI
The package speaker-verification is hosted on PyPI
pip install speaker-verification
Install from Github
This project has both a requirements.txt and environment.yml file's, it is up to your discretion of what environment manager you should like to use.
The repository relies on the speaker_verification python module being on the PYTHONPATH which you should set before running.
export PYTHONPATH=${PYTHONPATH}:/path/to/speech_verification_public/
Installing miniconda
Miniconda is a minimal install for conda which hosts packages from PyPi, zlib and other packages outside of the python language.
Download the relevent miniconda installation here for your specified OS.
NOTE: If you are developing on windows then Anaconda might be a better option.
You should be able to install the rest with the conda.io instructions.
Conda environment
Install the python dependencies in a conda virtual environment called deep-speaker by using the environment.ymlfile to point to the required dependencies.
conda env create -f environment.yml
conda activate deep-speaker
Virtualenv environment
Like miniconda, virtualenv is an virual environment manager for python which uses PyPi (Python Package Index) packages distributed by pip.
pip install virtualenv
# create a new environment, usually in your home dir
python37 -m virtualenv ./env_name
# activate environment
source ./env_name/bin/activate
# install environment dependencies by pointing to requirements.txt file
pip install -r requrements.txt
Testing
We use pytest for managing the exection of our tests the project. Below is the current usage for running the tests.
# the below command is relient on the user's working dir being the root of the project.
pytest speaker_verification/
Contributors
This repository makes use of open source components initially developed by @philipperemy in the "Unofficial" deep-speaker project based on the research by Baidu, Inc.
See the deep-speaker project here.
See the research paper here.
Project details
Release history Release notifications | RSS feed
Download files
Download the file for your platform. If you're not sure which to choose, learn more about installing packages.
Source Distribution
Built Distribution
Filter files by name, interpreter, ABI, and platform.
If you're not sure about the file name format, learn more about wheel file names.
Copy a direct link to the current filters
File details
Details for the file speaker-verification-0.1.2.tar.gz.
File metadata
- Download URL: speaker-verification-0.1.2.tar.gz
- Upload date:
- Size: 88.9 MB
- Tags: Source
- Uploaded using Trusted Publishing? No
- Uploaded via: twine/3.4.1 importlib_metadata/3.7.3 pkginfo/1.7.0 requests/2.25.1 requests-toolbelt/0.9.1 tqdm/4.59.0 CPython/3.8.8
File hashes
| Algorithm | Hash digest | |
|---|---|---|
| SHA256 |
6244014366ddef51474c2d3eeab68023b4d9fa42badba5d22b17b4744bd9e64c
|
|
| MD5 |
f71b88090a073dd4eff1b77878bb5ebb
|
|
| BLAKE2b-256 |
023fdcffff68c2643ef457f044e80b6c407e86e4f3151cea14cf3ceb56eef94c
|
File details
Details for the file speaker_verification-0.1.2-py3-none-any.whl.
File metadata
- Download URL: speaker_verification-0.1.2-py3-none-any.whl
- Upload date:
- Size: 88.9 MB
- Tags: Python 3
- Uploaded using Trusted Publishing? No
- Uploaded via: twine/3.4.1 importlib_metadata/3.7.3 pkginfo/1.7.0 requests/2.25.1 requests-toolbelt/0.9.1 tqdm/4.59.0 CPython/3.8.8
File hashes
| Algorithm | Hash digest | |
|---|---|---|
| SHA256 |
695efe11d480326c773690d93f22ebcc767e1f677b28019f5aa8528ae19f00c4
|
|
| MD5 |
985c06a2317ac0466098038a092fde4d
|
|
| BLAKE2b-256 |
2be40a4ae47413cab0807b32caaaada913ee3896383482bb72805dd1ab353055
|