{
  "fetched_at": "2026-10-19T07:34:49Z",
  "source_url": "https://www.kaggle.com/competitions/104-1-mlds-hw2/data",
  "pages": [
    {
      "name": "data-description",
      "content": "<p>The data is exactly the same as in homework 1 except we add one file 'phones/48_idx_chr.map' which provides the mapping from 48 phoneme to the corresponding index and English character. You may download the file '48_idx_chr.map' directly if you already have the training data in homework 1.</p>\r\n<p>Also, we provide you the posterior gram of both testing and training set after a trained DNN. If you didn't get good result in homework 1, then you may try to train you RNN with this given posterior gram.</p>",
      "isPublished": false,
      "hasIsPublished": false,
      "postTitle": "",
      "hasPostTitle": false,
      "mimeType": "",
      "hasMimeType": false
    },
    {
      "name": "Description",
      "content": "<h2><strong>Homework 2: </strong></h2>\r\n<h2><strong>RNN IN SPEECH RECOGNITION</strong></h2>\r\n<p><strong>1. Introduction</strong></p>\r\n<p>   In this homework, you and your teammates are asked to implement the <strong>recurrent neural network(RNN)</strong> as a classifier. The main task here is to re-evaluate the transition probabilities between phone sequences. Thus, we are going to use the edit distance evaluation method to evaluate your answer, i.e. phone sequences.<br />  Again, you may need the domain knowledge about <strong>Automatic Speech Recognition(ASR) </strong>to get better comprehension in this work, but little is needed to complete the actual homework.</p>\r\n<p><strong>2. Problem Description</strong><br />    <strong>Goal:</strong> Given the input feature of each time frame, utilize recurrent neural network to predict the phone sequence.<br />    <strong>Input</strong>: The posterior gram of phones, the MFCC features, the raw wave files, or any other derivations.<br />    <strong>Output:</strong> 48 phone label sequences after trimming.</p>\r\n<p>    You are asked to implement at least but not limited the following methods:</p>\r\n<p>    rnn.init(): initialize model parameters<br />    rnn.forward(): forward layer-by-layer to obtain all activation values in the neurons.<br />    rnn.calculate_error(): calculate the error signal according to the RNN output and the target function<br />    rnn.backpropagation(): backpropagation the error signal back through layers.<br />    rnn.bptt(): backpropagation through time through layers.<br />    rnn.update(): update the RNN parameters.<br />    rnn.predict(): predict the output labels<br />    rnn.save_model() / rnn.load_model(): basic model io that can store the parameters you trained.</p>\r\n<p><strong>3.Implementation:</strong><br />    Different from Homework 1, RNN is recurrent in time domain and thus have dependencies on each frame. <strong>You may try to implement either a CPU or a GPU version</strong>. <br />    We recommend 3 types of GPU programming, <a href=\"https://developer.nvidia.com/cuda-downloads\">CUDA C/C++</a>, <a href=\"http://deeplearning.net/software/theano/\">Python Theano</a>, <a href=\"http://www.mathworks.com/discovery/matlab-gpu.html\">Matlab GPU Toolbox</a>. We expect you to explore any of them <strong>by yourselves</strong> and utilize then in your RNN implementation. However, the difficulty is quite different, and you can use any programming language with any open-source matrix manipulation package to achieve your goal. Yet, the choice is up to you.<br />   <strong> However, the same as Homework 1, we strictly forbid any form of NN-based toolkit utilization.</strong> Please remember that the best way to learn is always to implement by yourselves, although the procedure may be quite harsh.</p>",
      "isPublished": false,
      "hasIsPublished": false,
      "postTitle": "",
      "hasPostTitle": false,
      "mimeType": "",
      "hasMimeType": false
    },
    {
      "name": "Evaluation",
      "content": "<h2><strong>Evaluation:</strong></h2>\r\n<p>    The evaluation metric for this competition is <a href=\"https://en.wikipedia.org/wiki/Edit_distance\">Levenshtein distance</a>(a.k.a. <a href=\"https://en.wikipedia.org/wiki/Edit_distance\">Edit-distance</a>)(The lower the better).</p>\r\n<h2>Submission Format</h2>\r\n<p>Submission files should contain two columns: id and phone_sequence.</p>\r\n<p>id is the utterance name (eg. fadg0_si1279)</p>\r\n<p>phone_sequence is the corresponding trimmed phone sequence (eg. HrLAJarDeBLMrDcLMwU).</p>\r\n<p>The file should contain a header and have the following format:</p>\r\n<pre>id,phone_sequence<br />fadg0_si1279,HrLAJarDeBLMrDcLMwU<br />fadg0_si1909,vbLAFKnLhyUwJmrBJLAwLSyLAwKr<br />fadg0_si649,lwLJctryJvrCaBgLHwDLKyDwLHJywDLHrLHwJnDryJLAbLMtrBwLABsmrQKn<br />fadg0_sx109,SJKyJBnLMwDJLHIyDyCrFLABSaDwDJLMyLAJBc<br />...</pre>",
      "isPublished": false,
      "hasIsPublished": false,
      "postTitle": "",
      "hasPostTitle": false,
      "mimeType": "",
      "hasMimeType": false
    },
    {
      "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>Team Mergers</h3>\r\n    <p>Team mergers are not allowed in this competition.</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 10 entries per day.</p>\r\n    <p>You may select up to 10 final submissions for judging.</p>\r\n    <h3>Competition Timeline</h3>\r\n    <p>Start Date: <strong>10/26/2015 9:48 PM UTC</strong></p>\r\n    <p>Merger Deadline: <strong>None</strong></p>\r\n    <p>Entry Deadline: <strong>None</strong></p>\r\n    <p>End Date: <strong>11/20/2015 7:00 AM UTC</strong></p>\r\n\t<!-- End Base Rules -->\r\n",
      "isPublished": false,
      "hasIsPublished": false,
      "postTitle": "",
      "hasPostTitle": false,
      "mimeType": "",
      "hasMimeType": false
    }
  ]
}