# US 10,769,260 B2 · Behavioral biometric feature extraction and verification

> Agents: this data is available as JSON from the patentgrep API and MCP server — see https://patentgrep.com/llms.txt

- Number: US 10,769,260 B2
- Document ID: US10769260B2
- Status: Granted
- Kind: B2
- Application number: 15/949,738
- Filed: 2018-04-10
- Published: 2019-10-10
- Granted: 2020-09-08
- Earliest claimed: 2018-04-10
- Assignees: Assured Information Security, Inc.
- Applicants: Assured Information Security, Inc.
- Inventors: Jacob Baldwin; Ryan Burnham; Robert Dora; Andrew Meyer; Robert Wright
- Web page: https://patentgrep.com/patent/US10769260B2

## CPC

- G06F 21/32: using biometric data, e.g. fingerprints, iris scans or voiceprints
- G06F 7/02: Comparing digital values (G06F7/06, {G06F7/22,} G06F7/38 take precedence)
- G06F 7/5443: {Sum of products (for applications thereof, see the relevant places, e.g. G06F17/10, H03H17/00)}
- G06N 3/0464: Convolutional networks [CNN, ConvNet]
- G06N 3/047: Probabilistic or stochastic networks
- G06N 3/08: Learning methods
- G06N 3/09: Supervised learning
- G06N 7/01: Probabilistic graphical models, e.g. probabilistic networks
- H04L 9/3231: {Biological data, e.g. fingerprint, voice or retina (network architectures or network communication protocols for supporting authentication of entities using biometrical features in a packet data network H04L63/0861)}
- G06F 2207/4824: Neural networks
- G06F 2221/2151: Time stamp
- G06N 3/045: Combinations of networks
- G06F: ELECTRIC DIGITAL DATA PROCESSING (computer systems based on specific computational models G06N)
- G06N: COMPUTING ARRANGEMENTS BASED ON SPECIFIC COMPUTATIONAL MODELS
- H04L: TRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION (arrangements common to telegraphic and telephonic communication H04M)

## Abstract

A method for gait-based behavioral verification of user identity of a subject user of a computer system includes obtaining an enrollment signature corresponding to an identified user and serving as a unique identifier of the identified user, the enrollment signature including an enrollment determinate vector generated based on supplying enrollment gait data to a deep neural network for processing. The method further includes obtaining verification determinate vector(s), the verification determinate vector(s) for comparison to the enrollment signature to determine whether the subject user is the identified user. The method compares the verification determinate vector(s) to the enrollment signature and generates a probability indicator indicating a probability that gait data from a common user produced, from the deep neural network, the enrollment signature and the verification determinate vector(s), and indicates to the computer system whether, based on the probability indicator, the subject user is verified to be the identified user.

## Claims

### Claim 1

A computer implemented method for gait-based behavioral verification of user identity of a subject user of a computer system, the method comprising:
obtaining an enrollment signature corresponding to an identified user and serving as a unique identifier of the identified user, the enrollment signature comprising an enrollment determinate vector generated based on supplying enrollment gait data to a deep neural network, the enrollment gait data recording a gait of the identified user;
obtaining, based on verification gait data recording a gait of the subject user and gathered using one or more sensors of the computer system, one or more verification determinate vectors output from the deep neural network, the one or more verification determinate vectors for comparison to the enrollment signature to determine whether the subject user is the identified user corresponding to the obtained enrollment signature;
comparing the one or more verification determinate vectors to the enrollment signature and generating a probability indicator indicating a probability that gait data from a common user produced, from the deep neural network, the enrollment signature and the one or more verification determinate vectors; and
indicating to the computer system whether, based on the probability indicator, the subject user is verified to be the identified user.

### Claim 2 (depends on 1)

The method of claim 1, further comprising:
gathering the verification gait data from sensor data gathered by the computer system, and
supplying the verification gait data to the deep neural network and obtaining, as output, the one or more verification determinate vectors.

### Claim 3 (depends on 2)

The method of claim 2, further comprising:
receiving movement data describing movement of the computer system in multiple dimensions, the movement data comprising the sensor data, the sensor data acquired from the one or more sensors of the computer system;
performing pre-processing of the movement data to provide the verification gait data as processed movement data for processing by the deep neural network to extract local patterns, wherein the pre-processing determines magnitudes of the movement data as a composite of movement in x, y, and z dimensions, filters out individual spikes in magnitude above a threshold as noise, performs step detection against at least some of the movement data, the step detection isolating a plurality of samples of movement data having a given number of consecutive steps that the subject user has taken, and extracts signal processing features from the plurality of samples.

