Original: A
Revised: A

Original: S IAMESE
Revised: S IAMESE

Original: N EURAL
Revised: N EURAL

Original: N ETWORK
Revised: N ETWORK

Original: FOR
Revised: FOR

Original: B EHAVIORAL
Revised: B EHAVIORAL

Original: B IOMETRICS A UTHENTICATION
Revised: B IOMETRICS A UTHENTICATION

Original: Anonymous authors
Revised: Anonymous authors

Original: Paper under double-blind review
Revised: Paper under double-blind review

Original: A BSTRACT
Revised: A BSTRACT

Original: The raise in popularity of web and mobile applications brings about a need of robust authentication systems.
Revised: The raise in popularity of web and mobile applications brings about a need of robust authentication systems.

Original: Although password authentication is the most popular authentication mechanism, it has several drawbacks.
Revised: Although password authentication is the most popular authentication mechanism, it has several drawbacks.

Original: Behavioral Biometrics Authentication has emerged as a complementary risk-based authentication approach which aims at proﬁling users based on their interaction with computers/smartphones.
Revised: Behavioral Biometrics Authentication has emerged as a complementary risk-based authentication approach which aims at proﬁling users based on their interaction with computers/smartphones.

Original: In this work we propose a novel Siamese Neural Network to perform a few-shot veriﬁcation of user’s behavior.
Revised: In this work we propose a novel Siamese Neural Network to perform a few-shot veriﬁcation of user’s behavior.

Original: We develop our approach to authenticate either human-computer or human-smartphone interaction.
Revised: We develop our approach to authenticate either human-computer or human-smartphone interaction.

Original: For computer interaction our approach learns from mouse and keyboard dynamics, while for smartphone it learns from holding patterns and touch patterns.
Revised: For computer interaction our approach learns from mouse and keyboard dynamics, while for smartphone it learns from holding patterns and touch patterns.

Original: We show that our approach has a few-shot classiﬁcation accuracy of up to 99.8% and 90.8% for mobile and web interactions, respectively.
Revised: We show that our approach has a few-shot classiﬁcation accuracy of up to 99.8% and 90.8% for mobile and web interactions, respectively.

Original: We also test our approach on a database that contains over 100K different web interactions collected in the wild.
Revised: We also test our approach on a database that contains over 100K different web interactions collected in the wild.

Original:  I NTRODUCTION
Revised:  I NTRODUCTION

Original: Biometric authentication has emerged as a complement to traditional authentication systems.
Revised: Biometric authentication has emerged as a complement to traditional authentication systems.

Original: The main advantage of such systems is that they rely on user’s information that can not easily be stolen or crafted.
Revised: The main advantage of such systems is that they rely on user’s information that can not easily be stolen or crafted.

Original: Most active ﬁelds of biometric authentication in academia and industry are related to face authentication or ﬁngerprint authentication, with a recent increase in interest on behavioral biometrics.
Revised: Most active ﬁelds of biometric authentication in academia and industry are related to face authentication or ﬁngerprint authentication, with a recent increase in interest on behavioral biometrics.

Original: Behavioral Biometrics authentication refers to the use of human-device interaction features to grant access to a speciﬁc service.
Revised: Behavioral Biometrics authentication refers to the use of human-device interaction features to grant access to a speciﬁc service.

Original: This interaction could include, but is not limited to, typing patterns, mouse dynamics, smartphone holding patterns, voice recognition, gait recognition etc.
Revised: This interaction could include, but is not limited to, typing patterns, mouse dynamics, smartphone holding patterns, voice recognition, gait recognition etc.

Original: Machine learning algorithms have been proposed to verify users identity using behavioral biometrics features.
Revised: Machine learning algorithms have been proposed to verify users identity using behavioral biometrics features.

Original: Regarding behavioral biometrics in web environments (Human-Computer interaction), most of the work has focused on the use of Support Vector Machine and Random Forest classiﬁers to analyze mouse and keyboard interaction (Khan et al., 2018; Solano et al., 2020).
Revised: Regarding behavioral biometrics in web environments (Human-Computer interaction), most of the work has focused on the use of Support Vector Machine and Random Forest classiﬁers to analyze mouse and keyboard interaction (Khan et al., 2018; Solano et al., 2020).

Original: Alternatively, some works have proposed to use built-in sensors available in mobile devices (i.e sensors information, touch interaction etc.)
Revised: Alternatively, some works have proposed to use built-in sensors available in mobile devices (i.e sensors information, touch interaction etc.)

Original: for authentication purposes (Rauen et al., 2018;
Revised: for authentication purposes (Rauen et al., 2018;

Original: Rocha et al., 2019; Zhang et al., 2016;
Revised: Rocha et al., 2019; Zhang et al., 2016;

Original: Amini et al., 2018; Abuhamad et al., 2020).
Revised: Amini et al., 2018; Abuhamad et al., 2020).

Original: However, previous works in behavioral biometrics usually have three main drawbacks: (1) they need long interactions (minutes) in order to learn accurately the user behavior; (2) they require ad-hoc interaction challenges; or (3) they need a model per user to improve model accuracy.
Revised: However, previous works in behavioral biometrics usually have three main drawbacks: (1) they need long interactions (minutes) in order to learn accurately the user behavior; (2) they require ad-hoc interaction challenges; or (3) they need a model per user to improve model accuracy.

Original: In this paper, we present a Siamese One-Shot Neural Network (SOS-NN) which is able to assess a risk score after only one observation (i.e. enrollment behavior) of a given user.
Revised: In this paper, we present a Siamese One-Shot Neural Network (SOS-NN) which is able to assess a risk score after only one observation (i.e. enrollment behavior) of a given user.

Original: To achieve this, we propose a Siamese Neural Network architecture that assesses whether two behaviors belong to the same user.
Revised: To achieve this, we propose a Siamese Neural Network architecture that assesses whether two behaviors belong to the same user.

Original: We present a similar architecture to user veriﬁcation for both, web and mobile environments.
Revised: We present a similar architecture to user veriﬁcation for both, web and mobile environments.

Original: In web environments, we create a set of features from raw mouse movements and keyboard strokes.
Revised: In web environments, we create a set of features from raw mouse movements and keyboard strokes.

Original: On the other hand, for the mobile environment our SOS-NN analyses features created from touch interaction and motion sensors on the smartphone.
Revised: On the other hand, for the mobile environment our SOS-NN analyses features created from touch interaction and motion sensors on the smartphone.

Original: In sum, the contributions of our work are: (1) An approach to user authentication using behavioral biometrics information in an accurate few-shot learning fashion after only 5 seconds of user interaction; (2) A uniﬁed neural network architecture to authenticate user’s behavior for both mobile and web environments that is able to achieve an accuracy of up to 99.8% and 90.8% respectively; (3) A framework which is able to accurately authenticate users in a large scale without requiring to retrain the model for new users; (4) A systematic measurement study to understand the impact of the parameters to SOS-NN based on the authentication time window length and the n number in the n -shot test; and (5) A comprehensive in the wild evaluation of our approach in web environments which test SOS-NN over thousands of users from real ﬁnancial services.
Revised: In sum, the contributions of our work are: (1) An approach to user authentication using behavioral biometrics information in an accurate few-shot learning fashion after only 5 seconds of user interaction; (2) A uniﬁed neural network architecture to authenticate user’s behavior for both mobile and web environments that is able to achieve an accuracy of up to 99.8% and 90.8% respectively; (3) A framework which is able to accurately authenticate users in a large scale without requiring to retrain the model for new users; (4) A systematic measurement study to understand the impact of the parameters to SOS-NN based on the authentication time window length and the n number in the n -shot test; and (5) A comprehensive in the wild evaluation of our approach in web environments which test SOS-NN over thousands of users from real ﬁnancial services.

Original:  B ACKGROUND
Revised:  B ACKGROUND

Original: In the ﬁeld of biometric-based authentication, many sources of information have been proposed.
Revised: In the ﬁeld of biometric-based authentication, many sources of information have been proposed.

Original: These could be physical (facial recognition, ﬁngerprint scanning, retina scan, etc) or behavioral patterns (signature veriﬁcation, mouse dynamics, gait analysis, voice recognition, etc.).
Revised: These could be physical (facial recognition, ﬁngerprint scanning, retina scan, etc) or behavioral patterns (signature veriﬁcation, mouse dynamics, gait analysis, voice recognition, etc.).

Original: Behavioral biometrics has gained increased attention since reproducing the behavior of a legitimate user constitutes an unconventional challenge for attackers.
Revised: Behavioral biometrics has gained increased attention since reproducing the behavior of a legitimate user constitutes an unconventional challenge for attackers.

Original: Moreover, many behavioral biometric methods do not require specialized hardware, which makes a scalable deployment easier.
Revised: Moreover, many behavioral biometric methods do not require specialized hardware, which makes a scalable deployment easier.

Original: While substantial advances have been achieved, there is still a gap to make such systems widely adopted in practice.
Revised: While substantial advances have been achieved, there is still a gap to make such systems widely adopted in practice.

Original: We deﬁne as ‘practical’ methods that demand short periods of interaction per user (both for model training and for authentication), and simple architectures that ease deployment and maintenance.
Revised: We deﬁne as ‘practical’ methods that demand short periods of interaction per user (both for model training and for authentication), and simple architectures that ease deployment and maintenance.

