{
  "fetched_at": "2026-10-19T08:18:06Z",
  "source_url": "https://www.kaggle.com/competitions/accelerometer-biometric-competition/data",
  "pages": [
    {
      "name": "rules",
      "content": "\r\n\t<!-- Begin Base Rules -->\r\n    <h3>One account per participant</h3>\r\n    <p>You cannot sign up to Kaggle from multiple accounts and therefore you cannot submit from multiple accounts.</p>\r\n    <h3>No private sharing outside teams</h3>\r\n    <p>\r\n        Privately sharing code or data outside of teams is not permitted.\r\n        It's okay to share code if made available to all participants on the forums.\r\n    </p>\r\n    <h3>Public dissemination of entries</h3>\r\n    <p>Kaggle and the competition host have the right to publicly disseminate any entries or models.</p>\r\n    <h3>Open licensing of winners</h3>\r\n    <p>\r\n        Winning solutions need to be made available under\r\n        <a href=\"http://opensource.org/licenses\">a popular OSI-approved license</a>\r\n        in order to be eligible for recognition and prize money.\r\n    </p>\r\n    <h3>Winning solutions must be posted or linked to in the forums.</h3>\r\n    <p>\r\n        Prizes will be awarded after the winners have posted their solutions to the competition forum.\r\n        Winners must post or link to their solutions within seven (7) days of being notified of their winning status.\r\n    </p>\r\n    <h3>Team Mergers</h3>\r\n    <p>\r\n        Team mergers are allowed and can be performed by the team leader. In order to merge, the combined team must have a total submission count less than or equal to the maximum allowed as of the merge date. The maximum allowed is the number of submissions per day multiplied by the number of days the competition has been running.<br/>\r\n    </p>\r\n\r\n    <h3>Team Limits</h3>\r\n    <p>There is no maximum team size.</p>\r\n    <h3>Submission Limits</h3>\r\n    <p>You may submit a maximum of 5 entries per day.</p>\r\n    <p>You may select up to 2 final submissions for judging.</p>\r\n    <h3>Competition Timeline</h3>\r\n    <p>Start Date: <strong>7/23/2013 4:32 PM UTC</strong></p>\r\n    <p>Merger Deadline: <strong>11/20/2013 10:40 PM UTC</strong></p>\r\n    <p>Entry Deadline: <strong>None</strong></p>\r\n    <p>End Date: <strong>11/22/2013 11:59 PM UTC</strong></p>\r\n\t<!-- End Base Rules -->\r\n<p>This competition is subject to the&nbsp;<a href=\"https://www.kaggle.com/wiki/ResearchCompetitionStandardRules\">Research Competition Standard Rules</a>.</p>",
      "isPublished": false,
      "hasIsPublished": false,
      "postTitle": "",
      "hasPostTitle": false,
      "mimeType": "",
      "hasMimeType": false
    },
    {
      "name": "Description",
      "content": "<p>Since everyone moves differently and accelerometers are fast becoming ubiquitous, this competition is designed to investigate the feasibility of using accelerometer data as a biometric for identifying users of mobile devices.</p>\r\n<p>Seal has collected accelerometer data from several hundred users over a period of several months during normal device usage. To collect the data, we published an <a href=\"https://play.google.com/store/apps/details?id=com.seal.quickdraw&amp;feature=search_result#?t=W251bGwsMSwxLDEsImNvbS5zZWFsLnF1aWNrZHJhdyJd\">app</a> on Googles&rsquo;s Android PlayStore that samples accelerometer data in the background and posts it to a central database for analysis.</p>\r\n<p>We have uploaded approximately 60 million unique samples of accelerometer data collected from 387 different devices. These are split into equal sets for training and test. Samples in the training set are labeled with the unique device from which the data was collected. The test set is demarcated into 90k sequences of consecutive samples from one device. &nbsp;A file of test questions is provided in which you are asked to determine whether the accelerometer data came from the proposed device.</p>",
      "isPublished": false,
      "hasIsPublished": false,
      "postTitle": "",
      "hasPostTitle": false,
      "mimeType": "",
      "hasMimeType": false
    },
    {
      "name": "Evaluation",
      "content": "<p>Submissions are judged on&nbsp;<a href=\"http://en.wikipedia.org/wiki/Receiver_operating_characteristic\">area under the ROC curve</a>.&nbsp;</p>\r\n<p>In Matlab (using the stats toolbox):</p>\r\n<pre>[~, ~, ~, auc ] = perfcurve(true_labels, predictions, 1);\r\n</pre>\r\n<p>In R (using the verification package):</p>\r\n<pre>auc = roc.area(true_labels, predictions)\r\n</pre>\r\n<p>In python (using the metrics module of scikit-learn):</p>\r\n<pre>fpr, tpr, thresholds = metrics.roc_curve(true_labels, predictions, pos_label=1)\r\nauc = metrics.auc(fpr,tpr)</pre>\r\n<h2>Submission Format</h2>\r\n<p>Each line of your submission should contain an QuestionId and a prediction, IsTrue. Note that you may submit any real-valued number as a prediction, &nbsp;since AUC is only sensitive to the ranking. sampleSubmission.csv shows a representative valid submission. &nbsp;The format looks like this:</p>\r\n<pre>QuestionId,IsTrue\r\n1,0\r\n2,0.3\r\n3,99999\r\n4,-0.8\r\netc...\r\n</pre>",
      "isPublished": false,
      "hasIsPublished": false,
      "postTitle": "",
      "hasPostTitle": false,
      "mimeType": "",
      "hasMimeType": false
    },
    {
      "name": "data-description",
      "content": "<p>Your task is to determine whether the accelerometer recordings in the test set (test.csv) &nbsp;belong to the proposed devices in the question set (questions.csv).&nbsp;</p>\r\n<h3>The following files are provided:</h3>\r\n<table border=\"1\" cellspacing=\"0\" cellpadding=\"0\">\r\n<tbody>\r\n<tr>\r\n<td width=\"145\" valign=\"top\">\r\n<p><b>File name</b></p>\r\n</td>\r\n<td width=\"312\" valign=\"top\">\r\n<p><b>Description</b></p>\r\n</td>\r\n</tr>\r\n<tr>\r\n<td width=\"145\" valign=\"top\">\r\n<p><b>train.zip</b></p>\r\n</td>\r\n<td width=\"312\" valign=\"top\">\r\n<p>30m samples for training, labeled with DeviceId</p>\r\n</td>\r\n</tr>\r\n<tr>\r\n<td width=\"145\" valign=\"top\">\r\n<p><b>test.zip</b></p>\r\n</td>\r\n<td width=\"312\" valign=\"top\">\r\n<p>30m samples for test, split into 90k sequences, labeled with SequenceId</p>\r\n</td>\r\n</tr>\r\n<tr>\r\n<td width=\"145\" valign=\"top\">\r\n<p><b>questions.csv</b></p>\r\n</td>\r\n<td width=\"312\" valign=\"top\">\r\n<p>90k questions that match test sequences to DeviceId</p>\r\n</td>\r\n</tr>\r\n</tbody>\r\n</table>\r\n<h3>train.csv</h3>\r\n<table border=\"1\" cellspacing=\"0\" cellpadding=\"0\">\r\n<tbody>\r\n<tr>\r\n<td width=\"97\" valign=\"top\">\r\n<p><b>Field name</b></p>\r\n</td>\r\n<td width=\"328\" valign=\"top\">\r\n<p><b>Description</b></p>\r\n</td>\r\n</tr>\r\n<tr>\r\n<td width=\"97\" valign=\"top\">\r\n<p><b>T</b></p>\r\n</td>\r\n<td width=\"328\" valign=\"top\">\r\n<p>Unix time (miliseconds since 1/1/1970)</p>\r\n</td>\r\n</tr>\r\n<tr>\r\n<td width=\"97\" valign=\"top\">\r\n<p><b>X</b></p>\r\n</td>\r\n<td width=\"328\" valign=\"top\">\r\n<p>Acceleration measured in g on x co-ordinate</p>\r\n</td>\r\n</tr>\r\n<tr>\r\n<td width=\"97\" valign=\"top\">\r\n<p><b>Y</b></p>\r\n</td>\r\n<td width=\"328\" valign=\"top\">\r\n<p>Acceleration measured in g on y co-ordinate</p>\r\n</td>\r\n</tr>\r\n<tr>\r\n<td width=\"97\" valign=\"top\">\r\n<p><b>Z</b></p>\r\n</td>\r\n<td width=\"328\" valign=\"top\">\r\n<p>Acceleration measured in g on z co-ordinate</p>\r\n</td>\r\n</tr>\r\n<tr>\r\n<td width=\"97\" valign=\"top\">\r\n<p><b>DeviceId</b></p>\r\n</td>\r\n<td width=\"328\" valign=\"top\">\r\n<p>Unique Id of the device that generated the samples</p>\r\n</td>\r\n</tr>\r\n</tbody>\r\n</table>\r\n<h3><span style=\"font-size: 1em; line-height: 1.4;\">test.csv</span></h3>\r\n<table border=\"1\" cellspacing=\"0\" cellpadding=\"0\">\r\n<tbody>\r\n<tr>\r\n<td width=\"97\" valign=\"top\">\r\n<p><b>Field name</b></p>\r\n</td>\r\n<td width=\"328\" valign=\"top\">\r\n<p><b>Description</b></p>\r\n</td>\r\n</tr>\r\n<tr>\r\n<td width=\"97\" valign=\"top\">\r\n<p><b>T</b></p>\r\n</td>\r\n<td width=\"328\" valign=\"top\">\r\n<p>Unix time (miliseconds since 1/1/1970)</p>\r\n</td>\r\n</tr>\r\n<tr>\r\n<td width=\"97\" valign=\"top\">\r\n<p><b>X</b></p>\r\n</td>\r\n<td width=\"328\" valign=\"top\">\r\n<p>Acceleration measured in g on x co-ordinate</p>\r\n</td>\r\n</tr>\r\n<tr>\r\n<td width=\"97\" valign=\"top\">\r\n<p><b>Y</b></p>\r\n</td>\r\n<td width=\"328\" valign=\"top\">\r\n<p>Acceleration measured in g on y co-ordinate</p>\r\n</td>\r\n</tr>\r\n<tr>\r\n<td width=\"97\" valign=\"top\">\r\n<p><b>Z</b></p>\r\n</td>\r\n<td width=\"328\" valign=\"top\">\r\n<p>Acceleration measured in g on z co-ordinate</p>\r\n</td>\r\n</tr>\r\n<tr>\r\n<td width=\"97\" valign=\"top\">\r\n<p><b>SequenceId</b></p>\r\n</td>\r\n<td width=\"328\" valign=\"top\">\r\n<p>Unique sequence number assigned to each question. Each group of samples is labeled with a unique SequenceId. Each SequenceId is matched to a professed DeviceId in the questions.csv file.</p>\r\n</td>\r\n</tr>\r\n</tbody>\r\n</table>\r\n<h3>questions.csv</h3>\r\n<table border=\"1\" cellspacing=\"0\" cellpadding=\"0\">\r\n<tbody>\r\n<tr>\r\n<td width=\"109\" valign=\"top\">\r\n<p><b>Field name</b></p>\r\n</td>\r\n<td width=\"316\" valign=\"top\">\r\n<p><b>Description</b></p>\r\n</td>\r\n</tr>\r\n<tr>\r\n<td width=\"109\" valign=\"top\">\r\n<p><b>QuestionId</b></p>\r\n</td>\r\n<td width=\"316\" valign=\"top\">Id of question</td>\r\n</tr>\r\n<tr>\r\n<td width=\"109\" valign=\"top\">\r\n<p><b>SequenceId</b></p>\r\n</td>\r\n<td width=\"316\" valign=\"top\">\r\n<p>Unique number assigned to each sequence of samples</p>\r\n</td>\r\n</tr>\r\n<tr>\r\n<td width=\"109\" valign=\"top\">\r\n<p><b>QuizDevice</b></p>\r\n</td>\r\n<td width=\"316\" valign=\"top\">\r\n<p>Professed device that generated the sequence of<br />accelerometer data in the test file</p>\r\n</td>\r\n</tr>\r\n</tbody>\r\n</table>\r\n<h3>Data Preparation</h3>\r\n<ol>\r\n<li>After removing from the data set samples from devices with fewer than 6000 samples collected and sequences of samples during periods of rest exceeding 10 seconds, 60 million samples from 387 users were made available for the competition.</li>\r\n<li>Samples from each device were split chronologically into train and test sets, with the earliest samples assigned to the train set.</li>\r\n<li>The test set was demarcated into 90,000 consecutive sequences of 300 samples each from a same device and each sequence assigned a unique Sequence Id.</li>\r\n<li>Each sequence Id was associated with a professed device Id such that in some cases a true device id was assigned and in others a false device id was assigned.</li>\r\n</ol>",
      "isPublished": false,
      "hasIsPublished": false,
      "postTitle": "",
      "hasPostTitle": false,
      "mimeType": "",
      "hasMimeType": false
    },
    {
      "name": "More On Accelerometer Data",
      "content": "<h3>Coordinate System</h3>\r\n<p>&nbsp;<img src=\"https://storage.googleapis.com/kaggle-media/competitions/kaggle/3524/media/coordinates.png\" width=\"225\" height=\"269\" alt=\"Accelerometer coordinate system\" title=\"Accelerometer coordinate system\" /></p>\r\n<p>Figure 1. Coordinate system (relative to a device) that's used by the Android Sensor API.</p>\r\n<p>In general, the sensor framework uses a standard 3-axis coordinate system to express data values. For most sensors, the coordinate system is defined relative to the device's screen when the device is held in its default orientation (see figure 1). When a device is held in its default orientation, the X axis is horizontal and points to the right, the Y axis is vertical and points up, and the Z axis points toward the outside of the screen face. In this system, coordinates behind the screen have negative Z values. (Quoted from the <a href=\"http://developer.android.com/guide/topics/sensors/sensors_overview.html\">Sensor Overview</a> at Android developers site.)</p>\r\n<h3>Sampling Frequency</h3>\r\n<p>The Android system allows developers to specify sampling frequency using one of four sensor delay comstants:</p>\r\n<ul>\r\n<li>SENSOR_DELAY_FASTEST</li>\r\n<li>SENSOR_DELAY_GAME</li>\r\n<li>SENSOR_DELAY_NORMAL</li>\r\n<li>SENSOR_DELAY_UI</li>\r\n</ul>\r\n<p>Device manufacturers may interpret these values differently. Our background process that collected samples for this contest specified a sample frequency value of SENSOR_DELAY_NORMAL. Other applications running on the device can overide the sampling frequency specified. The mean interval between consecutive samples in this data set is 207 ms.</p>\r\n<h3>Gravity</h3>\r\n<p>The combined force exerted upon the x,y and z axes of a device is calculated by the distance function: SquareRoot(x^2 + y^2 +z^2). When the device is not accelerating, this&nbsp;function evaluates to the force of gravity (~9.85). This property ensures that when a correctly calibrated device is not in motion,the &nbsp;x,y,z accelerometer readings that it provides, will plot to points on a sphere with radius ~9.85.&nbsp;</p>\r\n<p>&nbsp;</p>\r\n<p>&nbsp;<img src=\"https://storage.googleapis.com/kaggle-media/competitions/kaggle/3524/media/gravsphere.png\" width=\"456\" height=\"324\" alt=\"Gravity sphere\" title=\"Gravity sphere\" /></p>\r\n<p></p>\r\n<p>Figure 2: 670 sample data points collected from an accelerometer stream during approximately 2 minutes, while the device was held in portrait, landscape and face-up positions.</p>\r\n<p>&nbsp;Notice that the plotted x,y,z coordinates of each accelerometer event appear as points on the surface of a sphere.</p>\r\n<p>See <a href=\"http://quickdraw.seal-id.com/blogs/detecting-how-you-hold-your-phone\">Detecting how you hold your phone</a> for more information.</p>",
      "isPublished": false,
      "hasIsPublished": false,
      "postTitle": "",
      "hasPostTitle": false,
      "mimeType": "",
      "hasMimeType": false
    },
    {
      "name": "About The Sponsor",
      "content": "<p>Seal Mobile ID is based in Tel Aviv and was incorporated in January 2012.&nbsp;</p>\r\n<p>The company filed a US provisional patent application (61/430,549) in January 2011,&nbsp;describing \"Systems methods and media for unobtrusively recognizing an authorized user by a mobile device\". Our PCT application is published at the&nbsp;<a href=\"http://patentscope.wipo.int/search/en/detail.jsf?docId=WO2012093393&amp;recN\" target=\"_blank\">WIPO site</a>.&nbsp;For additional information about Seal, please see our <a href=\"http://www.seal-id.com/\">web site</a>.</p>",
      "isPublished": false,
      "hasIsPublished": false,
      "postTitle": "",
      "hasPostTitle": false,
      "mimeType": "",
      "hasMimeType": false
    },
    {
      "name": "Prizes",
      "content": "<ul>\r\n<li>1st place: $3000</li>\r\n<li>2nd place: $1200</li>\r\n<li>3rd place: $700</li>\r\n<li>4th place: $100</li>\r\n</ul>\r\n<p></p>",
      "isPublished": false,
      "hasIsPublished": false,
      "postTitle": "",
      "hasPostTitle": false,
      "mimeType": "",
      "hasMimeType": false
    },
    {
      "name": "Winners",
      "content": "<p><strong>First Place:</strong></p>\r\n<ul>\r\n<li>Dmitry B. - Galich, Russia, with <a href=\"https://www.kaggle.com/c/accelerometer-biometric-competition/forums/t/6474/final-requirements/35661#post35661\">this model code</a></li>\r\n</ul>\r\n<p><strong>Second Place:</strong></p>\r\n<ul>\r\n<li>Jos&eacute; Sol&oacute;rzano -&nbsp;Quito, Ecuador, with <a href=\"https://www.kaggle.com/c/accelerometer-biometric-competition/forums/t/6474/final-requirements\">this model code</a></li>\r\n</ul>\r\n<p><strong>Third Place:</strong></p>\r\n<ul>\r\n<li>Israel Nir - Tel Aviv, Israel, with <a href=\"https://www.kaggle.com/c/accelerometer-biometric-competition/forums/t/6474/final-requirements/35529#post35529\">this model code</a></li>\r\n</ul>\r\n<p><strong>Fourth Place:</strong></p>\r\n<ul>\r\n<li>Dan Stahlke - Pittsburgh, USA, with <a href=\"https://www.kaggle.com/c/accelerometer-biometric-competition/forums/t/6474/final-requirements/35698#post35698\">this model code</a></li>\r\n</ul>",
      "isPublished": false,
      "hasIsPublished": false,
      "postTitle": "",
      "hasPostTitle": false,
      "mimeType": "",
      "hasMimeType": false
    }
  ]
}