{"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_minor":4,"nbformat":4,"cells":[{"cell_type":"markdown","source":"# Import","metadata":{}},{"cell_type":"code","source":"import os, gc, pickle\nimport pandas as pd\nimport numpy as np","metadata":{"execution":{"iopub.status.busy":"2022-10-31T10:17:22.968583Z","iopub.execute_input":"2022-10-31T10:17:22.969137Z","iopub.status.idle":"2022-10-31T10:17:22.998889Z","shell.execute_reply.started":"2022-10-31T10:17:22.969035Z","shell.execute_reply":"2022-10-31T10:17:22.99766Z"},"trusted":true},"execution_count":null,"outputs":[]},{"cell_type":"markdown","source":"# CITE prediction","metadata":{}},{"cell_type":"code","source":"with open(\"../input/merge-blender-denoise/test_pred.pickle\", \"rb\") as f:\n    test_pred = pickle.load(f)\n    \n\n\ntest_pred_2 = pd.read_csv(\n    \"../input/cite-tf-keras-parallel-corr/prediction.csv\",\n\n    index_col=0\n).values.ravel().astype(np.float16)\n    ","metadata":{"execution":{"iopub.status.busy":"2022-10-31T10:19:40.479698Z","iopub.execute_input":"2022-10-31T10:19:40.480613Z","iopub.status.idle":"2022-10-31T10:19:43.766223Z","shell.execute_reply.started":"2022-10-31T10:19:40.480565Z","shell.execute_reply":"2022-10-31T10:19:43.764733Z"},"trusted":true},"execution_count":null,"outputs":[]},{"cell_type":"code","source":"cite_indices = len(test_pred.ravel())\nprint(f\"Cite indices: {cite_indices}\")","metadata":{"execution":{"iopub.status.busy":"2022-10-16T14:51:18.992776Z","iopub.execute_input":"2022-10-16T14:51:18.993189Z","iopub.status.idle":"2022-10-16T14:51:19.028588Z","shell.execute_reply.started":"2022-10-16T14:51:18.993154Z","shell.execute_reply":"2022-10-16T14:51:19.027497Z"},"trusted":true},"execution_count":null,"outputs":[]},{"cell_type":"code","source":"# 1\nwith open(\"../input/merge-blender-denoise/test_pred.pickle\", \"rb\") as f:\n    test_pred = pickle.load(f)\n\nportion = 0.87 + 13e-3\nsubmission = (\n    # 2\n    portion*pd.read_csv('../input/ensemble-0811/submission (2).csv',index_col='row_id', squeeze=True) + \n    # 3\n    (1 - portion)*pd.read_csv(\"../input/merge-solution-nn-lig/submission.csv\", index_col='row_id', squeeze=True)\n#     0.005*pd.read_csv(\"../input/msci-multiome-lgbtm-regressor/submission.csv\", index_col='row_id', squeeze=True)\n    \n)\ngc.collect()\n# 3\nportion = 0.45 - 4e-2\nsubmission.iloc[:cite_indices] = (portion*test_pred.ravel() + (1-portion)*submission.iloc[: cite_indices])\n# del test_pred\ngc.collect()\n# 4\nportion = 0.075 - 3e-3 # 0.075 - 4e-3 is too much\nsubmission.iloc[:cite_indices] = portion*submission.iloc[:cite_indices] + (1 - portion)*pd.read_csv(\n    \"../input/miscbestpublicscore/submission_06_02_02_v1.csv\",\n    index_col='row_id', squeeze=True\n).iloc[:cite_indices]\ngc.collect()\n","metadata":{"execution":{"iopub.status.busy":"2022-10-16T14:46:26.743298Z","iopub.execute_input":"2022-10-16T14:46:26.744402Z","iopub.status.idle":"2022-10-16T14:50:12.539823Z","shell.execute_reply.started":"2022-10-16T14:46:26.744366Z","shell.execute_reply":"2022-10-16T14:50:12.538119Z"},"trusted":true},"execution_count":null,"outputs":[]},{"cell_type":"code","source":"# 5\nportion = 0.05\nsubmission.iloc[:cite_indices] = portion*test_pred_2 + (1 - portion) * submission.iloc[:cite_indices]\n\n# ####\n# assert not submission.isna().any()\n\ngc.collect()","metadata":{"execution":{"iopub.status.busy":"2022-10-16T14:52:29.250834Z","iopub.execute_input":"2022-10-16T14:52:29.251223Z","iopub.status.idle":"2022-10-16T14:52:29.768946Z","shell.execute_reply.started":"2022-10-16T14:52:29.251195Z","shell.execute_reply":"2022-10-16T14:52:29.767809Z"},"trusted":true},"execution_count":null,"outputs":[]},{"cell_type":"code","source":"","metadata":{},"execution_count":null,"outputs":[]},{"cell_type":"code","source":"# 6\nportion = 0.99\n\"\"\nsubmission.iloc[:cite_indices] = (\n    portion*pd.read_csv('../input/archived/submission_cite_multiome_all_in_one.csv',index_col='row_id', squeeze=True).iloc[:cite_indices] +\n    (1 - portion) * submission.iloc[:cite_indices]\n)\n\n# ####\n# assert not submission.isna().any()\n\ngc.collect()","metadata":{},"execution_count":null,"outputs":[]},{"cell_type":"code","source":"# 8\nportion = 0.5  \n\"\"\nsubmission.iloc[:cite_indices] = (\n    portion*pd.read_csv(\"../input/fork-of-fork-of-add-more-of-best-of-light-e-ff8040/submission.csv\",index_col='row_id', squeeze=True)[:cite_indices] +\n    (1 - portion) * submission.iloc[:cite_indices]\n)","metadata":{},"execution_count":null,"outputs":[]},{"cell_type":"code","source":"# 7\ntest_pred_3 = pd.read_csv(\n    \"../input/fork-of-fork-of-cite-tf-keras-parallel-corr-8ef07/prediction.csv\",\n    index_col=0\n).values.ravel().astype(np.float16)\nportion = 0.91 # Not over 91\n\"\"\nsubmission.iloc[:cite_indices] = (\n    portion*test_pred_3 +\n    (1 - portion) * submission.iloc[:cite_indices]\n)\ndel test_pred_3\ngc.collect()","metadata":{},"execution_count":null,"outputs":[]},{"cell_type":"code","source":"# 8\ntest_pred_3 = pd.read_csv(\n    \"../input/rnn-of-fork-of-cite-tf-keras-parallel-co/prediction.csv\",\n    index_col=0\n).values.ravel().astype(np.float16)\nportion = 0.66   # Rank 0.66 > 0.65 > 0.75 > 0.6 > 0.5 > 0.9 \n\"\"\nsubmission.iloc[:cite_indices] = (\n    portion*test_pred_3 +\n    (1 - portion) * submission.iloc[:cite_indices]\n)\ndel test_pred_3\ngc.collect()","metadata":{},"execution_count":null,"outputs":[]},{"cell_type":"code","source":"# 9\ntest_pred_3 = pd.read_csv(\n    \"../input/cnn-of-fork-of-cite-tf-keras-paral-56875e/prediction.csv\",\n    index_col=0\n).values.ravel().astype(np.float16)\nportion =  0.19 # 0.2 > 0.25 > 0.3 > 0.1 > 0.4 > 0.66 \n\"\"\nsubmission.iloc[:cite_indices] = (\n    portion*test_pred_3 +\n    (1 - portion) * submission.iloc[:cite_indices]\n)\ndel test_pred_3\ngc.collect()","metadata":{},"execution_count":null,"outputs":[]},{"cell_type":"code","source":"# 10\n# Add by prem\n\nportion = 0.066 # 0.05 > 0.075 > 0.1 > 0.3 > 0.2\n\n\nsubmission.iloc[:cite_indices] = (\n    portion*pd.read_csv('../input/somerandomdataset2/submission_ensembing_812.csv',index_col='row_id', squeeze=True).iloc[:cite_indices] +\n    (1 - portion) * submission.iloc[:cite_indices]\n)\n\n# ####\n# assert not submission.isna().any()\n\n\ngc.collect()","metadata":{},"execution_count":null,"outputs":[]},{"cell_type":"code","source":"# 11\ntest_pred_3 = pd.read_csv(\n    \"../input/tabnet-of-fork-of-cite-tf-keras-paral-56875e/prediction.csv\",\n    index_col=0\n).values.ravel().astype(np.float16)\nportion =  0.175\n\"\"\nsubmission.iloc[:cite_indices] = (\n    portion*test_pred_3 +\n    (1 - portion) * submission.iloc[:cite_indices]\n)\ndel test_pred_3\ngc.collect()","metadata":{},"execution_count":null,"outputs":[]},{"cell_type":"code","source":"# 11\ntest_pred_3 = pd.read_csv(\n    \"../input/fork-of-fork-of-fork-of-cite-tf-keras-parallel-co/prediction.csv\",\n    index_col=0\n).values.ravel().astype(np.float16)\nportion =  0.21\n\"\"\nsubmission.iloc[:cite_indices] = (\n    portion*test_pred_3 +\n    (1 - portion) * submission.iloc[:cite_indices]\n)\ndel test_pred_3\ngc.collect()","metadata":{},"execution_count":null,"outputs":[]},{"cell_type":"markdown","source":"# Multiome","metadata":{}},{"cell_type":"code","source":"nn_submission = pd.read_csv(\n    \"../input/fork-of-mean-fork-of-msci-multiome-tf-keras-a/submission_all.csv\",\n    index_col='row_id', squeeze=True\n).iloc[len(test_pred.ravel()):]\n\n# ensemble = pd.read_csv(\n#     \"../usr/lib/msci_multiome_tf_keras_activate_fold_ensemble/submission.csv\",\n#     index_col='row_id', squeeze=True\n# ).iloc[len(test_pred.ravel()):]\n\nensemble = pd.read_csv(\n    \"../input/miscbestpublicscore/submission_06_02_02_v1.csv\",\n    index_col='row_id', squeeze=True\n).iloc[len(test_pred.ravel()):]\n\n\nprint(\"nn_submission:\")\nprint(f\"Min: {np.min(nn_submission)}\")\nprint(f\"Max: {np.max(nn_submission)}\")\n\nprint(\"ensemble_submission:\")\nprint(f\"Min: {np.min(ensemble)}\")\nprint(f\"Max: {np.max(ensemble)}\")","metadata":{"trusted":true},"execution_count":null,"outputs":[]},{"cell_type":"code","source":"submission.iloc[len(test_pred.ravel()):] = 0.2*nn_submission + 0.8*(ensemble)\n# submission.iloc[len(test_pred.ravel()):] = nn_submission","metadata":{"trusted":true},"execution_count":null,"outputs":[]},{"cell_type":"markdown","source":"# Add Fold ensemble","metadata":{}},{"cell_type":"code","source":"lgbtm = pd.read_csv(\"../usr/lib/msci_multiome_tf_keras_activate_fold_ensemble/submission.csv\", index_col='row_id', squeeze=True)\nprint(np.max(lgbtm.iloc[len(test_pred.ravel()):]))\nprint(np.min(lgbtm.iloc[len(test_pred.ravel()):]))\nsubmission.iloc[len(test_pred.ravel()):] = (\n    0.8*submission.iloc[len(test_pred.ravel()):] +\n    0.2*lgbtm.iloc[len(test_pred.ravel()):]\n)\ndel lgbtm\ngc.collect()","metadata":{"trusted":true},"execution_count":null,"outputs":[]},{"cell_type":"markdown","source":"# Add LGBTM Type","metadata":{}},{"cell_type":"code","source":"#LGBTM around 0.07 is best\nlgbtm = pd.read_csv(\"../input/open-problems-public-submissions/submission_105535198.csv\", index_col='row_id', squeeze=True)\nprint(np.max(lgbtm.iloc[len(test_pred.ravel()):]))\nprint(np.min(lgbtm.iloc[len(test_pred.ravel()):]))\nportion = 0.08\nsubmission.iloc[len(test_pred.ravel()):] = (\n    (1 - portion)*submission.iloc[len(test_pred.ravel()):] +\n    portion*lgbtm.iloc[len(test_pred.ravel()):]\n)\ngc.collect()","metadata":{"trusted":true},"execution_count":null,"outputs":[]},{"cell_type":"markdown","source":"## Add Decsion forest","metadata":{}},{"cell_type":"code","source":"# amp = 1e10\n# lgbtm = amp*pd.read_csv(\"../input/decisionforestfirstversion/submission_all.csv\", index_col='row_id', squeeze=True)\n\n# print(np.max(lgbtm.iloc[len(test_pred.ravel()):]))\n# print(np.min(lgbtm.iloc[len(test_pred.ravel()):]))\n\n# submission.iloc[len(test_pred.ravel()):] = (\n#     submission.iloc[len(test_pred.ravel()):] +\n#     lgbtm.iloc[len(test_pred.ravel()):]\n# )\n# del lgbtm\n# gc.collect()","metadata":{"trusted":true},"execution_count":null,"outputs":[]},{"cell_type":"markdown","source":"## Add parallel","metadata":{}},{"cell_type":"code","source":"# Chocolate (Sakurako is tuning)\nlgbtm = pd.read_csv(\"../input/msci-multiome-tf-keras-activate-parallel/submission_all.csv\", index_col='row_id', squeeze=True)\nprint(np.max(lgbtm.iloc[len(test_pred.ravel()):]))\nprint(np.min(lgbtm.iloc[len(test_pred.ravel()):]))\nportion = 0.04 #0.1\nsubmission.iloc[len(test_pred.ravel()):] = (\n    (1 - portion)*submission.iloc[len(test_pred.ravel()):] +\n    portion*lgbtm.iloc[len(test_pred.ravel()):]\n)\ngc.collect()","metadata":{"trusted":true},"execution_count":null,"outputs":[]},{"cell_type":"markdown","source":"## GrowNet","metadata":{}},{"cell_type":"code","source":"lgbtm = pd.read_csv(\"../input/fork-of-msci-multiome-tf-keras-parallel/submission_all.csv\", index_col='row_id', squeeze=True)\nprint(np.max(lgbtm.iloc[len(test_pred.ravel()):]))\nprint(np.min(lgbtm.iloc[len(test_pred.ravel()):]))\nportion = 0.3*0.5 - 3e-4\nsubmission.iloc[len(test_pred.ravel()):] = (\n    (1 - portion)*submission.iloc[len(test_pred.ravel()):] +\n    portion*lgbtm.iloc[len(test_pred.ravel()):]\n)\ngc.collect()","metadata":{"trusted":true},"execution_count":null,"outputs":[]},{"cell_type":"code","source":"# 12\ntest_pred_2 = pd.read_csv(\"../input/hardcord-lgbm-first-version/submission.csv\", index_col='row_id', squeeze=True)\nportion = 0.65 #2*0.5*0.3\nsubmission.iloc[cite_indices:] = portion*test_pred_2.iloc[cite_indices:] + (1 - portion)*submission.iloc[cite_indices:]\ndel test_pred_2\ngc.collect()","metadata":{},"execution_count":null,"outputs":[]},{"cell_type":"code","source":"# 13\ntest_pred_2 = pd.read_csv(\"../input/4-of-fork-of-msci-multiome-tf-keras-de0587/submission_all.csv\", index_col='row_id', squeeze=True)\nportion = 0.65 #0.09*0.5*0.3\nsubmission.iloc[cite_indices:] = portion*test_pred_2.iloc[cite_indices:] + (1 - portion)*submission.iloc[cite_indices:]\ndel test_pred_2\ngc.collect()","metadata":{},"execution_count":null,"outputs":[]},{"cell_type":"code","source":"#14 0.95 seems to be good\ntest_pred_2 = pd.read_csv(\"../input/archived/submission_cite_multiome_all_in_one.csv\", index_col='row_id', squeeze=True)\nportion = 0.95\nsubmission.iloc[cite_indices:] = portion*test_pred_2.iloc[cite_indices:] + (1 - portion)*submission.iloc[cite_indices:]\n\n\nprint(np.max(test_pred_2.iloc[len(test_pred.ravel()):]))\nprint(np.min(test_pred_2.iloc[len(test_pred.ravel()):]))\n\ndel test_pred_2\ngc.collect()","metadata":{},"execution_count":null,"outputs":[]},{"cell_type":"code","source":"#15 portion=0.04 seems to be good\ntest_pred_2 = pd.read_csv(\"../input/gb-of-mean-fork-of-msci-multiome-tf/submission_all.csv\", index_col='row_id', squeeze=True)\nportion = 0.04 #0.1 - 0.025\nsubmission.iloc[cite_indices:] = portion*test_pred_2.iloc[cite_indices:] + (1 - portion)*submission.iloc[cite_indices:]\nprint(np.max(test_pred_2.iloc[len(test_pred.ravel()):]))\nprint(np.min(test_pred_2.iloc[len(test_pred.ravel()):]))\n\ndel test_pred_2\ngc.collect()","metadata":{},"execution_count":null,"outputs":[]},{"cell_type":"code","source":"# 16 (Sakurako is working)\ntest_pred_2 = pd.read_csv(\"../input/fork-of-mean-fork-of-msci-multiome-tf-k-263085/submission_all.csv\", index_col='row_id', squeeze=True)\nportion = 0.04 #0.09*0.5\nsubmission.iloc[cite_indices:] = portion*test_pred_2.iloc[cite_indices:] + (1 - portion)*submission.iloc[cite_indices:]\nprint(np.max(test_pred_2.iloc[len(test_pred.ravel()):]))\nprint(np.min(test_pred_2.iloc[len(test_pred.ravel()):]))\n\ndel test_pred_2\ngc.collect()","metadata":{},"execution_count":null,"outputs":[]},{"cell_type":"code","source":"# New Trial\ntest_pred_2 = pd.read_csv(\"../input/multiome-tf-keras-parall-dense-unet/submission_all.csv\", index_col='row_id', squeeze=True)\nportion = 0.025 # No more than 0.3\nsubmission.iloc[cite_indices:] = portion*test_pred_2.iloc[cite_indices:] + (1 - portion)*submission.iloc[cite_indices:]\nprint(np.max(test_pred_2.iloc[len(test_pred.ravel()):]))\nprint(np.min(test_pred_2.iloc[len(test_pred.ravel()):]))\n\ndel test_pred_2\ngc.collect()","metadata":{},"execution_count":null,"outputs":[]},{"cell_type":"code","source":"# 18\ntest_pred_2 = pd.read_csv(\"../input/binary-of-msci-multiome-tf-keras-b72143/submission_all.csv\", index_col='row_id', squeeze=True)\nportion = 0.25\nsubmission.iloc[cite_indices:] = portion*test_pred_2.iloc[cite_indices:] + (1 - portion)*submission.iloc[cite_indices:]\nprint(np.max(test_pred_2.iloc[len(test_pred.ravel()):]))\nprint(np.min(test_pred_2.iloc[len(test_pred.ravel()):]))\n\ndel test_pred_2\ngc.collect()","metadata":{},"execution_count":null,"outputs":[]},{"cell_type":"code","source":"# # 19\n# test_pred_2 = pd.read_csv(\"../input/fork-of-fork-of-msci-multiome-tf-keras-724260/submission_all.csv\", index_col='row_id', squeeze=True)\n# portion = 0.2\n# submission.iloc[cite_indices:] = portion*test_pred_2.iloc[cite_indices:] + (1 - portion)*submission.iloc[cite_indices:]\n# print(np.max(test_pred_2.iloc[len(test_pred.ravel()):]))\n# print(np.min(test_pred_2.iloc[len(test_pred.ravel()):]))\n\n# del test_pred_2\n# gc.collect()","metadata":{},"execution_count":null,"outputs":[]},{"cell_type":"markdown","source":"# Save to CSV","metadata":{}},{"cell_type":"code","source":"submission.to_csv('submission.csv')\ndisplay(submission)","metadata":{"trusted":true},"execution_count":null,"outputs":[]}]}