Original: This paper proposes a novel approach, which complements traditional authentication in web and mobile environments, considering practical implementation characteristics and scalability constraints.
Revised: This paper proposes a novel approach, which complements traditional authentication in web and mobile environments, considering practical implementation characteristics and scalability constraints.

Original: Web Environment.
Revised: Web Environment.

Original: Multiple previous studies have employed multimodal biometrics in desktop environments to identify user’s behaviour (Traore et al., 2012; Bailey et al., 2014;
Revised: Multiple previous studies have employed multimodal biometrics in desktop environments to identify user’s behaviour (Traore et al., 2012; Bailey et al., 2014;

Original: Fridman et al., 2015; Neha & Chatterjee, 2019; Solano et al., 2020).
Revised: Fridman et al., 2015; Neha & Chatterjee, 2019; Solano et al., 2020).

Original: These studies propose to integrate, either at the feature or decision level, information from keyboard interaction, mouse dynamics and others.
Revised: These studies propose to integrate, either at the feature or decision level, information from keyboard interaction, mouse dynamics and others.

Original: Most of these studies have evaluated classic ML classiﬁcation models (e.g. SVM, Naive Bayes, Random forest and J48 algorithms).
Revised: Most of these studies have evaluated classic ML classiﬁcation models (e.g. SVM, Naive Bayes, Random forest and J48 algorithms).

Original: Few others (Jagadeesan & Hsiao, 2009; Khan et al., 2018), have explored the use of shallow neural networks.
Revised: Few others (Jagadeesan & Hsiao, 2009; Khan et al., 2018), have explored the use of shallow neural networks.

Original: Remarkably, we found that siamese neural architectures had not been studied before in this ﬁeld.
Revised: Remarkably, we found that siamese neural architectures had not been studied before in this ﬁeld.

Original: Therefore, in this study, we explore the effectiveness, generalization and applicability of such architectures for behavioral biometrics.
Revised: Therefore, in this study, we explore the effectiveness, generalization and applicability of such architectures for behavioral biometrics.

Original: Regarding user interaction, we highlight that, in multiple real-world applications there is a practical limit to the length of the interaction and amount of data that can be collected before deploying an authentication model, particularly when enrolling new users to the system.
Revised: Regarding user interaction, we highlight that, in multiple real-world applications there is a practical limit to the length of the interaction and amount of data that can be collected before deploying an authentication model, particularly when enrolling new users to the system.

Original: Therefore, we compared previous approaches on the amount of interaction required, per user, to train the model.
Revised: Therefore, we compared previous approaches on the amount of interaction required, per user, to train the model.

Original: We are comparable to few studies (4), that require between 2min.
Revised: We are comparable to few studies (4), that require between 2min.

Original: to approximately 30min.
Revised: to approximately 30min.

Original: of user interaction to train the model.
Revised: of user interaction to train the model.

Original: As an illustration, Khan et al.
Revised: As an illustration, Khan et al.

Original: (2018) reported an accuracy of 97.3% using an SVM model per user, however, their approach would require recording at least 30 previous login attempts ( ≈ 15 minutes) to train each user’s model.
Revised: (2018) reported an accuracy of 97.3% using an SVM model per user, however, their approach would require recording at least 30 previous login attempts ( ≈ 15 minutes) to train each user’s model.

Original: A more recent approach proposed by Neha & Chatterjee (2019) achieves an accuracy of 95.6% after training a MLP for each user
Revised: A more recent approach proposed by Neha & Chatterjee (2019) achieves an accuracy of 95.6% after training a MLP for each user

Original: but they requiredlogins ( ≈ 25 minutes) for training phase.
Revised: but they requiredlogins ( ≈ 25 minutes) for training phase.

Original: On the scalability perspective, previous studies use authentication paradigms that involve one model per user or multiclass classiﬁcation, these methods translate into large infrastructure, deployment, monitoring and maintenance challenges.
Revised: On the scalability perspective, previous studies use authentication paradigms that involve one model per user or multiclass classiﬁcation, these methods translate into large infrastructure, deployment, monitoring and maintenance challenges.

Original: In contrast, our SOS-NN model generates a measure of similarity between two behaviors in a latent feature space.
Revised: In contrast, our SOS-NN model generates a measure of similarity between two behaviors in a latent feature space.

Original: In this case, the question is not whether the sample belongs to a particular user, but rather if the samples are similar enough to conclude that the user is the same.
Revised: In this case, the question is not whether the sample belongs to a particular user, but rather if the samples are similar enough to conclude that the user is the same.

Original: This one-model-for-all (OfA) paradigm facilitates deployment and avoids further training for every new user registered in the system.
Revised: This one-model-for-all (OfA) paradigm facilitates deployment and avoids further training for every new user registered in the system.

Original: To the best of our knowledge the SOSNN model and OfA paradigm have not been applied in desktop/web behavioral biometrics before.
Revised: To the best of our knowledge the SOSNN model and OfA paradigm have not been applied in desktop/web behavioral biometrics before.

Original: On Appendix A, we compare with further detail, previous approaches with respect to the classiﬁcation methods used, the authentication paradigm and user interaction required.
Revised: On Appendix A, we compare with further detail, previous approaches with respect to the classiﬁcation methods used, the authentication paradigm and user interaction required.

Original: Mobile Environment.
Revised: Mobile Environment.

Original: Likewise, behavioral biometrics for authentication has also been implemented for mobile environments.
Revised: Likewise, behavioral biometrics for authentication has also been implemented for mobile environments.

Original: Such models complement traditional authentication by taking advantage of the multiple built-in sensors available in mobile devices, being able to capture user behavior through several modalities.
Revised: Such models complement traditional authentication by taking advantage of the multiple built-in sensors available in mobile devices, being able to capture user behavior through several modalities.

Original: Some modalities rely on the use of mobile keyboard dynamics (Cilia & Inguanez, 2018); touchscreen interaction (Rauen et al., 2018; Rocha et al., 2019); or embedded motion sensors data (Abuhamad et al., 2020) to authenticate users.
Revised: Some modalities rely on the use of mobile keyboard dynamics (Cilia & Inguanez, 2018); touchscreen interaction (Rauen et al., 2018; Rocha et al., 2019); or embedded motion sensors data (Abuhamad et al., 2020) to authenticate users.

Original: In order to strengthen security, especially against ad-hoc adversarial attacks, multimodal authentication frameworks have been proposed by researchers (Stanciu et al., 2016; Sitov´a et al., 2015; Lamiche et al., 2019; Acien et al., 2019; Lin et al., 2018; Volaka et al., 2019;
Revised: In order to strengthen security, especially against ad-hoc adversarial attacks, multimodal authentication frameworks have been proposed by researchers (Stanciu et al., 2016; Sitov´a et al., 2015; Lamiche et al., 2019; Acien et al., 2019; Lin et al., 2018; Volaka et al., 2019;

Original: Shen et al., 2016; Centeno et al., 2018).
Revised: Shen et al., 2016; Centeno et al., 2018).

Original: Those methods rely on the fusion of multiple modalities of behavioral information (i.e. keyboard, sensors, touch, etc.) with the goal of having a better performance.
Revised: Those methods rely on the fusion of multiple modalities of behavioral information (i.e. keyboard, sensors, touch, etc.) with the goal of having a better performance.

Original: Previous works, have achieved low False
Revised: Previous works, have achieved low False

Original: Aceptance Rate (FAR) and False Rejection Rates (FRR).
Revised: Aceptance Rate (FAR) and False Rejection Rates (FRR).

Original: However, they require a one-model-peruser paradigm (OpU) and long user interaction times ( > 10min. ), which makes them challenging to use in real world scenarios.
Revised: However, they require a one-model-peruser paradigm (OpU) and long user interaction times ( > 10min. ), which makes them challenging to use in real world scenarios.

Original: In our review, the best comparable performance was reported by Stanciu et al.
Revised: In our review, the best comparable performance was reported by Stanciu et al.

Original: (2016), with FAR and FRR equal to 0.14%, nonetheless, the system would require one
Revised: (2016), with FAR and FRR equal to 0.14%, nonetheless, the system would require one

Original: K-Nearest Neighbors model per user and 20 previous logins for training each model.
Revised: K-Nearest Neighbors model per user and 20 previous logins for training each model.

Original: Appendix A presents a detailed comparison between the main state-of-the-art studies developed in mobile behavioral biometrics in terms of the type of model requirements and performance characteristics.
Revised: Appendix A presents a detailed comparison between the main state-of-the-art studies developed in mobile behavioral biometrics in terms of the type of model requirements and performance characteristics.

Original: To the best of our knowledge we are the ﬁrst study that uses Siamese Networks for mobile multimodal behavioral biometrics, with high resulting performance compared to existing solutions and capable of assessing a score after 5sec.
Revised: To the best of our knowledge we are the ﬁrst study that uses Siamese Networks for mobile multimodal behavioral biometrics, with high resulting performance compared to existing solutions and capable of assessing a score after 5sec.

Original: of user’s interaction.
Revised: of user’s interaction.

Original: Siamese Networks.
Revised: Siamese Networks.

Original: Siamese Neural Networks were ﬁrst introduced by Bromley et al.
Revised: Siamese Neural Networks were ﬁrst introduced by Bromley et al.

Original: (1994) to verify hand-written signatures.
Revised: (1994) to verify hand-written signatures.

Original: In general, Siamese Networks are composed of two twin sub-networks and a similarity module which compares the outputs of both sub-networks.
Revised: In general, Siamese Networks are composed of two twin sub-networks and a similarity module which compares the outputs of both sub-networks.

