{"metadata":{"kernelspec":{"language":"python","display_name":"Python 3","name":"python3"},"language_info":{"name":"python","version":"3.10.13","mimetype":"text/x-python","codemirror_mode":{"name":"ipython","version":3},"pygments_lexer":"ipython3","nbconvert_exporter":"python","file_extension":".py"},"kaggle":{"accelerator":"gpu","dataSources":[{"sourceId":59093,"databundleVersionId":7469972,"sourceType":"competition"},{"sourceId":7868806,"sourceType":"datasetVersion","datasetId":4616711},{"sourceId":8006020,"sourceType":"datasetVersion","datasetId":4617035},{"sourceId":8064859,"sourceType":"datasetVersion","datasetId":4751121},{"sourceId":8065058,"sourceType":"datasetVersion","datasetId":4619431}],"dockerImageVersionId":30665,"isInternetEnabled":false,"language":"python","sourceType":"notebook","isGpuEnabled":true}},"nbformat_minor":4,"nbformat":4,"cells":[{"cell_type":"code","source":"import sys\nsys.path.append(\"/kaggle/input/hms-mk-codes/\")","metadata":{"_uuid":"8f2839f25d086af736a60e9eeb907d3b93b6e0e5","_cell_guid":"b1076dfc-b9ad-4769-8c92-a6c4dae69d19","execution":{"iopub.status.busy":"2024-04-08T16:03:18.923184Z","iopub.execute_input":"2024-04-08T16:03:18.923483Z","iopub.status.idle":"2024-04-08T16:03:18.934304Z","shell.execute_reply.started":"2024-04-08T16:03:18.923456Z","shell.execute_reply":"2024-04-08T16:03:18.933526Z"},"trusted":true},"execution_count":null,"outputs":[]},{"cell_type":"code","source":"!pip install /kaggle/input/requirements-mk/antlr4_python3_runtime-4.9.2-py3-none-any.whl --no-index --no-deps --force-reinstall\n!pip install /kaggle/input/requirements-mk/omegaconf-2.3.0-py3-none-any.whl --no-index --no-deps\n!pip install /kaggle/input/requirements-mk/hydra_core-1.3.2-py3-none-any.whl --no-index --no-deps\n!pip install /kaggle/input/requirements-mk/lightning-2.2.1-py3-none-any.whl --no-deps --no-index","metadata":{"execution":{"iopub.status.busy":"2024-04-08T16:03:18.935636Z","iopub.execute_input":"2024-04-08T16:03:18.935924Z","iopub.status.idle":"2024-04-08T16:03:28.809291Z","shell.execute_reply.started":"2024-04-08T16:03:18.935879Z","shell.execute_reply":"2024-04-08T16:03:28.808351Z"},"trusted":true},"execution_count":null,"outputs":[]},{"cell_type":"markdown","source":"# ","metadata":{}},{"cell_type":"code","source":"DATA_PATH = \"/kaggle/input/hms-harmful-brain-activity-classification\"\nOUT_PATH = \"/kaggle/working\"\nOUT_PATH2 = \"/kaggle/working/v2\"","metadata":{"execution":{"iopub.status.busy":"2024-04-08T16:03:28.811626Z","iopub.execute_input":"2024-04-08T16:03:28.812374Z","iopub.status.idle":"2024-04-08T16:03:28.816703Z","shell.execute_reply.started":"2024-04-08T16:03:28.812328Z","shell.execute_reply":"2024-04-08T16:03:28.815863Z"},"trusted":true},"execution_count":null,"outputs":[]},{"cell_type":"code","source":"!cd /kaggle/input/hms-mk-codes && python -m src.convert_parquet_to_npy --data_dir=$DATA_PATH --out_dir=$OUT_PATH","metadata":{"execution":{"iopub.status.busy":"2024-04-08T16:03:28.817665Z","iopub.execute_input":"2024-04-08T16:03:28.817954Z","iopub.status.idle":"2024-04-08T16:03:30.502319Z","shell.execute_reply.started":"2024-04-08T16:03:28.817932Z","shell.execute_reply":"2024-04-08T16:03:30.501365Z"},"trusted":true},"execution_count":null,"outputs":[]},{"cell_type":"code","source":"!ls /kaggle/input/hms-mk-data","metadata":{"execution":{"iopub.status.busy":"2024-04-08T16:03:30.504997Z","iopub.execute_input":"2024-04-08T16:03:30.505303Z","iopub.status.idle":"2024-04-08T16:03:31.470374Z","shell.execute_reply.started":"2024-04-08T16:03:30.505274Z","shell.execute_reply":"2024-04-08T16:03:31.469275Z"},"trusted":true},"execution_count":null,"outputs":[]},{"cell_type":"code","source":"!cd /kaggle/input/hms-mk-codes && python -m test paths.data_dir=$DATA_PATH data.test_eegs_dir=$OUT_PATH ckpt_path=/kaggle/input/hms-mk-data/fold0_levit_pseudo.ckpt hydra=test +model.test_output_dir=$OUT_PATH experiment=conv1d_tfm2d_pseudo +model.net.pretrained=False \n!mv /kaggle/working/submission.csv /kaggle/working/submission_fold0_v0.csv \n!cd /kaggle/input/hms-mk-codes && python -m test paths.data_dir=$DATA_PATH data.test_eegs_dir=$OUT_PATH ckpt_path=/kaggle/input/hms-mk-data/fold1_levit_pseudo.ckpt hydra=test +model.test_output_dir=$OUT_PATH experiment=conv1d_tfm2d_pseudo +model.net.pretrained=False \n!mv /kaggle/working/submission.csv /kaggle/working/submission_fold1_v0.csv \n!cd /kaggle/input/hms-mk-codes && python -m test paths.data_dir=$DATA_PATH data.test_eegs_dir=$OUT_PATH ckpt_path=/kaggle/input/hms-mk-data/fold2_levit_pseudo.ckpt hydra=test +model.test_output_dir=$OUT_PATH experiment=conv1d_tfm2d_pseudo +model.net.pretrained=False \n!mv /kaggle/working/submission.csv /kaggle/working/submission_fold2_v0.csv \n!cd /kaggle/input/hms-mk-codes && python -m test paths.data_dir=$DATA_PATH data.test_eegs_dir=$OUT_PATH ckpt_path=/kaggle/input/hms-mk-data/fold3_levit_pseudo.ckpt hydra=test +model.test_output_dir=$OUT_PATH experiment=conv1d_tfm2d_pseudo +model.net.pretrained=False \n!mv /kaggle/working/submission.csv /kaggle/working/submission_fold3_v0.csv \n!cd /kaggle/input/hms-mk-codes && python -m test paths.data_dir=$DATA_PATH data.test_eegs_dir=$OUT_PATH ckpt_path=/kaggle/input/hms-mk-data/fold4_levit_pseudo.ckpt hydra=test +model.test_output_dir=$OUT_PATH experiment=conv1d_tfm2d_pseudo +model.net.pretrained=False \n!mv /kaggle/working/submission.csv /kaggle/working/submission_fold4_v0.csv \n\n\n# !cd /kaggle/input/hms-mk-codes && python -m test paths.data_dir=$DATA_PATH data.test_eegs_dir=$OUT_PATH ckpt_path=/kaggle/input/hms-mk-data/fold0_resv2.ckpt hydra=test +model.test_output_dir=$OUT_PATH experiment=conv1d_resv2 +model.net.pretrained=False \n# !mv /kaggle/working/submission.csv /kaggle/working/submission_fold0_v1.csv \n# !cd /kaggle/input/hms-mk-codes && python -m test paths.data_dir=$DATA_PATH data.test_eegs_dir=$OUT_PATH ckpt_path=/kaggle/input/hms-mk-data/fold1_resv2.ckpt hydra=test +model.test_output_dir=$OUT_PATH experiment=conv1d_resv2 +model.net.pretrained=False \n# !mv /kaggle/working/submission.csv /kaggle/working/submission_fold1_v1.csv \n# !cd /kaggle/input/hms-mk-codes && python -m test paths.data_dir=$DATA_PATH data.test_eegs_dir=$OUT_PATH ckpt_path=/kaggle/input/hms-mk-data/fold2_resv2.ckpt hydra=test +model.test_output_dir=$OUT_PATH experiment=conv1d_resv2 +model.net.pretrained=False \n# !mv /kaggle/working/submission.csv /kaggle/working/submission_fold2_v1.csv \n# !cd /kaggle/input/hms-mk-codes && python -m test paths.data_dir=$DATA_PATH data.test_eegs_dir=$OUT_PATH ckpt_path=/kaggle/input/hms-mk-data/fold3_resv2.ckpt hydra=test +model.test_output_dir=$OUT_PATH experiment=conv1d_resv2 +model.net.pretrained=False \n# !mv /kaggle/working/submission.csv /kaggle/working/submission_fold3_v1.csv \n# !cd /kaggle/input/hms-mk-codes && python -m test paths.data_dir=$DATA_PATH data.test_eegs_dir=$OUT_PATH ckpt_path=/kaggle/input/hms-mk-data/fold4_resv2.ckpt hydra=test +model.test_output_dir=$OUT_PATH experiment=conv1d_resv2 +model.net.pretrained=False \n# !mv /kaggle/working/submission.csv /kaggle/working/submission_fold4_v1.csv \n\n# !cd /kaggle/input/hms-mk-codes && python -m test paths.data_dir=$DATA_PATH data.test_eegs_dir=$OUT_PATH ckpt_path=/kaggle/input/hms-mk-data/fold0_pseudo_resv2.ckpt hydra=test +model.test_output_dir=$OUT_PATH experiment=conv1d_resv2 +model.net.pretrained=False \n# !mv /kaggle/working/submission.csv /kaggle/working/submission_fold0_v2.csv \n# !cd /kaggle/input/hms-mk-codes && python -m test paths.data_dir=$DATA_PATH data.test_eegs_dir=$OUT_PATH ckpt_path=/kaggle/input/hms-mk-data/fold1_pseudo_resv2.ckpt hydra=test +model.test_output_dir=$OUT_PATH experiment=conv1d_resv2 +model.net.pretrained=False \n# !mv /kaggle/working/submission.csv /kaggle/working/submission_fold1_v2.csv \n# !cd /kaggle/input/hms-mk-codes && python -m test paths.data_dir=$DATA_PATH data.test_eegs_dir=$OUT_PATH ckpt_path=/kaggle/input/hms-mk-data/fold2_pseudo_resv2.ckpt hydra=test +model.test_output_dir=$OUT_PATH experiment=conv1d_resv2 +model.net.pretrained=False \n# !mv /kaggle/working/submission.csv /kaggle/working/submission_fold2_v2.csv \n# !cd /kaggle/input/hms-mk-codes && python -m test paths.data_dir=$DATA_PATH data.test_eegs_dir=$OUT_PATH ckpt_path=/kaggle/input/hms-mk-data/fold3_pseudo_resv2.ckpt hydra=test +model.test_output_dir=$OUT_PATH experiment=conv1d_resv2 +model.net.pretrained=False \n# !mv /kaggle/working/submission.csv /kaggle/working/submission_fold3_v2.csv\n# !cd /kaggle/input/hms-mk-codes && python -m test paths.data_dir=$DATA_PATH data.test_eegs_dir=$OUT_PATH ckpt_path=/kaggle/input/hms-mk-data/fold4_pseudo_resv2.ckpt hydra=test +model.test_output_dir=$OUT_PATH experiment=conv1d_resv2 +model.net.pretrained=False \n# !mv /kaggle/working/submission.csv /kaggle/working/submission_fold4_v2.csv \n\n\n!cd /kaggle/input/hms-mk-codes && python -m test paths.data_dir=$DATA_PATH data.test_eegs_dir=$OUT_PATH ckpt_path=/kaggle/input/hms-mk-data/fold0_effb3_sim_pseudo.ckpt hydra=test +model.test_output_dir=$OUT_PATH experiment=conv1d_effv2_pseudo +model.net.pretrained=False \n!mv /kaggle/working/submission.csv /kaggle/working/submission_fold0_v3.csv \n!cd /kaggle/input/hms-mk-codes && python -m test paths.data_dir=$DATA_PATH data.test_eegs_dir=$OUT_PATH ckpt_path=/kaggle/input/hms-mk-data/fold1_effb3_sim_pseudo.ckpt hydra=test +model.test_output_dir=$OUT_PATH experiment=conv1d_effv2_pseudo +model.net.pretrained=False \n!mv /kaggle/working/submission.csv /kaggle/working/submission_fold1_v3.csv \n!cd /kaggle/input/hms-mk-codes && python -m test paths.data_dir=$DATA_PATH data.test_eegs_dir=$OUT_PATH ckpt_path=/kaggle/input/hms-mk-data/fold2_effb3_sim_pseudo.ckpt hydra=test +model.test_output_dir=$OUT_PATH experiment=conv1d_effv2_pseudo +model.net.pretrained=False \n!mv /kaggle/working/submission.csv /kaggle/working/submission_fold2_v3.csv \n!cd /kaggle/input/hms-mk-codes && python -m test paths.data_dir=$DATA_PATH data.test_eegs_dir=$OUT_PATH ckpt_path=/kaggle/input/hms-mk-data/fold3_effb3_sim_pseudo.ckpt hydra=test +model.test_output_dir=$OUT_PATH experiment=conv1d_effv2_pseudo +model.net.pretrained=False \n!mv /kaggle/working/submission.csv /kaggle/working/submission_fold3_v3.csv\n!cd /kaggle/input/hms-mk-codes && python -m test paths.data_dir=$DATA_PATH data.test_eegs_dir=$OUT_PATH ckpt_path=/kaggle/input/hms-mk-data/fold4_effb3_sim_pseudo.ckpt hydra=test +model.test_output_dir=$OUT_PATH experiment=conv1d_effv2_pseudo +model.net.pretrained=False \n!mv /kaggle/working/submission.csv /kaggle/working/submission_fold4_v3.csv ","metadata":{"execution":{"iopub.status.busy":"2024-04-08T16:03:31.472582Z","iopub.execute_input":"2024-04-08T16:03:31.472987Z","iopub.status.idle":"2024-04-08T16:06:53.554649Z","shell.execute_reply.started":"2024-04-08T16:03:31.472944Z","shell.execute_reply":"2024-04-08T16:06:53.553399Z"},"trusted":true},"execution_count":null,"outputs":[]},{"cell_type":"code","source":"sys.path.remove('/kaggle/input/hms-mk-codes/')","metadata":{"execution":{"iopub.status.busy":"2024-04-08T16:06:53.556283Z","iopub.execute_input":"2024-04-08T16:06:53.556601Z","iopub.status.idle":"2024-04-08T16:06:53.561522Z","shell.execute_reply.started":"2024-04-08T16:06:53.556569Z","shell.execute_reply":"2024-04-08T16:06:53.560616Z"},"trusted":true},"execution_count":null,"outputs":[]},{"cell_type":"code","source":"sys.path.append('/kaggle/input/hms-mk-codesv2')","metadata":{"execution":{"iopub.status.busy":"2024-04-08T16:06:53.562718Z","iopub.execute_input":"2024-04-08T16:06:53.563013Z","iopub.status.idle":"2024-04-08T16:06:53.576627Z","shell.execute_reply.started":"2024-04-08T16:06:53.562989Z","shell.execute_reply":"2024-04-08T16:06:53.575814Z"},"trusted":true},"execution_count":null,"outputs":[]},{"cell_type":"code","source":"!cd /kaggle/input/hms-mk-codesv2 && python -m src.convert_parquet_to_npy --data_dir=$DATA_PATH --out_dir=$OUT_PATH2","metadata":{"execution":{"iopub.status.busy":"2024-04-08T16:06:53.577882Z","iopub.execute_input":"2024-04-08T16:06:53.578241Z","iopub.status.idle":"2024-04-08T16:06:54.955997Z","shell.execute_reply.started":"2024-04-08T16:06:53.578210Z","shell.execute_reply":"2024-04-08T16:06:54.954720Z"},"trusted":true},"execution_count":null,"outputs":[]},{"cell_type":"code","source":"!cd /kaggle/input/hms-mk-codesv2 && python -m test paths.data_dir=$DATA_PATH data.test_dataset._target_=src.nn_datasets.components.eegdataset_clean.HMSTestDataKG data.test_dataset.eeg_dir=$OUT_PATH2/test_eegs ckpt_path=/kaggle/input/hms-mk-data/clean_xcit_pseudo_fold0.ckpt hydra=test +model.test_output_dir=$OUT_PATH experiment=clean_tfm_corr_pseudo data.num_workers=2 +model.net.pretrained=False \n!mv /kaggle/working/submission.csv /kaggle/working/submission_fold0_v4.csv \n\n!cd /kaggle/input/hms-mk-codesv2 && python -m test paths.data_dir=$DATA_PATH data.test_dataset._target_=src.nn_datasets.components.eegdataset_clean.HMSTestDataKG data.test_dataset.eeg_dir=$OUT_PATH2/test_eegs ckpt_path=/kaggle/input/hms-mk-data/clean_xcit_pseudo_fold1.ckpt hydra=test +model.test_output_dir=$OUT_PATH experiment=clean_tfm_corr_pseudo data.num_workers=2 +model.net.pretrained=False \n!mv /kaggle/working/submission.csv /kaggle/working/submission_fold1_v4.csv \n\n!cd /kaggle/input/hms-mk-codesv2 && python -m test paths.data_dir=$DATA_PATH data.test_dataset._target_=src.nn_datasets.components.eegdataset_clean.HMSTestDataKG data.test_dataset.eeg_dir=$OUT_PATH2/test_eegs ckpt_path=/kaggle/input/hms-mk-data/clean_xcit_pseudo_fold2.ckpt hydra=test +model.test_output_dir=$OUT_PATH experiment=clean_tfm_corr_pseudo data.num_workers=2 +model.net.pretrained=False \n!mv /kaggle/working/submission.csv /kaggle/working/submission_fold2_v4.csv \n\n!cd /kaggle/input/hms-mk-codesv2 && python -m test paths.data_dir=$DATA_PATH data.test_dataset._target_=src.nn_datasets.components.eegdataset_clean.HMSTestDataKG data.test_dataset.eeg_dir=$OUT_PATH2/test_eegs ckpt_path=/kaggle/input/hms-mk-data/clean_xcit_pseudo_fold3.ckpt hydra=test +model.test_output_dir=$OUT_PATH experiment=clean_tfm_corr_pseudo data.num_workers=2 +model.net.pretrained=False \n!mv /kaggle/working/submission.csv /kaggle/working/submission_fold3_v4.csv \n\n!cd /kaggle/input/hms-mk-codesv2 && python -m test paths.data_dir=$DATA_PATH data.test_dataset._target_=src.nn_datasets.components.eegdataset_clean.HMSTestDataKG data.test_dataset.eeg_dir=$OUT_PATH2/test_eegs ckpt_path=/kaggle/input/hms-mk-data/clean_xcit_pseudo_fold4.ckpt hydra=test +model.test_output_dir=$OUT_PATH experiment=clean_tfm_corr_pseudo data.num_workers=2 +model.net.pretrained=False \n!mv /kaggle/working/submission.csv /kaggle/working/submission_fold4_v4.csv \n\n\n#----------------------\n!cd /kaggle/input/hms-mk-codesv2 && python -m test paths.data_dir=$DATA_PATH data.test_dataset._target_=src.nn_datasets.components.eegdataset_clean.HMSTestDataKG data.test_dataset.eeg_dir=$OUT_PATH2/test_eegs ckpt_path=/kaggle/input/hms-mk-data/clean_effb1_pseudo_fold0.ckpt hydra=test +model.test_output_dir=$OUT_PATH experiment=clean_effb1_corr_pseudo data.num_workers=2 +model.net.pretrained=False \n!mv /kaggle/working/submission.csv /kaggle/working/submission_fold0_v5.csv \n\n!cd /kaggle/input/hms-mk-codesv2 && python -m test paths.data_dir=$DATA_PATH data.test_dataset._target_=src.nn_datasets.components.eegdataset_clean.HMSTestDataKG data.test_dataset.eeg_dir=$OUT_PATH2/test_eegs ckpt_path=/kaggle/input/hms-mk-data/clean_effb1_pseudo_fold1.ckpt hydra=test +model.test_output_dir=$OUT_PATH experiment=clean_effb1_corr_pseudo data.num_workers=2 +model.net.pretrained=False \n!mv /kaggle/working/submission.csv /kaggle/working/submission_fold1_v5.csv \n\n!cd /kaggle/input/hms-mk-codesv2 && python -m test paths.data_dir=$DATA_PATH data.test_dataset._target_=src.nn_datasets.components.eegdataset_clean.HMSTestDataKG data.test_dataset.eeg_dir=$OUT_PATH2/test_eegs ckpt_path=/kaggle/input/hms-mk-data/clean_effb1_pseudo_fold2.ckpt hydra=test +model.test_output_dir=$OUT_PATH experiment=clean_effb1_corr_pseudo data.num_workers=2 +model.net.pretrained=False \n!mv /kaggle/working/submission.csv /kaggle/working/submission_fold2_v5.csv \n\n!cd /kaggle/input/hms-mk-codesv2 && python -m test paths.data_dir=$DATA_PATH data.test_dataset._target_=src.nn_datasets.components.eegdataset_clean.HMSTestDataKG data.test_dataset.eeg_dir=$OUT_PATH2/test_eegs ckpt_path=/kaggle/input/hms-mk-data/clean_effb1_pseudo_fold3.ckpt hydra=test +model.test_output_dir=$OUT_PATH experiment=clean_effb1_corr_pseudo data.num_workers=2 +model.net.pretrained=False \n!mv /kaggle/working/submission.csv /kaggle/working/submission_fold3_v5.csv \n\n!cd /kaggle/input/hms-mk-codesv2 && python -m test paths.data_dir=$DATA_PATH data.test_dataset._target_=src.nn_datasets.components.eegdataset_clean.HMSTestDataKG data.test_dataset.eeg_dir=$OUT_PATH2/test_eegs ckpt_path=/kaggle/input/hms-mk-data/clean_effb1_pseudo_fold4.ckpt hydra=test +model.test_output_dir=$OUT_PATH experiment=clean_effb1_corr_pseudo data.num_workers=2 +model.net.pretrained=False \n!mv /kaggle/working/submission.csv /kaggle/working/submission_fold4_v5.csv \n","metadata":{"execution":{"iopub.status.busy":"2024-04-08T16:06:54.957567Z","iopub.execute_input":"2024-04-08T16:06:54.957855Z","iopub.status.idle":"2024-04-08T16:09:53.983663Z","shell.execute_reply.started":"2024-04-08T16:06:54.957828Z","shell.execute_reply":"2024-04-08T16:09:53.982465Z"},"trusted":true},"execution_count":null,"outputs":[]},{"cell_type":"code","source":"!head /kaggle/working/submission_fold1_v4.csv ","metadata":{"execution":{"iopub.status.busy":"2024-04-08T16:09:53.986943Z","iopub.execute_input":"2024-04-08T16:09:53.987240Z","iopub.status.idle":"2024-04-08T16:09:54.930078Z","shell.execute_reply.started":"2024-04-08T16:09:53.987209Z","shell.execute_reply":"2024-04-08T16:09:54.928917Z"},"trusted":true},"execution_count":null,"outputs":[]},{"cell_type":"code","source":"!head /kaggle/working/submission_fold1_v5.csv ","metadata":{"execution":{"iopub.status.busy":"2024-04-08T16:09:54.931653Z","iopub.execute_input":"2024-04-08T16:09:54.932016Z","iopub.status.idle":"2024-04-08T16:09:55.911535Z","shell.execute_reply.started":"2024-04-08T16:09:54.931986Z","shell.execute_reply":"2024-04-08T16:09:55.910571Z"},"trusted":true},"execution_count":null,"outputs":[]},{"cell_type":"code","source":"from src.settings import TARGET_COLS\nimport pandas as pd\nimport numpy as np\ndef merge_preds(folds=[0, 1, 2, 3, 4], versions=['v4', 'v5'], weights=[0.5, 0.5]):\n    preds = []\n    for fold in folds:\n        for weight, version in zip(weights, versions):\n            sol = pd.read_csv(f\"/kaggle/working/submission_fold{fold}_{version}.csv\")\n            preds.append(sol[TARGET_COLS].values * weight)\n    preds = np.sum(preds, 0)\n    preds = preds / preds.sum(axis=1, keepdims=True)\n    sol[TARGET_COLS] = preds\n    return sol\n","metadata":{"execution":{"iopub.status.busy":"2024-04-08T16:09:55.912989Z","iopub.execute_input":"2024-04-08T16:09:55.913290Z","iopub.status.idle":"2024-04-08T16:09:56.287996Z","shell.execute_reply.started":"2024-04-08T16:09:55.913261Z","shell.execute_reply":"2024-04-08T16:09:56.287234Z"},"trusted":true},"execution_count":null,"outputs":[]},{"cell_type":"code","source":"sol = merge_preds(folds=[0, 1, 2, 3, 4], versions=['v0', 'v3', 'v4', 'v5'], weights=[0.25, 0.25, 0.25,  0.25])","metadata":{"execution":{"iopub.status.busy":"2024-04-08T16:09:56.289031Z","iopub.execute_input":"2024-04-08T16:09:56.289377Z","iopub.status.idle":"2024-04-08T16:09:56.330787Z","shell.execute_reply.started":"2024-04-08T16:09:56.289353Z","shell.execute_reply":"2024-04-08T16:09:56.330073Z"},"trusted":true},"execution_count":null,"outputs":[]},{"cell_type":"code","source":"sol.to_csv(\"/kaggle/working/submission.csv\", index=False)","metadata":{"execution":{"iopub.status.busy":"2024-04-08T16:09:56.331738Z","iopub.execute_input":"2024-04-08T16:09:56.332031Z","iopub.status.idle":"2024-04-08T16:09:56.338242Z","shell.execute_reply.started":"2024-04-08T16:09:56.332006Z","shell.execute_reply":"2024-04-08T16:09:56.337277Z"},"trusted":true},"execution_count":null,"outputs":[]},{"cell_type":"code","source":"sol.head()","metadata":{"execution":{"iopub.status.busy":"2024-04-08T16:09:56.339449Z","iopub.execute_input":"2024-04-08T16:09:56.339743Z","iopub.status.idle":"2024-04-08T16:09:56.359435Z","shell.execute_reply.started":"2024-04-08T16:09:56.339719Z","shell.execute_reply":"2024-04-08T16:09:56.358453Z"},"trusted":true},"execution_count":null,"outputs":[]},{"cell_type":"code","source":"","metadata":{},"execution_count":null,"outputs":[]}]}