{"metadata":{"kernelspec":{"display_name":"Python 3","language":"python","name":"python3"},"language_info":{"name":"python","version":"3.10.12","mimetype":"text/x-python","codemirror_mode":{"name":"ipython","version":3},"pygments_lexer":"ipython3","nbconvert_exporter":"python","file_extension":".py"},"kaggle":{"accelerator":"none","dataSources":[{"sourceType":"competition","sourceId":91844,"databundleVersionId":11361821},{"sourceType":"datasetVersion","sourceId":11458343,"datasetId":6930139,"databundleVersionId":11900107},{"sourceType":"datasetVersion","sourceId":12439925,"datasetId":7641328,"databundleVersionId":13010221}],"dockerImageVersionId":30918,"isInternetEnabled":false,"language":"python","sourceType":"notebook","isGpuEnabled":false},"papermill":{"default_parameters":{},"duration":194.267617,"end_time":"2024-06-10T17:58:27.17925","environment_variables":{},"exception":null,"input_path":"__notebook__.ipynb","output_path":"__notebook__.ipynb","parameters":{},"start_time":"2024-06-10T17:55:12.911633","version":"2.5.0"}},"nbformat_minor":4,"nbformat":4,"cells":[{"cell_type":"markdown","source":"# Install Runtime library","metadata":{}},{"cell_type":"code","source":"!pip install /kaggle/input/bird-clef-2025-addones/onnxruntime-1.17.3-cp310-cp310-manylinux_2_27_x86_64.manylinux_2_28_x86_64.whl --no-deps","metadata":{"execution":{"iopub.status.busy":"2025-07-11T10:45:03.589693Z","iopub.execute_input":"2025-07-11T10:45:03.590022Z","iopub.status.idle":"2025-07-11T10:45:06.654377Z","shell.execute_reply.started":"2025-07-11T10:45:03.589985Z","shell.execute_reply":"2025-07-11T10:45:06.653100Z"},"papermill":{"duration":25.150714,"end_time":"2024-06-10T17:55:42.705792","exception":false,"start_time":"2024-06-10T17:55:17.555078","status":"completed"},"tags":[],"trusted":true},"outputs":[],"execution_count":null},{"cell_type":"code","source":"!pip list | grep onnxruntime","metadata":{"execution":{"iopub.status.busy":"2025-07-11T10:45:24.650103Z","iopub.execute_input":"2025-07-11T10:45:24.650522Z","iopub.status.idle":"2025-07-11T10:45:28.365754Z","shell.execute_reply.started":"2025-07-11T10:45:24.650486Z","shell.execute_reply":"2025-07-11T10:45:28.364529Z"},"papermill":{"duration":25.687913,"end_time":"2024-06-10T17:56:08.40584","exception":false,"start_time":"2024-06-10T17:55:42.717927","status":"completed"},"tags":[],"trusted":true},"outputs":[],"execution_count":null},{"cell_type":"code","source":"!pip list | grep numpy","metadata":{"execution":{"iopub.status.busy":"2025-07-11T10:45:28.367870Z","iopub.execute_input":"2025-07-11T10:45:28.368385Z","iopub.status.idle":"2025-07-11T10:45:29.860202Z","shell.execute_reply.started":"2025-07-11T10:45:28.368333Z","shell.execute_reply":"2025-07-11T10:45:29.858935Z"},"papermill":{"duration":23.687949,"end_time":"2024-06-10T17:56:32.105565","exception":false,"start_time":"2024-06-10T17:56:08.417616","status":"completed"},"tags":[],"trusted":true},"outputs":[],"execution_count":null},{"cell_type":"markdown","source":"# Imports","metadata":{}},{"cell_type":"code","source":"import pandas as pd\nimport numpy as np\nimport librosa\nimport os\nimport json\nimport onnxruntime as ort\nimport json\n\nfrom glob import glob\nfrom tqdm import tqdm\nfrom typing import Mapping, Any","metadata":{"execution":{"iopub.status.busy":"2025-07-11T10:45:32.257234Z","iopub.execute_input":"2025-07-11T10:45:32.257656Z","iopub.status.idle":"2025-07-11T10:45:32.727340Z","shell.execute_reply.started":"2025-07-11T10:45:32.257622Z","shell.execute_reply":"2025-07-11T10:45:32.726173Z"},"papermill":{"duration":8.541697,"end_time":"2024-06-10T17:56:40.695915","exception":false,"start_time":"2024-06-10T17:56:32.154218","status":"completed"},"tags":[],"trusted":true},"outputs":[],"execution_count":null},{"cell_type":"code","source":"def load_json(path: str) -> Mapping[str, Any]:\n    \"\"\"\n    Read .json file and return dict\n    \"\"\"\n    with open(path, \"r\") as read_file:\n        loaded_dict = json.load(read_file)\n    return loaded_dict","metadata":{"trusted":true,"execution":{"iopub.status.busy":"2025-07-11T10:45:32.739601Z","iopub.execute_input":"2025-07-11T10:45:32.740112Z","iopub.status.idle":"2025-07-11T10:45:32.745982Z","shell.execute_reply.started":"2025-07-11T10:45:32.740079Z","shell.execute_reply":"2025-07-11T10:45:32.744662Z"}},"outputs":[],"execution_count":null},{"cell_type":"markdown","source":"# Load Data","metadata":{}},{"cell_type":"code","source":"au, sr = librosa.load(\n    \"/kaggle/input/birdclef-2025/train_soundscapes/H27_20230421_155000.ogg\",\n    sr=None\n)\n\nassert sr == 32000\n\n# Crop 5 second chunk and normalize after that\nau = au[:sr*5]\nau = librosa.util.normalize(au)","metadata":{"trusted":true,"execution":{"iopub.status.busy":"2025-07-11T10:45:35.910560Z","iopub.execute_input":"2025-07-11T10:45:35.910932Z","iopub.status.idle":"2025-07-11T10:45:53.358936Z","shell.execute_reply.started":"2025-07-11T10:45:35.910903Z","shell.execute_reply":"2025-07-11T10:45:53.357908Z"}},"outputs":[],"execution_count":null},{"cell_type":"markdown","source":"# Load Model","metadata":{}},{"cell_type":"code","source":"model = ort.InferenceSession(\"/kaggle/input/bird-clef-2025-models/tf_efficientnetv2_s_in21k_Exp_noamp_64bs_5sec_BasicAug_EqualBalancing_AdamW1e4_CosBatchLR1e6_Epoch50_FocalBCELoss_LSF1005_FromPrebs1_PseudoF2PT05MT01P04I2_AddRareBirdsNoLeak_onnx/tf_efficientnetv2_s_in21k_Exp_noamp_64bs_5sec_BasicAug_EqualBalancing_AdamW1e4_CosBatchLR1e6_Epoch50_FocalBCELoss_LSF1005_FromPrebs1_PseudoF2PT05MT01P04I2_AddRareBirdsNoLeak_onnx/onnx_ensem_5first_folds/model_simpl.onnx\")","metadata":{"trusted":true,"execution":{"iopub.status.busy":"2025-07-11T10:46:33.963868Z","iopub.execute_input":"2025-07-11T10:46:33.964454Z","iopub.status.idle":"2025-07-11T10:46:41.371944Z","shell.execute_reply.started":"2025-07-11T10:46:33.964417Z","shell.execute_reply":"2025-07-11T10:46:41.370770Z"}},"outputs":[],"execution_count":null},{"cell_type":"code","source":"bird2int = load_json(\n    \"/kaggle/input/bird-clef-2025-models/bird2int_2025.json\"\n)","metadata":{"trusted":true,"execution":{"iopub.status.busy":"2025-07-11T10:46:41.373492Z","iopub.execute_input":"2025-07-11T10:46:41.373919Z","iopub.status.idle":"2025-07-11T10:46:41.400828Z","shell.execute_reply.started":"2025-07-11T10:46:41.373878Z","shell.execute_reply":"2025-07-11T10:46:41.399408Z"}},"outputs":[],"execution_count":null},{"cell_type":"markdown","source":"# Run Inference","metadata":{}},{"cell_type":"code","source":"output_probabilities = model.run(None, {\"input\": au[None,...]})[0][0]","metadata":{"trusted":true,"execution":{"iopub.status.busy":"2025-07-11T10:48:33.372169Z","iopub.execute_input":"2025-07-11T10:48:33.372611Z","iopub.status.idle":"2025-07-11T10:48:33.684216Z","shell.execute_reply.started":"2025-07-11T10:48:33.372577Z","shell.execute_reply":"2025-07-11T10:48:33.682507Z"}},"outputs":[],"execution_count":null},{"cell_type":"code","source":"bird_probabilities = {\n    k: output_probabilities[v] for k,v in bird2int.items()\n}","metadata":{"trusted":true,"execution":{"iopub.status.busy":"2025-07-11T10:48:37.238513Z","iopub.execute_input":"2025-07-11T10:48:37.238915Z","iopub.status.idle":"2025-07-11T10:48:37.244494Z","shell.execute_reply.started":"2025-07-11T10:48:37.238884Z","shell.execute_reply":"2025-07-11T10:48:37.243141Z"}},"outputs":[],"execution_count":null},{"cell_type":"code","source":"bird_probabilities","metadata":{"trusted":true,"execution":{"iopub.status.busy":"2025-07-11T10:48:38.535582Z","iopub.execute_input":"2025-07-11T10:48:38.535969Z","iopub.status.idle":"2025-07-11T10:48:38.547831Z","shell.execute_reply.started":"2025-07-11T10:48:38.535938Z","shell.execute_reply":"2025-07-11T10:48:38.546593Z"}},"outputs":[],"execution_count":null},{"cell_type":"code","source":"","metadata":{"papermill":{"duration":0.018698,"end_time":"2024-06-10T17:58:25.227416","exception":false,"start_time":"2024-06-10T17:58:25.208718","status":"completed"},"tags":[]},"outputs":[],"execution_count":null}]}