Original: Consequently, Siamese
Revised: Consequently, Siamese

Original: Networks are trained by feeding a pair of inputs which are processed by each twin in the network.
Revised: Networks are trained by feeding a pair of inputs which are processed by each twin in the network.

Original: Siamese networks have been used for veriﬁcation tasks because of their capabilities to create embedding representations which minimizes similarity between samples from different classes (Melekhov et al., 2016;
Revised: Siamese networks have been used for veriﬁcation tasks because of their capabilities to create embedding representations which minimizes similarity between samples from different classes (Melekhov et al., 2016;

Original: Boenninghoff et al., 2019).
Revised: Boenninghoff et al., 2019).

Original: In the ﬁeld of behavioral biometrics, Siamese Networks have been implemented to approach different behavioral modalities, like face recognition (Schroff et al., 2015; Taigman et al., 2014), signature recognition (Dey et al., 2017), gait recognition (Zhang et al., 2016), among others.
Revised: In the ﬁeld of behavioral biometrics, Siamese Networks have been implemented to approach different behavioral modalities, like face recognition (Schroff et al., 2015; Taigman et al., 2014), signature recognition (Dey et al., 2017), gait recognition (Zhang et al., 2016), among others.

Original: Regarding the use of Siamese Networks for behavioral biometrics authentication in web and mobile environments, Centeno et al.
Revised: Regarding the use of Siamese Networks for behavioral biometrics authentication in web and mobile environments, Centeno et al.

Original: (2018) used Siamese Networks along with CNNs as a tool to create embeddings from motion sensors plots, and then feed them into a oneclass SVM classiﬁer.
Revised: (2018) used Siamese Networks along with CNNs as a tool to create embeddings from motion sensors plots, and then feed them into a oneclass SVM classiﬁer.

Original: More recently, Giot & Rocha (2019) proposed the use of Siamese Networks to approach static authentication model using keyboard dynamics in web environments.
Revised: More recently, Giot & Rocha (2019) proposed the use of Siamese Networks to approach static authentication model using keyboard dynamics in web environments.

Original: Furthermore, Siamese Networks have been extensively used to approach classiﬁcation problems in which the few samples of each class are available to learn from (i.e. Few-shot Learning )
Revised: Furthermore, Siamese Networks have been extensively used to approach classiﬁcation problems in which the few samples of each class are available to learn from (i.e. Few-shot Learning )

Original: (Hindy et al., 2020).
Revised: (Hindy et al., 2020).

Original: Particularly, it is possible to go as far as to limit the number of available samples to only one ( one-shot learning ).
Revised: Particularly, it is possible to go as far as to limit the number of available samples to only one ( one-shot learning ).

Original: In one-shot learning literature, Siamese Networks have shown promising results in tackling classiﬁcation tasks, under the restriction of observing only one sample before making a prediction over a test instance (Koch et al., 2015; Triantaﬁllou et al., 2017).
Revised: In one-shot learning literature, Siamese Networks have shown promising results in tackling classiﬁcation tasks, under the restriction of observing only one sample before making a prediction over a test instance (Koch et al., 2015; Triantaﬁllou et al., 2017).

Original: To the best of our knowledge there are no previous works on the use of Siamese Networks to approach multimodal behavioral biometrics authentication in web or mobile environments.
Revised: To the best of our knowledge there are no previous works on the use of Siamese Networks to approach multimodal behavioral biometrics authentication in web or mobile environments.

Original: Speciﬁcally, our approach differs from others in that it (1) focuses on one-shot learning, (2) implements semi-hard pair selection, and (3) learns from different behavioral sources in both web and mobile environment.
Revised: Speciﬁcally, our approach differs from others in that it (1) focuses on one-shot learning, (2) implements semi-hard pair selection, and (3) learns from different behavioral sources in both web and mobile environment.

Original:  A PPROACH
Revised:  A PPROACH

Original: In this work we propose a deep learning framework to complement traditional authentication systems by analyzing behavioral biometric features.
Revised: In this work we propose a deep learning framework to complement traditional authentication systems by analyzing behavioral biometric features.

Original: Such framework aims to learn and analyze inherent user behavior while interacting with a device in a few-shot fashion.
Revised: Such framework aims to learn and analyze inherent user behavior while interacting with a device in a few-shot fashion.

Original: In particular, we analyze two different environments to learn from users: Web Environments and Mobile Environments .
Revised: In particular, we analyze two different environments to learn from users: Web Environments and Mobile Environments .

Original: For the
Revised: For the

Original: Web Environment we are interested in authenticating users using information from mouse and keyboard dynamics.
Revised: Web Environment we are interested in authenticating users using information from mouse and keyboard dynamics.

Original: On the other hand, for the Mobile Environment we focus on the physical sensors like touch, accelerometer, gyroscope and magnetometer.
Revised: On the other hand, for the Mobile Environment we focus on the physical sensors like touch, accelerometer, gyroscope and magnetometer.

Original: 3. F EATURE E NGINEERING
Revised: 3. F EATURE E NGINEERING

Original: As we are interested in behavior veriﬁcation, the ﬁrst step consists in processing continuous raw data sequences, recorded from the machine-user interaction, and then transform them into readable features for the model.
Revised: As we are interested in behavior veriﬁcation, the ﬁrst step consists in processing continuous raw data sequences, recorded from the machine-user interaction, and then transform them into readable features for the model.

Original: Recorded sequences are split into multiple ﬁxed length interaction windows for all the modalities recorded.
Revised: Recorded sequences are split into multiple ﬁxed length interaction windows for all the modalities recorded.

Original: In this paper we explored the performance of the model for multiple ﬁxed-time windows varying from 5sec.
Revised: In this paper we explored the performance of the model for multiple ﬁxed-time windows varying from 5sec.

Original: to 60sec.
Revised: to 60sec.

Original: of user interaction.
Revised: of user interaction.

Original: [Table]
Revised: [Table]

Original: Web Environment.
Revised: Web Environment.

Original: For the Web Environment, we start out from the raw sequences of mouse movements and key presses.
Revised: For the Web Environment, we start out from the raw sequences of mouse movements and key presses.

Original: The raw mouse data includes timestamp, pointer coordinates ( x, y ) and the type of interaction (i.e. click, mouse movement, etc.).
Revised: The raw mouse data includes timestamp, pointer coordinates ( x, y ) and the type of interaction (i.e. click, mouse movement, etc.).

Original: We transform the raw data by designing two sets of features, inspired in Ahmed & Traore (2007); Solano et al.
Revised: We transform the raw data by designing two sets of features, inspired in Ahmed & Traore (2007); Solano et al.

Original: To calculate features that capture the direction of the mouse moment, the angular space is split into eight equal bins of 45° and each mouse event in the ﬁxed-time window is classiﬁed into one bin.
Revised: To calculate features that capture the direction of the mouse moment, the angular space is split into eight equal bins of 45° and each mouse event in the ﬁxed-time window is classiﬁed into one bin.

Original: Then, the ﬁrst set of features is calculated by ﬁnding the average movement speed in each of those direction partitions.
Revised: Then, the ﬁrst set of features is calculated by ﬁnding the average movement speed in each of those direction partitions.

Original: The second set is the proportion of movements performed in each direction along the ﬁxed-time window.
Revised: The second set is the proportion of movements performed in each direction along the ﬁxed-time window.

Original: Mouse dynamics were captured from 16 features (2 sets × 8 directions).
Revised: Mouse dynamics were captured from 16 features (2 sets × 8 directions).

Original: In a like manner, the keyboard raw data includes the timestamp, key and key interaction (i.e. Press or release).
Revised: In a like manner, the keyboard raw data includes the timestamp, key and key interaction (i.e. Press or release).

Original: Four sets of keyboard features were created as described in Table 1.
Revised: Four sets of keyboard features were created as described in Table 1.

Original: Afterwards, for each set of keyboard features, we calculate the average, the median and the standard deviation.
Revised: Afterwards, for each set of keyboard features, we calculate the average, the median and the standard deviation.

Original: As a result, for the keyboard dynamics information we build a set of 12 features (4 sets × 3 metrics).
Revised: As a result, for the keyboard dynamics information we build a set of 12 features (4 sets × 3 metrics).

Original: Mobile Environment.
Revised: Mobile Environment.

Original: For the Mobile Environment, the raw data is represented by (1) measurements from sensors (gyroscope, magnetometer and accelerometer) and (2) touch inputs performed by the user along the ﬁxed-time window.
Revised: For the Mobile Environment, the raw data is represented by (1) measurements from sensors (gyroscope, magnetometer and accelerometer) and (2) touch inputs performed by the user along the ﬁxed-time window.

Original: Regarding the sensor’s measurements, we record values in
Revised: Regarding the sensor’s measurements, we record values in

Original: X, Y and Z axis for each sensor.
Revised: X, Y and Z axis for each sensor.

Original: For each sequence, including sensors and touch data, we compute 5 measures of central tendency of the data distribution: mean, standard deviation, median, minimum and maximum.
Revised: For each sequence, including sensors and touch data, we compute 5 measures of central tendency of the data distribution: mean, standard deviation, median, minimum and maximum.

Original: On the other hand, for the touch interaction we record raw data from the touch’s center, the touch’s pressure and the touch’s size.
Revised: On the other hand, for the touch interaction we record raw data from the touch’s center, the touch’s pressure and the touch’s size.

