ClassificationSolution - 전역

  • 릴리스 버전: Australia
  • 업데이트 날짜 2026년 03월 12일
  • 소요 시간: 20분
  • ClassificationSolution API는 스토어에서 예측 인텔리전스 사용되는 스크립트 가능한 객체입니다.

    이것 API에는 플러그인(com.glide.platform_ml)이 필요 예측 인텔리전스 하며 sn_ml 네임스페이스 내에서 제공됩니다.

    솔루션 설정부터 교육까지의 플로우는 다음과 같습니다.
    1. DatasetDefinition API를 사용하여 데이터 세트를 만듭니다.
    2. 옵션입니다. 인코더 API를 사용하여 인코더를 빌드합니다.
    3. 생성자를 사용하여 분류 솔루션 개체를 만듭니다.
    4. ClassificationSolutionStore - add() 메서드를 사용하여 솔루션 개체를 분류 솔루션 저장소에 추가합니다.
    5. submitTrainingJob() 메서드를 사용하여 솔루션을 교육합니다. 이렇게 하면 ClassificationSolutionVersion API를 사용하여 관리할 수 있는 객체 버전이 생성됩니다.
    6. ClassificationSolutionVersion – predict() 메서드를 사용하여 예측을 가져옵니다.
    주:
    이 API는 Vancouver 패치 7 핫픽스 2b 및 Washington DC 패치 7 릴리스 전에 모든 권한으로 실행됩니다. 이후 릴리스에서는 ACL을 사용하여 액세스 권한을 부여합니다. 자세한 내용은 다음 문서를 참조하십시오 Query ACLs.

    사용 지침은 ML API 사용을 참조하세요.

    ClassificationSolution - ClassificationSolution(객체 구성)

    분류 솔루션을 생성합니다.

    표 1. 매개변수
    이름 유형 설명
    구성 객체 의 구성 속성을 포함하는 JavaScript 객체 해결책.
    {
      "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 객체 알고리즘 구성 속성을 포함하는 JavaScript 객체입니다.
    'algorithmConfig' : {
      "algorithm": "String",
      "targetClassRecall": "String"
    }
    config.algorithmConfig.algorithm 문자열 솔루션을 인코딩하는 방법입니다.
    가능한 값:
    • xgboost: XGBoost 인코딩을 사용하여 학습을 최적화합니다.
    • logisticRegression: 명목 또는 순서와 같은 범주형 대상에 대해 로지스틱 회귀 모델을 사용하는 방법입니다.
    config.algorithmConfig.targetClassRecall 문자열 클래스 회수 매개변수를 적용하여 솔루션의 교육이 특정 클래스를 편향하도록 조정합니다. 형식은 "<ClassName:RecallValue>" 이며, 여기서 회수 값은 백분율을 나타내는 0에서 100 사이의 숫자입니다. 예를 들어 Email 클래스에서 교육하는 모든 기록에 대해 이 솔루션 매개변수를 90% 정확도로 설정하고 적용하려면 값을 "Email:90"으로 설정합니다.
    config.dataset 객체 DatasetDefinition 이름입니다.
    config.domainName 문자열 옵션입니다. 이 데이터 세트와 연결된 도메인 이름입니다. 도메인 분리 및 예측 인텔리전스를 참조하십시오.

    기본값: 현재 도메인(예: "전역").

    config.encoder 객체 옵션입니다. 이 솔루션에 할당할 학습된 인코더 객체입니다. 인코더 - 인코더(객체 구성) 문서를 참조하십시오.
    config.explainability 부울 모델 설명가능성을 제공할지 여부를 나타내는 플래그입니다. 모델 설명 가능성을 사용하여 모델의 예측에 대한 각 입력 필드의 중요도를 식별합니다.
    유효한 값은 다음과 같습니다.
    • true: 분류 모델에 설명 가능성 세부 정보가 포함됩니다. 정보는 모델 솔루션 양식의 기능 중요도 탭에서 볼 수 있습니다.
    • false: 분류 모델에 설명 가능성 세부 정보가 포함되어 있지 않습니다.

    기본값: false

    참조: Model Explainability

    config.groupByFieldName 문자열 옵션입니다. 시스템이 분류 솔루션을 빌드하기 위해 기록을 그룹화하는 기준으로 사용할 필드 이름입니다.사용 정보는 분류에 그룹 기준 사용을 참조하십시오.
    config.inputFieldNames 배열 문자열로 된 입력 필드 이름 목록입니다. 모델은 예측에 사용되는 이러한 필드를 사용합니다.
    config.label 문자열 예측 작업을 식별합니다.
    config.minRowCount 문자열 옵션입니다. 교육을 위해 데이터 세트에 필요한 최소 기록 수입니다.

    기본값: 10000

    config.predictedFieldName 문자열 예측 가능성을 학습시킬 필드를 식별합니다.
    config.processingLanguage 문자열 옵션입니다. 두 글자 ISO 639-1 언어 코드 형식의 처리 언어입니다.

    기본값: "en"

    config.stopwords 배열 옵션입니다. 속성 설정에 따라 시스템이 자동으로 생성하는 문자열의 사전 설정 목록입니다 language . 자세한 내용은 사용자 지정 스톱 워드 목록 만들기를 참조하세요.

    기본값: 영어 스톱 워드

    config.trainingFrequency 문자열 모델을 재교육할 빈도입니다.
    가능한 값:
    • every_30_days
    • every_60_days
    • every_90_days
    • every_120_days
    • every_180_days
    • run_once
    기본값: run_once

    다음 예제에서는 객체를 생성하고 객체를 ClassificationSolution 스토어입니다.

    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()

    에 대한 작업을 취소 솔루션 객체 교육을 위해 제출된

    표 2. 매개변수
    이름 유형 설명
    안 함
    표 3. 반환
    유형 설명
    안 함

    다음 예는 기존 교육 작업을 취소하는 방법을 보여줍니다.

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

    ClassificationSolution - getActiveVersion()

    활성 항목을 가져옵니다. ClassificationSolutionVersion 객체입니다.

    표 4. 매개변수
    이름 유형 설명
    안 함
    표 5. 반환
    유형 설명
    객체 활성 ClassificationSolutionVersion 객체입니다.

    다음 예제에서는 분류솔루션 스토어에서 활성 버전을 가져오고 교육 상태를 반환

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

    출력:

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

    ClassificationSolution - getAllVersions()

    의 모든 버전을 가져옵니다. 분류 솔루션입니다.

    표 6. 매개변수
    이름 유형 설명
    안 함
    표 7. 반환
    유형 설명
    배열 솔루션 객체의 기존 버전입니다. 더 보기 분류솔루션버전 API입니다.

    다음 예제에서는 모든 ClassificationSolution 버전 개체를 가져오고 해당 개체에 대해 getVersionNumber()getStatus() 솔루션 버전 메서드를 호출하는 방법을 보여줍니다.

    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");
    };

    출력:

    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()

    의 최신 버전을 가져옵니다. 해결책.

    표 8. 매개변수
    이름 유형 설명
    안 함
    표 9. 반환
    유형 설명
    객체 ClassificationSolutionVersion 의 최신 버전에 해당하는 객체 a ClassificationSolution()입니다.

    다음 예제에서는 솔루션의 최신 버전을 가져오 고 교육 상태를 반환하는 방법을 보여줍니다.

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

    출력:

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

    ClassificationSolution - getName()

    스토어와의 상호작용에 사용할 객체의 이름을 가져옵니다.

    표 10. 매개변수
    이름 유형 설명
    안 함
    표 11. 반환
    유형 설명
    문자열 솔루션 객체의 이름입니다.

    다음 예제에서는 분류솔루션 데이터 세트 정보를 업데이트하고 객체 이름을 인쇄하는

    // 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());

    출력:

    Solution Name: ml_x_snc_global_global_my_solution_definition_4

    ClassificationSolution - getProperties()

    솔루션 객체 속성 가져오기.

    표 12. 매개변수
    이름 유형 설명
    안 함
    표 13. 반환
    유형 설명
    객체 ClassificationSolutionStore의 데이터 세트 및 ClassificationSolution() 개체 세부 정보의 내용입니다.
    {
      "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 솔루션을 인코딩하는 방법입니다.

    데이터 유형: 객체.

    <Object>.algorithmConfig.algorithm 이 솔루션을 학습시키기 위한 인코딩 알고리즘의 이름입니다.
    가능한 값:
    • xgboost: XGBoost 인코딩을 사용하여 학습을 최적화합니다.
    • logisticRegression: 명목 또는 순서와 같은 범주형 대상에 대해 로지스틱 회귀 모델을 사용하는 방법입니다.

    데이터 유형: 문자열.

    <Object>.algorithmConfig.targetClassRecall 특정 클래스를 편향하도록 솔루션의 교육을 조정하는 클래스 회수 매개변수입니다. 회수 값은 백분율을 나타내는 0에서 100 사이의 숫자입니다.

    데이터 유형: 문자열

    <Object>.datasetProperties

    솔루션과 연결된 DatasetDefinition() 개체의 속성을 나열합니다.

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

    데이터 유형: 객체.

    <Object>.datasetProperties.tableName 데이터 세트의 테이블 이름입니다. 예: "tableName" : "Incident".

    데이터 유형: 문자열.

    <Object>.datasetProperties.fieldNames 지정된 테이블의 필드 이름을 문자열로 나열합니다. 예: "fieldNames" : ["short_description", "priority"].

    데이터 유형: 배열.

    <Object>.datasetProperties.fieldNames.fieldDetails 필드 속성을 지정하는 JavaScript 객체의 목록입니다.
    [
      {
        "name": "String",
        "type": "String"
      }
    ]

    데이터 유형: 배열.

    <Object>.datasetProperties.fieldNames.fieldDetails.<object>. 이름 이 데이터 세트를 제한하는 정보 유형을 정의하는 필드의 이름입니다.

    데이터 유형: 문자열.

    <Object>.datasetProperties.fieldDetails.<object>. 유형 머신 러닝 필드 유형입니다.

    데이터 유형: 문자열.

    <Object>.datasetProperties.fieldDetails.encodedQuery 표준 Glide 형식으로 인코딩된 쿼리 문자열입니다. 인코딩된 쿼리 문자열을 참조하세요.

    데이터 유형: 문자열.

    <Object>.domainName 이 데이터 세트와 연결된 도메인 이름입니다. 도메인 분리 및 예측 인텔리전스를 참조하십시오.

    데이터 유형: 문자열.

    <Object>.encoder 이 솔루션에 할당된 인코더 객체입니다. 인코더 - 인코더(객체 구성) 문서를 참조하십시오.

    데이터 유형: 객체.

    <Object>.groupByFieldName 시스템이 분류 솔루션을 빌드하기 위해 기록을 그룹화하는 기준으로 사용할 필드 이름입니다.

    데이터 유형: 문자열

    <Object>.inputFieldNames 문자열로 된 입력 필드 이름 목록입니다. 모델은 예측에 사용되는 이러한 필드를 사용합니다.

    데이터 유형: 문자열.

    <Object>.label 예측 작업을 식별합니다.
    {
      "label": "my first prediction"
    }

    데이터 유형: 문자열.

    <Object>.name 시스템에서 할당한 이름입니다.

    데이터 유형: 문자열.

    <Object>.predictedFieldName 예측 가능성을 학습시킬 필드를 식별합니다.

    데이터 유형: 문자열.

    <Object>.processingLanguage 두 글자 ISO 639-1 언어 코드 형식의 처리 언어입니다.

    데이터 유형: 문자열.

    <Object>.scope 객체 범위입니다. 현재 유효한 값은 전역입니다.

    데이터 유형: 문자열

    <Object>.stopwords 옵션입니다. 속성 설정에 따라 시스템이 자동으로 생성하는 문자열의 사전 설정 목록입니다 language . 자세한 내용은 사용자 지정 스톱 워드 목록 만들기를 참조하세요.

    데이터 유형: 배열.

    <Object>.trainingFrequency 모델을 재교육할 빈도입니다.
    가능한 값:
    • every_30_days
    • every_60_days
    • every_90_days
    • every_120_days
    • every_180_days
    • run_once
    기본값: run_once

    데이터 유형: 문자열.

    다음 예제에서는 저장소에 있는 솔루션 개체의 속성을 가져옵니다.

    var mySolution = sn_ml.ClassificationSolutionStore.get('ml_sn_global_global_classification_solution');
    
    gs.print(JSON.stringify(JSON.parse(mySolution.getProperties()), null, 2));
    출력:
    *** 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(문자열 버전)

    솔루션을 가져옵니다. 제공된 버전 번호를 기준으로 합니다.

    표 14. 매개변수
    이름 유형 설명
    버전 문자열 솔루션의 기존 버전 번호입니다.
    표 15. 반환
    유형 설명
    객체 ClassificationSolutionVersion API 메서드를 호출할 수 있는 지정된 버전의 ClassificationSolution() 객체입니다.

    다음 예제에서는 버전 번호로 솔루션의 교육 상태를 가져오는 방법을 보여줍니다.

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

    출력:

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

    ClassificationSolution - setActiveVersion(문자열 버전)

    스토어에서 지정된 버전의 솔루션을 활성화합니다.

    표 16. 매개변수
    이름 유형 설명
    버전 문자열 활성화할 ClassificationSolution() 객체 버전의 이름입니다.

    이 버전을 활성화하면 다른 버전이 비활성화됩니다.

    표 17. 반환
    유형 설명
    안 함

    다음 예는 스토어에서 솔루션 버전을활성화하는 방법을 보여줍니다.

    sn_ml.ClassificationSolution.setActiveVersion("ml_incident_categorization");

    ClassificationSolution - submitTrainingJob()

    교육 작업을 제출합니다.

    주:
    이 메서드를 실행하기 전에 먼저 ClassificationSolutionStore - add() 메서드를 사용하여 저장소에 솔루션을 추가해야 합니다.
    표 18. 매개변수
    이름 유형 설명
    안 함
    표 19. 반환
    유형 설명
    객체 ClassificationSolutionVersion 객체에 해당하는 객체입니다. 분류솔루션 학습 중인

    다음 예제에서는 데이터 세트를 만들고, 솔루션에 적용하고, 솔루션을 스토어에 추가하고, 교육 작업을 제출하는 방법을 보여 줍니다.

    // 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();