ClassificationSolution Version - Global
. ClassificationSolution Version 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.
Esta API é usada para trabalhar com versões de solução baseadas em API ClassificationSolution objetos no Armazenamento de soluções Classification .
O sistema cria uma versão de solução sempre que você treina uma definição de solução. A maioria das versões é criada durante o treinamento programado da solução.
ClassificationSolutionVersion - getPredictionPerformance (opções de objeto)
Calcula a precisão e a cobertura da solução.
Para usar este método, você deve primeiro criar configurações usando SetPredictionSettings() método.
| Nome | Tipo | Descrição |
|---|---|---|
| opções | Objeto | Seleciona uma métrica a ser recuperada em um intervalo de datas. Para obter mais informações, consulte Configurar métricas de destino . |
| options.fromDate | Cadeia de caracteres | Opcional. Data de início a partir da qual recuperar métricas no formato de data e hora do sistema. |
| Options.metricName | Cadeia de caracteres | Nome da métrica. Valores válidos:
|
| Opções.até o momento | Cadeia de caracteres | Opcional. Data de término a partir da qual recuperar métricas. Formnt: Formato de data e hora do sistema. |
| Tipo | Descrição |
|---|---|
| Objeto | Objeto JavaScript analisável que contém os resultados da métrica de entrada. |
| Object.metricName | Nome da métrica selecionada como entrada. Tipo de dados: Cadeia de caracteres |
| Object.metricValue | Valor da métrica selecionada. Tipo de dados: Cadeia de caracteres |
| Object.numberOfRecordsConsided | Número de registros na tabela Resultados de previsão [ml_preditor_results] considerados para cálculos. Tipo de dados: Cadeia de caracteres |
O exemplo a seguir mostra como obter um valor de precisão da versão ativa de uma solução.
// Get precision value
var mlSolution = sn_ml.ClassificationSolutionStore.get('ml_incident_categorization');
gs.print(JSON.stringify(JSON.parse(mlSolution.getActiveVersion().getPredictionPerformance({"metricName": "precision"})), null, 2));
Saída:
{
"metricName": "precision",
"metricValue": "70.10",
"numberOfPredictionsConsidered": "10"
}
ClassificationSolutionVersion - getPredictionSettings()
Obtém precisão estimada, cobertura estimada, valores de cancelamento estimados da tabela Soluções de ML [ml_solution] e registros da tabela Confiança de classe [ml_class].
| Nome | Tipo | Descrição |
|---|---|---|
| Nenhum |
| Tipo | Descrição |
|---|---|
| Objeto | Retorna configurações de previsão para cada classe. Os dados incluem precisão, cobertura, recall e valores de distribuição de todas as classes incluídas no modelo treinado da tabela Soluções DE ML [ml_solution]. Para obter detalhes, consulte Componentes do modelo preditivo . |
| <Object>.<class name> | Dados de estatísticas de treinamento da tabela Confiança da classe [ml_class]. Para obter mais informações, consulte Configurar métricas de destino . Tipo de dados: Objeto |
| <Object>.<class name>.precisão | Métrica de precisão da solução estimada para esta classe. Tipo de dados: Cadeia de caracteres (valor numérico) |
| <Object>.<class name>.coverage | Métrica de cobertura de solução estimada para esta classe. Tipo de dados: Cadeia de caracteres (valor numérico) |
| <Object>.<class name>.recall | Métrica de cancelamento de solução estimada para esta classe. Tipo de dados: Cadeia de caracteres (valor numérico) |
O exemplo a seguir mostra como obter configurações de previsão de uma versão de solução ativa.
var mlSolution = sn_ml.ClassificationSolutionStore.get('ml_incident_categorization');
gs.print(JSON.stringify(JSON.parse(mlSolution.getActiveVersion().getPredictionSettings()), null, 2));
Saída:
{
"solutionSettings": {
"precision": "61.69",
"coverage": "66.75",
"recall": "57.54"
},
"classSettings": {
"Approvals": {
"precision": "100",
"coverage": "0",
"recall": "0"
},
"Authentication": {
"precision": "38.71",
"coverage": "98.44",
"recall": "56.25"
},
"Automation": {
"precision": "100",
"coverage": "0",
"recall": "0"
}, ...
ClassificationSolutionVersion - getProperties()
Obtém propriedades do objeto de solução e o número da versão.
| Nome | Tipo | Descrição |
|---|---|---|
| Nenhum |
| Tipo | Descrição |
|---|---|
| Objeto | Conjunto de dados e. ClassificationSolução detalhes da versão. Os resultados variam de acordo com a configuração da propriedade do objeto. |
| <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:
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. 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. Tipo de dados: Matriz de objetos
|
| <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>.IsActive | Sinalizador que indica se esta versão está ativa. Valores válidos:
Tipo de dados: Cadeia de caracteres |
| <Object>.label | Identifica a tarefa de previsão. 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:
Tipo de dados: Cadeia de caracteres |
| <Object>.VersionNumber | Número da versão do ClassificationSolução objeto. Tipo de dados: Cadeia de caracteres |
O exemplo a seguir obtém propriedades da versão do objeto ativo no armazenamento.
// Get properties
var mlSolution = sn_ml.ClassificationSolutionStore.get('ml_incident_categorization');
gs.print(JSON.stringify(JSON.parse(mlSolution.getActiveVersion().getProperties()), null, 2));
Saída:
*** Script: {
"datasetProperties": {
"encodedQuery": "activeANYTHING^EQ",
"fieldNames": [
"short_description",
"category"
],
"tableName": "incident"
},
"domainName": "global",
"inputFieldNames": [
"short_description"
],
"isActive": "true",
"label": "Incident Categorization_Trainer",
"name": "ml_incident_categorization",
"predictedFieldName": "category",
"processingLanguage": "en",
"stopwords": [
"Default English Stopwords"
],
"versionNumber": "1"
}
ClassificationSolutionVersion - getStatus(boolian includeDetails)
Obtém o status de conclusão do treinamento.
| Nome | Tipo | Descrição |
|---|---|---|
| IncludeDetalhes | Booliano | Sinalizador que indica se o status deve ser retornado details. Valores válidos:
Padrão: Falso |
| Tipo | Descrição |
|---|---|
| Objeto | Objeto JavaScript que contém informações de status de treinamento para. ClassificationSolução objeto. |
| <Object>.estado | Estado de conclusão do treinamento. Se o trabalho de treinamento atingir um estado de terminal, o trabalho não deixará esse estado. Se o estado for terminal, o hasJobEndeda propriedade está definida como verdadeiro .Valores possíveis:
Tipo de dados: Cadeia de caracteres |
| <Object>.HasJobEnded | Sinalizador que indica se o treinamento está concluído. Valores válidos:
Tipo de dados: Valor booliano como uma cadeia de caracteres |
| <Object>.PercentCompletar | Percentual de treinamento concluído. Se a porcentagem de conclusão for menor que 100, o trabalho poderá estar em um estado terminal. Por exemplo, se o treinamento expirar. Tipo de dados: Número como uma cadeia de caracteres Intervalo: 0 a 100 |
| <Object>.detalhes | Objeto que contém uma lista de detalhes adicionais de treinamento. Tipo de dados: Objeto |
O exemplo a seguir mostra um resultado bem-sucedido com o treinamento concluído.
// Get status
var mlSolution = sn_ml.ClassificationSolutionStore.get('ml_incident_categorization');
gs.print(JSON.stringify(JSON.parse(mlSolution.getActiveVersion().getStatus(true), null, 2)));
Saída:
{
"state":"solution_complete",
"percentComplete":"100",
"hasJobEnded":"true",
"details":{"stepLabel":"Solution Complete"} // This information is only returned if getStatus(true);
}
O exemplo a seguir mostra um resultado malsucedido com o treinamento concluído.
// Get status
var solutionName = 'ml_x_snc_global_global_classification_solution';
var mlSolution = sn_ml.ClassificationSolutionStore.get(solutionName);
var trainingStatus = mlSolution.getLatestVersion().getStatus();
gs.print(JSON.stringify(JSON.parse(trainingStatus), null, 2));
Saída:
{
"state":"solution_error",
"percentComplete":"100",
"hasJobEnded":"true"
}
ClassificationSolutionVersion - getTrainingStatistics()
Obtém todas as estatísticas de treinamento de uma determinada solução.
| Nome | Tipo | Descrição |
|---|---|---|
| Nenhum |
| Tipo | Descrição |
|---|---|
| Objeto | Objeto JavaScript com estatísticas para cada classe incluída no treinamento e valores para cada classe que foi excluída do treinamento. Para obter detalhes, consulte Componentes do modelo preditivo . |
| <Object>.IncludedClasses | Objeto que contém valores de precisão, cobertura, recall e distribuição de cada classe no modelo treinado. Tipo de dados: Objeto
|
| <Object>.IncludedClasses.<class name>.distribution | Valor da distribuição de probabilidade de resultado para esta classe. Tipo de dados: Cadeia de caracteres |
| <Object>.IncludedClasses.<class name>.statics | Lista de objetos que fornecem dados de estatísticas de treinamento. Para obter mais informações, consulte Configurar métricas de destino . Tipo de dados: Matriz de objetos
|
| <Object>.IncludedClasses.<class name>.statics.Coverage | Métrica de cobertura de solução estimada para esta classe. Tipo de dados: Cadeia de caracteres (valor numérico) |
| <Object>.IncludedClasses.<class name>.statics.precision | Métrica de precisão da solução estimada para esta classe. Tipo de dados: Cadeia de caracteres (valor numérico) |
| <Object>.IncludedClasses.<class name>.statics.recall | Métrica de cancelamento de solução estimada para esta classe. Tipo de dados: Cadeia de caracteres (valor numérico) |
| <Object>.IncludedClasses.<class name>.statistics.selected | Sinalizador que indica se esta classe contém registros incluídos no treinamento da solução. Valores válidos:
Tipo de dados: Cadeia de caracteres (valor booliano) Padrão: falso |
| <Object>.ExcludedClasses | Contagem de linhas e distribuição de todas as classes excluídas do treinamento. Tipo de dados: Objeto |
| <Object>.ExcludedClasses.<class name>.distribution | Valor da distribuição de probabilidade de resultado para esta classe. Tipo de dados: Cadeia de caracteres |
| <Object>.ExcludedClasses.<class name>.rowCount | Número de linhas excluídas do treinamento. Tipo de dados: Cadeia de caracteres (valor numérico) |
O exemplo a seguir mostra como obter estatísticas de treinamento da solução ativa.
// Get training stats
var mlSolution = sn_ml.ClassificationSolutionStore.get('ml_incident_categorization');
gs.print(JSON.stringify(JSON.parse(mlSolution.getActiveVersion().getTrainingStatistics()), null, 2));
Saída:
{
"includedClasses": {
"Approvals": {
"distribution": "0.43",
"statistics": [
{
"precision": "100",
"coverage": "0",
"recall": "0",
"selected": "true"
}
]
},
"Authentication": {
"distribution": "4.3",
"statistics": [
{
"precision": "39.33",
"coverage": "95.31",
"recall": "54.69",
"selected": "false"
},
{
"precision": "100",
"coverage": "0",
"recall": "0",
"selected": "false"
},
...
}
...
"excludedClasses": {
"ACE": {
"distribution": "0.11",
"rowCount": "9"
},
"AHA": {
"distribution": "0.01",
"rowCount": "1"
},
...
}
ClassificationSolutionVersion - getVersionNumber()
Obtém o número da versão de um objeto de solução.
| Nome | Tipo | Descrição |
|---|---|---|
| Nenhum |
| Tipo | Descrição |
|---|---|
| Cadeia de caracteres | Número da versão. |
O exemplo a seguir mostra como obter um número de versão.
// Get version number
var mlSolution = sn_ml.ClassificationSolutionStore.get('ml_incident_categorization');
gs.print("Version number: "+JSON.stringify(JSON.parse(mlSolution.getActiveVersion().getVersionNumber()), null, 2));
Saída:
Version number: 1
ClassificationSolutionVersion - Previsão (entrada de objeto, opções de objeto)
Obtém os dados de entrada para uma previsão.
| Nome | Tipo | Descrição |
|---|---|---|
| entrada | Objeto | GlideRecord Ou matriz de objetos JSON que contém nomes de campos e valores como pares de chave-valor. |
| opções | Objeto | Valores opcionais para filtrar resultados de previsão. |
| options.apply_threshold | Booliano | Sinalizador que indica se o valor limite da solução deve ser verificado e aplicado ao conjunto de resultados. Valores válidos:
Padrão: Verdadeiro |
| opções.top_n | Número | Se fornecido, retorna os principais resultados, até o número especificado de previsões. |
| Tipo | Descrição |
|---|---|
| Objeto | Objeto JSON que contém os resultados de previsão classificados por sys_id ou record_number. |
| <Object>.<identifier> | Lista de objetos com detalhes para cada resultado de previsão. Tipo de dados: Matriz de objetos
|
| <Object>.<identifier>. <object>.confidence | Valor da confiança associada à previsão. Por exemplo, 53,84. Tipo de dados: Número |
| <Object>.<identifier>. <object>.PredictedSysId | O sys_id do valor previsto. Os resultados podem ser de qualquer tabela na qual as informações estão sendo previstas. Tipo de dados: Cadeia de caracteres |
| <Object>.<identifier>. <object>.PredictedValue | Valor que representa o resultado da previsão. Tipo de dados: Cadeia de caracteres |
| <Object>.<identifier>. <object>.threshold | Valor do limite configurado associado à previsão. Tipo de dados: Número |
O exemplo a seguir mostra como exibir resultados de previsão para um previsão() Método que usa um GlideRecord por sys_id para entrada e inclui parâmetros opcionais para restringir aos três principais resultados e excluir o valor de limite.
var mlSolution = sn_ml.ClassificationSolutionStore.get('ml_incident_categorization');
// single GlideRecord input
var input = new GlideRecord("incident");
input.get("<sys_id>");
// configure optional parameters
var options = {};
options.top_n = 3;
options.apply_threshold = false;
var results = mlSolution.getVersion(1).predict(input, options);
// pretty print JSON results
gs.print(JSON.stringify(JSON.parse(results), null, 2));
Saída:
{
"<sys_id/gr>": [
{
"confidence": 62.10782320780268,
"threshold": 20.36,
"predictedValue": "Clone Issues",
"predictedSysId": ""
},
{
"confidence": 6.945237375770391,
"threshold": 16.63,
"predictedValue": "Instance Administration",
"predictedSysId": ""
},
{
"confidence": 5.321061076300759,
"threshold": 23.7,
"predictedValue": "Administration",
"predictedSysId": ""
}
]
}
O exemplo a seguir mostra como exibir resultados de previsão para um previsão() método que usa uma matriz de nomes de campos como pares de chave-valor para entrada e inclui parâmetros opcionais para restringir aos três principais resultados e excluir o valor limite.
var mlSolution = sn_ml.ClassificationSolutionStore.get('ml_incident_categorization');
// key-value pairs input
var input = [{"short_description":"my email is not working"}, {short_description:"need help with password"}];
// configure optional parameters
var options = {};
options.top_n = 3;
options.apply_threshold = false;
var results = mlSolution.predict(input, options);
// pretty print JSON results
gs.print(JSON.stringify(JSON.parse(results), null, 2));
Saída:
{
"1": [
{
"confidence": 37.5023032262591,
"threshold": 10.72,
"predictedValue": "Authentication",
"predictedSysId": ""
},
{
"confidence": 24.439964862166583,
"threshold": 23.7,
"predictedValue": "Administration",
"predictedSysId": ""
},
{
"confidence": 11.736320486031047,
"threshold": 100,
"predictedValue": "Security",
"predictedSysId": ""
}
],
"2": [
{
"confidence": 99,
"threshold": 17.77,
"predictedValue": "Email",
"predictedSysId": ""
},
{
"confidence": 3.182137005157543,
"threshold": 10.72,
"predictedValue": "Authentication",
"predictedSysId": ""
},
{
"confidence": 2.8773826570713514,
"threshold": -1,
"predictedValue": "Email (I/f)",
"predictedSysId": ""
}
]
}
ClassificationSolutionVersion - setPredictionSettings(opções de objeto)
Define valores de precisão, cobertura ou cancelamento no nível de solução ou nível de classe.
| Nome | Tipo | Descrição |
|---|---|---|
| opções | Objeto | Valores de configuração de métrica. Para obter informações sobre esses recursos, consulte Configurar métricas de destino . |
| Options.metricName | Cadeia de caracteres | Nome da métrica a ser definida. Valores válidos:
|
| MetricValue | Cadeia de caracteres | Valor numérico a ser atribuído à métrica. |
| Options.classname | Cadeia de caracteres | Opcional. Nome da classe para restringir os resultados. Use GetTrainingEstatísticas() método para recuperar uma lista completa de classes para uma solução. |
| Tipo | Descrição |
|---|---|
| Nenhum(a) |
O exemplo a seguir mostra como definir uma métrica de precisão como 89,5 para uma classe chamada Clonar problemas .
var mlSolution = sn_ml.ClassificationSolutionStore.get('ml_x_snc_global_global_classification');
var input = {"metricName" : "precision", "metricValue" : "89.5", "className" : "Clone Issues"};
mlSolution.getActiveVersion().setTrainingStatistics(input);