Original: From these records we compute 4 features: mean touch duration, the average number of changes in pressure or touch center within the same touch (downup) interaction, standard deviation of touch’s center ( x, y ) and mean ﬁnger size (touch size area).
Revised: From these records we compute 4 features: mean touch duration, the average number of changes in pressure or touch center within the same touch (downup) interaction, standard deviation of touch’s center ( x, y ) and mean ﬁnger size (touch size area).

Original: We added two features related to mobile keyboard interaction, based on latency between consecutive touches.
Revised: We added two features related to mobile keyboard interaction, based on latency between consecutive touches.

Original: Altogether, for each ﬁxed-time window we have a vector containing 52 features (45 sensors + 5 touch + 2 keyboard).
Revised: Altogether, for each ﬁxed-time window we have a vector containing 52 features (45 sensors + 5 touch + 2 keyboard).

Original: 3. S IAMESE N EURAL N ETWORK
Revised: 3. S IAMESE N EURAL N ETWORK

Original: Our Deep Learning Framework evaluates if two recorded behaviors belong to the same user.
Revised: Our Deep Learning Framework evaluates if two recorded behaviors belong to the same user.

Original: This approach could authenticate a user after only one observation (i.e. the enrollment behavior).
Revised: This approach could authenticate a user after only one observation (i.e. the enrollment behavior).

Original: Our
Revised: Our

Original: SOS-NN computes the similarity between two behavior inputs.
Revised: SOS-NN computes the similarity between two behavior inputs.

Original: In that sense, if two inputs are similar enough, our system concludes that the incoming behavior belongs to the legitimate user.
Revised: In that sense, if two inputs are similar enough, our system concludes that the incoming behavior belongs to the legitimate user.

Original: The siamese network architecture is made of two identical sub-networks; In our case, two fully connected neural networks which share weights.
Revised: The siamese network architecture is made of two identical sub-networks; In our case, two fully connected neural networks which share weights.

Original: Each sub-network processes one of the input behaviors and works as a feature extractor.
Revised: Each sub-network processes one of the input behaviors and works as a feature extractor.

Original: Both of the sub-network’s outputs are bounded by an energy function.
Revised: Both of the sub-network’s outputs are bounded by an energy function.

Original: We compute a L 1 distance as the energy function between both of the computed feature vectors in the latent space.
Revised: We compute a L 1 distance as the energy function between both of the computed feature vectors in the latent space.

Original: Intuitively, this distance should be large when input behaviors belong to different users but small when they belong to the same user.
Revised: Intuitively, this distance should be large when input behaviors belong to different users but small when they belong to the same user.

Original: Following the energy function calculation, we include in our model a fully-connected decision network, which makes the classiﬁcation decision based on the distance between the feature vectors in the latent space.
Revised: Following the energy function calculation, we include in our model a fully-connected decision network, which makes the classiﬁcation decision based on the distance between the feature vectors in the latent space.

Original: Consequently, the output of our SOS-NN is a binary classiﬁcation, where the output is One if behaviors belong to the same user, and Zero otherwise.
Revised: Consequently, the output of our SOS-NN is a binary classiﬁcation, where the output is One if behaviors belong to the same user, and Zero otherwise.

Original: Figure 1 depicts the proposed SOS-NN architecture.
Revised: Figure 1 depicts the proposed SOS-NN architecture.

Original: 3.2. S AMPLE G ENERATION
Revised: 3.2. S AMPLE G ENERATION

Original: The Siamese networks learn from comparing pairs of behaviors.
Revised: The Siamese networks learn from comparing pairs of behaviors.

Original: A positive pair is deﬁned as a pair of two behaviors which belong to the same user, whereas a pair of behaviors from different users is labeled as a negative pair.
Revised: A positive pair is deﬁned as a pair of two behaviors which belong to the same user, whereas a pair of behaviors from different users is labeled as a negative pair.

Original: The model is trained by presenting multiple samples of these
Revised: The model is trained by presenting multiple samples of these

Original: [Figure]
Revised: [Figure]

Original: pairs, the training goal is to minimize the energy function (i.e. L 1 distance ) between behaviors in positive pairs, and to maximize the energy function for negative pairs.
Revised: pairs, the training goal is to minimize the energy function (i.e. L 1 distance ) between behaviors in positive pairs, and to maximize the energy function for negative pairs.

Original: The quality of retrieved pairs in training will determine the quality of our SOS-NN.
Revised: The quality of retrieved pairs in training will determine the quality of our SOS-NN.

Original: The naive selection of those positive and negative pairs is a random selection.
Revised: The naive selection of those positive and negative pairs is a random selection.

Original: This naive approach is ﬁne for the positive pairs but for the negative samples it is crucial to select high quality pairs.
Revised: This naive approach is ﬁne for the positive pairs but for the negative samples it is crucial to select high quality pairs.

Original: More advanced techniques can be used to select the training samples, like triplet loss technique, which uses simultaneously 3 examples to optimize every training step (Hermans et al., 2017).
Revised: More advanced techniques can be used to select the training samples, like triplet loss technique, which uses simultaneously 3 examples to optimize every training step (Hermans et al., 2017).

Original: The constrains on the distances between the triplets can be controlled; we chose Semi-hard negatives as our strategy to populate triplet samples.
Revised: The constrains on the distances between the triplets can be controlled; we chose Semi-hard negatives as our strategy to populate triplet samples.

Original: Further details on the triplet loss selection can be found on Appendix B.
Revised: Further details on the triplet loss selection can be found on Appendix B.

Original: On the evaluation we compare two pair generation strategies to feed with the Siamese Networks, namely (1) Naive Pair and (2) Semi-hard Triplets.
Revised: On the evaluation we compare two pair generation strategies to feed with the Siamese Networks, namely (1) Naive Pair and (2) Semi-hard Triplets.

Original: 3.2. T RAINING S TRATEGIES
Revised: 3.2. T RAINING S TRATEGIES

Original: The training procedure depends on the sample generation strategy (naive or triplet).
Revised: The training procedure depends on the sample generation strategy (naive or triplet).

Original: For the naive pair strategy, we train our SOS-NN using a cross entropy objective loss on our binary classiﬁer (same or different user).
Revised: For the naive pair strategy, we train our SOS-NN using a cross entropy objective loss on our binary classiﬁer (same or different user).

Original: Therefore, for the naive strategy, we perform the weights optimization over the full network (including both the siamese and decision networks), using standard back propagation.
Revised: Therefore, for the naive strategy, we perform the weights optimization over the full network (including both the siamese and decision networks), using standard back propagation.

Original: Notice that gradient is additive over the tied sub-networks.
Revised: Notice that gradient is additive over the tied sub-networks.

Original: On the other hand, for the triplet strategy the training is done in two steps: (1) siamese network training and (2) decision layer training.
Revised: On the other hand, for the triplet strategy the training is done in two steps: (1) siamese network training and (2) decision layer training.

Original: To train the siamese network, we use the Semi-Hard Triplets conﬁguration.
Revised: To train the siamese network, we use the Semi-Hard Triplets conﬁguration.

Original: Once the feature extractor is trained, their weights are frozen and the fully connected decision layer is appended to complete the SOS-NN.
Revised: Once the feature extractor is trained, their weights are frozen and the fully connected decision layer is appended to complete the SOS-NN.

Original: Lastly, we train the decision layer by using binary cross-entropy as a loss function.
Revised: Lastly, we train the decision layer by using binary cross-entropy as a loss function.

Original:  E VALUATION 4. E XPERIMENTAL S ETUP
Revised:  E VALUATION 4. E XPERIMENTAL S ETUP

Original: Web Environment Dataset .
Revised: Web Environment Dataset .

Original: We collected two datasets under controlled and uncontrolled conditions.
Revised: We collected two datasets under controlled and uncontrolled conditions.

Original: For the controlled setting , we used data acquired through the ‘Amazon Mechanical Turk’ service 1 by submitting the task of logging on a website designed to capture mouse and keyboard events.
Revised: For the controlled setting , we used data acquired through the ‘Amazon Mechanical Turk’ service 1 by submitting the task of logging on a website designed to capture mouse and keyboard events.

Original: Here we collected interactions from 89 worldwide workers who introduced ﬁctitious credentials on the login website.
Revised: Here we collected interactions from 89 worldwide workers who introduced ﬁctitious credentials on the login website.

Original: A total of 1374 sessions (full login interaction) were obtained with an average duration of 26.7sec.
Revised: A total of 1374 sessions (full login interaction) were obtained with an average duration of 26.7sec.

Original: per session.
Revised: per session.

Original: As for the uncontrolled setting , a monitoring system was appended to two login web pages from real banking domains where mouse and keyboard events were recorded.
Revised: As for the uncontrolled setting , a monitoring system was appended to two login web pages from real banking domains where mouse and keyboard events were recorded.

Original: To protect users privacy, the raw data was transformed into features on the clientside before they were sent to the server.
Revised: To protect users privacy, the raw data was transformed into features on the clientside before they were sent to the server.

Original: In this setting, 807622 sessions worth of interactions were collected from 125403 users, with an average of 22.4sec.
Revised: In this setting, 807622 sessions worth of interactions were collected from 125403 users, with an average of 22.4sec.

Original: per session.
Revised: per session.

Original: Mobile Environment Dataset .
Revised: Mobile Environment Dataset .

