Implements ISV subspaces training

This algorithm is a legacy one. The API has changed since its implementation. New versions and forks will need to be updated.

Algorithms have at least one input and one output. All algorithm endpoints are organized in groups. Groups are used by the platform to indicate which inputs and outputs are synchronized together. The first group is automatically synchronized with the channel defined by the block in which the algorithm is deployed.

Unnamed group

Endpoint Name Data Format Nature
ubm tutorial/gmm/1 Input
statistics tutorial/gmm_statistics/1 Input
client_id system/uint64/1 Input
isvbase tutorial/isvbase/1 Output

Parameters allow users to change the configuration of an algorithm when scheduling an experiment

Name Description Type Default Range/Choices
isv-training-iterations uint32 10
relevance-factor float64 4.0
subspace-dimension-of-u uint32 50
init-seed uint32 0

The code for this algorithm in Python
The ruler at 80 columns indicate suggested POSIX line breaks (for readability).
The editor will automatically enlarge to accomodate the entirety of your input
Use keyboard shortcuts for search/replace and faster editing. For example, use Ctrl-F (PC) or Cmd-F (Mac) to search through this box

For a Gaussian Mixture Models (GMM) mean supervector space, computes the within-class variability subspace (U subspace) described in [McCool2013]:

This algorithm relies on the Bob library.

The inputs are:

  • statistics: A training set of GMM Statistics.
  • ubm: A GMM corresponding to the Universal Background Model.
  • client_id: Client (class/subject) identifier as an unsigned 64 bits integer.

The outputs are subspace_u and subspace_d for the session and the client offset respectivelly.

[McCool2013]McCool, Christopher, et al. "Session variability modelling for face authentication." IET biometrics 2.3 (2013): 117-129.

Experiments

Updated Name Databases/Protocols Analyzers
smarcel/tutorial/full_isv/2/mobio_male-gmm_100Gx10I-isv_50Ux10Ix4R-dct_12Bx8Ox45C-seed101 mobio/1@male tutorial/eerhter_postperf_iso/1
tutorial/tutorial/full_isv/2/bancaMc_isv_DCT12x8_100G_U50 banca/1@Mc tutorial/eerhter_postperf_iso/1
tutorial/tutorial/full_isv/2/xm2vtsLp1_isv_DCT12x8_100G_U50 xm2vts/1@lp1 tutorial/eerhter_postperf_iso/1
tutorial/tutorial/full_isv/2/mobioMale_isv_DCT12x8_100G_U50 mobio/1@male tutorial/eerhter_postperf_iso/1
tutorial/tutorial/full_isv/2/bancaP_isv_DCT12x8_100G_U50 banca/1@P tutorial/eerhter_postperf_iso/1
tutorial/tutorial/full_isv/2/atnt_isv_DCT12x8_100G_U50 atnt/1@idiap_test_eyepos tutorial/eerhter_postperf_iso/1

This table shows the number of times this algorithm has been successfully run using the given environment. Note this does not provide sufficient information to evaluate if the algorithm will run when submitted to different conditions.

Terms of Service | Contact Information | BEAT platform version 2.2.1b0 | © Idiap Research Institute - 2013-2024