### Claim 4 (depends on 2)

The method of claim 2, wherein the computer system performs the obtaining the verification gait data and supplies the verification gait data to a remote computer system, and wherein the computer system receives from the remote computer system, in response to the providing, the one or more verification determinate vectors, wherein the computer system further performs the comparing, and wherein the indicating comprises the computer system raising an indication that the subject user is or is not verified to be the identified user.

### Claim 5 (depends on 1)

The method of claim 1, further comprising generating the enrollment signature, the generating comprising:
feeding a plurality of samples of enrollment gait data into the deep neural network and obtaining a corresponding plurality of determinate vectors as output from the deep neural network; and
generating a composite determinate vector as a composite of the plurality of determinate vectors output from the deep neural network, the composite determinate vector being the enrollment determinate vector of the enrollment signature.

### Claim 6 (depends on 5)

The method of claim 5, wherein generating the composite determinate vector determines an average determinate vector from the plurality of determinate vectors and the average determinate vector is used as the enrollment determinate vector of the enrollment signature.

### Claim 7 (depends on 1)

The method of claim 1, wherein the comparing the one or more verification determinate vectors to the enrollment signature uses a similarity scoring function comprising a cosine similarity score as between the one or more verification determinate vectors and the enrollment signature, an L2 distance score as between the one or more verification determinate vectors and the enrollment signature, and a z-score of the one or more verification determinate vectors relative to the enrollment signature, the similarity scoring function indicating a level of similarity between the one or more verification determinate vectors and the enrollment signature.

### Claim 8 (depends on 7)

The method of claim 7, wherein the cosine similarity score, L2 distance score, and z-score are combined as features to a linear binary logistic regression classifier that learns an appropriate threshold for verifying whether the enrollment signature and the one or more verification determinate vectors were generated based on gait data from a common user.

### Claim 9 (depends on 1)

The method of claim 1, wherein the one or more verification determinate vectors comprise multiple verification determinate vectors, wherein the comparing compares each verification determinate vector of the multiple verification determinate vectors to the enrollment signature to determine a respective probability indicator corresponding to the verification determinate vector, and wherein the generated probability indicator comprises a composite of the respective probability indicators corresponding to the verification determinate vectors.

### Claim 10 (depends on 1)

The method of claim 1, wherein the computer system receives the deep neural network from a remote computer system, and performs the obtaining the enrollment signature, the obtaining the one or more verification determinate vectors, and the comparing, and wherein the indicating comprises the computer system raising an indication that the subject user is or is not verified to be the identified user.

### Claim 11 (depends on 10)

The method of claim 10, wherein the computer system supplies the enrollment gait data to the deep neural network received from the remote computer system and self-generates the enrollment signature.

### Claim 12

A system configured to perform a method for gait-based behavioral verification of user identity of a subject user of a computer system, the method comprising:
obtaining an enrollment signature corresponding to an identified user and serving as a unique identifier of the identified user, the enrollment signature comprising an enrollment determinate vector generated based on supplying enrollment gait data to a deep neural network, the enrollment gait data recording a gait of the identified user;
obtaining, based on verification gait data recording a gait of the subject user and gathered using one or more sensors of the computer system, one or more verification determinate vectors output from the deep neural network, the one or more verification determinate vectors for comparison to the enrollment signature to determine whether the subject user is the identified user corresponding to the obtained enrollment signature;
comparing the one or more verification determinate vectors to the enrollment signature and generating a probability indicator indicating a probability that gait data from a common user produced, from the deep neural network, the enrollment signature and the one or more verification determinate vectors; and
indicating to the computer system whether, based on the probability indicator, the subject user is verified to be the identified user.

### Claim 13 (depends on 12)

The system of claim 12, wherein the method further comprises:
gathering the verification gait data from sensor data gathered by the computer system; and
supplying the verification gait data to the deep neural network and obtaining, as output, the one or more verification determinate vectors.

### Claim 14 (depends on 13)