Original: We developed a realistic looking Android application simulating different banking activities and equipped with a event logger to save information related to touch, accelerometer, magnetometer and gyroscope events.
Revised: We developed a realistic looking Android application simulating different banking activities and equipped with a event logger to save information related to touch, accelerometer, magnetometer and gyroscope events.

Original: For keyboard touch events the timestamp and key value were logged.
Revised: For keyboard touch events the timestamp and key value were logged.

Original: We collected data from 35 volunteers performing sessions lasting 10min.
Revised: We collected data from 35 volunteers performing sessions lasting 10min.

Original: on average and making up to 372min.
Revised: on average and making up to 372min.

Original: in total.
Revised: in total.

Original: Moreover, the volunteers used more than 20 different smartphone devices.
Revised: Moreover, the volunteers used more than 20 different smartphone devices.

Original: In case of acceptance both datasets will be made publicly available.
Revised: In case of acceptance both datasets will be made publicly available.

Original: Feature Engineering .
Revised: Feature Engineering .

Original: The behavioral data gathered in controlled settings was subsequently merged into a continuous session for each user.
Revised: The behavioral data gathered in controlled settings was subsequently merged into a continuous session for each user.

Original: Afterwards, the full history per user was split into ﬁxed-time windows.
Revised: Afterwards, the full history per user was split into ﬁxed-time windows.

Original: We analyzed time windows of 5 , 10 , 20 , 30 and 60 seconds of interaction.
Revised: We analyzed time windows of 5 , 10 , 20 , 30 and 60 seconds of interaction.

Original: Next, for each ﬁxed-time window we calculate the features following the methodology described in Section 3.1.
Revised: Next, for each ﬁxed-time window we calculate the features following the methodology described in Section 3.1.

Original: Regarding the data collected in the wild from real banking domains, since features are pre-computed on the client-side, we collected login sessions with arbitrary durations.
Revised: Regarding the data collected in the wild from real banking domains, since features are pre-computed on the client-side, we collected login sessions with arbitrary durations.

Revised: Finally, we randomly split the dataset by users, since we wanted to avoid validating with behaviors similar to the ones observed in training.

Revised: Splitting the dataset by users has been shown to perform better than other train-test schemes in previous veriﬁcation tasks (Koch et al., 2015).

Original: More details related to data processing and train-test splits can be found in Appendix C.1.1.
Revised: More details related to data processing and train-test splits can be found in Appendix C.1.1.

Original: Networks Conﬁguration .
Revised: Networks Conﬁguration .

Original: We implemented our approach using the Tensorﬂow framework.
Revised: We implemented our approach using the Tensorﬂow framework.

Original: The feature extraction and classiﬁcation decision is made by a siamese network and decision network respectively, both were built with fully connected architectures.
Revised: The feature extraction and classiﬁcation decision is made by a siamese network and decision network respectively, both were built with fully connected architectures.

Original: Therefore, regularization, batch normalization and dropouts were tested for both networks.
Revised: Therefore, regularization, batch normalization and dropouts were tested for both networks.

Original: For the triplet loss we used the
Revised: For the triplet loss we used the

Original: SemiHardTriplets implementation available on Tensorﬂow Addons (Hermans et al., 2017).
Revised: SemiHardTriplets implementation available on Tensorﬂow Addons (Hermans et al., 2017).

Original: Our SOS-NN network is trained using Adam optimizer.
Revised: Our SOS-NN network is trained using Adam optimizer.

Original: For more details refer to Appendix C.2.
Revised: For more details refer to Appendix C.2.

Original: 4. R ESULTS
Revised: 4. R ESULTS

Original: [Figure]
Revised: [Figure]

Original: over several n-shot comparisons and time windows interactions for behavior veriﬁcation collected in web and mobile environment.

Original: To understand the capabilities and robustness of our proposed SOS-NN we perform a systematic evaluation over the model performance for different setups in the training and veriﬁcation phase.
Revised: To understand the capabilities and robustness of our proposed SOS-NN we perform a systematic evaluation over the model performance for different setups in the training and veriﬁcation phase.

Original: Variables included in this systematic evaluation are the sample generation scheme (pair o triplet), interaction time required (ﬁxed-time window length) and the number of samples ( n ) from previous history to compare with ( n-shot testing).
Revised: Variables included in this systematic evaluation are the sample generation scheme (pair o triplet), interaction time required (ﬁxed-time window length) and the number of samples ( n ) from previous history to compare with ( n-shot testing).

Original: For the n-shot testing, the output consists in the average of each individual pair-comparison.
Revised: For the n-shot testing, the output consists in the average of each individual pair-comparison.

Original: At the end of the section, we show an evaluation of our SOS-NN for web environments over a large scale experiment ( ≈ 125 K of users) to verify that performance remains at the same level under uncontrolled conditions.
Revised: At the end of the section, we show an evaluation of our SOS-NN for web environments over a large scale experiment ( ≈ 125 K of users) to verify that performance remains at the same level under uncontrolled conditions.

Original: Web Environment Results.
Revised: Web Environment Results.

Original: Figure 2a illustrates the model accuracy in web environments for different conﬁgurations.
Revised: Figure 2a illustrates the model accuracy in web environments for different conﬁgurations.

Original: As can be noticed from Figure 2a, the veriﬁcation accuracy is consistently higher for longer time windows in the veriﬁcation phase.
Revised: As can be noticed from Figure 2a, the veriﬁcation accuracy is consistently higher for longer time windows in the veriﬁcation phase.

Original: The best veriﬁcation accuracy obtained for web environment is 90.8%.
Revised: The best veriﬁcation accuracy obtained for web environment is 90.8%.

Original: Moreover, we also found a gradual rise in the veriﬁcation accuracy when the number of comparisons increases.
Revised: Moreover, we also found a gradual rise in the veriﬁcation accuracy when the number of comparisons increases.

Original: In the 1-shot and 5-shot veriﬁcation tasks our approach achieves up to 74% and 86% in veriﬁcation accuracy respectively.
Revised: In the 1-shot and 5-shot veriﬁcation tasks our approach achieves up to 74% and 86% in veriﬁcation accuracy respectively.

Original: Table 2 summarizes the accuracies for different veriﬁcation windows requirements with higher values in darker color.
Revised: Table 2 summarizes the accuracies for different veriﬁcation windows requirements with higher values in darker color.

Original: As we expected, the performance of our model is better when analyzing longer times in veriﬁcation phase.
Revised: As we expected, the performance of our model is better when analyzing longer times in veriﬁcation phase.

Original: However, more comparisons seems to have a larger effect on accuracy than longer interactions times.
Revised: However, more comparisons seems to have a larger effect on accuracy than longer interactions times.

Original: For instance,comparisons ( 10-shot ) for window lengths of 5 seconds is better than one comparison ( 1-shot ) of 60 seconds, as can be observed in Table 2b.
Revised: For instance,comparisons ( 10-shot ) for window lengths of 5 seconds is better than one comparison ( 1-shot ) of 60 seconds, as can be observed in Table 2b.

Original: We believe this is due to multiple comparisons smoothing the score of the incoming ﬁxed-time windows.
Revised: We believe this is due to multiple comparisons smoothing the score of the incoming ﬁxed-time windows.

Original: Moreover, we observe an improvement of around 4% when using triplet setup for training phase.
Revised: Moreover, we observe an improvement of around 4% when using triplet setup for training phase.

Original: This improvement is a consequence of better negative sample choices in the training phase, which leads to a more powerful feature extractor at the bottom of our SOS-NN.
Revised: This improvement is a consequence of better negative sample choices in the training phase, which leads to a more powerful feature extractor at the bottom of our SOS-NN.

Original: Recall that in the triplet training scheme training samples are forced to satisfy Equation 1.
Revised: Recall that in the triplet training scheme training samples are forced to satisfy Equation 1.

Original: Consequently, our results conﬁrm that a better choice of behavioral positive and negative samples could moderately improve the performance of our SOS-NN for web environments.
Revised: Consequently, our results conﬁrm that a better choice of behavioral positive and negative samples could moderately improve the performance of our SOS-NN for web environments.

Original: Furthermore, the veriﬁcation accuracy reaches the best values after 10 comparisons ( 10-shot ) as it starts ﬂuctuating close to the maximum obtained performance.
Revised: Furthermore, the veriﬁcation accuracy reaches the best values after 10 comparisons ( 10-shot ) as it starts ﬂuctuating close to the maximum obtained performance.

Original: Figure 3 shows the ROC curve and the FAR and FRR for the best setup in web environment.
Revised: Figure 3 shows the ROC curve and the FAR and FRR for the best setup in web environment.

Original: As can be observed from Figure 3b, the FAR and FRR are 9.8% and 16.2% respectively for classiﬁcation threshold equal to 0 . 45 .
Revised: As can be observed from Figure 3b, the FAR and FRR are 9.8% and 16.2% respectively for classiﬁcation threshold equal to 0 . 45 .

Original: [Figure]
Revised: [Figure]

Original: Mobile Environment Results.
Revised: Mobile Environment Results.

Original: Results for the mobile environment can be found on Figure 2b.
Revised: Results for the mobile environment can be found on Figure 2b.

Original: The best veriﬁcation accuracy obtained is 99.8%.
Revised: The best veriﬁcation accuracy obtained is 99.8%.

