:doc:`LookoutEquipment <../../lookoutequipment>` / Client / create_model

************
create_model
************



.. py:method:: LookoutEquipment.Client.create_model(**kwargs)

  

  Creates a machine learning model for data inference.

   

  A machine-learning (ML) model is a mathematical model that finds patterns in your data. In Amazon Lookout for Equipment, the model learns the patterns of normal behavior and detects abnormal behavior that could be potential equipment failure (or maintenance events). The models are made by analyzing normal data and abnormalities in machine behavior that have already occurred.

   

  Your model is trained using a portion of the data from your dataset and uses that data to learn patterns of normal behavior and abnormal patterns that lead to equipment failure. Another portion of the data is used to evaluate the model's accuracy.

  

  See also: `AWS API Documentation <https://docs.aws.amazon.com/goto/WebAPI/lookoutequipment-2020-12-15/CreateModel>`_  


  **Request Syntax**
  ::

    response = client.create_model(
        ModelName='string',
        DatasetName='string',
        DatasetSchema={
            'InlineDataSchema': 'string'
        },
        LabelsInputConfiguration={
            'S3InputConfiguration': {
                'Bucket': 'string',
                'Prefix': 'string'
            },
            'LabelGroupName': 'string'
        },
        ClientToken='string',
        TrainingDataStartTime=datetime(2015, 1, 1),
        TrainingDataEndTime=datetime(2015, 1, 1),
        EvaluationDataStartTime=datetime(2015, 1, 1),
        EvaluationDataEndTime=datetime(2015, 1, 1),
        RoleArn='string',
        DataPreProcessingConfiguration={
            'TargetSamplingRate': 'PT1S'|'PT5S'|'PT10S'|'PT15S'|'PT30S'|'PT1M'|'PT5M'|'PT10M'|'PT15M'|'PT30M'|'PT1H'
        },
        ServerSideKmsKeyId='string',
        Tags=[
            {
                'Key': 'string',
                'Value': 'string'
            },
        ],
        OffCondition='string',
        ModelDiagnosticsOutputConfiguration={
            'S3OutputConfiguration': {
                'Bucket': 'string',
                'Prefix': 'string'
            },
            'KmsKeyId': 'string'
        }
    )
    
  :type ModelName: string
  :param ModelName: **[REQUIRED]** 

    The name for the machine learning model to be created.

    

  
  :type DatasetName: string
  :param DatasetName: **[REQUIRED]** 

    The name of the dataset for the machine learning model being created.

    

  
  :type DatasetSchema: dict
  :param DatasetSchema: 

    The data schema for the machine learning model being created.

    

  
    - **InlineDataSchema** *(string) --* 

      The data schema used within the given dataset.

      

    
  
  :type LabelsInputConfiguration: dict
  :param LabelsInputConfiguration: 

    The input configuration for the labels being used for the machine learning model that's being created.

    

  
    - **S3InputConfiguration** *(dict) --* 

      Contains location information for the S3 location being used for label data.

      

    
      - **Bucket** *(string) --* **[REQUIRED]** 

        The name of the S3 bucket holding the label data.

        

      
      - **Prefix** *(string) --* 

        The prefix for the S3 bucket used for the label data.

        

      
    
    - **LabelGroupName** *(string) --* 

      The name of the label group to be used for label data.

      

    
  
  :type ClientToken: string
  :param ClientToken: **[REQUIRED]** 

    A unique identifier for the request. If you do not set the client request token, Amazon Lookout for Equipment generates one.

    This field is autopopulated if not provided.

  
  :type TrainingDataStartTime: datetime
  :param TrainingDataStartTime: 

    Indicates the time reference in the dataset that should be used to begin the subset of training data for the machine learning model.

    

  
  :type TrainingDataEndTime: datetime
  :param TrainingDataEndTime: 

    Indicates the time reference in the dataset that should be used to end the subset of training data for the machine learning model.

    

  
  :type EvaluationDataStartTime: datetime
  :param EvaluationDataStartTime: 

    Indicates the time reference in the dataset that should be used to begin the subset of evaluation data for the machine learning model.

    

  
  :type EvaluationDataEndTime: datetime
  :param EvaluationDataEndTime: 

    Indicates the time reference in the dataset that should be used to end the subset of evaluation data for the machine learning model.

    

  
  :type RoleArn: string
  :param RoleArn: 

    The Amazon Resource Name (ARN) of a role with permission to access the data source being used to create the machine learning model.

    

  
  :type DataPreProcessingConfiguration: dict
  :param DataPreProcessingConfiguration: 

    The configuration is the ``TargetSamplingRate``, which is the sampling rate of the data after post processing by Amazon Lookout for Equipment. For example, if you provide data that has been collected at a 1 second level and you want the system to resample the data at a 1 minute rate before training, the ``TargetSamplingRate`` is 1 minute.

     

    When providing a value for the ``TargetSamplingRate``, you must attach the prefix "PT" to the rate you want. The value for a 1 second rate is therefore *PT1S*, the value for a 15 minute rate is *PT15M*, and the value for a 1 hour rate is *PT1H*

    

  
    - **TargetSamplingRate** *(string) --* 

      The sampling rate of the data after post processing by Amazon Lookout for Equipment. For example, if you provide data that has been collected at a 1 second level and you want the system to resample the data at a 1 minute rate before training, the ``TargetSamplingRate`` is 1 minute.

       

      When providing a value for the ``TargetSamplingRate``, you must attach the prefix "PT" to the rate you want. The value for a 1 second rate is therefore *PT1S*, the value for a 15 minute rate is *PT15M*, and the value for a 1 hour rate is *PT1H*

      

    
  
  :type ServerSideKmsKeyId: string
  :param ServerSideKmsKeyId: 

    Provides the identifier of the KMS key used to encrypt model data by Amazon Lookout for Equipment.

    

  
  :type Tags: list
  :param Tags: 

    Any tags associated with the machine learning model being created.

    

  
    - *(dict) --* 

      A tag is a key-value pair that can be added to a resource as metadata.

      

    
      - **Key** *(string) --* **[REQUIRED]** 

        The key for the specified tag.

        

      
      - **Value** *(string) --* **[REQUIRED]** 

        The value for the specified tag.

        

      
    

  :type OffCondition: string
  :param OffCondition: 

    Indicates that the asset associated with this sensor has been shut off. As long as this condition is met, Lookout for Equipment will not use data from this asset for training, evaluation, or inference.

    

  
  :type ModelDiagnosticsOutputConfiguration: dict
  :param ModelDiagnosticsOutputConfiguration: 

    The Amazon S3 location where you want Amazon Lookout for Equipment to save the pointwise model diagnostics. You must also specify the ``RoleArn`` request parameter.

    

  
    - **S3OutputConfiguration** *(dict) --* **[REQUIRED]** 

      The Amazon S3 location for the pointwise model diagnostics.

      

    
      - **Bucket** *(string) --* **[REQUIRED]** 

        The name of the Amazon S3 bucket where the pointwise model diagnostics are located. You must be the owner of the Amazon S3 bucket.

        

      
      - **Prefix** *(string) --* 

        The Amazon S3 prefix for the location of the pointwise model diagnostics. The prefix specifies the folder and evaluation result file name. ( ``bucket``).

         

        When you call ``CreateModel`` or ``UpdateModel``, specify the path within the bucket that you want Lookout for Equipment to save the model to. During training, Lookout for Equipment creates the model evaluation model as a compressed JSON file with the name ``model_diagnostics_results.json.gz``.

         

        When you call ``DescribeModel`` or ``DescribeModelVersion``, ``prefix`` contains the file path and filename of the model evaluation file.

        

      
    
    - **KmsKeyId** *(string) --* 

      The Amazon Web Services Key Management Service (KMS) key identifier to encrypt the pointwise model diagnostics files.

      

    
  
  
  :rtype: dict
  :returns: 
    
    **Response Syntax**

    
    ::

      {
          'ModelArn': 'string',
          'Status': 'IN_PROGRESS'|'SUCCESS'|'FAILED'|'IMPORT_IN_PROGRESS'
      }
      
    **Response Structure**

    

    - *(dict) --* 
      

      - **ModelArn** *(string) --* 

        The Amazon Resource Name (ARN) of the model being created.

        
      

      - **Status** *(string) --* 

        Indicates the status of the ``CreateModel`` operation.

        
  
  **Exceptions**
  
  *   :py:class:`LookoutEquipment.Client.exceptions.ValidationException`

  
  *   :py:class:`LookoutEquipment.Client.exceptions.ConflictException`

  
  *   :py:class:`LookoutEquipment.Client.exceptions.ThrottlingException`

  
  *   :py:class:`LookoutEquipment.Client.exceptions.ServiceQuotaExceededException`

  
  *   :py:class:`LookoutEquipment.Client.exceptions.InternalServerException`

  
  *   :py:class:`LookoutEquipment.Client.exceptions.ResourceNotFoundException`

  
  *   :py:class:`LookoutEquipment.Client.exceptions.AccessDeniedException`

  