pipeline:
  - split:
      class: sklearn.model_selection.KFold
      params: {n_splits: 3, shuffle: true, random_state: 17}
  - branch:
      by_source: true
      steps:
        source_0:
          - class: nirs4all.operators.transforms.StandardNormalVariate
        source_1:
          - class: sklearn.preprocessing.StandardScaler
  - merge:
      sources: concat
  - model:
      class: nirs4all.operators.models.ResidualModel
      params:
        base:
          class: sklearn.cross_decomposition.PLSRegression
          params: {n_components: 3}
        learner:
          class: sklearn.linear_model.Ridge
          params: {alpha: 1.0}
        gate: false