Original: We found a considerable accuracy improvement (5%) when the number of n comparisons increases from 1 to 10 comparisons.
Revised: We found a considerable accuracy improvement (5%) when the number of n comparisons increases from 1 to 10 comparisons.

Original: However, from 10 comparisons until 30, for all window lengths the accuracy is saturated around 98% for a 60sec.
Revised: However, from 10 comparisons until 30, for all window lengths the accuracy is saturated around 98% for a 60sec.

Original: window and 97% for a 5sec. window.
Revised: window and 97% for a 5sec. window.

Original: Besides, a 1% difference between a 5 and a 60 seconds-window suggests that the information collected in the ﬁrst seconds gives already a satisfactory description of user behavior.
Revised: Besides, a 1% difference between a 5 and a 60 seconds-window suggests that the information collected in the ﬁrst seconds gives already a satisfactory description of user behavior.

Original: The difference between pair and triplet training is not signiﬁcant.
Revised: The difference between pair and triplet training is not signiﬁcant.

Original: This suggests for high validation accuracy (i.e. > 90%), the performance depends more on the architecture of the sub-networks or on data structure aspects instead of the sample generation strategy.
Revised: This suggests for high validation accuracy (i.e. > 90%), the performance depends more on the architecture of the sub-networks or on data structure aspects instead of the sample generation strategy.

Original: Finally, if we focus on an ideal setting where there are no restrictions on how much data can be sampled from each user, meaning no limit on comparisons or windows lengths, we achieve a validation accuracy up to 98% for all with windows above 20 comparisons (See Table 3).
Revised: Finally, if we focus on an ideal setting where there are no restrictions on how much data can be sampled from each user, meaning no limit on comparisons or windows lengths, we achieve a validation accuracy up to 98% for all with windows above 20 comparisons (See Table 3).

Original: Nevertheless, in the case of a practical solution (i.e a company’s product) there are some limitations to be taken into account.
Revised: Nevertheless, in the case of a practical solution (i.e a company’s product) there are some limitations to be taken into account.

Original: Here, waiting too much to gather several 60-second windows can compromise the security of the system.
Revised: Here, waiting too much to gather several 60-second windows can compromise the security of the system.

Original: In this case, the lesser the time the better: even for the case of a 5-second window and only one comparison, namely one-shot inference, we achieve an accuracy of 92%.
Revised: In this case, the lesser the time the better: even for the case of a 5-second window and only one comparison, namely one-shot inference, we achieve an accuracy of 92%.

Original: Our preferred case would be using 3 comparisons, which corresponds to 15sec.
Revised: Our preferred case would be using 3 comparisons, which corresponds to 15sec.

Original: of interaction, easily collected after only one login session of the user; in this scenario our accuracy is 96%.
Revised: of interaction, easily collected after only one login session of the user; in this scenario our accuracy is 96%.

Original: Figure 3 shows the
Revised: Figure 3 shows the

Original: ROC curve and the FAR and FRR for the best setup in mobile environment.
Revised: ROC curve and the FAR and FRR for the best setup in mobile environment.

Original: The best FAR and FRR are 0.01% and 0.22% respectively for threshold classiﬁcation equal to 0 .
Revised: The best FAR and FRR are 0.01% and 0.22% respectively for threshold classiﬁcation equal to 0 .

Original: Remarkably, our SOS-NN achieves an AUC of 0 . 99 in mobile environment (See Figure 3a).
Revised: Remarkably, our SOS-NN achieves an AUC of 0 . 99 in mobile environment (See Figure 3a).

Original: [Table]
Revised: [Table]

Original: [Figure]
Revised: [Figure]

Revised: [Table]

Revised: [Figure]

Revised: [Figure]

Revised: [Table]

Original: 4.2. E VALUATION IN THE WILD
Revised: 4.2. E VALUATION IN THE WILD

Original: In order reach a deep understanding on how our SOS-NN behaves in the wild at a large scale, we tested the framework with over 100 thousand real users from legitimate banking domains.
Revised: In order reach a deep understanding on how our SOS-NN behaves in the wild at a large scale, we tested the framework with over 100 thousand real users from legitimate banking domains.

Original: Figuredepicts the veriﬁcation accuracy of our approach evaluated in real web sessions.
Revised: Figuredepicts the veriﬁcation accuracy of our approach evaluated in real web sessions.

Original: First of all, we simulated the same setting we had in the controlled experiment: we trained with 50 users and tested with the remaining users.
Revised: First of all, we simulated the same setting we had in the controlled experiment: we trained with 50 users and tested with the remaining users.

Original: In this baseline, the veriﬁcation accuracy for 1-shot testing is 63% and 68% for pair and triplet training respectively.
Revised: In this baseline, the veriﬁcation accuracy for 1-shot testing is 63% and 68% for pair and triplet training respectively.

Original: Notice that this performance value is very close to metrics we had for the controlled dataset for a time window length of 10 seconds.
Revised: Notice that this performance value is very close to metrics we had for the controlled dataset for a time window length of 10 seconds.

Original: Recall that 75% of sessions in the uncontrolled dataset lasted less than 10 seconds.
Revised: Recall that 75% of sessions in the uncontrolled dataset lasted less than 10 seconds.

Original: In like manner, the accuracy when testing in a 5-shot and a 10-shot fashion is up to 75% and 79% respectively.
Revised: In like manner, the accuracy when testing in a 5-shot and a 10-shot fashion is up to 75% and 79% respectively.

Original: [Figure]
Revised: [Figure]

Original: More importantly, we investigated how the model performance increases when more data is considered to train it.
Revised: More importantly, we investigated how the model performance increases when more data is considered to train it.

Original: Accordingly, we study the veriﬁcation accuracy or our
Revised: Accordingly, we study the veriﬁcation accuracy or our

Original: SOS-NN when behavioral data from 25K, 75K or 100K different users is included in the training set.
Revised: SOS-NN when behavioral data from 25K, 75K or 100K different users is included in the training set.

Original: Figureshows the veriﬁcation accuracy for different n-shot conﬁgurations when different amounts of users in training data.
Revised: Figureshows the veriﬁcation accuracy for different n-shot conﬁgurations when different amounts of users in training data.

Original: From Figure 4 we can observe that model performance jumps when more user’s behaviors are in the training phase.
Revised: From Figure 4 we can observe that model performance jumps when more user’s behaviors are in the training phase.

Original: In general, the rise in veriﬁcation accuracy when training with 25K in comparison with 50 users is about 9%.
Revised: In general, the rise in veriﬁcation accuracy when training with 25K in comparison with 50 users is about 9%.

Original: In addition, we do not observe sharp improvements when training with more than 25K users.
Revised: In addition, we do not observe sharp improvements when training with more than 25K users.

Original: We believe this is happening because the behavior of 25K users is complex enough to force the network to learn the differences in the latent space among a diverse spectrum of user behaviors.
Revised: We believe this is happening because the behavior of 25K users is complex enough to force the network to learn the differences in the latent space among a diverse spectrum of user behaviors.

Original: This ﬁnding suggests that, for behavioral biometric data, there could be a limit to the representational power of the data in the latent space, this is an interesting insight for future research on siamese neural networks applied to structured data.
Revised: This ﬁnding suggests that, for behavioral biometric data, there could be a limit to the representational power of the data in the latent space, this is an interesting insight for future research on siamese neural networks applied to structured data.

Original: 4.2. D ISCUSSION
Revised: 4.2. D ISCUSSION

Original: As shown, our SOS-NN is able to accurately classify behaviors for short and long interaction windows, and therefore it is suitable as a competitive, maintainable and lightweight mechanism for authentication in contrast to previous work (Appendix A).
Revised: As shown, our SOS-NN is able to accurately classify behaviors for short and long interaction windows, and therefore it is suitable as a competitive, maintainable and lightweight mechanism for authentication in contrast to previous work (Appendix A).

Original: Previous schemes are mainly based on either one model per user or a multiclass classiﬁcation, which could result in a resource intensive implementation in the real world and arguably not as scalable for thousands or even millions of users as our proposed one-for-all approach.
Revised: Previous schemes are mainly based on either one model per user or a multiclass classiﬁcation, which could result in a resource intensive implementation in the real world and arguably not as scalable for thousands or even millions of users as our proposed one-for-all approach.

Original: In fact, for multiclass classiﬁcation paradigm the model has to be re-trained every time a new user is added; while for the one-model-per-user a model has to be trained for new user in the service (requiring high volumes of data for each new user).
Revised: In fact, for multiclass classiﬁcation paradigm the model has to be re-trained every time a new user is added; while for the one-model-per-user a model has to be trained for new user in the service (requiring high volumes of data for each new user).

Original: By comparison, after training with a certain quantity of data our SOS-NN is ready to be deployed and used with any user, even if it has not seen before by the system.
Revised: By comparison, after training with a certain quantity of data our SOS-NN is ready to be deployed and used with any user, even if it has not seen before by the system.

Original: Additionally, we studied the system performance in a real authentication scenario, where requiring short interaction windows and rapidly deploy a model that can assess a risk score for the user can be a large advantage.
Revised: Additionally, we studied the system performance in a real authentication scenario, where requiring short interaction windows and rapidly deploy a model that can assess a risk score for the user can be a large advantage.

Original: The majority of examples in the related work require minutes or even hours of interactions or tenths of logins to achieve their performance.
Revised: The majority of examples in the related work require minutes or even hours of interactions or tenths of logins to achieve their performance.

Original: Alternatively, our approach could
Revised: Alternatively, our approach could

