{"metadata":{"kernelspec":{"language":"python","display_name":"Python 3","name":"python3"},"language_info":{"name":"python","version":"3.11.13","mimetype":"text/x-python","codemirror_mode":{"name":"ipython","version":3},"pygments_lexer":"ipython3","nbconvert_exporter":"python","file_extension":".py"},"kaggle":{"accelerator":"none","dataSources":[{"sourceId":112509,"databundleVersionId":14254895,"sourceType":"competition"}],"dockerImageVersionId":31192,"isInternetEnabled":false,"language":"python","sourceType":"notebook","isGpuEnabled":false}},"nbformat_minor":4,"nbformat":4,"cells":[{"cell_type":"markdown","source":"# Intro\n\n![image.png](attachment:54c82cee-ded8-4a83-9524-30d8e83988ca.png)\n\nThe purpose of the competition is to predict pasture biomass components from field images.\nFor each image, we have to estimate five target variables (in grams):\n\n- **Dry_Green_g** → the biomass (other_plants) which are dried but alive.\n- **Dry_Dead_g** → the biomass (clover + other_plants) which are completely dead and dried. (non-clover)\n- **Dry_Clover_g** → the biomass (clover) which are dried but alive\n- **GDM_g** → Green dry matter\n- **Dry_Total_g** → Total dry biomass\n  \nMoreover, we know that:\n\n**Dry_Total_g = Dry_Green_g + Dry_Clover_g + Dry_Dead_g**\n\n**GDM_g = Dry_Total_g - Dry_Dead_g**\n\nso we have to predict **Dry_Green_g , Dry_Clover_g , Dry_Dead_g**\n\n\nThe evaluation metric is the weighted average of the **R²** score across the five targets.\n\nSource notebooks: \n- https://www.kaggle.com/code/jirkaborovec/csiro-img2bio-naive-statistical-predictions\n\n\nIn this notebook I'm going to present an EDA, establish a baseline model and brainstorm about possible solutions.","metadata":{},"attachments":{"54c82cee-ded8-4a83-9524-30d8e83988ca.png":{"image/png":"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"}}},{"cell_type":"markdown","source":"# Imports","metadata":{}},{"cell_type":"code","source":"import os\nimport pandas as pd\nimport random\nimport numpy as np\n\nimport math\nfrom PIL import Image\nfrom collections import Counter\nimport matplotlib.pyplot as plt","metadata":{"trusted":true,"execution":{"iopub.status.busy":"2026-01-11T19:38:03.273193Z","iopub.execute_input":"2026-01-11T19:38:03.273800Z","iopub.status.idle":"2026-01-11T19:38:03.277990Z","shell.execute_reply.started":"2026-01-11T19:38:03.273769Z","shell.execute_reply":"2026-01-11T19:38:03.277026Z"}},"outputs":[],"execution_count":null},{"cell_type":"markdown","source":"## Config","metadata":{}},{"cell_type":"code","source":"os.listdir('/kaggle/input/csiro-biomass')","metadata":{"trusted":true,"execution":{"iopub.status.busy":"2026-01-11T19:38:03.279280Z","iopub.execute_input":"2026-01-11T19:38:03.279494Z","iopub.status.idle":"2026-01-11T19:38:03.303825Z","shell.execute_reply.started":"2026-01-11T19:38:03.279480Z","shell.execute_reply":"2026-01-11T19:38:03.302803Z"}},"outputs":[],"execution_count":null},{"cell_type":"code","source":"class CONFIG():\n    train_path = '/kaggle/input/csiro-biomass/train'\n    test_path = '/kaggle/input/csiro-biomass/test'\n    test_csv_path = '/kaggle/input/csiro-biomass/test.csv'\n    train_csv_path = '/kaggle/input/csiro-biomass/train.csv'","metadata":{"trusted":true,"execution":{"iopub.status.busy":"2026-01-11T19:38:03.304849Z","iopub.execute_input":"2026-01-11T19:38:03.305141Z","iopub.status.idle":"2026-01-11T19:38:03.309781Z","shell.execute_reply.started":"2026-01-11T19:38:03.305120Z","shell.execute_reply":"2026-01-11T19:38:03.308822Z"}},"outputs":[],"execution_count":null},{"cell_type":"code","source":"config = CONFIG()","metadata":{"trusted":true,"execution":{"iopub.status.busy":"2026-01-11T19:38:03.310669Z","iopub.execute_input":"2026-01-11T19:38:03.310940Z","iopub.status.idle":"2026-01-11T19:38:03.329284Z","shell.execute_reply.started":"2026-01-11T19:38:03.310919Z","shell.execute_reply":"2026-01-11T19:38:03.327861Z"}},"outputs":[],"execution_count":null},{"cell_type":"markdown","source":"# EDA","metadata":{}},{"cell_type":"markdown","source":"- **Train.csv** contains metadata: sampling date, state, species, NDVI, height, target values.\n- **Test.csv** contains sample IDs, image paths, and target names (no target values).\nMoreover, we have 2 folders **\"test\"** and **\"train\"** which contains test and train images and a **sample_submission.csv** with an example of submission.\n\nThe **test** folder contains only 1 image but the data is going to be provided at runtime for evaluation.","metadata":{}},{"cell_type":"code","source":"train_data = pd.read_csv(config.train_csv_path)","metadata":{"trusted":true,"execution":{"iopub.status.busy":"2026-01-11T19:38:03.331576Z","iopub.execute_input":"2026-01-11T19:38:03.331835Z","iopub.status.idle":"2026-01-11T19:38:03.360124Z","shell.execute_reply.started":"2026-01-11T19:38:03.331816Z","shell.execute_reply":"2026-01-11T19:38:03.359020Z"}},"outputs":[],"execution_count":null},{"cell_type":"code","source":"train_data.shape","metadata":{"trusted":true,"execution":{"iopub.status.busy":"2026-01-11T19:38:03.360975Z","iopub.execute_input":"2026-01-11T19:38:03.361169Z","iopub.status.idle":"2026-01-11T19:38:03.367665Z","shell.execute_reply.started":"2026-01-11T19:38:03.361153Z","shell.execute_reply":"2026-01-11T19:38:03.367101Z"}},"outputs":[],"execution_count":null},{"cell_type":"code","source":"train_data","metadata":{"trusted":true,"execution":{"iopub.status.busy":"2026-01-11T19:38:03.368456Z","iopub.execute_input":"2026-01-11T19:38:03.368642Z","iopub.status.idle":"2026-01-11T19:38:03.394805Z","shell.execute_reply.started":"2026-01-11T19:38:03.368627Z","shell.execute_reply":"2026-01-11T19:38:03.393951Z"}},"outputs":[],"execution_count":null},{"cell_type":"code","source":"test_data = pd.read_csv(config.test_csv_path)","metadata":{"trusted":true,"execution":{"iopub.status.busy":"2026-01-11T19:38:03.395559Z","iopub.execute_input":"2026-01-11T19:38:03.395777Z","iopub.status.idle":"2026-01-11T19:38:03.415201Z","shell.execute_reply.started":"2026-01-11T19:38:03.395756Z","shell.execute_reply":"2026-01-11T19:38:03.414133Z"}},"outputs":[],"execution_count":null},{"cell_type":"code","source":"test_data","metadata":{"trusted":true,"execution":{"iopub.status.busy":"2026-01-11T19:38:03.416160Z","iopub.execute_input":"2026-01-11T19:38:03.416387Z","iopub.status.idle":"2026-01-11T19:38:03.435334Z","shell.execute_reply.started":"2026-01-11T19:38:03.416371Z","shell.execute_reply":"2026-01-11T19:38:03.434339Z"}},"outputs":[],"execution_count":null},{"cell_type":"markdown","source":"It looks that the test dataframe doesn't contain all the metadata variables that are in the train dataframe. The only field available is the image path, therefore at runtime we could rely only on the images to estimate the biomass.\n\nWe will see later possible approaches to face this challenge.","metadata":{}},{"cell_type":"code","source":"print(f\"Nb images train folder {len(os.listdir(config.train_path))}\")","metadata":{"trusted":true,"execution":{"iopub.status.busy":"2026-01-11T19:38:03.437010Z","iopub.execute_input":"2026-01-11T19:38:03.437306Z","iopub.status.idle":"2026-01-11T19:38:03.463363Z","shell.execute_reply.started":"2026-01-11T19:38:03.437283Z","shell.execute_reply":"2026-01-11T19:38:03.461929Z"}},"outputs":[],"execution_count":null},{"cell_type":"code","source":"print(f\"Nb images test folder {len(os.listdir(config.test_path))}\")","metadata":{"trusted":true,"execution":{"iopub.status.busy":"2026-01-11T19:38:03.464301Z","iopub.execute_input":"2026-01-11T19:38:03.464585Z","iopub.status.idle":"2026-01-11T19:38:03.472975Z","shell.execute_reply.started":"2026-01-11T19:38:03.464562Z","shell.execute_reply":"2026-01-11T19:38:03.471920Z"}},"outputs":[],"execution_count":null},{"cell_type":"code","source":"# let's have a look to the images in the folders\ndef plot_random_images_from_folder(folder_path, max_images=None, seed=None):\n    \"\"\"\n    Plots a random selection of JPEG images from a folder.\n    - max_images: number of images to sample (None = show all)\n    - seed: optional random seed for reproducibility\n    \"\"\"\n    # Set seed if provided\n    if seed is not None:\n        random.seed(seed)\n\n    # Get list of JPEG files\n    images = [f for f in os.listdir(folder_path)\n              if f.lower().endswith((\".jpg\", \".jpeg\"))]\n\n    if not images:\n        print(\"No JPEG images found in the folder.\")\n        return\n\n    # Random sampling\n    if max_images is not None:\n        max_images = min(max_images, len(images))\n        images = random.sample(images, max_images)\n\n    n = len(images)\n\n    # Grid size\n    cols = math.ceil(math.sqrt(n))\n    rows = math.ceil(n / cols)\n\n    plt.figure(figsize=(cols * 3, rows * 3))\n\n    for i, img_name in enumerate(images):\n        img_path = os.path.join(folder_path, img_name)\n        img = Image.open(img_path)\n\n        plt.subplot(rows, cols, i + 1)\n        plt.imshow(img)\n        plt.title(img_name)\n        plt.axis(\"off\")\n\n    plt.tight_layout()\n    plt.show()","metadata":{"trusted":true,"execution":{"iopub.status.busy":"2026-01-11T19:38:03.476919Z","iopub.execute_input":"2026-01-11T19:38:03.477316Z","iopub.status.idle":"2026-01-11T19:38:03.495736Z","shell.execute_reply.started":"2026-01-11T19:38:03.477296Z","shell.execute_reply":"2026-01-11T19:38:03.494469Z"}},"outputs":[],"execution_count":null},{"cell_type":"code","source":"# train images\nplot_random_images_from_folder(config.train_path, max_images=9)","metadata":{"trusted":true,"execution":{"iopub.status.busy":"2026-01-11T19:38:03.497207Z","iopub.execute_input":"2026-01-11T19:38:03.497394Z","iopub.status.idle":"2026-01-11T19:38:06.090241Z","shell.execute_reply.started":"2026-01-11T19:38:03.497381Z","shell.execute_reply":"2026-01-11T19:38:06.088798Z"}},"outputs":[],"execution_count":null},{"cell_type":"markdown","source":"We have rgb image of the fields","metadata":{}},{"cell_type":"code","source":"# test images (only 1 available)\nplot_random_images_from_folder(config.test_path, max_images=4) # just one image in testing","metadata":{"trusted":true,"execution":{"iopub.status.busy":"2026-01-11T19:38:06.091256Z","iopub.execute_input":"2026-01-11T19:38:06.091508Z","iopub.status.idle":"2026-01-11T19:38:06.360968Z","shell.execute_reply.started":"2026-01-11T19:38:06.091487Z","shell.execute_reply":"2026-01-11T19:38:06.360156Z"}},"outputs":[],"execution_count":null},{"cell_type":"code","source":"def count_image_sizes(folder_path):\n    widths = []\n    heights = []\n\n    # Allowed image formats\n    exts = (\".jpg\", \".jpeg\", \".png\")\n\n    for filename in os.listdir(folder_path):\n        if filename.lower().endswith(exts):\n            filepath = os.path.join(folder_path, filename)\n            try:\n                with Image.open(filepath) as img:\n                    w, h = img.size\n                    widths.append(w)\n                    heights.append(h)\n            except Exception as e:\n                print(f\"Skipping {filename}: {e}\")\n\n    width_counts = Counter(widths)\n    height_counts = Counter(heights)\n\n    print(\"\\n=== WIDTH COUNTS ===\")\n    for width, count in sorted(width_counts.items()):\n        print(f\"Width {width}px : {count} images\")\n\n    print(\"\\n=== HEIGHT COUNTS ===\")\n    for height, count in sorted(height_counts.items()):\n        print(f\"Height {height}px : {count} images\")\n\n    return width_counts, height_counts","metadata":{"trusted":true,"execution":{"iopub.status.busy":"2026-01-11T19:38:06.361696Z","iopub.execute_input":"2026-01-11T19:38:06.361874Z","iopub.status.idle":"2026-01-11T19:38:06.368087Z","shell.execute_reply.started":"2026-01-11T19:38:06.361861Z","shell.execute_reply":"2026-01-11T19:38:06.367456Z"}},"outputs":[],"execution_count":null},{"cell_type":"code","source":"# let's plot images width and height\ncount_image_sizes(config.train_path)","metadata":{"trusted":true,"execution":{"iopub.status.busy":"2026-01-11T19:38:06.369759Z","iopub.execute_input":"2026-01-11T19:38:06.369962Z","iopub.status.idle":"2026-01-11T19:38:09.570458Z","shell.execute_reply.started":"2026-01-11T19:38:06.369948Z","shell.execute_reply":"2026-01-11T19:38:09.569532Z"}},"outputs":[],"execution_count":null},{"cell_type":"code","source":"# let's plot to cumulative histograms to observe pixel distribution\ndef plot_cumulative_rgb_histograms_folder(folder_path):\n    \"\"\"\n    Computes and plots cumulative RGB histograms for all images in a folder.\n    Also plots the mean for each channel.\n    \"\"\"\n\n    exts = (\".jpg\", \".jpeg\", \".png\")\n    cum_r_list = []\n    cum_g_list = []\n    cum_b_list = []\n\n    # --- Load images and compute cumulative histograms ---\n    for filename in os.listdir(folder_path):\n        if not filename.lower().endswith(exts):\n            continue\n\n        path = os.path.join(folder_path, filename)\n        try:\n            img = Image.open(path).convert(\"RGB\")\n            arr = np.array(img)\n\n            # Flatten channels\n            r = arr[:, :, 0].ravel()\n            g = arr[:, :, 1].ravel()\n            b = arr[:, :, 2].ravel()\n\n            # Normal histogram (256 bins)\n            hist_r, _ = np.histogram(r, bins=256, range=(0, 255))\n            hist_g, _ = np.histogram(g, bins=256, range=(0, 255))\n            hist_b, _ = np.histogram(b, bins=256, range=(0, 255))\n\n            # Cumulative\n            cum_r_list.append(np.cumsum(hist_r))\n            cum_g_list.append(np.cumsum(hist_g))\n            cum_b_list.append(np.cumsum(hist_b))\n\n        except Exception as e:\n            print(f\"Skipping {filename}: {e}\")\n\n    # Convert to arrays\n    cum_r_array = np.vstack(cum_r_list)\n    cum_g_array = np.vstack(cum_g_list)\n    cum_b_array = np.vstack(cum_b_list)\n\n    # Compute mean and std\n    mean_r, std_r = np.mean(cum_r_array, axis=0), np.std(cum_r_array, axis=0)\n    mean_g, std_g = np.mean(cum_g_array, axis=0), np.std(cum_g_array, axis=0)\n    mean_b, std_b = np.mean(cum_b_array, axis=0), np.std(cum_b_array, axis=0)\n\n    x = np.arange(256)\n\n    # --- Plot ---\n    plt.figure(figsize=(10, 6))\n\n    # Plot all individual histograms with low opacity\n    for cr in cum_r_array:\n        plt.plot(x, cr, color=\"red\", alpha=0.05, linewidth=1)\n    for cg in cum_g_array:\n        plt.plot(x, cg, color=\"green\", alpha=0.05, linewidth=1)\n    for cb in cum_b_array:\n        plt.plot(x, cb, color=\"blue\", alpha=0.05, linewidth=1)\n\n    # Plot mean ± std\n    plt.plot(x, mean_r, color=\"red\", linewidth=2, label=\"Red mean\")\n\n    plt.plot(x, mean_g, color=\"green\", linewidth=2, label=\"Green mean\")\n\n    plt.plot(x, mean_b, color=\"blue\", linewidth=2, label=\"Blue mean\")\n\n    plt.title(\"Cumulative RGB Histograms (All Images + Mean)\")\n    plt.xlabel(\"Pixel Intensity (0–255)\")\n    plt.ylabel(\"Cumulative Count\")\n    plt.legend()\n    plt.grid(alpha=0.3)\n    plt.tight_layout()\n    plt.show()\n","metadata":{"trusted":true,"execution":{"iopub.status.busy":"2026-01-11T19:38:09.571180Z","iopub.execute_input":"2026-01-11T19:38:09.571379Z","iopub.status.idle":"2026-01-11T19:38:09.581092Z","shell.execute_reply.started":"2026-01-11T19:38:09.571343Z","shell.execute_reply":"2026-01-11T19:38:09.580263Z"}},"outputs":[],"execution_count":null},{"cell_type":"code","source":"plot_cumulative_rgb_histograms_folder(config.train_path)","metadata":{"trusted":true,"execution":{"iopub.status.busy":"2026-01-11T19:38:09.581805Z","iopub.execute_input":"2026-01-11T19:38:09.582045Z","iopub.status.idle":"2026-01-11T19:38:50.095862Z","shell.execute_reply.started":"2026-01-11T19:38:09.582025Z","shell.execute_reply":"2026-01-11T19:38:50.094947Z"}},"outputs":[],"execution_count":null},{"cell_type":"code","source":"def compute_dataset_mean_std(folder_path):\n    \"\"\"\n    Computes mean and standard deviation for all images in a folder.\n    Returns (mean_R, mean_G, mean_B), (std_R, std_G, std_B).\n    \"\"\"\n    \n    exts = (\".jpg\", \".jpeg\", \".png\")\n    sum_channels = np.zeros(3, dtype=np.float64)\n    sum_sq_channels = np.zeros(3, dtype=np.float64)\n    total_pixels = 0\n\n    for filename in os.listdir(folder_path):\n        if not filename.lower().endswith(exts):\n            continue\n\n        path = os.path.join(folder_path, filename)\n        try:\n            img = Image.open(path).convert(\"RGB\")\n            arr = np.array(img, dtype=np.float64)  # (H, W, 3)\n\n            pixels = arr.reshape(-1, 3)  # flatten\n            n = pixels.shape[0]\n\n            # Sum of pixel values for each channel\n            sum_channels += pixels.sum(axis=0)\n\n            # Sum of squared pixel values for variance\n            sum_sq_channels += (pixels ** 2).sum(axis=0)\n\n            total_pixels += n\n\n        except Exception as e:\n            print(f\"Skipping {filename}: {e}\")\n\n    # Means\n    mean = sum_channels / total_pixels\n\n    # Variance = E[x^2] - (E[x])^2\n    var = (sum_sq_channels / total_pixels) - (mean ** 2)\n    std = np.sqrt(var)\n\n    return mean, std","metadata":{"trusted":true,"execution":{"iopub.status.busy":"2026-01-11T19:38:50.096591Z","iopub.execute_input":"2026-01-11T19:38:50.096743Z","iopub.status.idle":"2026-01-11T19:38:50.102694Z","shell.execute_reply.started":"2026-01-11T19:38:50.096731Z","shell.execute_reply":"2026-01-11T19:38:50.101940Z"}},"outputs":[],"execution_count":null},{"cell_type":"code","source":"mean, std = compute_dataset_mean_std(config.train_path)","metadata":{"trusted":true,"execution":{"iopub.status.busy":"2026-01-11T19:38:50.103299Z","iopub.execute_input":"2026-01-11T19:38:50.103504Z","iopub.status.idle":"2026-01-11T19:39:23.750244Z","shell.execute_reply.started":"2026-01-11T19:38:50.103487Z","shell.execute_reply":"2026-01-11T19:39:23.748955Z"}},"outputs":[],"execution_count":null},{"cell_type":"code","source":"print(f\"Mean: {mean}\")\nprint(f\"Std: {std}\")","metadata":{"trusted":true,"execution":{"iopub.status.busy":"2026-01-11T19:39:23.751225Z","iopub.execute_input":"2026-01-11T19:39:23.751818Z","iopub.status.idle":"2026-01-11T19:39:23.756377Z","shell.execute_reply.started":"2026-01-11T19:39:23.751798Z","shell.execute_reply":"2026-01-11T19:39:23.755565Z"}},"outputs":[],"execution_count":null},{"cell_type":"markdown","source":"## Dataset","metadata":{}},{"cell_type":"code","source":"train_data.head()","metadata":{"trusted":true,"execution":{"iopub.status.busy":"2026-01-11T19:39:23.757372Z","iopub.execute_input":"2026-01-11T19:39:23.757642Z","iopub.status.idle":"2026-01-11T19:39:23.782982Z","shell.execute_reply.started":"2026-01-11T19:39:23.757625Z","shell.execute_reply":"2026-01-11T19:39:23.782052Z"}},"outputs":[],"execution_count":null},{"cell_type":"code","source":"train_data.info()","metadata":{"trusted":true,"execution":{"iopub.status.busy":"2026-01-11T19:39:23.783976Z","iopub.execute_input":"2026-01-11T19:39:23.784470Z","iopub.status.idle":"2026-01-11T19:39:23.822092Z","shell.execute_reply.started":"2026-01-11T19:39:23.784453Z","shell.execute_reply":"2026-01-11T19:39:23.821401Z"}},"outputs":[],"execution_count":null},{"cell_type":"code","source":"train_data.describe()","metadata":{"trusted":true,"execution":{"iopub.status.busy":"2026-01-11T19:39:23.822837Z","iopub.execute_input":"2026-01-11T19:39:23.823068Z","iopub.status.idle":"2026-01-11T19:39:23.851864Z","shell.execute_reply.started":"2026-01-11T19:39:23.823050Z","shell.execute_reply":"2026-01-11T19:39:23.850649Z"}},"outputs":[],"execution_count":null},{"cell_type":"code","source":"df = train_data.drop_duplicates(subset=\"image_path\")","metadata":{"trusted":true,"execution":{"iopub.status.busy":"2026-01-11T19:42:39.569128Z","iopub.execute_input":"2026-01-11T19:42:39.569377Z","iopub.status.idle":"2026-01-11T19:42:39.573511Z","shell.execute_reply.started":"2026-01-11T19:42:39.569363Z","shell.execute_reply":"2026-01-11T19:42:39.572742Z"}},"outputs":[],"execution_count":null},{"cell_type":"code","source":"df[\"Sampling_Date\"].value_counts()","metadata":{"trusted":true,"execution":{"iopub.status.busy":"2026-01-11T19:42:53.048611Z","iopub.execute_input":"2026-01-11T19:42:53.048873Z","iopub.status.idle":"2026-01-11T19:42:53.055977Z","shell.execute_reply.started":"2026-01-11T19:42:53.048853Z","shell.execute_reply":"2026-01-11T19:42:53.055257Z"}},"outputs":[],"execution_count":null},{"cell_type":"code","source":"df[\"State\"].value_counts()","metadata":{"trusted":true,"execution":{"iopub.status.busy":"2026-01-11T19:42:56.918662Z","iopub.execute_input":"2026-01-11T19:42:56.918958Z","iopub.status.idle":"2026-01-11T19:42:56.924825Z","shell.execute_reply.started":"2026-01-11T19:42:56.918940Z","shell.execute_reply":"2026-01-11T19:42:56.923942Z"}},"outputs":[],"execution_count":null},{"cell_type":"code","source":"df[\"Species\"].value_counts()","metadata":{"trusted":true,"execution":{"iopub.status.busy":"2026-01-11T19:43:00.310588Z","iopub.execute_input":"2026-01-11T19:43:00.310826Z","iopub.status.idle":"2026-01-11T19:43:00.317269Z","shell.execute_reply.started":"2026-01-11T19:43:00.310812Z","shell.execute_reply":"2026-01-11T19:43:00.316324Z"}},"outputs":[],"execution_count":null},{"cell_type":"code","source":"df[\"target_name\"].value_counts()","metadata":{"trusted":true,"execution":{"iopub.status.busy":"2026-01-11T19:43:04.412650Z","iopub.execute_input":"2026-01-11T19:43:04.412984Z","iopub.status.idle":"2026-01-11T19:43:04.419013Z","shell.execute_reply.started":"2026-01-11T19:43:04.412967Z","shell.execute_reply":"2026-01-11T19:43:04.417950Z"}},"outputs":[],"execution_count":null},{"cell_type":"code","source":"def violin_plot_subplots(df, columns):\n    \"\"\"\n    Creates violin plots for each column as separate subplots\n    within the same figure.\n    \"\"\"\n    n = len(columns)\n    cols = 3  # number of subplot columns (you can change this)\n    rows = math.ceil(n / cols)\n\n    fig, axes = plt.subplots(rows, cols, figsize=(cols * 5, rows * 4))\n    axes = axes.flatten()  # make it easy to index\n\n    for i, col in enumerate(columns):\n        data = df[col].dropna()\n\n        axes[i].violinplot(\n            data,\n            showmeans=False,\n            showmedians=True,\n            showextrema=True\n        )\n        axes[i].set_title(f\"{col}\")\n        axes[i].set_xlabel(col)\n        axes[i].set_ylabel(\"Value\")\n\n    # Hide unused subplots\n    for j in range(i + 1, len(axes)):\n        axes[j].set_visible(False)\n\n    plt.tight_layout()\n    plt.show()","metadata":{"trusted":true,"execution":{"iopub.status.busy":"2026-01-11T19:43:51.008572Z","iopub.execute_input":"2026-01-11T19:43:51.008834Z","iopub.status.idle":"2026-01-11T19:43:51.014411Z","shell.execute_reply.started":"2026-01-11T19:43:51.008817Z","shell.execute_reply":"2026-01-11T19:43:51.013684Z"}},"outputs":[],"execution_count":null},{"cell_type":"code","source":"violin_plot_subplots(train_data, [\"Pre_GSHH_NDVI\", \"Height_Ave_cm\", \"target\"])","metadata":{"trusted":true,"execution":{"iopub.status.busy":"2026-01-11T19:43:53.699493Z","iopub.execute_input":"2026-01-11T19:43:53.699780Z","iopub.status.idle":"2026-01-11T19:43:54.109567Z","shell.execute_reply.started":"2026-01-11T19:43:53.699764Z","shell.execute_reply":"2026-01-11T19:43:54.108901Z"}},"outputs":[],"execution_count":null},{"cell_type":"markdown","source":"A violin plot is a visualization used to show the distribution of a numerical variable. You can think of it as a combination of a box plot and a smoothed histogram (density plot), mirrored on both sides.\n\nThe wide parts of the violin indicate values that occur more frequently.\nThe narrow parts show less frequent values.\n\nThis tells you:\n\n- whether the data is skewed\n- if it has multiple peaks (bimodal or multimodal)\n- how values are spread or clustered\n\nHorizontal lines inside the plot marks the median values, you can also decide to plot the mean. Here I chose jsut median to avoid confusions \n\nVertical lines indicate minimum and maximum values.\nThe violin’s height shows the full range from lowest to highest values.","metadata":{}},{"cell_type":"code","source":"# let's now group by target_name and do vilion plot of each target","metadata":{"trusted":true,"execution":{"iopub.status.busy":"2026-01-11T19:44:10.268442Z","iopub.execute_input":"2026-01-11T19:44:10.268706Z","iopub.status.idle":"2026-01-11T19:44:10.272441Z","shell.execute_reply.started":"2026-01-11T19:44:10.268692Z","shell.execute_reply":"2026-01-11T19:44:10.271595Z"}},"outputs":[],"execution_count":null},{"cell_type":"code","source":"def grouped_violin_plots(df, value_columns, group_col, cols=3):\n    \"\"\"\n    Creates grouped violin plots:\n    - one subplot per column in `value_columns`\n    - violins grouped by `group_col`\n    \"\"\"\n\n    groups = df[group_col].dropna().unique()\n    n = len(value_columns)\n    rows = math.ceil(n / cols)\n\n    fig, axes = plt.subplots(rows, cols, figsize=(cols * 5, rows * 4))\n    axes = axes.flatten()\n\n    for i, col in enumerate(value_columns):\n\n        # Collect data for each group\n        data = [df[df[group_col] == g][col].dropna() for g in groups]\n\n        axes[i].violinplot(\n            data,\n            showmeans=False,\n            showmedians=True,\n            showextrema=True\n        )\n\n        axes[i].set_title(f\"{col} grouped by {group_col}\")\n        axes[i].set_xlabel(group_col)\n        axes[i].set_ylabel(col)\n\n        # Set x-axis tick labels to group names\n        axes[i].set_xticks(range(1, len(groups) + 1))\n        axes[i].set_xticklabels(groups, rotation=20)\n\n    # Hide unused subplots\n    for j in range(i + 1, len(axes)):\n        axes[j].set_visible(False)\n\n    plt.grid()\n    plt.tight_layout()\n    plt.show()","metadata":{"trusted":true,"execution":{"iopub.status.busy":"2026-01-11T19:44:11.818452Z","iopub.execute_input":"2026-01-11T19:44:11.818739Z","iopub.status.idle":"2026-01-11T19:44:11.826089Z","shell.execute_reply.started":"2026-01-11T19:44:11.818707Z","shell.execute_reply":"2026-01-11T19:44:11.825007Z"}},"outputs":[],"execution_count":null},{"cell_type":"code","source":"grouped_violin_plots(train_data, [\"target\"], \"target_name\", cols=3)","metadata":{"trusted":true,"execution":{"iopub.status.busy":"2026-01-11T19:44:17.208836Z","iopub.execute_input":"2026-01-11T19:44:17.209115Z","iopub.status.idle":"2026-01-11T19:44:17.375451Z","shell.execute_reply.started":"2026-01-11T19:44:17.209100Z","shell.execute_reply":"2026-01-11T19:44:17.374610Z"}},"outputs":[],"execution_count":null},{"cell_type":"code","source":"def group_mean_median(df, group_col, value_col):\n    \"\"\"\n    Calculate mean and median of `value_col` for each group in `group_col`.\n    \n    Returns a DataFrame with columns: [group_col, mean, median]\n    \"\"\"\n    result = df.groupby(group_col)[value_col].agg(['mean', 'median']).reset_index()\n    return result","metadata":{"trusted":true,"execution":{"iopub.status.busy":"2026-01-11T19:47:43.888592Z","iopub.execute_input":"2026-01-11T19:47:43.888837Z","iopub.status.idle":"2026-01-11T19:47:43.893322Z","shell.execute_reply.started":"2026-01-11T19:47:43.888822Z","shell.execute_reply":"2026-01-11T19:47:43.892135Z"}},"outputs":[],"execution_count":null},{"cell_type":"code","source":"summary = group_mean_median(train_data, \"target_name\", \"target\")\nsummary","metadata":{"trusted":true,"execution":{"iopub.status.busy":"2026-01-11T19:47:46.448469Z","iopub.execute_input":"2026-01-11T19:47:46.448758Z","iopub.status.idle":"2026-01-11T19:47:46.460035Z","shell.execute_reply.started":"2026-01-11T19:47:46.448742Z","shell.execute_reply":"2026-01-11T19:47:46.458941Z"}},"outputs":[],"execution_count":null},{"cell_type":"code","source":"# pivot\ntrain_data[\"image_id\"] = train_data[\"image_path\"].apply(lambda x: x.split('/')[-1].split('.')[0])","metadata":{"trusted":true,"execution":{"iopub.status.busy":"2026-01-11T19:47:49.461081Z","iopub.execute_input":"2026-01-11T19:47:49.461403Z","iopub.status.idle":"2026-01-11T19:47:49.466584Z","shell.execute_reply.started":"2026-01-11T19:47:49.461379Z","shell.execute_reply":"2026-01-11T19:47:49.466004Z"}},"outputs":[],"execution_count":null},{"cell_type":"code","source":"train_data","metadata":{"trusted":true,"execution":{"iopub.status.busy":"2026-01-11T19:47:51.564860Z","iopub.execute_input":"2026-01-11T19:47:51.565179Z","iopub.status.idle":"2026-01-11T19:47:51.577408Z","shell.execute_reply.started":"2026-01-11T19:47:51.565160Z","shell.execute_reply":"2026-01-11T19:47:51.576730Z"}},"outputs":[],"execution_count":null},{"cell_type":"code","source":"train_pivot = train_data.pivot(\n    index=\"image_id\", \n    columns=\"target_name\", \n    values=\"target\"\n).reset_index()","metadata":{"trusted":true,"execution":{"iopub.status.busy":"2026-01-11T19:47:54.251025Z","iopub.execute_input":"2026-01-11T19:47:54.251285Z","iopub.status.idle":"2026-01-11T19:47:54.258769Z","shell.execute_reply.started":"2026-01-11T19:47:54.251270Z","shell.execute_reply":"2026-01-11T19:47:54.258142Z"}},"outputs":[],"execution_count":null},{"cell_type":"code","source":"train_pivot = pd.merge(train_pivot, train_data[[\"image_id\", \"Species\",\"Pre_GSHH_NDVI\",\"Height_Ave_cm\"]], on='image_id', how='left')","metadata":{"trusted":true,"execution":{"iopub.status.busy":"2026-01-11T19:47:56.290266Z","iopub.execute_input":"2026-01-11T19:47:56.290562Z","iopub.status.idle":"2026-01-11T19:47:56.298603Z","shell.execute_reply.started":"2026-01-11T19:47:56.290543Z","shell.execute_reply":"2026-01-11T19:47:56.297838Z"}},"outputs":[],"execution_count":null},{"cell_type":"code","source":"train_pivot","metadata":{"trusted":true,"execution":{"iopub.status.busy":"2026-01-11T19:47:56.636406Z","iopub.execute_input":"2026-01-11T19:47:56.636684Z","iopub.status.idle":"2026-01-11T19:47:56.650237Z","shell.execute_reply.started":"2026-01-11T19:47:56.636667Z","shell.execute_reply":"2026-01-11T19:47:56.649382Z"}},"outputs":[],"execution_count":null},{"cell_type":"code","source":"import seaborn as sns","metadata":{"trusted":true,"execution":{"iopub.status.busy":"2026-01-11T19:48:03.608395Z","iopub.execute_input":"2026-01-11T19:48:03.608704Z","iopub.status.idle":"2026-01-11T19:48:03.613700Z","shell.execute_reply.started":"2026-01-11T19:48:03.608687Z","shell.execute_reply":"2026-01-11T19:48:03.612684Z"}},"outputs":[],"execution_count":null},{"cell_type":"code","source":"# List of numerical columns you want to visualize\nnumerical_cols = ['Dry_Clover_g', 'Dry_Dead_g', 'Dry_Green_g', 'Dry_Total_g', 'GDM_g']\n\n\ntrain_pivot_df = train_pivot.drop_duplicates(subset=\"image_id\")\n\nfor col in numerical_cols:\n    plt.figure(figsize=(10, 6))\n    \n    # We replace 'y' with the 'col' variable from the loop\n    sns.boxplot(data=train_pivot_df, x='Species', y=col)\n    \n    # Dynamically update the title and labels\n    plt.title(f'Distribution of {col} by Species', fontsize=14)\n    plt.ylabel(col)\n    plt.xlabel('Species')\n    \n    plt.xticks(rotation=90)\n    #plt.tight_layout() # Ensures labels don't get cut off\n    plt.show()","metadata":{"trusted":true,"execution":{"iopub.status.busy":"2026-01-11T19:49:28.358663Z","iopub.execute_input":"2026-01-11T19:49:28.358984Z","iopub.status.idle":"2026-01-11T19:49:29.606067Z","shell.execute_reply.started":"2026-01-11T19:49:28.358965Z","shell.execute_reply":"2026-01-11T19:49:29.604934Z"}},"outputs":[],"execution_count":null},{"cell_type":"code","source":"plt.figure(figsize=(10, 6))\n\nsns.boxplot(data=train_pivot_df, x='Species', y=\"Pre_GSHH_NDVI\")\n\nplt.title(f'Distribution of Pre_GSHH_NDVI by Species', fontsize=14)\nplt.ylabel(\"Pre_GSHH_NDVI\")\nplt.xlabel('Species')\n\nplt.xticks(rotation=90)\n#plt.tight_layout() # Ensures labels don't get cut off\nplt.show()","metadata":{"trusted":true,"execution":{"iopub.status.busy":"2026-01-11T19:49:44.761883Z","iopub.execute_input":"2026-01-11T19:49:44.762641Z","iopub.status.idle":"2026-01-11T19:49:45.054412Z","shell.execute_reply.started":"2026-01-11T19:49:44.762622Z","shell.execute_reply":"2026-01-11T19:49:45.053690Z"}},"outputs":[],"execution_count":null},{"cell_type":"code","source":"plt.figure(figsize=(10, 6))\n\nsns.boxplot(data=train_pivot, x='Species', y=\"Height_Ave_cm\")\n\nplt.title(f'Distribution of Height_Ave_cm by Species', fontsize=14)\nplt.ylabel(\"Height_Ave_cm\")\nplt.xlabel('Species')\n\nplt.xticks(rotation=90)\n#plt.tight_layout() # Ensures labels don't get cut off\nplt.show()","metadata":{"trusted":true,"execution":{"iopub.status.busy":"2026-01-11T19:39:27.213997Z","iopub.execute_input":"2026-01-11T19:39:27.214195Z","iopub.status.idle":"2026-01-11T19:39:27.463566Z","shell.execute_reply.started":"2026-01-11T19:39:27.214177Z","shell.execute_reply":"2026-01-11T19:39:27.462685Z"}},"outputs":[],"execution_count":null},{"cell_type":"code","source":"# let plot images with some specific conditions (low/high biomass)\n\nimport matplotlib.pyplot as plt\nimport math\nfrom PIL import Image\nimport random\n\ndef plot_images_from_dataframe(df, max_images=None, seed=None):\n    \"\"\"\n    Plots a random selection of images from a DataFrame.\n    Titles show target_name, target, and image_path.\n\n    Parameters:\n    - df: DataFrame with columns ['target_name', 'target', 'image_path']\n    - max_images: maximum number of images to plot (default: all)\n    - seed: optional random seed\n    \"\"\"\n    # Set random seed\n    if seed is not None:\n        random.seed(seed)\n\n    # Filter out rows with missing paths\n    df = df.dropna(subset=['image_path'])\n    if df.empty:\n        print(\"No images to display.\")\n        return\n\n    # Sample rows\n    if max_images is not None:\n        max_images = min(max_images, len(df))\n        df_sample = df.sample(n=max_images, random_state=seed)\n    else:\n        df_sample = df\n\n    n = len(df_sample)\n    cols = math.ceil(math.sqrt(n))\n    rows = math.ceil(n / cols)\n\n    plt.figure(figsize=(cols * 7, rows * 7))\n\n    for i, (_, row) in enumerate(df_sample.iterrows()):\n        img_path = os.path.join(\"/kaggle/input/csiro-biomass/\", row['image_path'])\n        try:\n            img = Image.open(img_path)\n        except Exception as e:\n            print(f\"Skipping {img_path}: {e}\")\n            continue\n\n        plt.subplot(rows, cols, i + 1)\n        plt.imshow(img)\n        plt.axis(\"off\")\n\n        plot_path = os.path.basename(img_path)\n        title = f\"{row['target_name']} | {row['target']} | {plot_path}\"\n        plt.title(title, fontsize=8)\n\n    plt.tight_layout()\n    plt.show()","metadata":{"trusted":true,"execution":{"iopub.status.busy":"2026-01-11T19:39:27.464195Z","iopub.execute_input":"2026-01-11T19:39:27.464418Z","iopub.status.idle":"2026-01-11T19:39:27.471934Z","shell.execute_reply.started":"2026-01-11T19:39:27.464400Z","shell.execute_reply":"2026-01-11T19:39:27.470993Z"}},"outputs":[],"execution_count":null},{"cell_type":"code","source":"target_name = \"Dry_Dead_g\"\nsubset = train_data[train_data[\"target_name\"]==target_name]\nplot_images_from_dataframe(subset, max_images=4)","metadata":{"trusted":true,"execution":{"iopub.status.busy":"2026-01-11T19:39:27.472644Z","iopub.execute_input":"2026-01-11T19:39:27.472929Z","iopub.status.idle":"2026-01-11T19:39:28.815225Z","shell.execute_reply.started":"2026-01-11T19:39:27.472883Z","shell.execute_reply":"2026-01-11T19:39:28.814147Z"}},"outputs":[],"execution_count":null},{"cell_type":"code","source":"target_name = \"Dry_Green_g\"\nsubset = train_data[train_data[\"target_name\"]==target_name]\nplot_images_from_dataframe(subset, max_images=4)","metadata":{"trusted":true,"execution":{"iopub.status.busy":"2026-01-11T19:39:28.816310Z","iopub.execute_input":"2026-01-11T19:39:28.816583Z","iopub.status.idle":"2026-01-11T19:39:30.203519Z","shell.execute_reply.started":"2026-01-11T19:39:28.816563Z","shell.execute_reply":"2026-01-11T19:39:30.202598Z"}},"outputs":[],"execution_count":null},{"cell_type":"code","source":"target_name = \"Dry_Clover_g\"\nsubset = train_data[train_data[\"target_name\"]==target_name]\nplot_images_from_dataframe(subset, max_images=4)","metadata":{"trusted":true,"execution":{"iopub.status.busy":"2026-01-11T19:39:30.204350Z","iopub.execute_input":"2026-01-11T19:39:30.204569Z","iopub.status.idle":"2026-01-11T19:39:31.548789Z","shell.execute_reply.started":"2026-01-11T19:39:30.204553Z","shell.execute_reply":"2026-01-11T19:39:31.547729Z"}},"outputs":[],"execution_count":null},{"cell_type":"code","source":"target_name = \"Dry_Total_g\"\nsubset = train_data[train_data[\"target_name\"]==target_name]\nplot_images_from_dataframe(subset, max_images=4)","metadata":{"trusted":true,"execution":{"iopub.status.busy":"2026-01-11T19:39:31.549627Z","iopub.execute_input":"2026-01-11T19:39:31.549799Z","iopub.status.idle":"2026-01-11T19:39:32.887090Z","shell.execute_reply.started":"2026-01-11T19:39:31.549785Z","shell.execute_reply":"2026-01-11T19:39:32.885476Z"}},"outputs":[],"execution_count":null},{"cell_type":"markdown","source":"## Correlations\n\nLet's explore the correlations between NDVI, heights and biomass","metadata":{}},{"cell_type":"code","source":"def plot_corr_matrix(df, cols, method=\"pearson\", figsize=(10, 8)):\n    corr = df[cols].corr(method=method)\n\n    plt.figure(figsize=figsize)\n    sns.heatmap(\n        corr,\n        annot=True,\n        fmt=\".2f\",\n        cmap=\"coolwarm\",\n        square=True,\n        cbar=True\n    )\n    plt.title(f\"{method.capitalize()} Correlation Matrix\")\n    plt.tight_layout()\n    plt.show()","metadata":{"trusted":true,"execution":{"iopub.status.busy":"2026-01-11T19:53:07.099382Z","iopub.execute_input":"2026-01-11T19:53:07.099635Z","iopub.status.idle":"2026-01-11T19:53:07.104774Z","shell.execute_reply.started":"2026-01-11T19:53:07.099622Z","shell.execute_reply":"2026-01-11T19:53:07.103907Z"}},"outputs":[],"execution_count":null},{"cell_type":"code","source":"np.unique(train_data[\"target_name\"].values)","metadata":{"trusted":true,"execution":{"iopub.status.busy":"2026-01-11T20:00:15.508684Z","iopub.execute_input":"2026-01-11T20:00:15.508954Z","iopub.status.idle":"2026-01-11T20:00:15.514462Z","shell.execute_reply.started":"2026-01-11T20:00:15.508939Z","shell.execute_reply":"2026-01-11T20:00:15.513749Z"}},"outputs":[],"execution_count":null},{"cell_type":"markdown","source":"### Dry_Green_g","metadata":{}},{"cell_type":"code","source":"target_name = \"Dry_Green_g\"\nsubset = train_data[train_data[\"target_name\"] == target_name]\n\n\ncols=[\"Pre_GSHH_NDVI\", \"Height_Ave_cm\", \"target\"]\n\nplot_corr_matrix(\n    subset,\n    cols=cols\n)","metadata":{"trusted":true,"execution":{"iopub.status.busy":"2026-01-11T19:56:58.048289Z","iopub.execute_input":"2026-01-11T19:56:58.048562Z","iopub.status.idle":"2026-01-11T19:56:58.245637Z","shell.execute_reply.started":"2026-01-11T19:56:58.048545Z","shell.execute_reply":"2026-01-11T19:56:58.244376Z"}},"outputs":[],"execution_count":null},{"cell_type":"markdown","source":"Dry_Green_g are correlated with GSHH_NDVI and Height_Ave_cm","metadata":{}},{"cell_type":"markdown","source":"### Dry_Dead_g","metadata":{}},{"cell_type":"code","source":"target_name = \"Dry_Dead_g\"\nsubset = train_data[train_data[\"target_name\"] == target_name]\n\n\ncols=[\"Pre_GSHH_NDVI\", \"Height_Ave_cm\", \"target\"]\n\nplot_corr_matrix(\n    subset,\n    cols=cols\n)","metadata":{"trusted":true,"execution":{"iopub.status.busy":"2026-01-11T19:59:16.126829Z","iopub.execute_input":"2026-01-11T19:59:16.127133Z","iopub.status.idle":"2026-01-11T19:59:16.473837Z","shell.execute_reply.started":"2026-01-11T19:59:16.127113Z","shell.execute_reply":"2026-01-11T19:59:16.473168Z"}},"outputs":[],"execution_count":null},{"cell_type":"markdown","source":"Dead biomass is correlated with Height_ave","metadata":{}},{"cell_type":"markdown","source":"### Dry_Clover_g","metadata":{}},{"cell_type":"code","source":"target_name = \"Dry_Clover_g\"\nsubset = train_data[train_data[\"target_name\"] == target_name]\n\n\ncols=[\"Pre_GSHH_NDVI\", \"Height_Ave_cm\", \"target\"]\n\nplot_corr_matrix(\n    subset,\n    cols=cols\n)","metadata":{"trusted":true,"execution":{"iopub.status.busy":"2026-01-11T20:01:57.058719Z","iopub.execute_input":"2026-01-11T20:01:57.059033Z","iopub.status.idle":"2026-01-11T20:01:57.245370Z","shell.execute_reply.started":"2026-01-11T20:01:57.059008Z","shell.execute_reply":"2026-01-11T20:01:57.244435Z"}},"outputs":[],"execution_count":null},{"cell_type":"markdown","source":"Clover biomass is correlated with the Pre_GSHH_NDVI","metadata":{}},{"cell_type":"markdown","source":"### Dry_Total_g","metadata":{}},{"cell_type":"code","source":"target_name = \"Dry_Total_g\"\nsubset = train_data[train_data[\"target_name\"] == target_name]\n\n\ncols=[\"Pre_GSHH_NDVI\", \"Height_Ave_cm\", \"target\"]\n\nplot_corr_matrix(\n    subset,\n    cols=cols\n)","metadata":{"trusted":true,"execution":{"iopub.status.busy":"2026-01-11T20:02:10.042220Z","iopub.execute_input":"2026-01-11T20:02:10.042498Z","iopub.status.idle":"2026-01-11T20:02:10.242307Z","shell.execute_reply.started":"2026-01-11T20:02:10.042479Z","shell.execute_reply":"2026-01-11T20:02:10.241395Z"}},"outputs":[],"execution_count":null},{"cell_type":"markdown","source":"### GDM_g","metadata":{}},{"cell_type":"code","source":"target_name = \"GDM_g\"\nsubset = train_data[train_data[\"target_name\"] == target_name]\n\n\ncols=[\"Pre_GSHH_NDVI\", \"Height_Ave_cm\", \"target\"]\n\nplot_corr_matrix(\n    subset,\n    cols=cols\n)","metadata":{"trusted":true,"execution":{"iopub.status.busy":"2026-01-11T20:02:25.688226Z","iopub.execute_input":"2026-01-11T20:02:25.688469Z","iopub.status.idle":"2026-01-11T20:02:25.873317Z","shell.execute_reply.started":"2026-01-11T20:02:25.688453Z","shell.execute_reply":"2026-01-11T20:02:25.872622Z"}},"outputs":[],"execution_count":null},{"cell_type":"markdown","source":"# Mean model\n\nWe can split train dataset in train/val and see how the a simple mean model performs","metadata":{}},{"cell_type":"code","source":"from sklearn.model_selection import train_test_split\nfrom sklearn.metrics import r2_score\n\n\ndef split_train_val_by_image(df, val_size=0.2, seed=None):\n    \"\"\"\n    Splits a DataFrame into train/validation sets without splitting the same image.\n    \n    Parameters:\n    - df: DataFrame with at least 'image_path' column\n    - val_size: fraction of images to use for validation (default 0.2)\n    - seed: random seed for reproducibility\n    \n    Returns:\n    - train_df, val_df: DataFrames\n    \"\"\"\n    # Get unique images\n    unique_images = df['image_path'].unique()\n    \n    # Split images\n    train_images, val_images = train_test_split(\n        unique_images,\n        test_size=val_size,\n        random_state=seed\n    )\n    \n    # Select rows based on image_path\n    train_df = df[df['image_path'].isin(train_images)].reset_index(drop=True)\n    val_df = df[df['image_path'].isin(val_images)].reset_index(drop=True)\n    \n    return train_df, val_df\n","metadata":{"trusted":true,"execution":{"iopub.status.busy":"2026-01-11T19:39:32.888154Z","iopub.execute_input":"2026-01-11T19:39:32.888393Z","iopub.status.idle":"2026-01-11T19:39:33.179312Z","shell.execute_reply.started":"2026-01-11T19:39:32.888372Z","shell.execute_reply":"2026-01-11T19:39:33.178632Z"}},"outputs":[],"execution_count":null},{"cell_type":"code","source":"train_df, val_df = split_train_val_by_image(train_data)","metadata":{"trusted":true,"execution":{"iopub.status.busy":"2026-01-11T19:39:33.179999Z","iopub.execute_input":"2026-01-11T19:39:33.180171Z","iopub.status.idle":"2026-01-11T19:39:33.189735Z","shell.execute_reply.started":"2026-01-11T19:39:33.180158Z","shell.execute_reply":"2026-01-11T19:39:33.188865Z"}},"outputs":[],"execution_count":null},{"cell_type":"code","source":"train_df.shape","metadata":{"trusted":true,"execution":{"iopub.status.busy":"2026-01-11T19:39:33.194006Z","iopub.execute_input":"2026-01-11T19:39:33.194254Z","iopub.status.idle":"2026-01-11T19:39:33.208367Z","shell.execute_reply.started":"2026-01-11T19:39:33.194236Z","shell.execute_reply":"2026-01-11T19:39:33.207651Z"}},"outputs":[],"execution_count":null},{"cell_type":"code","source":"val_df.shape","metadata":{"trusted":true,"execution":{"iopub.status.busy":"2026-01-11T19:39:33.209352Z","iopub.execute_input":"2026-01-11T19:39:33.209914Z","iopub.status.idle":"2026-01-11T19:39:33.225755Z","shell.execute_reply.started":"2026-01-11T19:39:33.209857Z","shell.execute_reply":"2026-01-11T19:39:33.225046Z"}},"outputs":[],"execution_count":null},{"cell_type":"code","source":"means = train_df.groupby('target_name')['target'].mean().to_dict()\nval_df['target_preds'] = val_df['target_name'].map(means)","metadata":{"trusted":true,"execution":{"iopub.status.busy":"2026-01-11T19:39:33.226482Z","iopub.execute_input":"2026-01-11T19:39:33.226660Z","iopub.status.idle":"2026-01-11T19:39:33.245468Z","shell.execute_reply.started":"2026-01-11T19:39:33.226644Z","shell.execute_reply":"2026-01-11T19:39:33.244515Z"}},"outputs":[],"execution_count":null},{"cell_type":"code","source":"val_df.head()","metadata":{"trusted":true,"execution":{"iopub.status.busy":"2026-01-11T19:39:33.246399Z","iopub.execute_input":"2026-01-11T19:39:33.246719Z","iopub.status.idle":"2026-01-11T19:39:33.268449Z","shell.execute_reply.started":"2026-01-11T19:39:33.246691Z","shell.execute_reply":"2026-01-11T19:39:33.267673Z"}},"outputs":[],"execution_count":null},{"cell_type":"code","source":"def weighted_r2(df, target_col='target', pred_col='target_preds', name_col='target_name', weights=None):\n    \"\"\"\n    Calculate weighted R² score across multiple target variables.\n\n    Parameters:\n    - df: DataFrame with columns [target_col, pred_col, name_col]\n    - target_col: column with ground truth\n    - pred_col: column with predictions\n    - name_col: column with target variable names\n    - weights: dict mapping target_name -> weight\n\n    Returns:\n    - weighted_r2_score (float)\n    - r2_per_target (dict)\n    \"\"\"\n    if weights is None:\n        # Equal weights\n        unique_targets = df[name_col].unique()\n        weights = {t: 1.0/len(unique_targets) for t in unique_targets}\n\n    r2_per_target = {}\n    weighted_sum = 0.0\n    total_weight = 0.0\n\n    for target_name, weight in weights.items():\n        df_sub = df[df[name_col] == target_name]\n        if df_sub.empty:\n            continue\n        y_true = df_sub[target_col].values\n        y_pred = df_sub[pred_col].values\n        r2 = r2_score(y_true, y_pred)\n        r2_per_target[target_name] = r2\n\n        weighted_sum += weight * r2\n        total_weight += weight\n\n    weighted_r2_score = weighted_sum / total_weight\n    return weighted_r2_score, r2_per_target\n","metadata":{"trusted":true,"execution":{"iopub.status.busy":"2026-01-11T19:39:33.269135Z","iopub.execute_input":"2026-01-11T19:39:33.269356Z","iopub.status.idle":"2026-01-11T19:39:33.289773Z","shell.execute_reply.started":"2026-01-11T19:39:33.269333Z","shell.execute_reply":"2026-01-11T19:39:33.288715Z"}},"outputs":[],"execution_count":null},{"cell_type":"code","source":"weights = {\n    'Dry_Green_g': 0.1,\n    'Dry_Dead_g': 0.1,\n    'Dry_Clover_g': 0.1,\n    'GDM_g': 0.2,\n    'Dry_Total_g': 0.5\n}\n\nweighted_score, r2_dict = weighted_r2(val_df, \n                                      target_col='target', \n                                      pred_col='target_preds', \n                                      name_col='target_name', \n                                      weights=weights)\n\nprint(\"Weighted R²:\", weighted_score)\nprint(\"R² per target:\", r2_dict)","metadata":{"trusted":true,"execution":{"iopub.status.busy":"2026-01-11T19:39:33.290551Z","iopub.execute_input":"2026-01-11T19:39:33.290740Z","iopub.status.idle":"2026-01-11T19:39:33.314207Z","shell.execute_reply.started":"2026-01-11T19:39:33.290726Z","shell.execute_reply":"2026-01-11T19:39:33.313541Z"}},"outputs":[],"execution_count":null},{"cell_type":"markdown","source":"As expected the result is slighlty lower than the mean. Indeed the R2 is equal to 0 for the average model.\nNote here it is even lower because we evaluated on a small val set and we calculated the mean only on the train set as validation.","metadata":{}},{"cell_type":"markdown","source":"# Possible approaches for this problem\n\nThe purpose of this notebook was to do a complete EDA and test the base model.\nWe can now think how we could follow up with complex models.\nI'm also going to share some public available solutions.\n\n- **baselines**: mean (this notebook), median models.\n  \n- **Deep learning** image based models:\n\n  \n**model 1**: https://www.kaggle.com/code/gothamjocker/lb-0-65-dino-v2-tiled#3.-Model-Architecture:-Two-Stream,-Multi-Head (public score 0.65)\nIt uses a 2 stream process (2 parallel network) to split large images and work separatly on each split reducing the resing needed.\nIt adopts dino v2 that is a powerfull feature extractor from rgb images. 2 features vectors are produced and then fused. The combined vector is fed into 3 separate MLP heads one per target. Indeed since the target are not all indipendent only 3 are predicted:\n\n\nDry_Total_g (50% of the score)\nGDM_g (20% of the score)\nDry_Green_g (10% of the score)\n\nThe remaining two targets (Dry_Dead_g and Dry_Clover_g) are then calculated during validation and inference using subtraction (e.g., pred_Clover = max(0, pred_GDM - pred_Green)).\n\nAdditionally in order to deal with the limited number of samples a 5-Fold-validation is used by paying attention to avoid data leakeage where images of the same day are not in the train and val. It also applies augmentation as: HorizontalFlip, VerticalFlip, RandomRotation, ColorJitter.\n\n**model 2**:\nSince the small size of the dataset. It could worth to test a simple CNN model and re-use some ideas used in **model 1** as K-Fold-validation and approach to prevent data leakeage. It worth to test if the 2 stream process improve the score or a simple resizing is enough.\n\n**model 3**:\nApproach similar to **model 1** but it uses ConvNeXt-Tiny (https://www.kaggle.com/code/takahitomizunobyts/lb-0-61-csiro-infer)\n\n**model 4**:\nTest other pre-trained feature extractors, examples are:\nResNet, DenseNet, EfficientNet, InceptionV3, VGG16 / VGG19\n\n**model 5**:\nTransfomer based feature extractors:\nViT (Vision Transformer), DeiT (Data-efficient Image Transformer), Swin Transformer, BEiT / BEiT-3\n\n**model 6**:\nLightweight / Efficient Models:\nMobileNetV3, EfficientNet-lite, RegNet\n\n- **Boosting or simple regressors**\nIn the training set we have several possible predictors (metadata) can we use them to predict the target?\nIt could be possible but we don't have them for the test. We could try to predict some of them and use them in the final model.\nIn principle it could be possible to predict NDVI from biomass value.\n  \n\n- **Ensambling**\nEnsemble solutions coming from above with simple mean or weighted mean\n\n\n**Other ideas**\n- Test the inclusion of Random crop in traning\n- Test different resizing factors\n- Look for external datasets that could be used to boost the results","metadata":{}},{"cell_type":"markdown","source":"# ","metadata":{}},{"cell_type":"markdown","source":"# Model preparation for inference","metadata":{}},{"cell_type":"markdown","source":"For inference we're going to re-calculate means based on all the data in the train set","metadata":{}},{"cell_type":"code","source":"means = train_data.groupby('target_name')['target'].mean().to_dict()","metadata":{"trusted":true,"execution":{"iopub.status.busy":"2026-01-11T19:39:33.314797Z","iopub.execute_input":"2026-01-11T19:39:33.314985Z","iopub.status.idle":"2026-01-11T19:39:33.335540Z","shell.execute_reply.started":"2026-01-11T19:39:33.314971Z","shell.execute_reply":"2026-01-11T19:39:33.334869Z"}},"outputs":[],"execution_count":null},{"cell_type":"code","source":"means","metadata":{"trusted":true,"execution":{"iopub.status.busy":"2026-01-11T19:39:33.336198Z","iopub.execute_input":"2026-01-11T19:39:33.336399Z","iopub.status.idle":"2026-01-11T19:39:33.355052Z","shell.execute_reply.started":"2026-01-11T19:39:33.336384Z","shell.execute_reply":"2026-01-11T19:39:33.354078Z"}},"outputs":[],"execution_count":null},{"cell_type":"markdown","source":"# Submission","metadata":{}},{"cell_type":"code","source":"test_data['target'] = test_data['target_name'].map(means)\ntest_data.head()","metadata":{"trusted":true,"execution":{"iopub.status.busy":"2026-01-11T19:39:33.355925Z","iopub.execute_input":"2026-01-11T19:39:33.356237Z","iopub.status.idle":"2026-01-11T19:39:33.376699Z","shell.execute_reply.started":"2026-01-11T19:39:33.356211Z","shell.execute_reply":"2026-01-11T19:39:33.375922Z"}},"outputs":[],"execution_count":null},{"cell_type":"code","source":"# Create a submission dataframe\nsubmission_df = test_data[['sample_id', 'target']]\n\nsubmission_df.to_csv('submission.csv', index=False)\n\nprint(\"Submission saved!\")","metadata":{"trusted":true,"execution":{"iopub.status.busy":"2026-01-11T19:39:33.377535Z","iopub.execute_input":"2026-01-11T19:39:33.377782Z","iopub.status.idle":"2026-01-11T19:39:33.398542Z","shell.execute_reply.started":"2026-01-11T19:39:33.377766Z","shell.execute_reply":"2026-01-11T19:39:33.397912Z"}},"outputs":[],"execution_count":null}]}