Class: ModelEstimation¶
How a model was specified in software and estimated: its terms, the family, the source's wording for it, the estimator, the stage, the software, the pipeline that produced the data it was fitted to, and the spatial element it was fitted over. One record may be referenced by several Analyses, so every field must hold for all of them; an analysis specified or estimated differently takes its own record. The data a model was fitted to is part of its specification.
One record is one estimation stage. Neuroimaging splits a model across stages for tractability, and inputs_from is what puts it back together: a stage's terms are its own plus those of the stages it consumed, so the split costs the record nothing while each stage keeps its own family, estimator, software and basis.
URI: neurostudy:ModelEstimation
classDiagram
class ModelEstimation
click ModelEstimation href "../ModelEstimation/"
ModelEstimation : estimator
ModelEstimation : hrf_model
ModelEstimation : id
ModelEstimation : inputs_from
ModelEstimation --> "*" ModelEstimation : inputs_from
click ModelEstimation href "../ModelEstimation/"
ModelEstimation : model_family
ModelEstimation : model_settings
ModelEstimation : model_type
ModelEstimation : preprocessing
ModelEstimation --> "*" Preprocessing : preprocessing
click Preprocessing href "../Preprocessing/"
ModelEstimation : software
ModelEstimation : spatial_unit
ModelEstimation : stage
ModelEstimation : terms
ModelEstimation --> "*" ModelTerm : terms
click ModelTerm href "../ModelTerm/"
Slots¶
| Name | Cardinality and Range | Description | Inheritance |
|---|---|---|---|
| id | 1 String |
Stable identifier used by Analysis foreign-key references | direct |
| model_family | 1 String or ModelFamily |
Normalized statistical model family, which is the queryable form | direct |
| model_type | 1 String |
The source's own wording for the model, minimally cleaned, such as mass- univ... | direct |
| hrf_model | 0..1 String |
The haemodynamic response basis the design matrix was built with: a canonical... | direct |
| model_settings | 0..1 String |
Essential estimator, variance, autocorrelation, covariance, regularization, a... | direct |
| stage | 1 String |
Stage of analysis, in the source's terms: run, session, subject and group are... | direct |
| estimator | 0..1 String |
Estimation method, such as OLS, WLS, maximum likelihood, restricted maximum l... | direct |
| software | 0..1 String |
Statistical software name, version, and relevant implementation details | direct |
| spatial_unit | 0..1 String or SpatialUnit |
The element this model was fitted over | direct |
| preprocessing | * Preprocessing |
The pipelines that produced the data this model was fitted to | direct |
| inputs_from | * ModelEstimation |
The models whose fitted output this model was estimated on: the first-level G... | direct |
| terms | * ModelTerm |
The terms this stage was specified with -- the columns of its design matr... | direct |
Usages¶
| used by | used in | type | used |
|---|---|---|---|
| Analysis | model_estimation | range | ModelEstimation |
| ModelEstimation | inputs_from | range | ModelEstimation |
| Study | model_estimations | range | ModelEstimation |
See Also¶
- https://cdisc-org.github.io/analysis-results-standard/
- https://bids-standard.github.io/stats-models/spec.html
- https://nidm.nidash.org/specs/nidm-results_120.html
Identifier and Mapping Information¶
Schema Source¶
- from schema: https://neurostuff.org/schemas/neuroimaging-study-storage
Mappings¶
| Mapping Type | Mapped Value |
|---|---|
| self | neurostudy:ModelEstimation |
| native | neurostudy:ModelEstimation |
LinkML Source¶
Direct¶
name: ModelEstimation
description: 'How a model was specified in software and estimated: its terms, the
family, the source''s wording for it, the estimator, the stage, the software, the
pipeline that produced the data it was fitted to, and the spatial element it was
fitted over. One record may be referenced by several Analyses, so every field must
hold for all of them; an analysis specified or estimated differently takes its own
record. **The data a model was fitted to is part of its specification**.
One record is one estimation stage. Neuroimaging splits a model across stages for
tractability, and `inputs_from` is what puts it back together: a stage''s terms
are its own plus those of the stages it consumed, so the split costs the record
nothing while each stage keeps its own family, estimator, software and basis.'
from_schema: https://neurostuff.org/schemas/neuroimaging-study-storage
see_also:
- https://cdisc-org.github.io/analysis-results-standard/
- https://bids-standard.github.io/stats-models/spec.html
- https://nidm.nidash.org/specs/nidm-results_120.html
rank: 1000
attributes:
id:
name: id
description: Stable identifier used by Analysis foreign-key references.
in_subset:
- mvp
- deterministic
from_schema: https://neurostuff.org/schemas/neuroimaging-study-storage/analysis
identifier: true
domain_of:
- Arm
- Timepoint
- Group
- Task
- Condition
- Assessment
- Region
- Acquisition
- Device
- Analysis
- Measure
- Preprocessing
- ModelEstimation
- ModelTerm
- InferenceSettings
- StatisticalMap
- Table
- CoordinateSet
- Study
range: string
required: true
model_family:
name: model_family
description: 'Normalized statistical model family, which is the queryable form.
Required, so a paper that never says still carries the slot, as `extraction_status:
not_reported`. A method the vocabulary cannot name -- ICA, representational
similarity, a decoder -- is written here as free text; the Analysis.details
subclass also identifies the method.'
in_subset:
- mvp
- model_extracted
from_schema: https://neurostuff.org/schemas/neuroimaging-study-storage/analysis
rank: 1000
domain_of:
- ModelEstimation
required: true
any_of:
- range: ModelFamily
- range: string
model_type:
name: model_type
description: The source's own wording for the model, minimally cleaned, such as
mass- univariate GLM, meta-analysis, multivariate, predictive model, ICA, or
representational similarity analysis.
in_subset:
- mvp
- model_extracted
from_schema: https://neurostuff.org/schemas/neuroimaging-study-storage/analysis
rank: 1000
domain_of:
- ModelEstimation
range: string
required: true
hrf_model:
name: hrf_model
description: 'The haemodynamic response basis the design matrix was built with:
a canonical HRF, a canonical plus temporal or dispersion derivatives, an FIR
or gamma basis, or a named alternative. Unset for a measure that models no timeseries
-- morphometry, diffusion, static PET.'
in_subset:
- mvp
- model_extracted
from_schema: https://neurostuff.org/schemas/neuroimaging-study-storage/analysis
rank: 1000
domain_of:
- ModelEstimation
range: string
model_settings:
name: model_settings
description: Essential estimator, variance, autocorrelation, covariance, regularization,
and software-specific settings.
in_subset:
- model_extracted
from_schema: https://neurostuff.org/schemas/neuroimaging-study-storage/analysis
rank: 1000
domain_of:
- ModelEstimation
range: string
stage:
name: stage
description: 'Stage of analysis, in the source''s terms: run, session, subject
and group are the usual words, and any other the source uses is storable as
written. Deliberately left open -- no vocabulary fits every design, and nothing
derives anything from it.
A label, not an ordering. Only `inputs_from` records which stage fed another:
two records labelled `group` say nothing about their relationship, and these
strings never imply a chain.'
in_subset:
- mvp
- model_extracted
from_schema: https://neurostuff.org/schemas/neuroimaging-study-storage/analysis
rank: 1000
domain_of:
- ModelEstimation
range: string
required: true
estimator:
name: estimator
description: Estimation method, such as OLS, WLS, maximum likelihood, restricted
maximum likelihood, permutation, or Bayesian estimation.
in_subset:
- mvp
- model_extracted
from_schema: https://neurostuff.org/schemas/neuroimaging-study-storage/analysis
rank: 1000
domain_of:
- ModelEstimation
range: string
software:
name: software
description: Statistical software name, version, and relevant implementation details.
in_subset:
- mvp
- model_extracted
from_schema: https://neurostuff.org/schemas/neuroimaging-study-storage/analysis
domain_of:
- Preprocessing
- ModelEstimation
range: string
spatial_unit:
name: spatial_unit
description: 'The element this model was fitted over. Distinct from the Analysis''s
`spatial_scope`, which gives the extent rather than the element: a whole-brain
model can be voxelwise or vertexwise, and a model over an ROI can average the
region or test its parcels. Record it rather than inferring it from `coordinate_space`.
A model fitted over a different element is a different model, so a voxelwise
GLM and an ROI-mean ANOVA of the same design take two records: no contrast of
one can be read off the other''s fit.'
in_subset:
- mvp
- model_extracted
from_schema: https://neurostuff.org/schemas/neuroimaging-study-storage/analysis
rank: 1000
domain_of:
- ModelEstimation
any_of:
- range: SpatialUnit
- range: string
preprocessing:
name: preprocessing
description: 'The pipelines that produced the data this model was fitted to. Every
Analysis referencing this record came through them, so a model fitted to differently
prepared data -- unsmoothed images for a classifier, smoothed ones for a mass-univariate
fit -- takes its own record rather than sharing one.
More than one entry when the fit consumed more than one kind of image: a multimodal
regression of perfusion on grey-matter volume was fitted to the output of both
pipelines, and naming either alone says the other''s smoothing and normalisation
did not touch the map.'
in_subset:
- model_extracted
from_schema: https://neurostuff.org/schemas/neuroimaging-study-storage/analysis
rank: 1000
domain_of:
- ModelEstimation
range: Preprocessing
multivalued: true
inlined: false
inputs_from:
name: inputs_from
description: 'The models whose fitted output this model was estimated on: the
first-level GLM whose contrast images a group model takes as its data, the subject-level
fit an ROI ANOVA summarises. The stage graph, recorded only where the source
states it.
**A model''s terms are its own plus, transitively, those of the models named
here.** That combined list is what `terms` would be had the analysis been fitted
in one step.
Leave it empty when the source describes one design matrix, and when it describes
the lower stage too thinly to constitute a model. Empty is not a claim that
no lower stage existed; it is the absence of a statement about one, exactly
as an unrecorded term is.
Must be acyclic, no model may reach itself.'
in_subset:
- mvp
- model_extracted
from_schema: https://neurostuff.org/schemas/neuroimaging-study-storage/analysis
rank: 1000
domain_of:
- ModelEstimation
range: ModelEstimation
multivalued: true
inlined: false
terms:
name: terms
description: 'The terms **this stage** was specified with -- the columns of its
design matrix, in the general sense that covers a GLM''s regressors and the
predictors of any other family. Stated once here however many contrasts are
taken from them, and never restated on a stage above: the terms of a lower stage
are reached through `inputs_from`.
Record every term the source states, including ones no reported contrast tests,
and including ones mentioned only in passing: "controlling for age and sex"
is a statement about the design matrix. This list, together with the lists reached
through `inputs_from`, is **the adjustment set of every contrast taken from
this model** -- each contrast''s is that combined list minus the terms its cells
name -- so a term omitted from every stage reads as one the model did not adjust
for. Where the list is incomplete, the slot''s extraction_status is what says
so.
May be empty, and legitimately is for a stage that fits only an intercept: a
one-sample group test over first-level contrast images has no column of its
own. Do not invent an intercept term to fill it.
Analyses whose design matrices differ take their own records rather than sharing
one.'
in_subset:
- mvp
- model_extracted
from_schema: https://neurostuff.org/schemas/neuroimaging-study-storage/analysis
rank: 1000
domain_of:
- ModelEstimation
range: ModelTerm
multivalued: true
inlined_as_list: true
Induced¶
name: ModelEstimation
description: 'How a model was specified in software and estimated: its terms, the
family, the source''s wording for it, the estimator, the stage, the software, the
pipeline that produced the data it was fitted to, and the spatial element it was
fitted over. One record may be referenced by several Analyses, so every field must
hold for all of them; an analysis specified or estimated differently takes its own
record. **The data a model was fitted to is part of its specification**.
One record is one estimation stage. Neuroimaging splits a model across stages for
tractability, and `inputs_from` is what puts it back together: a stage''s terms
are its own plus those of the stages it consumed, so the split costs the record
nothing while each stage keeps its own family, estimator, software and basis.'
from_schema: https://neurostuff.org/schemas/neuroimaging-study-storage
see_also:
- https://cdisc-org.github.io/analysis-results-standard/
- https://bids-standard.github.io/stats-models/spec.html
- https://nidm.nidash.org/specs/nidm-results_120.html
rank: 1000
attributes:
id:
name: id
description: Stable identifier used by Analysis foreign-key references.
in_subset:
- mvp
- deterministic
from_schema: https://neurostuff.org/schemas/neuroimaging-study-storage/analysis
identifier: true
owner: ModelEstimation
domain_of:
- Arm
- Timepoint
- Group
- Task
- Condition
- Assessment
- Region
- Acquisition
- Device
- Analysis
- Measure
- Preprocessing
- ModelEstimation
- ModelTerm
- InferenceSettings
- StatisticalMap
- Table
- CoordinateSet
- Study
range: string
required: true
model_family:
name: model_family
description: 'Normalized statistical model family, which is the queryable form.
Required, so a paper that never says still carries the slot, as `extraction_status:
not_reported`. A method the vocabulary cannot name -- ICA, representational
similarity, a decoder -- is written here as free text; the Analysis.details
subclass also identifies the method.'
in_subset:
- mvp
- model_extracted
from_schema: https://neurostuff.org/schemas/neuroimaging-study-storage/analysis
rank: 1000
owner: ModelEstimation
domain_of:
- ModelEstimation
range: string
required: true
any_of:
- range: ModelFamily
- range: string
model_type:
name: model_type
description: The source's own wording for the model, minimally cleaned, such as
mass- univariate GLM, meta-analysis, multivariate, predictive model, ICA, or
representational similarity analysis.
in_subset:
- mvp
- model_extracted
from_schema: https://neurostuff.org/schemas/neuroimaging-study-storage/analysis
rank: 1000
owner: ModelEstimation
domain_of:
- ModelEstimation
range: string
required: true
hrf_model:
name: hrf_model
description: 'The haemodynamic response basis the design matrix was built with:
a canonical HRF, a canonical plus temporal or dispersion derivatives, an FIR
or gamma basis, or a named alternative. Unset for a measure that models no timeseries
-- morphometry, diffusion, static PET.'
in_subset:
- mvp
- model_extracted
from_schema: https://neurostuff.org/schemas/neuroimaging-study-storage/analysis
rank: 1000
owner: ModelEstimation
domain_of:
- ModelEstimation
range: string
model_settings:
name: model_settings
description: Essential estimator, variance, autocorrelation, covariance, regularization,
and software-specific settings.
in_subset:
- model_extracted
from_schema: https://neurostuff.org/schemas/neuroimaging-study-storage/analysis
rank: 1000
owner: ModelEstimation
domain_of:
- ModelEstimation
range: string
stage:
name: stage
description: 'Stage of analysis, in the source''s terms: run, session, subject
and group are the usual words, and any other the source uses is storable as
written. Deliberately left open -- no vocabulary fits every design, and nothing
derives anything from it.
A label, not an ordering. Only `inputs_from` records which stage fed another:
two records labelled `group` say nothing about their relationship, and these
strings never imply a chain.'
in_subset:
- mvp
- model_extracted
from_schema: https://neurostuff.org/schemas/neuroimaging-study-storage/analysis
rank: 1000
owner: ModelEstimation
domain_of:
- ModelEstimation
range: string
required: true
estimator:
name: estimator
description: Estimation method, such as OLS, WLS, maximum likelihood, restricted
maximum likelihood, permutation, or Bayesian estimation.
in_subset:
- mvp
- model_extracted
from_schema: https://neurostuff.org/schemas/neuroimaging-study-storage/analysis
rank: 1000
owner: ModelEstimation
domain_of:
- ModelEstimation
range: string
software:
name: software
description: Statistical software name, version, and relevant implementation details.
in_subset:
- mvp
- model_extracted
from_schema: https://neurostuff.org/schemas/neuroimaging-study-storage/analysis
owner: ModelEstimation
domain_of:
- Preprocessing
- ModelEstimation
range: string
spatial_unit:
name: spatial_unit
description: 'The element this model was fitted over. Distinct from the Analysis''s
`spatial_scope`, which gives the extent rather than the element: a whole-brain
model can be voxelwise or vertexwise, and a model over an ROI can average the
region or test its parcels. Record it rather than inferring it from `coordinate_space`.
A model fitted over a different element is a different model, so a voxelwise
GLM and an ROI-mean ANOVA of the same design take two records: no contrast of
one can be read off the other''s fit.'
in_subset:
- mvp
- model_extracted
from_schema: https://neurostuff.org/schemas/neuroimaging-study-storage/analysis
rank: 1000
owner: ModelEstimation
domain_of:
- ModelEstimation
range: string
any_of:
- range: SpatialUnit
- range: string
preprocessing:
name: preprocessing
description: 'The pipelines that produced the data this model was fitted to. Every
Analysis referencing this record came through them, so a model fitted to differently
prepared data -- unsmoothed images for a classifier, smoothed ones for a mass-univariate
fit -- takes its own record rather than sharing one.
More than one entry when the fit consumed more than one kind of image: a multimodal
regression of perfusion on grey-matter volume was fitted to the output of both
pipelines, and naming either alone says the other''s smoothing and normalisation
did not touch the map.'
in_subset:
- model_extracted
from_schema: https://neurostuff.org/schemas/neuroimaging-study-storage/analysis
rank: 1000
owner: ModelEstimation
domain_of:
- ModelEstimation
range: Preprocessing
multivalued: true
inlined: false
inputs_from:
name: inputs_from
description: 'The models whose fitted output this model was estimated on: the
first-level GLM whose contrast images a group model takes as its data, the subject-level
fit an ROI ANOVA summarises. The stage graph, recorded only where the source
states it.
**A model''s terms are its own plus, transitively, those of the models named
here.** That combined list is what `terms` would be had the analysis been fitted
in one step.
Leave it empty when the source describes one design matrix, and when it describes
the lower stage too thinly to constitute a model. Empty is not a claim that
no lower stage existed; it is the absence of a statement about one, exactly
as an unrecorded term is.
Must be acyclic, no model may reach itself.'
in_subset:
- mvp
- model_extracted
from_schema: https://neurostuff.org/schemas/neuroimaging-study-storage/analysis
rank: 1000
owner: ModelEstimation
domain_of:
- ModelEstimation
range: ModelEstimation
multivalued: true
inlined: false
terms:
name: terms
description: 'The terms **this stage** was specified with -- the columns of its
design matrix, in the general sense that covers a GLM''s regressors and the
predictors of any other family. Stated once here however many contrasts are
taken from them, and never restated on a stage above: the terms of a lower stage
are reached through `inputs_from`.
Record every term the source states, including ones no reported contrast tests,
and including ones mentioned only in passing: "controlling for age and sex"
is a statement about the design matrix. This list, together with the lists reached
through `inputs_from`, is **the adjustment set of every contrast taken from
this model** -- each contrast''s is that combined list minus the terms its cells
name -- so a term omitted from every stage reads as one the model did not adjust
for. Where the list is incomplete, the slot''s extraction_status is what says
so.
May be empty, and legitimately is for a stage that fits only an intercept: a
one-sample group test over first-level contrast images has no column of its
own. Do not invent an intercept term to fill it.
Analyses whose design matrices differ take their own records rather than sharing
one.'
in_subset:
- mvp
- model_extracted
from_schema: https://neurostuff.org/schemas/neuroimaging-study-storage/analysis
rank: 1000
owner: ModelEstimation
domain_of:
- ModelEstimation
range: ModelTerm
multivalued: true
inlined: true
inlined_as_list: true