Original: [Table]
Revised: [Table]

Original: [Figure]
Revised: [Figure]

Original: [Table]
Revised: [Table]

Original: [Figure]
Revised: [Figure]

Original: [Table]
Revised: [Table]

Original: [Figure]
Revised: [Figure]

Original: [Table]
Revised: [Table]

Original: [Figure]
Revised: [Figure]

Original: [Table]
Revised: [Table]

Original: [Figure] [Figure]
Revised: [Figure] [Figure]

Original: authenticate the user after only 25 seconds to 3 minutes with an accuracy of 73% to 85% in Web environment.
Revised: authenticate the user after only 25 seconds to 3 minutes with an accuracy of 73% to 85% in Web environment.

Original: We understand this value could seem relatively low, but that is because we push to the limit the capabilities of the model to learn behaviors even from short interactions as a trade-off between accuracy and promptness of assessment.
Revised: We understand this value could seem relatively low, but that is because we push to the limit the capabilities of the model to learn behaviors even from short interactions as a trade-off between accuracy and promptness of assessment.

Original: Finally, the difference of performance between web and mobile environments is noteworthy.
Revised: Finally, the difference of performance between web and mobile environments is noteworthy.

Original: The complete framework behaves way better with mobile data, even when the architecture and training procedure are the same.
Revised: The complete framework behaves way better with mobile data, even when the architecture and training procedure are the same.

Original: Recall that for the mobile environment a few seconds of interaction are enough for the model to achieve 99% of accuracy.
Revised: Recall that for the mobile environment a few seconds of interaction are enough for the model to achieve 99% of accuracy.

Original: This can be explained given that our model receives the devices’ sensors input even when the user is not actively interacting with the application and is only holding the device.
Revised: This can be explained given that our model receives the devices’ sensors input even when the user is not actively interacting with the application and is only holding the device.

Original: On the other hand, the web environment depends on the user interacting with the peripherals (mouse & keyboard), otherwise the system goes blind due to insufﬁcient input data to make a valuable prediction, as seen in Figure 2a.
Revised: On the other hand, the web environment depends on the user interacting with the peripherals (mouse & keyboard), otherwise the system goes blind due to insufﬁcient input data to make a valuable prediction, as seen in Figure 2a.

Original: This means that our web system needs more data, and therefore more time to be able to complement the authentication, but nonetheless can achieve reasonable performances of up to 90% of accuracy.
Revised: This means that our web system needs more data, and therefore more time to be able to complement the authentication, but nonetheless can achieve reasonable performances of up to 90% of accuracy.

Original:  C ONCLUSION
Revised:  C ONCLUSION

Original: In this paper we have presented an effective approach to generate a Siamese Neural Network model that integrates different human-device interaction sources (mouse, keyboard or mobile sensors) for behavioral biometric authentication.
Revised: In this paper we have presented an effective approach to generate a Siamese Neural Network model that integrates different human-device interaction sources (mouse, keyboard or mobile sensors) for behavioral biometric authentication.

Original: Our model obtained high accuracy even when tested in a fewshot fashion, that is, needing only a few behavior samples per user.
Revised: Our model obtained high accuracy even when tested in a fewshot fashion, that is, needing only a few behavior samples per user.

Original: We also showed that the proposed model architecture can be easily adapted to both web and mobile environments.
Revised: We also showed that the proposed model architecture can be easily adapted to both web and mobile environments.

Original: Furthermore, our system has the potential to rapidly scale in production environments because it needs only one model to evaluate behavior of many users.
Revised: Furthermore, our system has the potential to rapidly scale in production environments because it needs only one model to evaluate behavior of many users.

Original: We evaluated our approach on various datasets, including production data for thousands of users in a web-application.
Revised: We evaluated our approach on various datasets, including production data for thousands of users in a web-application.

Original: In future work we plan to evaluate our approach on production data belonging to mobile users as well.
Revised: In future work we plan to evaluate our approach on production data belonging to mobile users as well.

Original: A PPENDIX A R ELATED W ORK
Revised: A PPENDIX A R ELATED W ORK

Original: We collected information from previous studies for both desktop/web and mobile environments.
Revised: We collected information from previous studies for both desktop/web and mobile environments.

Original: The following table compares these works in terms of model inputs, model type, model performance, authentication paradigm, required amount of user interaction to train the model and required amount of interaction to authenticate the user, once the model has been trained.
Revised: The following table compares these works in terms of model inputs, model type, model performance, authentication paradigm, required amount of user interaction to train the model and required amount of interaction to authenticate the user, once the model has been trained.

Original: [Table]
Revised: [Table]

Original: [Figure]
Revised: [Figure]

Original: The mouse features used in our web environment approach are inspired in Ahmed & Traore (2007);
Revised: The mouse features used in our web environment approach are inspired in Ahmed & Traore (2007);

Original: Solano et al.
Revised: Solano et al.

Original: These features build a mouse dynamics proﬁle over the movements performed by a user in a ﬁxed-time window.
Revised: These features build a mouse dynamics proﬁle over the movements performed by a user in a ﬁxed-time window.

Original: The key idea is to analyze mouse actions like mouse movements, drag-and-drops and clicks within eight equal area partitions in the circular space surrounding the pointer’s position at any given time along a recorded session.
Revised: The key idea is to analyze mouse actions like mouse movements, drag-and-drops and clicks within eight equal area partitions in the circular space surrounding the pointer’s position at any given time along a recorded session.

Original: We perform this analysis by getting the next pointer’s position and calculating the movement direction, the speed, the angle of curvature and the curvature distance (See Figure 5).
Revised: We perform this analysis by getting the next pointer’s position and calculating the movement direction, the speed, the angle of curvature and the curvature distance (See Figure 5).

Original: In consequence, a unique user signature can be built by calculating central tendency statistics for each partition.
Revised: In consequence, a unique user signature can be built by calculating central tendency statistics for each partition.

Original: As for the keyboard, the timing features are extracted from the timestamps and the type of action ( key-down or key-up ) of the keyboard events recorded.
Revised: As for the keyboard, the timing features are extracted from the timestamps and the type of action ( key-down or key-up ) of the keyboard events recorded.

Original: The aim here is to discover unique user tendencies by measuring how long was a key pressed ( down-up ), the time between two consecutive key releases ( up-up ), the time between two consecutive keys pressed ( down-down ) and the time from one key release until the next key is presses ( up-down ).
Revised: The aim here is to discover unique user tendencies by measuring how long was a key pressed ( down-up ), the time between two consecutive key releases ( up-up ), the time between two consecutive keys pressed ( down-down ) and the time from one key release until the next key is presses ( up-down ).

Original: Thus, the keyboard features consist of the central tendency statistics per each of these metrics.
Revised: Thus, the keyboard features consist of the central tendency statistics per each of these metrics.

Original: B. M OBILE E NVIRONMENT
Revised: B. M OBILE E NVIRONMENT

Original: The mobile features are intended to capture the way a user holds the smartphone and simultaneously their touch pattern when tapping the screen.
Revised: The mobile features are intended to capture the way a user holds the smartphone and simultaneously their touch pattern when tapping the screen.

Original: In that sense, we start from the raw measurements from smartphone’s sensors (i.e. gyroscope, magnetometer and accelerometer).
Revised: In that sense, we start from the raw measurements from smartphone’s sensors (i.e. gyroscope, magnetometer and accelerometer).

Original: Notice that the value of those sensors change constantly while the user naturally interacts with the smartphone.
Revised: Notice that the value of those sensors change constantly while the user naturally interacts with the smartphone.

Original: In sum, we calculate central tendency statistics over the series S 1 , S 2 , ..., S tn for each sensor
Revised: In sum, we calculate central tendency statistics over the series S 1 , S 2 , ..., S tn for each sensor

Original: S ∈
Revised: S ∈

Original: [ gyroscope, magnetometer, accelerometer ] .
Revised: [ gyroscope, magnetometer, accelerometer ] .

Original: Then we build the user device holding proﬁle by analyzing the 45 sensor features (3 Sensors x 3 Axes x 5 statistics).
Revised: Then we build the user device holding proﬁle by analyzing the 45 sensor features (3 Sensors x 3 Axes x 5 statistics).

Original: Regarding touch interaction, we use the interaction derived from touch actions as the raw data.
Revised: Regarding touch interaction, we use the interaction derived from touch actions as the raw data.

Original: Afterwards, we compute the mean touch duration, the average number of changes in pressure or touch center within the same touch (down-up) interaction, standard deviation of touch’s center (x, y) and mean ﬁnger size (touch size area) over all in actions in ﬁxed-time window.
Revised: Afterwards, we compute the mean touch duration, the average number of changes in pressure or touch center within the same touch (down-up) interaction, standard deviation of touch’s center (x, y) and mean ﬁnger size (touch size area) over all in actions in ﬁxed-time window.

Original: In summary, the features used to capture meaningful traits of user behavior when interacting in web and mobile environments are summarized by input source in Figure 6.
Revised: In summary, the features used to capture meaningful traits of user behavior when interacting in web and mobile environments are summarized by input source in Figure 6.

Original: [Figure]
Revised: [Figure]

Original: C T RAINING D ETAILS C. S AMPLE G ENERATION D ETAILS
Revised: C T RAINING D ETAILS C. S AMPLE G ENERATION D ETAILS

