ClusteringSolution - 전역

  • 릴리스 버전: Yokohama
  • 업데이트 날짜 2025년 01월 30일
  • 읽기28분
  • ClusteringSolution API는 저장소에서 예측 인텔리전스 사용되는 스크립팅 가능한 객체입니다.

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

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

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

    ClusteringSolution - ClusteringSolution(객체 구성)

    클러스터 솔루션을 작성합니다.

    표 1. 매개변수
    이름 유형 설명
    구성 객체 의 구성 속성을 포함하는 JavaScript 객체 용액.
    {
      "algorithmConfig": {Object},
      "clusterConcept": "String",
      "clusterConceptFieldNames": [Array],
      "dataset": {Object},
      "domainName": "String",
      "encoder": {Object},
      "groupByFieldName": "String",
      "groupUnclusteredRecords": Boolean,
      "inputFieldNames": [Array],
      "label": "String",
      "maxTimeWindowForUpdate" : Number,
      "minRecordsPerCluster" : Number,
      "minRowCount": "String",
      "processingLanguage": "String",
      "stopwords": [Array],
      "trainingFrequency": "String",
      "updateFrequency": "String"
    }
    config.algorithmConfig 객체 속성을 설정하지 않는 한 필수입니다 encoder . 알고리즘 구성 속성을 포함하는 JavaScript 객체입니다. 속성 설정은 속성에 설정된 algorithm 값에 따라 달라집니다.
    'algorithmConfig': {
      "algorithm": "String",  
      // See algorithmConfig.algorithm setting description for property settings based on algorithm
    }
    config.algorithmConfig.algorithm 문자열 솔루션을 인코딩하는 방법입니다.
    유효한 값은 다음과 같습니다.
    • dbscan – DBSCAN(Density-Based Spatial Clustering of Applications with Noise) 클러스터링 알고리즘. 이 알고리즘에 사용되는 속성:
      • distanceMetric
      • epsilon
      • minimumNeighbours
    • hdbscan – HDBSCAN(Hierarchical Density Based Spatial Clustering of Applications with Noise) 클러스터링 알고리즘. 이 알고리즘에 사용되는 속성:
      • minimumSamples
    • kmeans – K-평균 클러스터링 알고리즘. 기본값. 이 targetCoverage 속성은 이 알고리즘과 함께 사용됩니다.

    일부 사용자는 클러스터링 전에 데이터에서 클러스터 수를 지정할 필요가 없기 때문에 DBSCAN을 선호합니다.

    에 대한 dbscan속성
    'algorithmConfig': {
      "algorithm": "dbscan",
      "distanceMetric": "String",
      "epsilon": Number,
      "minimumNeighbours": Number
    }
    에 대한 hdbscan속성
    'algorithmConfig': {
      "algorithm": "hdbscan",
      "minimumSamples": Number
    }
    에 대한 kmeans속성
    'algorithmConfig': {
      "algorithm": "kmeans",
      "targetCoverage": Number
    }
    config.algorithmConfig.distanceMetric 문자열 DBSCAN 알고리즘만 해당됩니다. 유사한 데이터 객체를 스캔하기 위한 거리 메트릭입니다.

    유효한 값: levenshteinDistance

    config.algorithmConfig.epsilon 번호 DBSCAN 알고리즘만 해당됩니다. 인접 검색 반경의 크기를 나타내는 0에서 1 사이의 10진수 값입니다.
    config.algorithmConfig.minimumNeighbours 번호 DBSCAN 알고리즘만 해당됩니다. 클러스터의 일부가 되기 위해 포인트에 필요한 최소 인접 항목 수입니다. 값은 1이어야 데이터셋에서 포인트가 제외되지 않기 때문입니다 levenshteinDistance .
    config.algorithmConfig.minimumSamples 번호 점이 핵심점인지 여부를 결정하는 데 필요한 인접의 최소 데이터 샘플 수입니다.

    기본값: 없음

    config.algorithmConfig.targetCoverage 번호 K-means 알고리즘만 해당됩니다. 서로 덜 유사한 기록을 필터링하는 백분위수 필드입니다.
    config.cluster개념 문자열 옵션입니다. 개념 유형입니다. 개념은 빈도의 내림차순으로 나열된 단어의 집합입니다. TFIDF 기반 클러스터 개념을 생성하려면 값을 tfidf로 설정합니다. 개념 유형은 클러스터링 정의 [ml_capability_definition_clustering] 테이블에 나열됩니다.

    기본값: 주파수 기반 클러스터 개념

    config.clusterConceptFieldNames 배열 옵션입니다. 클러스터 개념 필드 이름 목록입니다. 이러한 값은 클러스터 개념을 만들기 위한 외부 열이며 클러스터 솔루션 교육에 사용되지 않습니다. 외부 열이 제공되면 해당 열은 클러스터 개념에만 사용되며 클러스터링 솔루션 교육에는 사용되지 않습니다. 클러스터 개념 필드가 클러스터링 정의 [ml_capability_definition_clustering] 테이블에 나열됩니다.

    기본값: 입력 텍스트 열은 클러스터 개념을 생성합니다.

    config.dataset 객체 DatasetDefinition 개체 이름입니다.
    config.domainName 문자열 옵션입니다. 이 데이터 세트와 연결된 도메인 이름입니다. 도메인 분리 및 예측 인텔리전스를 참조하십시오.

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

    config.encoder 객체 속성을 "levenshteinDistance"로 설정하지 않는 한 필수입니다algorithmConfig. 이 솔루션에 할당할 학습된 인코더 객체입니다. 인코더 - 인코더(객체 구성) 문서를 참조하십시오.
    config.groupByFieldName 문자열 옵션입니다. 시스템에서 기록을 하나 이상의 클러스터로 그룹화하는 기준이 되는 필드 이름입니다.
    다음 설정 예에서 시스템은 각 유형을 개별 클러스터로 그룹화하여 10개의 클러스터를 렌더링합니다.
    • groupByFieldName값은 "범주"입니다.
    • DatasetDefinition tableName 값은 "인시던트"입니다.
    • 인시던트 [incident] 테이블에는 10가지 범주 유형이 있습니다.
    config.groupUnclusteredRecords 부울

    결과에서 클러스터되지 않은 기록을 그룹화할지 여부를 나타내는 플래그입니다.

    유효한 값은 다음과 같습니다.
    • true: 클러스터되지 않은 기록을 결과에서 별도로 그룹화합니다.
    • false: 결과에서 클러스터되지 않은 기록을 그룹화하지 마십시오. 클러스터되지 않은 값(-1)이 나머지 결과와 함께 표시됩니다.

    기본값: false

    config.inputFieldNames 배열 문자열로 된 입력 필드 이름의 목록입니다. 모델은 예측에 사용되는 이러한 필드를 사용합니다.
    config.label 문자열 예측 작업을 식별합니다.
    config.maxTimeWindowForUpdate 번호 옵션입니다. 기록을 찾기 위한 모델 업데이트 지점 이전의 시간(분)입니다. 예를 들어 값이 15이면 시스템은 이전 15분 동안 생성된 기록만 검색합니다. 기본적으로 시스템은 모든 기록을 검사합니다.
    config.minRecordsPerCluster 번호 옵션입니다. 모든 클러스터에서 허용되는 최소 기록 수입니다. 값은 2보다 크거나 같아야 합니다.

    기본값: 2

    config.minRowCount 문자열 옵션입니다. 교육을 위해 데이터 세트에 필요한 최소 레코드 수입니다.

    기본값: 10000

    config.processingLanguage 문자열 두 글자 ISO 639-1 언어 코드 형식의 처리 언어입니다.
    config.stopwords 배열 옵션입니다. 속성 설정에 따라 language 시스템이 자동으로 생성하는 문자열의 사전 설정 목록입니다. 자세한 내용은 사용자 지정 중지 단어 목록 만들기를 참조하세요.

    기본값: 영어 스톱 워드

    config.trainingFrequency 문자열 모델을 재교육하는 빈도입니다.
    가능한 값:
    • every_30_days
    • every_60_days
    • every_90_days
    • every_120_days
    • every_180_days
    • run_once
    기본값: run_once
    config.updateFrequency 솔루션 정의에 대한 모델을 재구축해야 하는 빈도입니다.
    가능한 값:
    • do_not_update
    • every_1_day
    • every_1_hour
    • every_6_hours
    • every_12_hours
    • every_1_minute
    • every_15_minutes
    • every_30_minutes
    기본값: do_not_update

    다음 예제에서는 개체를 만들고 ClusteringSolution 저장소. 이 예제에서는 학습을 위해 개체를 제출하는 방법도 보여 줍니다.

    try{
        var myData = new sn_ml.DatasetDefinition({
            'tableName' : 'incident',
            'fieldNames' : ['category', 'short_description', 'state', 'description'],
            'encodedQuery' : 'activeANYTHING'
        });
    
        // get a trained encoder from the store
        var myEncoder = sn_ml.EncoderStore.get('<encoder_name >');
            
        var mySolution = new sn_ml.ClusteringSolution({
            'label': "clustering solution",
            'dataset' : myData,
            'encoder' : myEncoder,
            'inputFieldNames':['short_description'],                
            'groupByFieldName' : 'category',        
            'algorithmConfig' : {
                'algorithm' : 'kmeans',
                'targetCoverage' : '90'
            }
        });
        
        // add solution
        var solutionName = sn_ml.ClusteringSolutionStore.add(mySolution);
        var solutionVersion = mySolution.submitTrainingJob();    
        var trainingStatus = solutionVersion.getStatus();
        gs.print(JSON.stringify(JSON.parse(trainingStatus), null, 2));
    ​
    } catch(ex){
        gs.print('Exception caught: '+ ex.getMessage());
    }

    출력:

    {
      "state": "waiting_for_training",
      "percentComplete": "0",
      "hasJobEnded": "false"
    }

    다음 예시에서는 'description' 필드를 클러스터 개념 필드로 포함하는 방법을 보여줍니다.

    var myIncidentData = new sn_ml.DatasetDefinition({
        'tableName' : 'incident',
        'fieldNames' : ['category', 'short_description', 'description'],
    });
    
    var encodersolutionName = sn_ml.EncoderStore.get('<encoder_name >');
    
    var mySolution = new sn_ml.ClusteringSolution({
    	'label': 'clustering_test',
    	'dataset': myIncidentData,
    	'inputFieldNames': ['short_description'],
    	'encoder': encodersolutionName,
    	'clusterConceptFieldNames': ['description']
    });
    
    var solutionNameFromStore = sn_ml.ClusteringSolutionStore.add(mySolution);
    var myClassifier = mySolution.submitTrainingJob(); 

    ClusteringSolution - cancelTrainingJob()

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

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

    다음 예제에서는 기존 학습 작업을 취소하는 방법을 보여 줍니다.

    var mySolution = sn_ml.ClusteringSolutionStore.get('ml_sn_global_global_clustering');
    
    mySolution.cancelTrainingJob();

    ClusteringSolution - getActiveVersion()

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

    표 4. 매개변수
    이름 유형 설명
    없음
    표 5. 반환
    유형 설명
    객체 Active ClusteringSolutionVersion 객체입니다.

    방법을 보여 줍니다 클러스터링솔루션 저장소에서 활성 버전을 가져오고 학습 상태를 반환하는

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

    출력:

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

    ClusteringSolution - getAllVersions()

    의 모든 버전을 가져옵니다. 클러스터링 솔루션입니다.

    표 6. 매개변수
    이름 유형 설명
    없음
    표 7. 반환
    유형 설명
    배열 솔루션 객체의 기존 버전입니다. 참고 항목 ClusteringSolutionVersion API를 사용합니다.

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

    var mlSolution = sn_ml.ClusteringSolutionStore.get('ml_x_snc_global_global_clustering');
    
    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"}

    클러스터링 솔루션 - getLatestVersion()

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

    표 8. 매개변수
    이름 유형 설명
    없음
    표 9. 반환
    유형 설명
    객체 ClusteringSolutionVersion 최신 버전에 해당하는 객체 a ClusteringSolution()입니다.

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

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

    출력:

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

    클러스터링 솔루션 - 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('clustering'));
    
    var myCluster = new sn_ml.ClusteringSolution({
       'label': "my clustering solution",
       'dataset' : myIncidentData,
       'inputFieldNames': eligibleFields['eligibleInputFieldNames'],
       'predictedFieldName': 'category'
    });
    
    // update solution
    sn_ml.ClusteringSolutionStore.update('ml_x_snc_global_global_clustering_solution', myCluster);
    
    // print solution name
    gs.print('Solution Name: '+myCluster.getName());

    출력:

    Solution Name: ml_x_snc_global_global_clustering_solution

    클러스터링 솔루션 - getProperties()

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

    표 12. 매개변수
    이름 유형 설명
    없음
    표 13. 반환
    유형 설명
    객체 ClusteringSolutionStore의 Dataset 및 ClusteringSolution() 개체 세부 정보
    {
      "algorithmConfig": {Object},
      "datasetProperties": {Object},
      "domainName": "String",
      "encoder": {Object},
      "groupByFieldName": "String",
      "inputFieldNames": [Array],
      "label": "String",
      "minRecordsPerCluster" : Number,
      "name": "String",
      "processingLanguage": "String",
      "scope": "String",
      "stopwords": [Array],
      "trainingFrequency": "String",
      "updateFrequency": "String"
    }
    <Object>.algorithmConfig 알고리즘 구성 속성을 포함하는 JavaScript 객체입니다. 속성 결과는 속성에 설정된 algorithm 값에 따라 달라집니다.
    'algorithmConfig' : {
      "algorithm": "String",  
      // See algorithmConfig.algorithm setting description for property settings based on algorithm
    }

    데이터 형식: 개체.

    <Object>.algorithmConfig.algorithm 솔루션을 인코딩하는 방법입니다.
    에 대한 dbscan속성
    'algorithmConfig': {
      "algorithm": "dbscan",
      "distanceMetric": "String",
      "epsilon": Number,
      "minimumNeighbours": Number
    }
    에 대한 kmeans속성
    'algorithmConfig': {
      "algorithm": "kmeans",
      "targetCoverage": Number
    }

    데이터 형식: 문자열.

    <Object>.algorithmConfig.distanceMetric DBSCAN 알고리즘만 해당됩니다. 유사한 데이터 객체를 스캔하기 위한 거리 메트릭입니다.

    데이터 형식: 문자열.

    <Object>.algorithmConfig.epsilon DBSCAN 알고리즘만 해당됩니다. 인접 검색 반경의 크기를 나타내는 0에서 1 사이의 10진수 값입니다.

    데이터 형식: 숫자.

    <Object>.algorithmConfig.minimumNeighbours DBSCAN 알고리즘만 해당됩니다. 클러스터의 일부가 되기 위해 포인트에 필요한 최소 인접 항목 수입니다. 값은 1이어야 데이터셋에서 포인트가 제외되지 않기 때문입니다 levenshteinDistance .

    데이터 형식: 숫자.

    <Object>.algorithmConfig.targetCoverage K-means 알고리즘만 해당됩니다. 서로 덜 유사한 기록을 필터링하는 백분위수 필드입니다.

    데이터 형식: 숫자.

    <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>.encoderProperties 이 솔루션에 할당된 인코더 개체입니다. 인코더 - 인코더(객체 구성) 문서를 참조하십시오.

    데이터 형식: 개체.

    <Object>.groupByFieldName 시스템에서 기록을 하나 이상의 클러스터로 그룹화하는 기준이 되는 필드 이름입니다.

    데이터 유형: 문자열

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

    데이터 형식: 문자열.

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

    데이터 형식: 문자열.

    <Object>.minRecordsPerCluster 모든 클러스터에서 허용되는 최소 기록 수입니다.

    데이터 형식: 숫자.

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

    데이터 형식: 문자열.

    <Object>.predictedFieldName 예측 가능성을 위해 교육할 필드를 식별합니다.

    데이터 형식: 문자열.

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

    데이터 형식: 문자열.

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

    데이터 유형: 문자열

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

    데이터 형식: 배열.

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

    데이터 형식: 문자열.

    <Object>.updateFrequency 솔루션 정의에 대한 모델을 재구축해야 하는 빈도입니다.
    가능한 값:
    • do_not_update
    • every_1_day
    • every_1_hour
    • every_6_hours
    • every_12_hours
    • every_1_minute
    • every_15_minutes
    • every_30_minutes
    기본값: do_not_update

    데이터 유형: 문자열

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

    var myCluster = new sn_ml.ClusteringSolutionStore.get("ml_x_snc_global_global_clustering_solution");
    
    gs.print(JSON.stringify(JSON.parse(myCluster.getProperties()), null, 2));
    출력:
    *** Script: {
      "algorithmConfig": {
        "algorithm": "kmeans",
        "targetCoverage": "90"
      },
      "datasetProperties": {
        "tableName": "incident",
        "fieldNames": [
          "category",
          "short_description",
          "state",
          "description"
        ],
        "encodedQuery": "activeANYTHING"
      },
      "domainName": "global",
      "encoderProperties": {
        "datasetsProperties": [
          {
            "tableName": "incident",
            "fieldNames": [
              "assignment_group",
              "short_description",
              "description"
            ],
            "encodedQuery": "activeANYTHING"
          }
        ],
        "domainName": "global",
        "label": "my encoder definition",
        "name": "ml_x_snc_global_global_my_encoder_definition",
        "processingLanguage": "en",
        "scope": "global",
        "stopwords": [
          "Default English Stopwords"
        ],
        "trainingFrequency": "run_once"
      },
      "groupByFieldName": "category",
      "inputFieldNames": [
        "short_description"
      ],
      "label": "clustering solution",
      "minRecordsPerCluster": 2,
      "name": "ml_x_snc_global_global_clustering_solution",
      "processingLanguage": "en",
      "scope": "global",
      "stopwords": [
        "Default English Stopwords"
      ],
      "trainingFrequency": "run_once",
      "updateFrequency": "do_not_update"
    }}

    ClusteringSolution - getVersion(문자열 버전)

    솔루션 가져오기 제공된 버전 번호로.

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

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

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

    출력:

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

    ClusteringSolution - setActiveVersion(문자열 버전)

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

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

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

    표 17. 반환
    유형 설명
    안 함

    다음 예는 저장소에서 솔루션 버전을활성화하는 방법을 보여줍니다.

    sn_ml.ClusteringSolution.setActiveVersion("ml_incident_categorization");

    클러스터링 솔루션 - submitTrainingJob()

    교육 작업을 제출합니다.

    주:
    이 메서드를 실행하기 전에 먼저 ClusteringSolutionStore - add() 메서드를 사용하여 저장소에 솔루션을 추가해야 합니다.
    표 18. 매개변수
    이름 유형 설명
    없음
    표 19. 반환
    유형 설명
    객체 ClusteringSolutionVersion 개체에 해당합니다 클러스터링 솔루션 학습 중인

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

    // Create a dataset 
    var myData = new sn_ml.DatasetDefinition({
    
      'tableName' : 'incident',
      'fieldNames' : ['assignment_group', 'short_description', 'description'],
      'encodedQuery' : 'activeANYTHING'
    
    });
    
    // get a trained encoder from the store
    var myEncoder = sn_ml.EncoderStore.get('ml_x_snc_global_global_encoder');
    
    // Create a solution 
    var mySolution = new sn_ml.ClusteringSolution({
    
      'label': "my solution definition",
      'dataset' : myData,
      'encoder' : myEncoder,
      '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.ClusteringSolutionStore.add(mySolution);
    
    // Train the solution - this is a long running job 
    var myClusterVersion = mySolution.submitTrainingJob();