{"cells":[{"metadata":{},"cell_type":"markdown","source":"Thanks for kaggle and a lot of people joining this compition sharing their solution notebook!\nWithout those notebooks, it's impossible for me to build my owm Saint+ like model.\nThis model combines some ideas from different kernel and I try to make it as simple as possible.\n![my_model.jpg](attachment:my_model.jpg)","attachments":{"my_model.jpg":{"image/jpeg":"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Oszw5/yK+k/9eUP/AKAK06qfxMmPwoKKKKkoKKKKACiiigAooooAKKKKACiiigAooooAKKKKACiiigAooooAKKKKACiiigAooooAKKKKACiiigAooooAKKKKACiiigAooooAKKKKACiiigAooooAKKKKACiiigArLn/5Gqx/68rj/wBDhrUrLn/5Gqx/68rj/wBDhqobky2NSiiipKCiiigAooooAKKKKACiiigAooooAKKKKACiiigAooooAKKKKACiiigAooooAKKKKACiiigAooooAKKKKACiiigAooooAKKKKACkb7p+lLSN90/SgDN8Of8AIr6T/wBeUP8A6AK06zPDn/Ir6T/15Q/+gCtOqn8TJj8KCiiipKCiiigAooooAKKKKACiiigAooooAKKKKACiiigAooooAKKKKACiiigAooooAKKKKACiiigAooooAKKKKACiiigAooooAKKKKACiiigAopk00dvC800ixxoMs7nAUepNZP8Abktxzp+mz3EfaaUiFG+m75j9duKPNiubNFYy6lrJUFtHtwSOR9tzj/xyl/tHWP8AoE2//gZ/9hS5o9196H8jYorH/tHWP+gTb/8AgZ/9hR/aOsf9Am3/APAz/wCwo5o9194fI2KKx/7R1j/oE2//AIGf/YUf2jrH/QJt/wDwM/8AsKOaPdfeHyNisuf/AJGqx/68rj/0OGo/7R1j/oE2/wD4Gf8A2FVHl1h9Wgvf7MtwIoJIdn2vrvZDnOzts/WnGcU9195Lv2OjorH/ALR1j/oE2/8A4Gf/AGFH9o6x/wBAm3/8DP8A7ClzR7r7yvkbFFY/9o6x/wBAm3/8DP8A7Cj+0dY/6BNv/wCBn/2FHNHuvvD5GxRWP/aOsf8AQJt//Az/AOwo/tHWP+gTb/8AgZ/9hRzR7r7w+RsUVj/2jrH/AECbf/wM/wDsKP7R1j/oE2//AIGf/YUc0e6+8PkbFFY/9o6x/wBAm3/8DP8A7Cj+0dY/6BNv/wCBn/2FHNHuvvD5GxRWP/aOsf8AQJt//Az/AOwo/tHWP+gTb/8AgZ/9hRzR7r7w+RsUVj/2jrH/AECbf/wM/wDsKP7R1j/oE2//AIGf/YUc0e6+8PkbFFY/9pauOTpEJH+zeZP6qKmtdagmuFtriKazuW+7FcADf/usCVb6A59qas9mK5pUUUUDCiiigAoo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"}}},{"metadata":{"ExecuteTime":{"end_time":"2021-01-07T01:53:11.259976Z","start_time":"2021-01-07T01:53:10.519848Z"},"id":"zWFPwwQiJHkK","trusted":true},"cell_type":"code","source":"# This Python 3 environment comes with many helpful analytics libraries installed\n# It is defined by the kaggle/python Docker image: https://github.com/kaggle/docker-python\n# For example, here's several helpful packages to load\n\nimport numpy as np # linear algebra\nimport pandas as pd # data processing, CSV file I/O (e.g. pd.read_csv)\nimport random\nimport time\nimport pickle\nimport gc\nimport matplotlib.pyplot as plt\nimport torch\nimport torch.nn as nn\nimport torch.optim as optim\nimport torch.nn.functional as F\nfrom torch.utils.data import Dataset\nfrom torch.utils.data import DataLoader\nfrom sklearn.metrics import roc_auc_score\n# Input data files are available in the read-only \"../input/\" directory\n# For example, running this (by clicking run or pressing Shift+Enter) will list all files under the input directory\n\nimport os\nfor dirname, _, filenames in os.walk('/kaggle/input'):\n    for filename in filenames:\n        print(os.path.join(dirname, filename))\n\n# You can write up to 20GB to the current directory (/kaggle/working/) that gets preserved as output when you create a version using \"Save & Run All\" \n# You can also write temporary files to /kaggle/temp/, but they won't be saved outside of the current session","execution_count":null,"outputs":[]},{"metadata":{},"cell_type":"markdown","source":"# SAINT Dataset"},{"metadata":{"ExecuteTime":{"end_time":"2021-01-07T01:54:23.902012Z","start_time":"2021-01-07T01:54:23.887649Z"},"id":"jndbpdAfMeNf","trusted":true},"cell_type":"code","source":"class Riiid_Sequence(Dataset):\n    def __init__(self, groups, seq_len):\n        self.samples = {}\n        self.seq_len = seq_len\n        self.user_ids = []\n\n        for user_id in groups.index:\n            c_id, part, t_c_id, t_lag, q_et, ans_c, q_he, u_ans = groups[user_id]\n            if len(c_id) < 2:\n                continue\n\n            if len(c_id) > self.seq_len:\n                initial = len(c_id) % self.seq_len\n                if initial > 2:\n                    self.user_ids.append(f\"{user_id}_0\")\n                    self.samples[f\"{user_id}_0\"] = (\n                        c_id[:initial], part[:initial], t_c_id[:initial], t_lag[:initial], \n                        q_et[:initial], ans_c[:initial], q_he[:initial], u_ans[:initial]\n                    )\n                chunks = len(c_id)//self.seq_len\n                for c in range(chunks):\n                    start = initial + c*self.seq_len\n                    end = initial + (c+1)*self.seq_len\n                    self.user_ids.append(f\"{user_id}_{c+1}\")\n                    self.samples[f\"{user_id}_{c+1}\"] = (\n                        c_id[start:end], part[start:end], t_c_id[start:end], t_lag[start:end], \n                        q_et[start:end], ans_c[start:end], q_he[start:end], u_ans[start:end]\n                    )\n            else:\n                self.user_ids.append(f\"{user_id}\")\n                self.samples[f\"{user_id}\"] = (c_id, part, t_c_id, t_lag, q_et, ans_c, q_he, u_ans)\n\n    def __len__(self):\n        return len(self.user_ids)\n    \n    def __getitem__(self, index):\n        user_id = self.user_ids[index]\n        c_id, p, t_c_id, t_lag, q_et, ans_c, q_he, u_ans = self.samples[user_id]\n        seq_len = len(c_id)\n        \n        content_ids = np.zeros(self.seq_len, dtype=int)\n        parts = np.zeros(self.seq_len, dtype=int)\n        task_container_ids = np.zeros(self.seq_len, dtype=int)\n        time_lag = np.zeros(self.seq_len, dtype=float)\n        ques_elapsed_time = np.zeros(self.seq_len, dtype=float)\n        answer_correct = np.zeros(self.seq_len, dtype=int)\n        ques_had_explian = np.zeros(self.seq_len, dtype=int)\n        user_answer = np.zeros(self.seq_len, dtype=int)\n        label = np.zeros(self.seq_len, dtype=int)\n  \n        if seq_len == self.seq_len:\n            content_ids[:] = c_id\n            parts[:] = p\n            task_container_ids[:] = t_c_id\n            time_lag[:] = t_lag\n            ques_elapsed_time[:] = q_et\n            answer_correct[:] = ans_c\n            ques_had_explian[:] = q_he\n            user_answer[:] = u_ans\n        else:\n            content_ids[-seq_len:] = c_id\n            parts[-seq_len:] = p\n            task_container_ids[-seq_len:] = t_c_id\n            time_lag[-seq_len:] = t_lag\n            ques_elapsed_time[-seq_len:] = q_et\n            answer_correct[-seq_len:] = ans_c\n            ques_had_explian[-seq_len:] = q_he\n            user_answer[-seq_len:] = u_ans\n           \n        content_ids = content_ids[1:]\n        parts = parts[1:]\n        task_container_ids = task_container_ids[1:]\n        time_lag = time_lag[1:]\n        ques_elapsed_time = ques_elapsed_time[1:]\n        label = answer_correct[1:] - 1\n        label = np.clip(label, 0, 1)\n        \n        answer_correct = answer_correct[:-1]\n        ques_had_explian = ques_had_explian[1:]\n        user_answer = user_answer[:-1]\n        return content_ids, parts, time_lag, ques_elapsed_time, answer_correct, ques_had_explian, user_answer, label","execution_count":null,"outputs":[]},{"metadata":{},"cell_type":"markdown","source":"# Transformer model(SAINT+ like)"},{"metadata":{"ExecuteTime":{"end_time":"2021-01-07T01:54:26.877512Z","start_time":"2021-01-07T01:54:26.864208Z"},"id":"_snimMNaVQL0","trusted":true},"cell_type":"code","source":"class FFN(nn.Module):\n    def __init__(self, d_ffn, d_model, dropout=0.1):\n        super(FFN, self).__init__()\n        self.linear_1 = nn.Linear(d_model, d_ffn) #[batch, seq_len, ffn_dim]\n        self.relu_1 = nn.ReLU()\n        self.linear_2 = nn.Linear(d_ffn, d_model) #[batch, seq_len, d_model]\n        self.dropout = nn.Dropout(dropout)\n\n    def forward(self, x):\n        x = self.linear_1(x)\n        x = self.relu_1(x)\n        x = self.linear_2(x)\n        return self.dropout(x)\n\nclass SaintPlus(nn.Module):\n    def __init__(self, seq_len, num_layers, d_ffn, d_model, num_heads, max_len, n_questions, n_parts, n_tasks, n_ans, dropout=0.1):\n        super(SaintPlus, self).__init__()\n        self.d_model = d_model\n        self.n_questions = n_questions\n        self.num_heads = num_heads\n\n        self.pos_emb = nn.Embedding(seq_len, d_model)\n        self.contentId_emb = nn.Embedding(n_questions+1, d_model)\n        self.part_emb = nn.Embedding(n_parts+1, d_model)\n        self.task_emb = nn.Embedding(n_tasks+1, d_model)\n\n        self.timelag_emb = nn.Linear(1, d_model, bias=False)\n        self.elapsedT_emb = nn.Linear(1, d_model, bias=False)\n\n        self.answerCorr_emb = nn.Embedding(3, d_model)\n        self.explan_emb = nn.Embedding(3, d_model)\n        self.answer_emb = nn.Embedding(n_questions*4+1, d_model)\n\n        self.emb_dense1 = nn.Linear(4*d_model, d_model)\n        self.emb_dense2 = nn.Linear(4*d_model, d_model)\n\n        self.transformer = nn.Transformer(d_model=d_model, nhead=num_heads, num_encoder_layers=num_layers, \n                                          num_decoder_layers=num_layers, dim_feedforward=d_ffn, dropout=dropout)\n        self.layer_norm = nn.LayerNorm(d_model)\n        self.FFN = FFN(d_ffn, d_model, dropout=dropout)\n        self.final_layer = nn.Linear(d_model, 1)\n    \n    def forward(self, content_ids, parts, time_lag, ques_elapsed_time, answer_correct, ques_had_explian, user_answer):\n        device = content_ids.device\n        seq_len = content_ids.shape[1]\n\n        content_id_emb = self.contentId_emb(content_ids)\n        part_emb = self.part_emb(parts)\n        # task = self.task_emb(x[\"task_container_id\"])\n\n        time_lag = torch.log(time_lag+1)\n        time_lag = time_lag.view(-1, 1) # [batch*seq_len, 1]\n        time_lag = self.timelag_emb(time_lag) # [batch*seq_len, d_model]\n        time_lag = time_lag.view(-1, seq_len, self.d_model) # [batch, seq_len, d_model]\n        elapsed_time = torch.log(ques_elapsed_time+1)\n        elapsed_time = elapsed_time.view(-1, 1) # [batch*seq_len, 1]\n        elapsed_time = self.elapsedT_emb(elapsed_time) # [batch*seq_len, d_model]\n        elapsed_time = elapsed_time.view(-1, seq_len, self.d_model) # [batch, seq_len, d_model]    \n\n        answer_correct_emb = self.answerCorr_emb(answer_correct)\n        explain_emb = self.explan_emb(ques_had_explian)\n        user_ans_id = torch.clamp((content_ids-1)*4+user_answer, 0, self.n_questions*4)\n        answer_emb = self.answer_emb(user_ans_id)\n\n        encoder_val = torch.cat((content_id_emb, part_emb, explain_emb, time_lag), axis=-1)\n        encoder_val = self.emb_dense1(encoder_val)\n        decoder_val = torch.cat((time_lag, elapsed_time, answer_correct_emb, answer_emb), axis=-1)\n        decoder_val = self.emb_dense2(decoder_val)\n        \n        pos = torch.arange(seq_len).unsqueeze(0).to(device)\n        pos_emb = self.pos_emb(pos)\n        encoder_val += pos_emb\n        decoder_val += pos_emb\n\n        over_head_mask = torch.from_numpy(np.triu(np.ones((seq_len, seq_len)), k=1).astype('bool'))\n        over_head_mask = over_head_mask.to(device)\n\n        encoder_val = encoder_val.permute(1, 0, 2)\n        decoder_val = decoder_val.permute(1, 0, 2)\n        decoder_val = self.transformer(encoder_val, decoder_val, src_mask=over_head_mask, tgt_mask=over_head_mask, memory_mask=over_head_mask)\n\n        decoder_val = self.layer_norm(decoder_val)\n        decoder_val = decoder_val.permute(1, 0, 2)\n        \n        final_out = self.FFN(decoder_val)\n        final_out = self.layer_norm(final_out + decoder_val)\n        final_out = self.final_layer(final_out)\n        final_out = torch.sigmoid(final_out)\n        return final_out.squeeze(-1)\n\nclass NoamOpt:\n    \"Optim wrapper that implements rate.\"\n    def __init__(self, model_size, factor, warmup, optimizer):\n        self.optimizer = optimizer\n        self._step = 0\n        self.warmup = warmup\n        self.factor = factor\n        self.model_size = model_size\n        self._rate = 0\n        \n    def step(self):\n        \"Update parameters and rate\"\n        self._step += 1\n        rate = self.rate()\n        for p in self.optimizer.param_groups:\n            p['lr'] = rate\n        self._rate = rate\n        self.optimizer.step()\n        \n    def rate(self, step = None):\n        \"Implement `lrate` above\"\n        if step is None:\n            step = self._step\n        return self.factor * \\\n            (self.model_size ** (-0.5) *\n            min(step ** (-0.5), step * self.warmup ** (-1.5)))","execution_count":null,"outputs":[]},{"metadata":{},"cell_type":"markdown","source":"# Model training"},{"metadata":{"trusted":true},"cell_type":"code","source":"from tqdm.notebook import tqdm\ndevice = torch.device(\"cuda\" if torch.cuda.is_available() else \"cpu\")\nprint(device)\n\nnum_layers = 2\nnum_heads = 4\nd_model = 128\nd_ffn = d_model*4\nmax_len = 1000\nn_questions = 13523\nn_parts = 7\nn_tasks = 10000\nn_ans = 4\n\nseq_len = 100\nwarmup_steps = 4000\ndropout = 0.1\nepochs = 30\nbatch_size = 512\n\nwith open(\"../input/riiid-training/train_group.pkl.zip\", 'rb') as pick:\n    train_group = pickle.load(pick)\nwith open(\"../input/riiid-training/val_group.pkl.zip\", 'rb') as pick:\n    val_group = pickle.load(pick)\n\ntrain_seq = Riiid_Sequence(train_group, seq_len)\ntrain_size = len(train_seq)\ntrain_loader = DataLoader(train_seq, batch_size=batch_size, shuffle=True, num_workers=8)\ndel train_seq, train_group\n\nval_seq = Riiid_Sequence(val_group, seq_len)\nval_size = len(val_seq)\nval_loader = DataLoader(val_seq, batch_size=batch_size, shuffle=False, num_workers=8)\ndel val_seq, val_group\n\nloss_fn = nn.BCELoss()\nmodel = SaintPlus(seq_len=100, num_layers=num_layers, d_ffn=d_ffn, d_model=d_model, num_heads=num_heads,\n                  max_len=max_len, n_questions=n_questions, n_parts=n_parts, n_tasks=n_tasks, \n                  n_ans=n_ans, dropout=dropout)\noptimizer = NoamOpt(d_model, 1, 4000 ,optim.Adam(model.parameters(), lr=0))\nmodel.to(device)\nloss_fn.to(device)\n\ntrain_losses = []\nval_losses = []\nval_aucs = []\nbest_auc = 0\nfor e in range(epochs):\n    print(\"==========Epoch {} Start Training==========\".format(e+1))\n    model.train()\n    t_s = time.time()\n    train_loss = []\n    pbar = tqdm(total=train_size)\n    for step, data in enumerate(train_loader):\n        content_ids = data[0].to(device).long()\n        parts = data[1].to(device).long()\n        time_lag = data[2].to(device).float()\n        ques_elapsed_time = data[3].to(device).float()\n        answer_correct = data[4].to(device).long()\n        ques_had_explian = data[5].to(device).long()\n        user_answer = data[6].to(device).long()\n        label = data[7].to(device).float()\n\n        optimizer.optimizer.zero_grad()\n\n        preds = model(content_ids, parts, time_lag, ques_elapsed_time, answer_correct, ques_had_explian, user_answer)\n        loss_mask = (answer_correct != 0)\n        preds_masked = torch.masked_select(preds, loss_mask)\n        label_masked = torch.masked_select(label, loss_mask)\n        loss = loss_fn(preds_masked, label_masked)\n\n        loss.backward()\n        optimizer.step()\n\n        train_loss.append(loss.item())\n        pbar.update(len(content_ids))\n            \n    train_loss = np.mean(train_loss)\n    print(\"==========Epoch {} Start Validation==========\".format(e+1))\n    model.eval()\n    val_loss = []\n    val_labels = []\n    val_preds = []\n    for step, data in enumerate(val_loader):\n        content_ids = data[0].to(device).long()\n        parts = data[1].to(device).long()\n        time_lag = data[2].to(device).float()\n        ques_elapsed_time = data[3].to(device).float()\n        answer_correct = data[4].to(device).long()\n        ques_had_explian = data[5].to(device).long()\n        user_answer = data[6].to(device).long()\n        label = data[7].to(device).float()\n\n        preds = model(content_ids, parts, time_lag, ques_elapsed_time, answer_correct, ques_had_explian, user_answer)\n        loss_mask = (answer_correct != 0)\n        preds_masked = torch.masked_select(preds, loss_mask)\n        label_masked = torch.masked_select(label, loss_mask)\n\n        val_loss.append(loss.item())\n        val_labels.extend(label_masked.view(-1).data.cpu().numpy())\n        val_preds.extend(preds_masked.view(-1).data.cpu().numpy())\n\n    val_loss = np.mean(val_loss)\n    val_auc = roc_auc_score(val_labels, val_preds)\n    \n    if val_auc > best_auc:\n        print(\"Save model at epoch {}\".format(e+1))\n        torch.save(model.state_dict(), \"./saint.pt\")\n        best_auc = val_auc\n        \n    train_losses.append(train_loss)\n    val_losses.append(val_loss)\n    val_aucs.append(val_auc)\n    exec_t = int((time.time() - t_s)/60)\n    print(\"Train Loss {:.4f}/ Val Loss {:.4f}, Val AUC {:.4f} / Exec time {} min\".format(train_loss, val_loss, val_auc, exec_t))","execution_count":null,"outputs":[]}],"metadata":{"kernelspec":{"language":"python","display_name":"Python 3","name":"python3"},"language_info":{"pygments_lexer":"ipython3","nbconvert_exporter":"python","version":"3.6.4","file_extension":".py","codemirror_mode":{"name":"ipython","version":3},"name":"python","mimetype":"text/x-python"}},"nbformat":4,"nbformat_minor":4}