ClassificationSolução - Global

  • Versão de lançamento: Zurich
  • Atualizado 31 de jul. de 2025
  • 9 min. de leitura
  • . ClassificationSolução A API é um objeto programável usado em Inteligência preditiva armazenamentos.

    Este A API requer Inteligência preditiva plug-in (com.glide.platform_ml) e é fornecido em sn_ml namespace.

    A configuração da solução para o fluxo de treinamento é a seguinte:
    1. Crie um conjunto de dados usando DatasetDefinition API.
    2. Opcional. Crie um codificador usando Codificador API.
    3. Use construtor para criar um objeto de solução de classificação.
    4. Adicione o objeto de solução ao armazenamento de soluções de classificação usando ClassificationSolutionStore - add() método.
    5. Treine a solução usando SubmitTrainingJob() método. Cria uma versão do objeto que você pode gerenciar usando ClassificationSolution Version API.
    6. Obtenha previsões usando ClassificationSolutionVersion – Predict() método.
    Nota:
    Esta API é executada com privilégios totais antes de Vancouver Patch 7 Hotfix 2b e. Washington DC Versões do patch 7. Com versões posteriores, conceda acesso usando ACLs. Para obter mais informações, consulte Query ACLs.

    Para obter diretrizes de uso, consulte Usando APIs DE ML .

    ClassificationSolution - ClassificationSolution (configuração de objeto)

    Cria uma solução de classificação.

    Tabela 1. Parâmetros
    Nome Tipo Descrição
    config Objeto Objeto JavaScript que contém propriedades de configuração do solução.
    {
      "algorithmConfig": {Object},
      "dataset": {Object},
      "domainName": "String",
      "encoder": {Object},
      "groupByFieldName": "String", 
      "inputFieldNames": [Array],
      "label": "String",
      "minRowCount": "String",
      "predictedFieldName": "String",
      "processingLanguage": "String",
      "stopwords": [Array],
      "trainingFrequency": "String"
    }
    Config.algorithmConfig Objeto Objeto JavaScript que contém propriedades de configuração do algoritmo.
    'algorithmConfig' : {
      "algorithm": "String",
      "targetClassRecall": "String"
    }
    Config.algorithmConfig.algorithm Cadeia de caracteres Método para codificar sua solução.
    Valores possíveis:
    • xgboostCodificação XGBoost para otimizar o treinamento.
    • logisticRegressionMétodo usando o modelo de regressão logística para metas categóricas, como nominal ou ordinal.
    Config.algorithmConfig.targetClassRecall Cadeia de caracteres Aplica um parâmetro de cancelamento de classe para orientar o treinamento de uma solução para influenciar uma classe específica. O formato é "<ClassName:RecallValue>" em que o valor de cancelamento é um número entre 0 e 100 que representa uma porcentagem. Por exemplo, para definir e aplicar este parâmetro de solução a 90% de precisão para todos os registros que você treina na classe E-mail, o valor é definido como "E-mail: 90" .
    config.dataset Objeto DatasetDefinition nome.
    Config.domainname Cadeia de caracteres Opcional. Nome de domínio associado a este conjunto de dados. Consulte Domain Separation e. Inteligência preditiva.

    Domínio atual, por exemplo, "global" .

    config.encoder Objeto Opcional. Objeto do codificador treinado para atribuir a esta solução. Consulte Encoder - Encoder (configuração de objeto).
    config.explicabilidade Booliano Sinalizador que indica se o modelo deve ser fornecido explicabilidade. Use a explicabilidade do modelo para identificar a importância de cada campo de entrada para as previsões do seu modelo.
    Valores válidos:
    • Verdadeiro: O modelo de classificação inclui detalhes de explicabilidade. As informações podem ser exibidas no Importância do recurso do formulário de solução do modelo.
    • Falso: O modelo de classificação não inclui detalhes de explicabilidade.

    Padrão: falso

    Consulte também: Model Explainability

    config.groupByFieldName Cadeia de caracteres Opcional. Nome do campo pelo qual o sistema agrupa registros para criar soluções de classificação.Para obter informações de uso, consulte Agrupar por para classificação .
    config.inputFieldNames Matriz Lista de nomes de campos de entrada como cadeias de caracteres. O modelo usa esses campos usados para fazer previsões.
    config.label Cadeia de caracteres Identifica a tarefa de previsão.
    Config.minRow Count Cadeia de caracteres Opcional. Número mínimo de registros necessários no conjunto de dados para treinamento.

    Padrão: 10000

    PredictedFieldName Cadeia de caracteres Identifica um campo a ser treinado para previsão.
    config.processingLanguage Cadeia de caracteres Opcional. Linguagem de processamento no formato de código de idioma ISO 639-1 de duas letras.

    Padrão: "en"

    config.stopwords Matriz Opcional. Lista predefinida de cadeias de caracteres que o sistema gera automaticamente com base em languageconfiguração de propriedade. Para obter detalhes, consulte Crie uma lista de palavras irrelevantes personalizada .

    Padrão: Palavras irrelevantes em inglês

    Config.TrainingFrequency Cadeia de caracteres A frequência para treinar novamente o modelo.
    Valores possíveis:
    • every_30_days
    • every_60_days
    • every_90_days
    • every_120_days
    • every_180_days
    • run_once
    Padrão: Run_once

    O exemplo a seguir mostra como criar um objeto e adicioná-lo ao Armazenamento de soluções Classification.

    var myData = new sn_ml.DatasetDefinition(
      { 
         'tableName' : 'incident', 
         'fieldNames' : ['category', 'short_description', 'priority'],
         'fieldDetails' : [
           {
             'name' : 'category',
             'type' : 'nominal'
           },
           {
             'name' : 'short_description',
             'type' : 'text'
           }], 
         'encodedQuery' : 'activeANYTHING'
      });
    
    var mySolution = new sn_ml.ClassificationSolution({
      'label': "my solution definition",
      'dataset' : myData,
      'predictedFieldName' : 'category',
      'inputFieldNames': ['short_description']
    });
    
    var myClassificationName = sn_ml.ClassificationSolutionStore.add(mySolution);

    ClassificationSolution - cancelTrainingJob()

    Cancela um trabalho para um objeto de solução enviado para treinamento.

    Tabela 2. Parâmetros
    Nome Tipo Descrição
    Nenhum
    Tabela 3. Retorna
    Tipo Descrição
    Nenhum

    O exemplo a seguir mostra como cancelar um trabalho de treinamento existente.

    var mySolution = sn_ml.ClassificationSolutionStore.get('ml_sn_global_global_classification');
    
    mySolution.cancelTrainingJob();

    ClassificationSolution - getActiveVersion()

    Ativa ClassificationSolution Version objeto.

    Tabela 4. Parâmetros
    Nome Tipo Descrição
    Nenhum
    Tabela 5. Retorna
    Tipo Descrição
    Objeto Ativo ClassificationSolution Version objeto.

    O exemplo a seguir mostra como obter um ativo ClassificationSolução da loja e retorna seu status de treinamento.

    var mlSolution = sn_ml.ClassificationSolutionStore.get('ml_x_snc_global_global_classification');
    
    gs.print(JSON.stringify(JSON.parse(mlSolution.getActiveVersion().getStatus()), null, 2));

    Saída:

    {
      "state": "solution_complete",
      "percentComplete": "100",
      "hasJobEnded": "true"
    }

    ClassificationSolution - getAllVersions()

    Obtém todas as versões de uma solução de classificação.

    Tabela 6. Parâmetros
    Nome Tipo Descrição
    Nenhum
    Tabela 7. Retorna
    Tipo Descrição
    Matriz Versões existentes de um objeto de solução. Consulte também ClassificationSolution Version API.

    O exemplo a seguir mostra como obter tudo ClassificationSolução objetos de versão e chamam o. GetVersionNumber() e. GetStatus() métodos de versão da solução neles.

    var mlSolution = sn_ml.ClassificationSolutionStore.get('ml_x_snc_global_global_classification');
    
    var mlSolutionVersions = mlSolution.getAllVersions();
    
    for (i = 0; i < mlSolutionVersions.length; i++) {
    gs.print("Version " + mlSolutionVersions[i].getVersionNumber() + " Status: " + mlSolutionVersions[i].getStatus() +"\n");
    };

    Saída:

    Version 3 Status: {"state":"solution_complete","percentComplete":"100","hasJobEnded":"true"}
    
    Version 2 Status: {"state":"solution_complete","percentComplete":"100","hasJobEnded":"true"}
    
    Version 1 Status: {"state":"solution_cancelled","percentComplete":"0","hasJobEnded":"true"}

    ClassificationSolution - getLatestVersion()

    Obtém a versão mais recente de uma solução.

    Tabela 8. Parâmetros
    Nome Tipo Descrição
    Nenhum
    Tabela 9. Retorna
    Tipo Descrição
    Objeto ClassificationSolution Version objeto correspondente à versão mais recente de. ClassificaçãoSolução() .

    O exemplo a seguir mostra como obter a versão mais recente de uma solução e retorna seu status de treinamento.

    var mlSolution = sn_ml.ClassificationSolutionStore.get('ml_x_snc_global_global_classification');
    
    gs.print(JSON.stringify(JSON.parse(mlSolution.getLatestVersion().getStatus()), null, 2));

    Saída:

    {
      "state": "solution_complete",
      "percentComplete": "100",
      "hasJobEnded": "true"
    }

    ClassificationSolution - getName()

    Obtém o nome do objeto a ser usado para interação com o armazenamento.

    Tabela 10. Parâmetros
    Nome Tipo Descrição
    Nenhum
    Tabela 11. Retorna
    Tipo Descrição
    Cadeia de caracteres Nome do objeto de solução.

    O exemplo a seguir mostra como atualizar ClassificationSolução informações do conjunto de dados e imprima o nome do objeto.

    // Update solution
    var myIncidentData = new sn_ml.DatasetDefinition({
       'tableName' : 'incident',
       'fieldNames' : ['category', 'short_description', 'priority'],
       'encodedQuery' : 'activeANYTHING'
    });
    
    var eligibleFields = JSON.parse(myIncidentData.getEligibleFields('classification'));
    
    var myClassification = new sn_ml.ClassificationSolution({
       'label': "my classification solution",
       'dataset' : myIncidentData,
       'inputFieldNames': eligibleFields['eligibleInputFieldNames'],
       'predictedFieldName': 'category'
    });
    
    // update solution
    sn_ml.ClassificationSolutionStore.update('ml_x_snc_global_global_my_solution_definition_4', myClassification);
    
    // print solution name
    gs.print('Solution Name: '+myClassification.getName());

    Saída:

    Solution Name: ml_x_snc_global_global_my_solution_definition_4

    ClassificationSolution - getProperties()

    Obtém propriedades do objeto de solução.

    Tabela 12. Parâmetros
    Nome Tipo Descrição
    Nenhum
    Tabela 13. Retorna
    Tipo Descrição
    Objeto Conjunto de dados e. ClassificaçãoSolução() detalhes do objeto no ClassificationSolutionStore .
    {
      "algorithmConfig": {
        "algorithm": "String",
        "targetClassRecall": "String"
      },
      "datasetProperties": {Object},
      "domainName": "String",
      "encoder": {Object},
      "groupByFieldName": "String", 
      "inputFieldNames": [Array],
      "label": "String",
      "name": "String",
      "predictedFieldName": "String",
      "processingLanguage": "String",
      "scope": "String",
      "stopwords": [Array],
      "trainingFrequency": "String"
    }
    <Object>.AlgorithmConfig Método para codificar a solução.

    Tipo de dados: Objeto.

    <Object>.AlgorithmConfig.algorithm Nome do algoritmo de codificação para treinar esta solução.
    Valores possíveis:
    • xgboostCodificação XGBoost para otimizar o treinamento.
    • logisticRegressionMétodo usando o modelo de regressão logística para metas categóricas, como nominal ou ordinal.

    Tipo de dados: Cadeia de caracteres.

    <Object>.AlgorithmConfig.targetClassRecall Parâmetro de cancelamento de classe para orientar o treinamento de uma solução para influenciar uma classe específica. O valor de cancelamento é um número entre 0 e 100 que representa uma porcentagem.

    Tipo de dados: Cadeia de caracteres

    <Object>.DatasetProperties

    Lista as propriedades do DatasetDefinition() objeto associado à solução.

    {
      "encodedQuery": "String",
      "fieldDetails": [Array],
      "fieldNames": [Array],
      "tableName": "String"
    }

    Tipo de dados: Objeto.

    <Object>.DatasetProperties.tablename Nome da tabela do conjunto de dados. Por exemplo, "Tablename" : "Incidente" .

    Tipo de dados: Cadeia de caracteres.

    <Object>.DatasetProperties.fieldnames Lista de nomes de campos da tabela especificada como cadeias de caracteres. Por exemplo, "Fieldnames" : ["short_description", "prioridade"] .

    Tipo de dados: Matriz.

    <Object>.DatasetProperties.fieldnames.fieldDetails Lista de objetos JavaScript que especificam propriedades de campo.
    [
      {
        "name": "String",
        "type": "String"
      }
    ]

    Tipo de dados: Matriz.

    <Object>.DatasetProperties.fieldnames.fieldDetails. <object>.name Nome do campo que define o tipo de informação ao qual restringir este conjunto de dados.

    Tipo de dados: Cadeia de caracteres.

    <Object>.DatasetProperties.fieldDetails. <object>.type Tipo de campo de aprendizado de máquina.

    Tipo de dados: Cadeia de caracteres.

    <Object>.DatasetProperties.fieldDetails.encodedQuery Cadeia de caracteres de consulta codificada no formato Glide padrão. Consulte Cadeias de caracteres de consulta codificadas .

    Tipo de dados: Cadeia de caracteres.

    <Object>.Domainname Nome de domínio associado a este conjunto de dados. Consulte Domain Separation e. Inteligência preditiva.

    Tipo de dados: Cadeia de caracteres.

    <Object>.encoder Objeto do codificador atribuído a esta solução. Consulte Encoder - Encoder (configuração de objeto).

    Tipo de dados: Objeto.

    <Object>.GroupByFieldName Nome do campo pelo qual o sistema agrupa registros para criar soluções de classificação.

    Tipo de dados: Cadeia de caracteres

    <Object>.InputFieldNames Lista de nomes de campos de entrada como cadeias de caracteres. O modelo usa esses campos usados para fazer previsões.

    Tipo de dados: Cadeia de caracteres.

    <Object>.label Identifica a tarefa de previsão.
    {
      "label": "my first prediction"
    }

    Tipo de dados: Cadeia de caracteres.

    <Object>.name Nome atribuído pelo sistema.

    Tipo de dados: Cadeia de caracteres.

    <Object>.PredictedFieldName Identifica um campo a ser treinado para previsão.

    Tipo de dados: Cadeia de caracteres.

    <Object>.ProcessingLanguage Linguagem de processamento no formato de código de idioma ISO 639-1 de duas letras.

    Tipo de dados: Cadeia de caracteres.

    <Object>.escopo Escopo do objeto. Atualmente, o único valor válido é global .

    Tipo de dados: Cadeia de caracteres

    <Object>.palavras irrelevantes Opcional. Lista predefinida de cadeias de caracteres que o sistema gera automaticamente com base em languageconfiguração de propriedade. Para obter detalhes, consulte Crie uma lista de palavras irrelevantes personalizada .

    Tipo de dados: Matriz.

    <Object>.TrainingFrequency A frequência para treinar novamente o modelo.
    Valores possíveis:
    • every_30_days
    • every_60_days
    • every_90_days
    • every_120_days
    • every_180_days
    • run_once
    Padrão: Run_once

    Tipo de dados: Cadeia de caracteres.

    O exemplo a seguir obtém propriedades de um objeto de solução na loja.

    var mySolution = sn_ml.ClassificationSolutionStore.get('ml_sn_global_global_classification_solution');
    
    gs.print(JSON.stringify(JSON.parse(mySolution.getProperties()), null, 2));
    Saída:
    *** Script: {
      "datasetProperties": {
        "tableName": "incident",
        "fieldNames": [
          "category",
          "short_description",
          "priority",
          "assignment_group.name"
        ],
        "fieldDetails": [
          {
            "name": "category",
            "type": "nominal"
          },
          {
            "name": "short_description",
            "type": "text"
          }
        ]
      },
      "domainName": "global",
      "inputFieldNames": [
        "short_description"
      ],
      "label": "my solution definition",
      "name": "ml_x_snc_global_global_my_solution_definition_26",
      "predictedFieldName": "category",
      "processingLanguage": "en",
      "scope": "global",
      "stopwords": [
        "Default English Stopwords"
      ],
      "trainingFrequency": "run_once"
    }

    ClassificationSolution - getVersion (versão da cadeia de caracteres)

    Obtém uma solução pelo número de versão fornecido.

    Tabela 14. Parâmetros
    Nome Tipo Descrição
    versão Cadeia de caracteres Número da versão existente de uma solução.
    Tabela 15. Retornos
    Tipo Descrição
    Objeto Versão especificada do ClassificaçãoSolução() objeto no qual você pode chamar ClassificationSolution Version Métodos de API.

    O exemplo a seguir mostra como obter o status de treinamento de uma solução por número de versão.

    var mlSolution = sn_ml.ClassificationSolutionStore.get('ml_x_snc_global_global_classification');
    
    gs.print(JSON.stringify(JSON.parse(mlSolution.getVersion('1').getStatus()), null, 2));

    Saída:

    {
      "state": "solution_complete",
      "percentComplete": "100",
      "hasJobEnded": "true"
    }

    ClassificationSolution - setActiveVersion(versão da cadeia de caracteres)

    Ativa uma versão especificada de uma solução no armazenamento.

    Tabela 16. Parâmetros
    Nome Tipo Descrição
    versão Cadeia de caracteres Nome do ClassificaçãoSolução() versão do objeto a ser ativada.

    Ativar esta versão desativa qualquer outra versão.

    Tabela 17. Retornos
    Tipo Descrição
    Nenhum

    O exemplo a seguir mostra como ativar uma solução versão na loja.

    sn_ml.ClassificationSolution.setActiveVersion("ml_incident_categorization");

    ClassificationSolution - submitTrainingJob()

    Envia um trabalho de treinamento.

    Nota:
    Antes de executar este método, você deve primeiro adicionar uma solução ao armazenamento usando ClassificationSolutionStore - add() método.
    Tabela 18. Parâmetros
    Nome Tipo Descrição
    Nenhum
    Tabela 19. Retorna
    Tipo Descrição
    Objeto ClassificationSolution Version objeto correspondente ao ClassificationSolução sendo treinado.

    O exemplo a seguir mostra como criar um conjunto de dados e aplicá-lo uma solução, adicione a solução para uma loja e envie o trabalho de treinamento.

    // Create a dataset 
    var myData = new sn_ml.DatasetDefinition({
    
      'tableName' : 'incident',
      'fieldNames' : ['assignment_group', 'short_description', 'description'],
      'encodedQuery' : 'activeANYTHING'
    
    });
    
    // Create a solution 
    var mySolution = new sn_ml.ClassificationSolution({
    
      'label': "my solution definition",
      'dataset' : myData,
      'predictedFieldName' : 'assignment_group',
      'inputFieldNames':['short_description']
    
    });
    
    // Add the solution to the store to later be able to retrieve it.
    var my_unique_name = sn_ml.ClassificationSolutionStore.add(mySolution);
    
    // Train the solution - this is a long running job 
    var myClassifierVersion = mySolution.submitTrainingJob();