The system of claim 13, wherein the method further comprises:
receiving movement data describing movement of the computer system in multiple dimensions, the movement data comprising the sensor data, the sensor data acquired from the one or more sensors of the computer system;
performing pre-processing of the movement data to provide the verification gait data as processed movement data for processing by the deep neural network to extract local patterns, wherein the pre-processing determines magnitudes of the movement data as a composite of movement in x, y, and z dimensions, filters out individual spikes in magnitude above a threshold as noise, performs step detection against at least some of the movement data, the step detection isolating a plurality of samples of movement data having a given number of consecutive steps that the subject user has taken, and extracts signal processing features from the plurality of samples.

### Claim 15 (depends on 13)

The system of claim 13, wherein the computer system performs the obtaining the verification gait data and supplies the verification gait data to a remote computer system, and wherein the computer system receives from the remote computer system, in response to the providing, the one or more verification determinate vectors, wherein the computer system further performs the comparing, and wherein the indicating comprises the computer system raising an indication that the subject user is or is not verified to be the identified user.

### Claim 16 (depends on 12)

The system of claim 12, wherein the comparing the one or more verification determinate vectors to the enrollment signature uses a similarity scoring function comprising a cosine similarity score as between the one or more verification determinate vectors and the enrollment signature, an L2 distance score as between the one or more verification determinate vectors and the enrollment signature, and a z-score of the one or more verification determinate vectors relative to the enrollment signature, the similarity scoring function indicating a level of similarity between the one or more verification determinate vectors and the enrollment signature, wherein the cosine similarity score, L2 distance score, and z-score are combined as features to a linear binary logistic regression classifier that learns an appropriate threshold for verifying whether the enrollment signature and the one or more verification determinate vectors were generated based on gait data from a common user.

### Claim 17

A computer program product comprising:
a computer readable storage medium storing instructions for execution to perform a method for gait-based behavioral verification of user identity of a subject user of a computer system, the method comprising:
obtaining an enrollment signature corresponding to an identified user and serving as a unique identifier of the identified user, the enrollment signature comprising an enrollment determinate vector generated based on supplying enrollment gait data to a deep neural network, the enrollment gait data recording a gait of the identified user;
obtaining, based on verification gait data recording a gait of the subject user and gathered using one or more sensors of the computer system, one or more verification determinate vectors output from the deep neural network, the one or more verification determinate vectors for comparison to the enrollment signature to determine whether the subject user is the identified user corresponding to the obtained enrollment signature;
comparing the one or more verification determinate vectors to the enrollment signature and generating a probability indicator indicating a probability that gait data from a common user produced, from the deep neural network, the enrollment signature and the one or more verification determinate vectors; and
indicating to the computer system whether, based on the probability indicator, the subject user is verified to be the identified user.

### Claim 18 (depends on 17)

The computer program product of claim 17, wherein the method further comprises:
receiving movement data describing movement of the computer system in multiple dimensions, the movement data comprising sensor data acquired from the one or more sensors of the computer system;
performing pre-processing of the movement data to provide the verification gait data as processed movement data for processing by the deep neural network to extract local patterns, wherein the pre-processing determines magnitudes of the movement data as a composite of movement in x, y, and z dimensions, filters out individual spikes in magnitude above a threshold as noise, performs step detection against at least some of the movement data, the step detection isolating a plurality of samples of movement data having a given number of consecutive steps that the subject user has taken, and extracts signal processing features from the plurality of samples;
gathering the verification gait data; and
supplying the verification gait data to the deep neural network and obtaining, as output, the one or more verification determinate vectors.

### Claim 19 (depends on 18)

The computer program product system of claim 18, wherein the computer system performs the obtaining the verification gait data and supplies the verification gait data to a remote computer system, and wherein the computer system receives from the remote computer system, in response to the providing, the one or more verification determinate vectors, wherein the computer system further performs the comparing, and wherein the indicating comprises the computer system raising an indication that the subject user is or is not verified to be the identified user.

### Claim 20 (depends on 17)

The computer program product of claim 17, wherein the comparing the one or more verification determinate vectors to the enrollment signature uses a similarity scoring function comprising a cosine similarity score as between the one or more verification determinate vectors and the enrollment signature, an L2 distance score as between the one or more verification determinate vectors and the enrollment signature, and a z-score of the one or more verification determinate vectors relative to the enrollment signature, the similarity scoring function indicating a level of similarity between the one or more verification determinate vectors and the enrollment signature, wherein the cosine similarity score, L2 distance score, and z-score are combined as features to a linear binary logistic regression classifier that learns an appropriate threshold for verifying whether the enrollment signature and the one or more verification determinate vectors were generated based on gait data from a common user.
