Training with a custom service account needs a new field named service account
trainingInput:
  serviceAccount: CUSTOM_SERVICE_ACCOUNT

https://cloud.google.com/ai-platform/training/docs/custom-service-account


airflow/providers/google/cloud/operators/mlengine.py
self,  
        *,
        job_id: str,
        region: str,
        data_format: str,
        input_paths: List[str],
        output_path: str,
        model_name: Optional[str] = None,
        version_name: Optional[str] = None,
        uri: Optional[str] = None,
        max_worker_count: Optional[int] = None,
        runtime_version: Optional[str] = None,
        signature_name: Optional[str] = None,
        project_id: Optional[str] = None,
        gcp_conn_id: str = 'google_cloud_default',
        delegate_to: Optional[str] = None,
        labels: Optional[Dict[str, str]] = None,
        impersonation_chain: Optional[Union[str, Sequence[str]]] = None,
        **kwargs,
    ) -> None:
        super().__init__(**kwargs)
        self._project_id = project_id
        self._job_id = job_id
        self._region = region
        self._data_format = data_format
        self._input_paths = input_paths