Original: One of the most successful approaches applied to Siamese Networks in order to improve the selection of negative pairs was presented by Schroff et al. (2015).
Revised: One of the most successful approaches applied to Siamese Networks in order to improve the selection of negative pairs was presented by Schroff et al. (2015).

Original: As shown early, a Siamese Networks is an architecture that compares two sets of inputs; however, Schroff et al.
Revised: As shown early, a Siamese Networks is an architecture that compares two sets of inputs; however, Schroff et al.

Original: (2015) implemented a triplet technique that uses 3 examples at the same time to optimize every training step.
Revised: (2015) implemented a triplet technique that uses 3 examples at the same time to optimize every training step.

Original: These 3 examples are carefully selected so that the ﬁrst two of them belong to a positive match (i.e. two examples that correspond to the same class, namely an anchor (A) and a positive example (P) ) and the last one corresponds to a different class, being a negative example (N) .
Revised: These 3 examples are carefully selected so that the ﬁrst two of them belong to a positive match (i.e. two examples that correspond to the same class, namely an anchor (A) and a positive example (P) ) and the last one corresponds to a different class, being a negative example (N) .

Original: The goal is to minimize the distance in the feature space between examples of the same class and maximize the distance between examples of different classes, which can be expressed as:
Revised: The goal is to minimize the distance in the feature space between examples of the same class and maximize the distance between examples of different classes, which can be expressed as:

Original: [Equation]
Revised: [Equation]

Original: Where α is a margin parameter related to the difﬁculty of the examples.
Revised: Where α is a margin parameter related to the difﬁculty of the examples.

Original: The ﬁnal loss can be represented as:
Revised: The ﬁnal loss can be represented as:

Original: [Equation]
Revised: [Equation]

Original: As in the pair generation, the 3 examples per triplet can be generated randomly as long as they fulﬁll the previously named condition.
Revised: As in the pair generation, the 3 examples per triplet can be generated randomly as long as they fulﬁll the previously named condition.

Original: Nevertheless, this strategy would deliver most of the time a small
Revised: Nevertheless, this strategy would deliver most of the time a small

Original: Loss, because it is expected that many negative examples produce features with larger distances from the anchors, whose loss ends up adding nothing to the training.
Revised: Loss, because it is expected that many negative examples produce features with larger distances from the anchors, whose loss ends up adding nothing to the training.

Original: A better approach is to pre-select the triplets in order to optimize the learning.
Revised: A better approach is to pre-select the triplets in order to optimize the learning.

Original: This pre-selection could be performed by choosing two kinds of triplets: Hard negatives and Semi-hard negatives.
Revised: This pre-selection could be performed by choosing two kinds of triplets: Hard negatives and Semi-hard negatives.

Original: Hard negatives are examples whose feature distances with the anchor are strictly smaller than the distance between the positive example and the anchor (Schroff et al., 2015).
Revised: Hard negatives are examples whose feature distances with the anchor are strictly smaller than the distance between the positive example and the anchor (Schroff et al., 2015).

Original: Semi-hard negatives are examples whose distance with the
Revised: Semi-hard negatives are examples whose distance with the

Original: Anchor is greater than the positive example, but still inside the margin α (Hermans et al., 2017).
Revised: Anchor is greater than the positive example, but still inside the margin α (Hermans et al., 2017).

Original: In principle, the hard negatives deliver the greatest losses, and therefore the strongest convergence, but in practice they can be too aggressive and collapse the loss function.
Revised: In principle, the hard negatives deliver the greatest losses, and therefore the strongest convergence, but in practice they can be too aggressive and collapse the loss function.

Original: Consequently, we use Semihard negatives as our strategy to populate triplets in training phase.
Revised: Consequently, we use Semihard negatives as our strategy to populate triplets in training phase.

Original: With this in mind, we propose and compare both pair generations strategies (Naive Pair and Semi-hard Triplets) to feed with the
Revised: With this in mind, we propose and compare both pair generations strategies (Naive Pair and Semi-hard Triplets) to feed with the

Original: Siamese Networks.
Revised: Siamese Networks.

Original: C.1. D ATA P ROCESSING
Revised: C.1. D ATA P ROCESSING

Original: Once the features have been calculated, we split the dataset into three disjoint set of users: 64% of the users for training, 16% for validation and 20% for test.
Revised: Once the features have been calculated, we split the dataset into three disjoint set of users: 64% of the users for training, 16% for validation and 20% for test.

Original: Finally, the features were transformed in order to follow a normal distribution by using a non-linear transformation on each feature independently (Quantile Transformation in Pedregosa et al.
Revised: Finally, the features were transformed in order to follow a normal distribution by using a non-linear transformation on each feature independently (Quantile Transformation in Pedregosa et al.

Original: Privacy Concerns.
Revised: Privacy Concerns.

Original: Collecting behavior sequences could lead to privacy concerns as personal data like passwords patterns (keyboard Dynamics), user location (sensor Analysis), etc. is being recorded.
Revised: Collecting behavior sequences could lead to privacy concerns as personal data like passwords patterns (keyboard Dynamics), user location (sensor Analysis), etc. is being recorded.

Original: To ensure privacy of the information, we transform the raw sequences in the client-side and send the behavioral biometrics features to be analyzed by our SOS-NN model in the server-side.
Revised: To ensure privacy of the information, we transform the raw sequences in the client-side and send the behavioral biometrics features to be analyzed by our SOS-NN model in the server-side.

Original: C. N ETWORK D ETAILS
Revised: C. N ETWORK D ETAILS

Original: One of our goals was to implement a system that was almost the same for both web and mobile environments.
Revised: One of our goals was to implement a system that was almost the same for both web and mobile environments.

Original: The biggest difference is found at the input of the Siamese Networks, because the number of crafted features is different for each environment, namely 28 for web and 52 for mobile.
Revised: The biggest difference is found at the input of the Siamese Networks, because the number of crafted features is different for each environment, namely 28 for web and 52 for mobile.

Original: After that, both environments share the same architecture and hyper-parameters.
Revised: After that, both environments share the same architecture and hyper-parameters.

Original: The feature extractor was composed by a fully connected network; the output of both Siamese extractors was compared with an L 1 distance layer.
Revised: The feature extractor was composed by a fully connected network; the output of both Siamese extractors was compared with an L 1 distance layer.

Original: The feature extractor was composed by a couple of dense layers with ReLU activation and a last layer with a Sigmoid activation.
Revised: The feature extractor was composed by a couple of dense layers with ReLU activation and a last layer with a Sigmoid activation.

Original: For the decision module, another fully connected network was implemented whose input was the L 1 distance layer between the features in the latent space.
Revised: For the decision module, another fully connected network was implemented whose input was the L 1 distance layer between the features in the latent space.

Original: We also tested other distances as energy function, like L 2 , Manhattan and Cosine distances as well, but
Revised: We also tested other distances as energy function, like L 2 , Manhattan and Cosine distances as well, but

Original: L 1 showed the best results.
Revised: L 1 showed the best results.

Original: The decision subnetwork was composed of two dense layers with ReLU activation and ﬁnally an output network with a sigmoid activation, whose output can be understood as the probability of two inputs samples to come from the same user.
Revised: The decision subnetwork was composed of two dense layers with ReLU activation and ﬁnally an output network with a sigmoid activation, whose output can be understood as the probability of two inputs samples to come from the same user.

Original: We also tried different strategies to improve the validation accuracy like regularization, batch normalization, a deeper and wider network but the best validation performance was obtained with the simplest architecture.
Revised: We also tried different strategies to improve the validation accuracy like regularization, batch normalization, a deeper and wider network but the best validation performance was obtained with the simplest architecture.

Original: The best parameter conﬁguration was a mini batch of 100, a learning rate of 0.001, an Adam Optimizer and 200 steps per epoch.
Revised: The best parameter conﬁguration was a mini batch of 100, a learning rate of 0.001, an Adam Optimizer and 200 steps per epoch.

Original: Weights were initialized following a normal distribution with zero-mean and standard deviation 0.01.
Revised: Weights were initialized following a normal distribution with zero-mean and standard deviation 0.01.

Original: For the feature extraction training with triplet conﬁguration, the training was performed up to 1000 epochs, with an early stopping callback focused on validation loss.
Revised: For the feature extraction training with triplet conﬁguration, the training was performed up to 1000 epochs, with an early stopping callback focused on validation loss.

Original: The training of this phase includes a L 2 distance as part of the available in the Tensorﬂow implementation of triplet loss schema ( α = 1 . 0 ).
Revised: The training of this phase includes a L 2 distance as part of the available in the Tensorﬂow implementation of triplet loss schema ( α = 1 . 0 ).

Original: It should be clear that L 2 was used only for the feature extraction training; later when it is appended to the decision layer, a L 1 distance is used to measure the difference between two inputs.
Revised: It should be clear that L 2 was used only for the feature extraction training; later when it is appended to the decision layer, a L 1 distance is used to measure the difference between two inputs.

Original: The decision layer subnetwork for the triplet approach was trained for 20 epochs.
Revised: The decision layer subnetwork for the triplet approach was trained for 20 epochs.

Original: On the other hand, the training for pair approach, that is the feature extractor and decision layer as a whole were trained for 20 epochs.
Revised: On the other hand, the training for pair approach, that is the feature extractor and decision layer as a whole were trained for 20 epochs.

Original: The data selection for the training is the one explained in Section 3.2.2.
Revised: The data selection for the training is the one explained in Section 3.2.2.