{"metadata":{"kernelspec":{"language":"python","display_name":"Python 3","name":"python3"},"language_info":{"name":"python","version":"3.10.14","mimetype":"text/x-python","codemirror_mode":{"name":"ipython","version":3},"pygments_lexer":"ipython3","nbconvert_exporter":"python","file_extension":".py"},"kaggle":{"accelerator":"gpu","dataSources":[{"sourceId":84896,"databundleVersionId":10305135,"sourceType":"competition"},{"sourceId":10108964,"sourceType":"datasetVersion","datasetId":6226700}],"dockerImageVersionId":30804,"isInternetEnabled":true,"language":"python","sourceType":"notebook","isGpuEnabled":true}},"nbformat_minor":4,"nbformat":4,"cells":[{"cell_type":"code","source":"!pip install ray==2.10.0\n!pip install autogluon.tabular\n!pip install -U ipywidgets","metadata":{"_uuid":"8f2839f25d086af736a60e9eeb907d3b93b6e0e5","_cell_guid":"b1076dfc-b9ad-4769-8c92-a6c4dae69d19","trusted":true,"execution":{"iopub.status.busy":"2024-12-05T13:49:50.095996Z","iopub.execute_input":"2024-12-05T13:49:50.096685Z","iopub.status.idle":"2024-12-05T13:50:36.803649Z","shell.execute_reply.started":"2024-12-05T13:49:50.09664Z","shell.execute_reply":"2024-12-05T13:50:36.802572Z"}},"outputs":[],"execution_count":null},{"cell_type":"code","source":"from autogluon.tabular import TabularPredictor\nimport pandas as pd\nimport numpy as np\nimport os\nimport pathlib","metadata":{"trusted":true,"execution":{"iopub.status.busy":"2024-12-05T13:54:10.723923Z","iopub.execute_input":"2024-12-05T13:54:10.724632Z","iopub.status.idle":"2024-12-05T13:54:10.728443Z","shell.execute_reply.started":"2024-12-05T13:54:10.724598Z","shell.execute_reply":"2024-12-05T13:54:10.727548Z"}},"outputs":[],"execution_count":null},{"cell_type":"code","source":"train = pd.read_csv(\"/kaggle/input/competition/oof_data/oof_data.csv\")\ntest = pd.read_csv(\"/kaggle/input/competition/oof_data/test_data.csv\")","metadata":{"trusted":true,"execution":{"iopub.status.busy":"2024-12-05T13:52:51.799067Z","iopub.execute_input":"2024-12-05T13:52:51.799752Z","iopub.status.idle":"2024-12-05T13:53:05.739912Z","shell.execute_reply.started":"2024-12-05T13:52:51.799716Z","shell.execute_reply":"2024-12-05T13:53:05.738974Z"}},"outputs":[],"execution_count":null},{"cell_type":"code","source":"MAIN_PATH = \"/kaggle/input/competition\"\ncsv_files = [file for file in os.listdir(MAIN_PATH) if file.endswith('.csv')]\n\n\ncombined_data = pd.concat([pd.read_csv(os.path.join(pathlib.Path(MAIN_PATH).joinpath(file))) for file in csv_files],ignore_index=True)\ncombined_data.set_index(\"Unnamed: 0\", inplace=True)\ncombined_data.index.name = \"Experiments\"\n\ncombined_data[\"Mean_Score\"] = combined_data.mean(axis=1)\ncombined_data.sort_values(by=\"Mean_Score\", inplace=True)\ncombined_data","metadata":{"trusted":true,"execution":{"iopub.status.busy":"2024-12-05T13:54:31.401816Z","iopub.execute_input":"2024-12-05T13:54:31.402128Z","iopub.status.idle":"2024-12-05T13:54:31.490363Z","shell.execute_reply.started":"2024-12-05T13:54:31.402102Z","shell.execute_reply":"2024-12-05T13:54:31.489548Z"}},"outputs":[],"execution_count":null},{"cell_type":"code","source":"predictor = TabularPredictor(label='Premium_Amount', \n                            eval_metric='rmse',\n                            ) \n\nTIME = 3600*10\n\npredictor.fit(train,\n              presets='best_quality',\n              time_limit=TIME,\n              verbosity=1,\n              excluded_model_types=['KNN'],\n              ag_args_fit={'num_gpus': 1}\n              )\n\npredictor.save(\"AutoGluon_Model\")\nresults = predictor.fit_summary()","metadata":{"trusted":true},"outputs":[],"execution_count":null},{"cell_type":"code","source":"predictor.leaderboard()","metadata":{"trusted":true},"outputs":[],"execution_count":null},{"cell_type":"code","source":"y_pred = predictor.predict(test)\ny_pred = np.expm1(y_pred)\n\nsub = pd.read_csv('/kaggle/input/playground-series-s4e12/sample_submission.csv')\nsub['Premium Amount'] = y_pred\nsub.to_csv('submission.csv', index=False)","metadata":{"trusted":true},"outputs":[],"execution_count":null}]}