Note
Click here to download the full example code
8.7. Run junifer and julearn.#
This example uses a ParcelAggregation marker to compute the mean of each parcel using the Schaefer parcellation (100 rois, 7 Yeo networks) for a 3D nifti to extract some features for machine learning using julearn to predict some other data.
Authors: Leonard Sasse, Sami Hamdan, Nicolas Nieto, Synchon Mandal
License: BSD 3 clause
import tempfile
import nilearn
import pandas as pd
from julearn import run_cross_validation
import junifer.testing.registry # noqa
from junifer.api import collect, run
from junifer.storage.sqlite import SQLiteFeatureStorage
from junifer.utils import configure_logging
Set the logging level to info to see extra information:
configure_logging(level="INFO")
2023-05-16 14:15:48,852 - JUNIFER - INFO - ===== Lib Versions =====
2023-05-16 14:15:48,852 - JUNIFER - INFO - numpy: 1.23.5
2023-05-16 14:15:48,852 - JUNIFER - INFO - scipy: 1.10.1
2023-05-16 14:15:48,852 - JUNIFER - INFO - pandas: 1.5.3
2023-05-16 14:15:48,852 - JUNIFER - INFO - nilearn: 0.10.0
2023-05-16 14:15:48,852 - JUNIFER - INFO - nibabel: 4.0.2
2023-05-16 14:15:48,852 - JUNIFER - INFO - junifer: 0.0.3.dev79
2023-05-16 14:15:48,852 - JUNIFER - INFO - ========================
Define the markers you want:
marker_dicts = [
{
"name": "Schaefer100x17_TrimMean80",
"kind": "ParcelAggregation",
"parcellation": "Schaefer100x17",
"method": "trim_mean",
"method_params": {"proportiontocut": 0.2},
},
{
"name": "Schaefer200x17_Mean",
"kind": "ParcelAggregation",
"parcellation": "Schaefer200x17",
"method": "mean",
},
]
Define target and confounds for julearn machine learning:
Load the VBM phenotype data for machine learning data: - Fetch the Oasis dataset
oasis_dataset = nilearn.datasets.fetch_oasis_vbm()
age = oasis_dataset.ext_vars[y][:10]
sex = (
pd.Series(oasis_dataset.ext_vars["mf"][:10])
.map(lambda x: 1 if x == "F" else 0)
.values
)
/opt/hostedtoolcache/Python/3.10.11/x64/lib/python3.10/site-packages/nilearn/datasets/struct.py:733: UserWarning: `legacy_format` will default to `False` in release 0.11. Dataset fetchers will then return pandas dataframes by default instead of recarrays.
warnings.warn(_LEGACY_FORMAT_MSG)
Create a temporary directory for junifer feature extraction:
with tempfile.TemporaryDirectory() as tmpdir:
storage = {"kind": "SQLiteFeatureStorage", "uri": f"{tmpdir}/test.sqlite"}
# run the defined junifer feature extraction pipeline
run(
workdir="/tmp",
datagrabber={"kind": "OasisVBMTestingDataGrabber"},
markers=marker_dicts,
storage=storage,
)
# read in extracted features and add confounds and targets
# for julearn run cross validation
collect(storage)
db = SQLiteFeatureStorage(uri=storage["uri"])
df_vbm = db.read_df(feature_name="VBM_GM_Schaefer200x17_Mean")
oasis_subjects = [x[0] for x in df_vbm.index]
df_vbm.index = oasis_subjects
/opt/hostedtoolcache/Python/3.10.11/x64/lib/python3.10/site-packages/nilearn/datasets/struct.py:733: UserWarning: `legacy_format` will default to `False` in release 0.11. Dataset fetchers will then return pandas dataframes by default instead of recarrays.
warnings.warn(_LEGACY_FORMAT_MSG)
2023-05-16 14:15:48,884 - JUNIFER - INFO - Getting element sub-01
2023-05-16 14:15:48,884 - JUNIFER - INFO - Fitting pipeline
2023-05-16 14:15:48,884 - JUNIFER - INFO - Reading VBM_GM from /home/runner/nilearn_data/oasis1/OAS1_0001_MR1/mwrc1OAS1_0001_MR1_mpr_anon_fslswapdim_bet.nii.gz
2023-05-16 14:15:48,884 - JUNIFER - INFO - VBM_GM is type NIFTI
2023-05-16 14:15:48,885 - JUNIFER - INFO - Fitting marker Schaefer100x17_TrimMean80
2023-05-16 14:15:48,885 - JUNIFER - INFO - Computing VBM_GM
2023-05-16 14:15:48,886 - JUNIFER - INFO - Fetching one of Schaefer parcellations.
2023-05-16 14:15:48,886 - JUNIFER - INFO - Parcellation parameters:
2023-05-16 14:15:48,886 - JUNIFER - INFO - n_rois: 100
2023-05-16 14:15:48,886 - JUNIFER - INFO - yeo_networks: 17
2023-05-16 14:15:48,886 - JUNIFER - INFO - resolution: 2.0
2023-05-16 14:15:48,888 - JUNIFER - INFO - Loading parcellation /home/runner/junifer/data/parcellations/schaefer_2018/Schaefer2018_100Parcels_17Networks_order_FSLMNI152_2mm.nii.gz
2023-05-16 14:15:49,790 - JUNIFER - INFO - Storing in <SQLiteFeatureStorage @ /tmp/tmppwa66hc1/test.sqlite (multiple output)>
2023-05-16 14:15:49,854 - JUNIFER - INFO - Fitting marker Schaefer200x17_Mean
2023-05-16 14:15:49,854 - JUNIFER - INFO - Computing VBM_GM
2023-05-16 14:15:49,855 - JUNIFER - INFO - Fetching one of Schaefer parcellations.
2023-05-16 14:15:49,855 - JUNIFER - INFO - Parcellation parameters:
2023-05-16 14:15:49,855 - JUNIFER - INFO - n_rois: 200
2023-05-16 14:15:49,855 - JUNIFER - INFO - yeo_networks: 17
2023-05-16 14:15:49,855 - JUNIFER - INFO - resolution: 2.0
2023-05-16 14:15:49,858 - JUNIFER - INFO - Loading parcellation /home/runner/junifer/data/parcellations/schaefer_2018/Schaefer2018_200Parcels_17Networks_order_FSLMNI152_2mm.nii.gz
2023-05-16 14:15:50,775 - JUNIFER - INFO - Storing in <SQLiteFeatureStorage @ /tmp/tmppwa66hc1/test.sqlite (multiple output)>
2023-05-16 14:15:50,881 - JUNIFER - INFO - Marker collection fitting done
2023-05-16 14:15:50,881 - JUNIFER - INFO - Getting element sub-02
2023-05-16 14:15:50,881 - JUNIFER - INFO - Fitting pipeline
2023-05-16 14:15:50,881 - JUNIFER - INFO - Reading VBM_GM from /home/runner/nilearn_data/oasis1/OAS1_0002_MR1/mwrc1OAS1_0002_MR1_mpr_anon_fslswapdim_bet.nii.gz
2023-05-16 14:15:50,882 - JUNIFER - INFO - VBM_GM is type NIFTI
2023-05-16 14:15:50,883 - JUNIFER - INFO - Fitting marker Schaefer100x17_TrimMean80
2023-05-16 14:15:50,883 - JUNIFER - INFO - Computing VBM_GM
2023-05-16 14:15:50,884 - JUNIFER - INFO - Fetching one of Schaefer parcellations.
2023-05-16 14:15:50,884 - JUNIFER - INFO - Parcellation parameters:
2023-05-16 14:15:50,884 - JUNIFER - INFO - n_rois: 100
2023-05-16 14:15:50,884 - JUNIFER - INFO - yeo_networks: 17
2023-05-16 14:15:50,884 - JUNIFER - INFO - resolution: 2.0
2023-05-16 14:15:50,886 - JUNIFER - INFO - Loading parcellation /home/runner/junifer/data/parcellations/schaefer_2018/Schaefer2018_100Parcels_17Networks_order_FSLMNI152_2mm.nii.gz
2023-05-16 14:15:51,767 - JUNIFER - INFO - Storing in <SQLiteFeatureStorage @ /tmp/tmppwa66hc1/test.sqlite (multiple output)>
2023-05-16 14:15:51,828 - JUNIFER - INFO - Fitting marker Schaefer200x17_Mean
2023-05-16 14:15:51,828 - JUNIFER - INFO - Computing VBM_GM
2023-05-16 14:15:51,829 - JUNIFER - INFO - Fetching one of Schaefer parcellations.
2023-05-16 14:15:51,829 - JUNIFER - INFO - Parcellation parameters:
2023-05-16 14:15:51,829 - JUNIFER - INFO - n_rois: 200
2023-05-16 14:15:51,829 - JUNIFER - INFO - yeo_networks: 17
2023-05-16 14:15:51,829 - JUNIFER - INFO - resolution: 2.0
2023-05-16 14:15:51,832 - JUNIFER - INFO - Loading parcellation /home/runner/junifer/data/parcellations/schaefer_2018/Schaefer2018_200Parcels_17Networks_order_FSLMNI152_2mm.nii.gz
2023-05-16 14:15:52,711 - JUNIFER - INFO - Storing in <SQLiteFeatureStorage @ /tmp/tmppwa66hc1/test.sqlite (multiple output)>
2023-05-16 14:15:52,811 - JUNIFER - INFO - Marker collection fitting done
2023-05-16 14:15:52,811 - JUNIFER - INFO - Getting element sub-03
2023-05-16 14:15:52,812 - JUNIFER - INFO - Fitting pipeline
2023-05-16 14:15:52,812 - JUNIFER - INFO - Reading VBM_GM from /home/runner/nilearn_data/oasis1/OAS1_0003_MR1/mwrc1OAS1_0003_MR1_mpr_anon_fslswapdim_bet.nii.gz
2023-05-16 14:15:52,812 - JUNIFER - INFO - VBM_GM is type NIFTI
2023-05-16 14:15:52,813 - JUNIFER - INFO - Fitting marker Schaefer100x17_TrimMean80
2023-05-16 14:15:52,813 - JUNIFER - INFO - Computing VBM_GM
2023-05-16 14:15:52,814 - JUNIFER - INFO - Fetching one of Schaefer parcellations.
2023-05-16 14:15:52,814 - JUNIFER - INFO - Parcellation parameters:
2023-05-16 14:15:52,814 - JUNIFER - INFO - n_rois: 100
2023-05-16 14:15:52,814 - JUNIFER - INFO - yeo_networks: 17
2023-05-16 14:15:52,814 - JUNIFER - INFO - resolution: 2.0
2023-05-16 14:15:52,818 - JUNIFER - INFO - Loading parcellation /home/runner/junifer/data/parcellations/schaefer_2018/Schaefer2018_100Parcels_17Networks_order_FSLMNI152_2mm.nii.gz
2023-05-16 14:15:53,672 - JUNIFER - INFO - Storing in <SQLiteFeatureStorage @ /tmp/tmppwa66hc1/test.sqlite (multiple output)>
2023-05-16 14:15:53,734 - JUNIFER - INFO - Fitting marker Schaefer200x17_Mean
2023-05-16 14:15:53,734 - JUNIFER - INFO - Computing VBM_GM
2023-05-16 14:15:53,735 - JUNIFER - INFO - Fetching one of Schaefer parcellations.
2023-05-16 14:15:53,735 - JUNIFER - INFO - Parcellation parameters:
2023-05-16 14:15:53,735 - JUNIFER - INFO - n_rois: 200
2023-05-16 14:15:53,735 - JUNIFER - INFO - yeo_networks: 17
2023-05-16 14:15:53,735 - JUNIFER - INFO - resolution: 2.0
2023-05-16 14:15:53,737 - JUNIFER - INFO - Loading parcellation /home/runner/junifer/data/parcellations/schaefer_2018/Schaefer2018_200Parcels_17Networks_order_FSLMNI152_2mm.nii.gz
2023-05-16 14:15:54,615 - JUNIFER - INFO - Storing in <SQLiteFeatureStorage @ /tmp/tmppwa66hc1/test.sqlite (multiple output)>
2023-05-16 14:15:54,715 - JUNIFER - INFO - Marker collection fitting done
2023-05-16 14:15:54,715 - JUNIFER - INFO - Getting element sub-04
2023-05-16 14:15:54,716 - JUNIFER - INFO - Fitting pipeline
2023-05-16 14:15:54,716 - JUNIFER - INFO - Reading VBM_GM from /home/runner/nilearn_data/oasis1/OAS1_0004_MR1/mwrc1OAS1_0004_MR1_mpr_anon_fslswapdim_bet.nii.gz
2023-05-16 14:15:54,716 - JUNIFER - INFO - VBM_GM is type NIFTI
2023-05-16 14:15:54,717 - JUNIFER - INFO - Fitting marker Schaefer100x17_TrimMean80
2023-05-16 14:15:54,717 - JUNIFER - INFO - Computing VBM_GM
2023-05-16 14:15:54,717 - JUNIFER - INFO - Fetching one of Schaefer parcellations.
2023-05-16 14:15:54,717 - JUNIFER - INFO - Parcellation parameters:
2023-05-16 14:15:54,717 - JUNIFER - INFO - n_rois: 100
2023-05-16 14:15:54,718 - JUNIFER - INFO - yeo_networks: 17
2023-05-16 14:15:54,718 - JUNIFER - INFO - resolution: 2.0
2023-05-16 14:15:54,720 - JUNIFER - INFO - Loading parcellation /home/runner/junifer/data/parcellations/schaefer_2018/Schaefer2018_100Parcels_17Networks_order_FSLMNI152_2mm.nii.gz
2023-05-16 14:15:55,576 - JUNIFER - INFO - Storing in <SQLiteFeatureStorage @ /tmp/tmppwa66hc1/test.sqlite (multiple output)>
2023-05-16 14:15:55,645 - JUNIFER - INFO - Fitting marker Schaefer200x17_Mean
2023-05-16 14:15:55,645 - JUNIFER - INFO - Computing VBM_GM
2023-05-16 14:15:55,645 - JUNIFER - INFO - Fetching one of Schaefer parcellations.
2023-05-16 14:15:55,645 - JUNIFER - INFO - Parcellation parameters:
2023-05-16 14:15:55,645 - JUNIFER - INFO - n_rois: 200
2023-05-16 14:15:55,645 - JUNIFER - INFO - yeo_networks: 17
2023-05-16 14:15:55,645 - JUNIFER - INFO - resolution: 2.0
2023-05-16 14:15:55,648 - JUNIFER - INFO - Loading parcellation /home/runner/junifer/data/parcellations/schaefer_2018/Schaefer2018_200Parcels_17Networks_order_FSLMNI152_2mm.nii.gz
2023-05-16 14:15:56,503 - JUNIFER - INFO - Storing in <SQLiteFeatureStorage @ /tmp/tmppwa66hc1/test.sqlite (multiple output)>
2023-05-16 14:15:56,604 - JUNIFER - INFO - Marker collection fitting done
2023-05-16 14:15:56,604 - JUNIFER - INFO - Getting element sub-05
2023-05-16 14:15:56,605 - JUNIFER - INFO - Fitting pipeline
2023-05-16 14:15:56,605 - JUNIFER - INFO - Reading VBM_GM from /home/runner/nilearn_data/oasis1/OAS1_0005_MR1/mwrc1OAS1_0005_MR1_mpr_anon_fslswapdim_bet.nii.gz
2023-05-16 14:15:56,605 - JUNIFER - INFO - VBM_GM is type NIFTI
2023-05-16 14:15:56,606 - JUNIFER - INFO - Fitting marker Schaefer100x17_TrimMean80
2023-05-16 14:15:56,606 - JUNIFER - INFO - Computing VBM_GM
2023-05-16 14:15:56,606 - JUNIFER - INFO - Fetching one of Schaefer parcellations.
2023-05-16 14:15:56,606 - JUNIFER - INFO - Parcellation parameters:
2023-05-16 14:15:56,606 - JUNIFER - INFO - n_rois: 100
2023-05-16 14:15:56,606 - JUNIFER - INFO - yeo_networks: 17
2023-05-16 14:15:56,607 - JUNIFER - INFO - resolution: 2.0
2023-05-16 14:15:56,609 - JUNIFER - INFO - Loading parcellation /home/runner/junifer/data/parcellations/schaefer_2018/Schaefer2018_100Parcels_17Networks_order_FSLMNI152_2mm.nii.gz
2023-05-16 14:15:57,441 - JUNIFER - INFO - Storing in <SQLiteFeatureStorage @ /tmp/tmppwa66hc1/test.sqlite (multiple output)>
2023-05-16 14:15:57,499 - JUNIFER - INFO - Fitting marker Schaefer200x17_Mean
2023-05-16 14:15:57,500 - JUNIFER - INFO - Computing VBM_GM
2023-05-16 14:15:57,500 - JUNIFER - INFO - Fetching one of Schaefer parcellations.
2023-05-16 14:15:57,500 - JUNIFER - INFO - Parcellation parameters:
2023-05-16 14:15:57,500 - JUNIFER - INFO - n_rois: 200
2023-05-16 14:15:57,500 - JUNIFER - INFO - yeo_networks: 17
2023-05-16 14:15:57,500 - JUNIFER - INFO - resolution: 2.0
2023-05-16 14:15:57,503 - JUNIFER - INFO - Loading parcellation /home/runner/junifer/data/parcellations/schaefer_2018/Schaefer2018_200Parcels_17Networks_order_FSLMNI152_2mm.nii.gz
2023-05-16 14:15:58,373 - JUNIFER - INFO - Storing in <SQLiteFeatureStorage @ /tmp/tmppwa66hc1/test.sqlite (multiple output)>
2023-05-16 14:15:58,478 - JUNIFER - INFO - Marker collection fitting done
2023-05-16 14:15:58,479 - JUNIFER - INFO - Getting element sub-06
2023-05-16 14:15:58,479 - JUNIFER - INFO - Fitting pipeline
2023-05-16 14:15:58,479 - JUNIFER - INFO - Reading VBM_GM from /home/runner/nilearn_data/oasis1/OAS1_0006_MR1/mwrc1OAS1_0006_MR1_mpr_anon_fslswapdim_bet.nii.gz
2023-05-16 14:15:58,479 - JUNIFER - INFO - VBM_GM is type NIFTI
2023-05-16 14:15:58,480 - JUNIFER - INFO - Fitting marker Schaefer100x17_TrimMean80
2023-05-16 14:15:58,480 - JUNIFER - INFO - Computing VBM_GM
2023-05-16 14:15:58,480 - JUNIFER - INFO - Fetching one of Schaefer parcellations.
2023-05-16 14:15:58,481 - JUNIFER - INFO - Parcellation parameters:
2023-05-16 14:15:58,481 - JUNIFER - INFO - n_rois: 100
2023-05-16 14:15:58,481 - JUNIFER - INFO - yeo_networks: 17
2023-05-16 14:15:58,481 - JUNIFER - INFO - resolution: 2.0
2023-05-16 14:15:58,483 - JUNIFER - INFO - Loading parcellation /home/runner/junifer/data/parcellations/schaefer_2018/Schaefer2018_100Parcels_17Networks_order_FSLMNI152_2mm.nii.gz
2023-05-16 14:15:59,356 - JUNIFER - INFO - Storing in <SQLiteFeatureStorage @ /tmp/tmppwa66hc1/test.sqlite (multiple output)>
2023-05-16 14:15:59,418 - JUNIFER - INFO - Fitting marker Schaefer200x17_Mean
2023-05-16 14:15:59,418 - JUNIFER - INFO - Computing VBM_GM
2023-05-16 14:15:59,419 - JUNIFER - INFO - Fetching one of Schaefer parcellations.
2023-05-16 14:15:59,419 - JUNIFER - INFO - Parcellation parameters:
2023-05-16 14:15:59,419 - JUNIFER - INFO - n_rois: 200
2023-05-16 14:15:59,419 - JUNIFER - INFO - yeo_networks: 17
2023-05-16 14:15:59,419 - JUNIFER - INFO - resolution: 2.0
2023-05-16 14:15:59,422 - JUNIFER - INFO - Loading parcellation /home/runner/junifer/data/parcellations/schaefer_2018/Schaefer2018_200Parcels_17Networks_order_FSLMNI152_2mm.nii.gz
2023-05-16 14:16:00,308 - JUNIFER - INFO - Storing in <SQLiteFeatureStorage @ /tmp/tmppwa66hc1/test.sqlite (multiple output)>
2023-05-16 14:16:00,409 - JUNIFER - INFO - Marker collection fitting done
2023-05-16 14:16:00,409 - JUNIFER - INFO - Getting element sub-07
2023-05-16 14:16:00,409 - JUNIFER - INFO - Fitting pipeline
2023-05-16 14:16:00,409 - JUNIFER - INFO - Reading VBM_GM from /home/runner/nilearn_data/oasis1/OAS1_0007_MR1/mwrc1OAS1_0007_MR1_mpr_anon_fslswapdim_bet.nii.gz
2023-05-16 14:16:00,409 - JUNIFER - INFO - VBM_GM is type NIFTI
2023-05-16 14:16:00,411 - JUNIFER - INFO - Fitting marker Schaefer100x17_TrimMean80
2023-05-16 14:16:00,411 - JUNIFER - INFO - Computing VBM_GM
2023-05-16 14:16:00,411 - JUNIFER - INFO - Fetching one of Schaefer parcellations.
2023-05-16 14:16:00,411 - JUNIFER - INFO - Parcellation parameters:
2023-05-16 14:16:00,411 - JUNIFER - INFO - n_rois: 100
2023-05-16 14:16:00,411 - JUNIFER - INFO - yeo_networks: 17
2023-05-16 14:16:00,411 - JUNIFER - INFO - resolution: 2.0
2023-05-16 14:16:00,414 - JUNIFER - INFO - Loading parcellation /home/runner/junifer/data/parcellations/schaefer_2018/Schaefer2018_100Parcels_17Networks_order_FSLMNI152_2mm.nii.gz
2023-05-16 14:16:01,297 - JUNIFER - INFO - Storing in <SQLiteFeatureStorage @ /tmp/tmppwa66hc1/test.sqlite (multiple output)>
2023-05-16 14:16:01,361 - JUNIFER - INFO - Fitting marker Schaefer200x17_Mean
2023-05-16 14:16:01,361 - JUNIFER - INFO - Computing VBM_GM
2023-05-16 14:16:01,362 - JUNIFER - INFO - Fetching one of Schaefer parcellations.
2023-05-16 14:16:01,362 - JUNIFER - INFO - Parcellation parameters:
2023-05-16 14:16:01,362 - JUNIFER - INFO - n_rois: 200
2023-05-16 14:16:01,362 - JUNIFER - INFO - yeo_networks: 17
2023-05-16 14:16:01,362 - JUNIFER - INFO - resolution: 2.0
2023-05-16 14:16:01,366 - JUNIFER - INFO - Loading parcellation /home/runner/junifer/data/parcellations/schaefer_2018/Schaefer2018_200Parcels_17Networks_order_FSLMNI152_2mm.nii.gz
2023-05-16 14:16:02,252 - JUNIFER - INFO - Storing in <SQLiteFeatureStorage @ /tmp/tmppwa66hc1/test.sqlite (multiple output)>
2023-05-16 14:16:02,348 - JUNIFER - INFO - Marker collection fitting done
2023-05-16 14:16:02,349 - JUNIFER - INFO - Getting element sub-08
2023-05-16 14:16:02,349 - JUNIFER - INFO - Fitting pipeline
2023-05-16 14:16:02,349 - JUNIFER - INFO - Reading VBM_GM from /home/runner/nilearn_data/oasis1/OAS1_0009_MR1/mwrc1OAS1_0009_MR1_mpr_anon_fslswapdim_bet.nii.gz
2023-05-16 14:16:02,349 - JUNIFER - INFO - VBM_GM is type NIFTI
2023-05-16 14:16:02,350 - JUNIFER - INFO - Fitting marker Schaefer100x17_TrimMean80
2023-05-16 14:16:02,350 - JUNIFER - INFO - Computing VBM_GM
2023-05-16 14:16:02,350 - JUNIFER - INFO - Fetching one of Schaefer parcellations.
2023-05-16 14:16:02,351 - JUNIFER - INFO - Parcellation parameters:
2023-05-16 14:16:02,351 - JUNIFER - INFO - n_rois: 100
2023-05-16 14:16:02,351 - JUNIFER - INFO - yeo_networks: 17
2023-05-16 14:16:02,351 - JUNIFER - INFO - resolution: 2.0
2023-05-16 14:16:02,353 - JUNIFER - INFO - Loading parcellation /home/runner/junifer/data/parcellations/schaefer_2018/Schaefer2018_100Parcels_17Networks_order_FSLMNI152_2mm.nii.gz
2023-05-16 14:16:03,215 - JUNIFER - INFO - Storing in <SQLiteFeatureStorage @ /tmp/tmppwa66hc1/test.sqlite (multiple output)>
2023-05-16 14:16:03,278 - JUNIFER - INFO - Fitting marker Schaefer200x17_Mean
2023-05-16 14:16:03,279 - JUNIFER - INFO - Computing VBM_GM
2023-05-16 14:16:03,279 - JUNIFER - INFO - Fetching one of Schaefer parcellations.
2023-05-16 14:16:03,279 - JUNIFER - INFO - Parcellation parameters:
2023-05-16 14:16:03,279 - JUNIFER - INFO - n_rois: 200
2023-05-16 14:16:03,279 - JUNIFER - INFO - yeo_networks: 17
2023-05-16 14:16:03,279 - JUNIFER - INFO - resolution: 2.0
2023-05-16 14:16:03,282 - JUNIFER - INFO - Loading parcellation /home/runner/junifer/data/parcellations/schaefer_2018/Schaefer2018_200Parcels_17Networks_order_FSLMNI152_2mm.nii.gz
2023-05-16 14:16:04,159 - JUNIFER - INFO - Storing in <SQLiteFeatureStorage @ /tmp/tmppwa66hc1/test.sqlite (multiple output)>
2023-05-16 14:16:04,258 - JUNIFER - INFO - Marker collection fitting done
2023-05-16 14:16:04,258 - JUNIFER - INFO - Getting element sub-09
2023-05-16 14:16:04,258 - JUNIFER - INFO - Fitting pipeline
2023-05-16 14:16:04,258 - JUNIFER - INFO - Reading VBM_GM from /home/runner/nilearn_data/oasis1/OAS1_0010_MR1/mwrc1OAS1_0010_MR1_mpr_anon_fslswapdim_bet.nii.gz
2023-05-16 14:16:04,258 - JUNIFER - INFO - VBM_GM is type NIFTI
2023-05-16 14:16:04,259 - JUNIFER - INFO - Fitting marker Schaefer100x17_TrimMean80
2023-05-16 14:16:04,259 - JUNIFER - INFO - Computing VBM_GM
2023-05-16 14:16:04,260 - JUNIFER - INFO - Fetching one of Schaefer parcellations.
2023-05-16 14:16:04,260 - JUNIFER - INFO - Parcellation parameters:
2023-05-16 14:16:04,260 - JUNIFER - INFO - n_rois: 100
2023-05-16 14:16:04,260 - JUNIFER - INFO - yeo_networks: 17
2023-05-16 14:16:04,260 - JUNIFER - INFO - resolution: 2.0
2023-05-16 14:16:04,262 - JUNIFER - INFO - Loading parcellation /home/runner/junifer/data/parcellations/schaefer_2018/Schaefer2018_100Parcels_17Networks_order_FSLMNI152_2mm.nii.gz
2023-05-16 14:16:05,155 - JUNIFER - INFO - Storing in <SQLiteFeatureStorage @ /tmp/tmppwa66hc1/test.sqlite (multiple output)>
2023-05-16 14:16:05,217 - JUNIFER - INFO - Fitting marker Schaefer200x17_Mean
2023-05-16 14:16:05,217 - JUNIFER - INFO - Computing VBM_GM
2023-05-16 14:16:05,217 - JUNIFER - INFO - Fetching one of Schaefer parcellations.
2023-05-16 14:16:05,217 - JUNIFER - INFO - Parcellation parameters:
2023-05-16 14:16:05,217 - JUNIFER - INFO - n_rois: 200
2023-05-16 14:16:05,217 - JUNIFER - INFO - yeo_networks: 17
2023-05-16 14:16:05,217 - JUNIFER - INFO - resolution: 2.0
2023-05-16 14:16:05,220 - JUNIFER - INFO - Loading parcellation /home/runner/junifer/data/parcellations/schaefer_2018/Schaefer2018_200Parcels_17Networks_order_FSLMNI152_2mm.nii.gz
2023-05-16 14:16:06,154 - JUNIFER - INFO - Storing in <SQLiteFeatureStorage @ /tmp/tmppwa66hc1/test.sqlite (multiple output)>
2023-05-16 14:16:06,254 - JUNIFER - INFO - Marker collection fitting done
2023-05-16 14:16:06,255 - JUNIFER - INFO - Getting element sub-10
2023-05-16 14:16:06,255 - JUNIFER - INFO - Fitting pipeline
2023-05-16 14:16:06,255 - JUNIFER - INFO - Reading VBM_GM from /home/runner/nilearn_data/oasis1/OAS1_0011_MR1/mwrc1OAS1_0011_MR1_mpr_anon_fslswapdim_bet.nii.gz
2023-05-16 14:16:06,255 - JUNIFER - INFO - VBM_GM is type NIFTI
2023-05-16 14:16:06,256 - JUNIFER - INFO - Fitting marker Schaefer100x17_TrimMean80
2023-05-16 14:16:06,256 - JUNIFER - INFO - Computing VBM_GM
2023-05-16 14:16:06,257 - JUNIFER - INFO - Fetching one of Schaefer parcellations.
2023-05-16 14:16:06,257 - JUNIFER - INFO - Parcellation parameters:
2023-05-16 14:16:06,257 - JUNIFER - INFO - n_rois: 100
2023-05-16 14:16:06,257 - JUNIFER - INFO - yeo_networks: 17
2023-05-16 14:16:06,257 - JUNIFER - INFO - resolution: 2.0
2023-05-16 14:16:06,260 - JUNIFER - INFO - Loading parcellation /home/runner/junifer/data/parcellations/schaefer_2018/Schaefer2018_100Parcels_17Networks_order_FSLMNI152_2mm.nii.gz
2023-05-16 14:16:07,129 - JUNIFER - INFO - Storing in <SQLiteFeatureStorage @ /tmp/tmppwa66hc1/test.sqlite (multiple output)>
2023-05-16 14:16:07,196 - JUNIFER - INFO - Fitting marker Schaefer200x17_Mean
2023-05-16 14:16:07,196 - JUNIFER - INFO - Computing VBM_GM
2023-05-16 14:16:07,197 - JUNIFER - INFO - Fetching one of Schaefer parcellations.
2023-05-16 14:16:07,197 - JUNIFER - INFO - Parcellation parameters:
2023-05-16 14:16:07,197 - JUNIFER - INFO - n_rois: 200
2023-05-16 14:16:07,197 - JUNIFER - INFO - yeo_networks: 17
2023-05-16 14:16:07,197 - JUNIFER - INFO - resolution: 2.0
2023-05-16 14:16:07,200 - JUNIFER - INFO - Loading parcellation /home/runner/junifer/data/parcellations/schaefer_2018/Schaefer2018_200Parcels_17Networks_order_FSLMNI152_2mm.nii.gz
2023-05-16 14:16:08,099 - JUNIFER - INFO - Storing in <SQLiteFeatureStorage @ /tmp/tmppwa66hc1/test.sqlite (multiple output)>
2023-05-16 14:16:08,202 - JUNIFER - INFO - Marker collection fitting done
2023-05-16 14:16:08,202 - JUNIFER - INFO - Collecting data using SQLiteFeatureStorage
2023-05-16 14:16:08,202 - JUNIFER - INFO - Collecting data from /tmp/tmppwa66hc1/*test.sqlite
file: 0it [00:00, ?it/s]
feature: 0%| | 0/2 [00:00<?, ?it/s]
feature: 50%|##### | 1/2 [00:00<00:00, 9.84it/s]
feature: 100%|##########| 2/2 [00:00<00:00, 6.79it/s]
feature: 100%|##########| 2/2 [00:00<00:00, 7.11it/s]
file: 1it [00:00, 3.29it/s]
feature: 0%| | 0/2 [00:00<?, ?it/s]
feature: 100%|##########| 2/2 [00:00<00:00, 8.53it/s]
feature: 100%|##########| 2/2 [00:00<00:00, 8.51it/s]
file: 2it [00:00, 3.63it/s]
feature: 0%| | 0/2 [00:00<?, ?it/s]
feature: 100%|##########| 2/2 [00:00<00:00, 8.46it/s]
feature: 100%|##########| 2/2 [00:00<00:00, 8.44it/s]
file: 3it [00:00, 3.74it/s]
feature: 0%| | 0/2 [00:00<?, ?it/s]
feature: 100%|##########| 2/2 [00:00<00:00, 8.33it/s]
feature: 100%|##########| 2/2 [00:00<00:00, 8.31it/s]
file: 4it [00:01, 3.76it/s]
feature: 0%| | 0/2 [00:00<?, ?it/s]
feature: 100%|##########| 2/2 [00:00<00:00, 8.12it/s]
feature: 100%|##########| 2/2 [00:00<00:00, 8.10it/s]
file: 5it [00:01, 3.71it/s]
feature: 0%| | 0/2 [00:00<?, ?it/s]
feature: 100%|##########| 2/2 [00:00<00:00, 8.59it/s]
feature: 100%|##########| 2/2 [00:00<00:00, 8.57it/s]
file: 6it [00:01, 3.77it/s]
feature: 0%| | 0/2 [00:00<?, ?it/s]
feature: 100%|##########| 2/2 [00:00<00:00, 8.35it/s]
feature: 100%|##########| 2/2 [00:00<00:00, 8.33it/s]
file: 7it [00:01, 3.78it/s]
feature: 0%| | 0/2 [00:00<?, ?it/s]
feature: 100%|##########| 2/2 [00:00<00:00, 8.25it/s]
feature: 100%|##########| 2/2 [00:00<00:00, 8.23it/s]
file: 8it [00:02, 3.77it/s]
feature: 0%| | 0/2 [00:00<?, ?it/s]
feature: 100%|##########| 2/2 [00:00<00:00, 5.33it/s]
feature: 100%|##########| 2/2 [00:00<00:00, 5.32it/s]
file: 9it [00:02, 3.26it/s]
feature: 0%| | 0/2 [00:00<?, ?it/s]
feature: 100%|##########| 2/2 [00:00<00:00, 8.23it/s]
feature: 100%|##########| 2/2 [00:00<00:00, 8.20it/s]
file: 10it [00:02, 3.38it/s]
file: 10it [00:02, 3.55it/s]
2023-05-16 14:16:11,017 - JUNIFER - INFO - Collect done
Using julearn for machine learning: We predict the age given our vbm features and sex as a confound.
fit_time score_time test_score repeat fold
0 0.234848 0.030249 -0.779885 0 0
1 0.231195 0.030477 -140.026073 0 1
2 0.221122 0.031349 -0.559247 0 2
Interpretation of results: Doing machine learning with only 10 datapoints is not meaningful. This explains the big variation in scores for different cross-validation folds.
Total running time of the script: ( 0 minutes 23.206 seconds)