콘텐츠로 바로 가기
STAGING SERVER
DEVELOPMENT SERVER

pylon AI Platform#

pylon AI Platform 는 딥러닝(DL) 모델의 수명 주기를 관리하기 위한 핵심 허브입니다.

각 AI vTool에 대해 다양한 머신 비전 프로젝트를 제공하며, 사용자가 직접 프로젝트를 생성할 수도 있습니다. 또한 다양한 하드웨어 환경에 맞춘 모델 최적화를 포함하여, 개발부터 배포에 이르는 모델 라이프사이클 관리의 모든 단계를 지원합니다.

pylon AI Platform 를 이용하려면 Basler 영업팀에 문의하십시오.

작동 방식#

서론으로, 다음 섹션에서는 몇 가지 배경 정보를 제공하고, ‘ pylon AI Platform ’을 사용하여 프로젝트를 생성하는 데 있어 핵심적인 사항들을 설명합니다.

개념 및 용어#

모델: 모델이란 샘플 이미지를 사용하여 학습할 수 있는 알고리즘입니다. 학습을 거친 모델은 이후 이미지 내용을 “예측”할 수 있게 됩니다.

아키텍처: 모델의 아키텍처는 모델이 어떻게 작동하는지를 결정합니다. 다양한 머신 비전 작업에 따라 서로 다른 아키텍처를 사용할 수 있습니다.

데이터 세트: 데이터 세트는 특정 문제나 과제와 관련된 데이터의 모음입니다. 여기에는 해당 문제와 관련된 모든 시각적 속성이 포함되어 있습니다.

예를 들어, 고양이와 개의 이미지는 고양이와 개를 구분하는 분류 모델의 데이터 세트를 구성할 수 있습니다. 만약 모델이 고양이와 개뿐만 아니라 쥐도 구분해야 한다면, 데이터 세트에 쥐의 이미지 데이터도 추가해야 합니다.

일반적으로 데이터 세트는 세 부분으로 나뉩니다:

  • 훈련 데이터: 훈련 데이터는 딥러닝 모델이 학습에 사용하는 데이터 세트에서 가장 큰 비중을 차지합니다. 모델은 훈련 데이터 내의 패턴을 인식하기 위해 가중치를 조정합니다.
  • 검증 데이터: 검증 데이터는 딥러닝 모델이 훈련 과정에서 자신의 동작을 평가하는 데 사용됩니다. 이 데이터는 훈련 데이터와 별개로 존재하며, 최적화 과정에는 사용되지 않습니다.
  • 테스트 데이터: 학습이 완료된 후, 테스트 데이터를 사용하여 모델의 성능을 평가합니다. 테스트 데이터는 이전에 본 적 없는 새로운 예시를 나타내며, 모델이 실제 데이터에 얼마나 잘 일반화되는지를 보여줍니다.

pylon Viewer 의 ‘기록(Recording )’ 기능을 사용하여 나만의 데이터 세트를 생성할 수 있습니다. 데이터 세트를 완성하려면 이미지에 주석을 달아야 합니다. 자세한 내용은 아래의 ‘주석/라벨(Annotations/Labels) ’ 섹션을 참조하십시오. 데이터 세트를 최종 확정하면 pylon AI Platform 의 프로젝트에 추가할 수 있습니다.

데이터 세트 업로드

현재 데이터 세트의 경우 CVAT for images 형식 중 1.1 버전만 지원됩니다. CVAT Server를 사용하여 데이터에 주석을 달거나, 기존 데이터 세트를 CVAT for images 1.1 형식으로 변환할 수 있습니다.

후자의 경우, 훈련 환경에서 데이터 세트를 CVAT 형식으로 내보내거나 타사 도구를 사용하여 기존 데이터 세트를 변환하면 됩니다. 이를 위해 Basler는 Datumaro 사용을 권장합니다.

주석/라벨: 라벨이라고도 하는 주석은 데이터 세트에 추가되어, 데이터에서 어떤 요소가 중요한지 모델에 알려줍니다. 훈련 과정에서 모델은 이 정보를 활용하여 예측 결과를 예상/정답과 비교합니다. 앞서 언급한 분류 작업의 경우, 이 정보는 이미지에 개가 나와 있는지 고양이가 나와 있는지를 나타냅니다.

pylon AI에서 사용할 이미지를 주석 처리하려면 외부 훈련 플랫폼을 사용하거나 오픈소스 도구인 CVAT를 사용할 수 있습니다. 이 동영상에서는 CVAT를 사용하여 물체 탐지를 위해 이미지에 바운딩 박스를 주석 처리하는 방법을 보여줍니다.

훈련: 딥러닝의 맥락에서 훈련이란 신경망(모델)이 훈련 데이터를 통해 학습하는 과정을 말합니다. 모델은 모든 훈련 데이터에 대해 예측을 수행합니다(위의 “데이터 세트” 참조). 예측 결과는 실제 데이터(주석/라벨)와 비교되어 오차를 계산합니다. 이 오차를 바탕으로, 오차를 최소화하기 위해 모델의 가중치가 조정됩니다. 이 과정은 오차가 최대한 줄어들 때까지 반복됩니다. 모델의 성능을 검증하기 위해, 모델은 검증 데이터에 적용됩니다.

추론: 딥러닝의 맥락에서 추론이란, 훈련된 모델을 이전에 본 적 없는 새로운 데이터에 적용하여 그 내용에 대한 예측을 내리는 것을 의미합니다.

다음 방법을 사용하여 pylon AI Platform#

이 섹션에서는 머신 비전 프로젝트를 만드는 데 필요한 여러 단계를 단계별로 안내합니다.

pylon AI Platform 는 직관적인 사용을 위해 설계되었습니다. pylon AI Platform 에 로그인하면 대시보드 화면이 표시됩니다.

대시보드 보기

여기에는 가장 최근에 출시된 5개의 번들과 가장 최근에 실행된 5개의 평가판이 표시됩니다.

프로젝트 작성을 시작하려면 왼쪽 탐색 트리의 ‘내 프로젝트’를 클릭하세요.

내 프로젝트 보기

'내 프로젝트' 보기에서는 본인이나 AI Platform에 액세스 권한이 있는 다른 사용자가 생성한 모든 프로젝트를 확인할 수 있습니다. 프로젝트를 목록 보기 또는 타일 보기로 표시하도록 선택할 수 있습니다.

프로젝트 생성#

먼저 프로젝트를 생성합니다.

  1. pylon AI Platform 에 로그인하세요.
  2. 왼쪽의 탐색 트리에서 ‘내 프로젝트’를 클릭하세요.
  3. '내 프로젝트 ' 페이지에서 '새 프로젝트 만들기'를 클릭하세요.
  4. 다음에서: 새 프로젝트 만들기 페이지에서 생성할 프로젝트 유형을 지정하고, 이름과 간단한 설명(선택 사항)을 입력하세요.
    프로젝트 개요 페이지가 열립니다.
    새로운 프로젝트

상단의 탭형 탐색 메뉴에는 현재 수행할 수 있는 모든 단계가 표시됩니다. 일부 단계는 이전 단계를 완료해야만 이용할 수 있습니다.

알림 영역에서는 AI Platform에서 수행하는 모든 작업에 대해 새로운 메시지가 표시됩니다. 모든 메시지는 사용자가 직접 삭제할 때까지 저장됩니다.

홈 버튼을 누르면 프로젝트의 개요 페이지로 돌아갑니다.

데이터 세트#

  1. ‘데이터 세트 추가’ 버튼을 클릭하거나, 상단의 탭 목록에서 ‘데이터 세트’를 클릭하십시오.

  2. 다음에서: 데이터 세트 추가 페이지에서 추가하려는 데이터 세트의 이름과 간단한 설명(선택 사항)을 입력하세요.
    새 데이터 세트 추가

  3. Add를 클릭합니다.

  4. '데이터 업로드' 페이지에서 업로드할 데이터의 형식을 지정하고 데이터를 추가하십시오.

    지원되는 데이터 세트 형식

    현재 데이터 세트의 경우 CVAT for images 형식 중 1.1 버전만 지원됩니다. CVAT Server를 사용하여 데이터에 주석을 달거나, 기존 데이터 세트를 CVAT for images 1.1 형식으로 변환할 수 있습니다.

    후자의 경우, 훈련 환경에서 데이터 세트를 CVAT 형식으로 내보내거나 타사 도구를 사용하여 기존 데이터 세트를 변환하면 됩니다. 이를 위해 Basler는 Datumaro 사용을 권장합니다.

    데이터 유효성 검사가 즉시 시작됩니다. 유효성 검사가 성공적으로 완료되면 주석을 확인하고 데이터 세트 클래스 생성을 계속할 수 있습니다.

    데이터 세트 검증

  5. '지도 클래스'를 클릭하세요.

  6. 다음 파라미터 블록에서 클래스 매핑 대화 상자, 클릭 클래스 자동 생성 이미지에 포함된 어노테이션을 기반으로 데이터 세트 클래스를 자동으로 생성합니다.
    또는 다음을 클릭하세요 새 클래스 추가 아래의 드롭다운 목록에서 데이터 세트 클래스.
    클래스 매핑 대화 상자

  7. OK를 클릭합니다.

  8. ‘데이터 업로드’ 페이지에서 ‘업로드’를 클릭합니다.
    ‘데이터 세트’ 탭이 열리면 자신의 데이터 세트를 확인할 수 있습니다.

  9. 데이터 세트를 클릭하면 내용을 확인하고, 이미지를 추가하며, 속성을 편집할 수 있습니다. 데이터 세트의 상태가 만족스러우면 다음을 클릭하세요. 게시.
    임상시험에서 데이터 세트를 사용하려면 해당 데이터 세트를 공개해야 합니다.
    데이터 세트 속성 페이지

  10. ‘데이터 세트 ’ 탭으로 돌아가세요.

모델#

  1. '모델 ' 탭을 클릭하세요.

  2. '모델' 페이지에서 '모델 추가'를 클릭합니다.

  3. 다음에서: 모델 업로드 페이지에서 추가하려는 모델의 이름과 간단한 설명(선택 사항)을 입력하세요.
    새 모델 추가

  4. '만들기'를 클릭하세요.

  5. 다음에서: 모델 업로드 페이지에서 업로드할 모델의 구성을 지정하고 모델 파일을 추가하십시오.
    업로드 및 유효성 검증이 즉시 시작됩니다. 이 과정이 완료되면 모델에 어떤 클래스가 포함되어 있는지 확인할 수 있습니다.
    모델 업로드 완료

  6. '마침'을 클릭합니다.
    '모델' 탭이 열리면 모델을 확인할 수 있습니다.

  7. 모델을 클릭하면 해당 모델의 속성을 볼 수 있습니다.
    모델 속성

  8. '모델' 탭으로 돌아가세요.

매핑#

데이터 세트와 모델에는 대개 특정 작업에 필요한 것보다 더 많은 클래스가 포함되어 있습니다. 매핑이란 데이터 세트의 클래스를 모델의 클래스와 연결하여 프로젝트에서 무엇을 찾고자 하는지 정의하는 과정입니다. 이를 위해 프로젝트 클래스를 추가하고, 해당 클래스에 원하는 데이터 세트 및 모델 클래스를 할당해야 합니다.

  1. 다음 항목을 클릭합니다. 매핑 탭에서 모든 비전 작업에 사용할 수 있는 모델을 볼 수 있습니다.
    ‘매핑’ 탭

  2. 다음에서: 매핑 탭을 클릭하세요 프로젝트 클래스 생성 첫 번째 프로젝트 클래스를 생성하려면.
    프로젝트 클래스 생성 버튼
    또는 다음을 사용할 수 있습니다. 오토맵 feature.
    오토맵 버튼

  3. 원하는 경우 기본 이름을 다른 이름으로 변경하십시오.

  4. 데이터 세트 클래스와 모델 클래스를 여기에 추가하십시오.
    오른쪽의 해당 탭에서 클래스를 드래그 앤 드롭하기만 하면 됩니다. 드롭다운 목록을 사용하여 데이터 세트나 그 버전, 그리고 모델 버전을 변경할 수 있습니다.
    ‘매핑’ 탭의 드롭다운 목록

  5. 필요한 모든 프로젝트 클래스를 생성할 때까지 2~4단계를 반복하십시오.

  6. 필요하지 않은 모든 데이터 세트 및 모델 클래스를 제외하십시오(자세한 내용은 ‘클래스 제외’를 참조하십시오).

자동 매핑#

자동 매핑 기능을 사용하면 한 번의 클릭으로 데이터 세트 및 모델 클래스를 이름에 따라 프로젝트 클래스에 매핑할 수 있습니다. 데이터 세트 및 모델 클래스 이름과 일치하는 프로젝트 클래스가 없는 경우, 해당 이름의 새로운 프로젝트 클래스가 생성됩니다. 따라서 사용하려는 것보다 더 많은 데이터 세트 클래스나 모델 클래스가 있는 경우, 자동 매핑을 사용하기 전에 해당 클래스를 제외해야 합니다.

자동 매핑은 매핑되지 않은 클래스에만 적용됩니다. 이전에 수동으로 매핑된 클래스는 기존 클래스 상태를 유지합니다.

데이터 세트 또는 프로젝트 클래스의 이름에 “background” 또는 “excluded”라는 단어가 포함되어 있는 경우, 프로젝트 유형에 따라 해당 클래스는 제외되거나 배경 클래스로 정의됩니다.

자동 매핑은 대소문자를 구분하지 않지만, 클래스 이름은 정확히 일치해야 합니다.

자동 매핑을 사용하려면:

  1. 오른쪽의 ‘데이터 세트 클래스’ 탭에서 필요하지 않은 모든 데이터 세트 클래스를 제외하십시오.

  2. 클릭 오토맵.
    자동 매핑 요약

  3. '자동 매핑 요약' 대화 상자에서, 여기에 나열된 모든 프로젝트 클래스를 생성할지 확인하십시오.
    원하지 않는 클래스는 선택을 해제할 수 있습니다. 선택이 해제된 클래스는 매핑되지 않은 상태로 남아 있습니다. 나중에 해당 클래스를 반드시 제외해야 합니다.

  4. ‘Map’ 클래스를 클릭합니다.
    프로젝트 클래스가 생성되고, 해당 클래스에 데이터 세트 클래스가 추가됩니다.

  5. 오른쪽의 ‘모델 클래스’ 탭에서 필요하지 않은 모든 모델 클래스를 제외하십시오.

  6. 클릭 오토맵.
    자동 매핑 요약

  7. '자동 매핑 요약' 대화 상자에는 기존 프로젝트 클래스와 해당 클래스에 매핑될 모델 클래스, 그리고 새로 생성될 프로젝트 클래스가 표시됩니다. '새로 생성'으로 표시된 프로젝트 클래스를 생성할지 여부를 확인하십시오.
    원하지 않는 클래스는 선택을 해제할 수 있습니다. 선택이 해제된 클래스는 매핑되지 않은 상태로 유지됩니다. 나중에 해당 클래스를 반드시 제외해야 합니다.

  8. '맵 클래스'를 클릭합니다.
    아직 존재하지 않는 프로젝트 클래스가 생성됩니다. 모델 클래스가 새 프로젝트 클래스와 기존 프로젝트 클래스에 추가됩니다.

수업 제외#

프로젝트에서 사용하지 않으려는 모델 클래스는 매핑을 완료하기 위해 제외해야 합니다. 이는 모델로부터 정확한 통계 데이터를 얻기 위해 필요합니다.

클래스를 제외하려면 필요하지 않은 모델 클래스를 모두 선택한 다음 ‘제외’를 클릭하세요. 또는 선택한 클래스를 화면 하단으로 드래그하여 ‘제외됨’ 섹션에 놓을 수도 있습니다.

모델 클래스 제외

분할 프로젝트의 경우, 이 과정이 약간 다릅니다. 여기서는 불필요한 모든 모델 클래스를 배경으로 정의해야 합니다. 이를 위해 필요하지 않은 모델 클래스를 모두 선택한 다음 ‘배경으로 정의’를 클릭하세요. 또는 선택한 클래스를 화면 하단의 ‘배경’ 섹션으로 드래그 앤 드롭할 수도 있습니다.

이 두 가지 작업은 각각 해당 버튼을 사용하거나 드래그 앤 드롭을 통해 취소할 수 있습니다.

프로젝트를 적용할 때 제외된 클래스는 고려되지 않습니다. 즉, 해당 클래스에 대해서는 어떤 결과도 얻을 수 없습니다.

시험#

  1. 'Trials' 탭을 클릭하세요.

  2. '시험' 페이지에서 '시험 추가'를 클릭하세요.

  3. 다음에서: 체험판 만들기 페이지에서 추가하려는 시험의 이름과 간단한 설명(선택 사항)을 입력하세요.
    체험판 페이지 만들기

  4. 다음 파라미터 블록에서 프로젝트 자산 창에서 데이터 세트 추가 시험에 사용할 데이터 세트를 선택하려면.
    데이터 세트 추가 대화 상자

  5. 다음 파라미터 블록에서 프로젝트 자산 창에서 모델 추가 체험판에 사용할 모델을 선택하려면.
    모델 추가 대화 상자

  6. 다음 파라미터 블록에서 프로젝트 자산 창에서 매핑 확인.
    매핑 내용을 확인하고 필요한 경우 수정해야 합니다. 평가판을 생성한 후에는 더 이상 프로젝트 클래스를 변경할 수 없습니다.
    시험 매핑 확인

  7. '만들기'를 클릭하세요.

  8. '다음 시험 실행 추가'를 클릭하십시오.

  9. 하드웨어 및 모델 형식을 선택하십시오.
    하드웨어 선택 대화 상자

  10. 클릭 체험판 실행.
    평가판 실행 대화 상자
    시운전이 즉시 시작됩니다. 시운전이 완료되면 통계 정보가 시운전 페이지에 표시됩니다.
    임상시험 결과

  11. 결과가 만족스럽다면, 다음을 클릭하여 번들을 릴리스할 수 있습니다. 릴리스 번들 체험판 옆에 있는 버튼.
    번들 릴리스 버튼

  12. 번들의 이름을 변경하고 설명을 입력하세요(선택 사항).
    릴리스 번들 대화 상자

  13. “번들 릴리스”를 클릭하세요.
    번들이 생성 중입니다.

  14. 프로젝트 개요 페이지로 돌아가서 ‘Bundles’ 탭을 클릭하세요.
    잠시 후, 해당 번들이 여기에 표시됩니다.

번들#

번들이 릴리스되면 ‘번들’ 탭에 표시됩니다. 여기에서 번들의 속성을 확인하고, 해당 번들이 생성된 시험 실행의 세부 정보도 볼 수 있습니다.

번들 탭

이 번들에는 vTool이 비전 작업을 수행하는 데 필요한 모든 정보(예: 하드웨어 구성, 모델 등)가 포함되어 있습니다. 이제 다음을 사용하여 AI vTool에 배포할 준비가 되었습니다. pylon AI Agent를 사용하여 AI vTools에 배포할 준비가 되었습니다.

또한 번들을 로컬 또는 원격 저장소에 다운로드할 수도 있습니다. 이 경우, pylon AI Platform 에 접속할 수 없는 사용자도 번들에 포함된 모델을 사용할 수 있습니다.

외부 프로젝트#

pylon AI Platform 를 사용하면 Intel Geti나 Landing AI와 같은 다른 플랫폼에 연결할 수 있습니다. 해당 플랫폼에서 생성된 프로젝트를 가져와 다양한 하드웨어 및 모델을 사용하여 테스트를 실행할 수 있습니다.

다른 플랫폼과 연결하려면 해당 플랫폼의 API 키를 추가해야 합니다.

API 키를 추가하려면:

  1. pylon AI Platform 에 로그인하세요.
  2. 왼쪽의 탐색 트리에서 다음을 클릭하세요. Settings.
    pylon AI Platform - 설정 보기
  3. 다음 파라미터 블록에서 Settings 보기, 클릭 API 키 추가.
    The API 키 추가 대화 상자가 열립니다.
    API 키 추가 대화 상자
  4. ‘API 키 추가’ 대화 상자에서 원하는 플랫폼을 선택하고 해당 플랫폼의 API 키를 입력하세요.
    API 키를 얻는 방법은 다음 링크에서 확인할 수 있습니다:
    Intel Geti
    Landing AI
  5. ‘저장’을 클릭하세요.
    추가한 API 키가 ‘API 키 ’ 페이지에 표시됩니다. 또한, 연결을 설정해 둔 외부 플랫폼에서 생성된 프로젝트는 이제 ‘외부 프로젝트 ’ 보기에서 확인할 수 있습니다.

이제 외부 프로젝트를 프로젝트 라이브러리로 가져와 테스트할 수 있습니다. 단, 외부 프로젝트는 읽기 전용이라는 점에 유의하십시오. pylon AI Platform 에서 데이터 세트와 같은 리소스를 편집할 수 없습니다. 변경을 원할 경우, 원본 플랫폼에서 직접 수행해야 합니다.

외부 프로젝트를 가져오려면:

  1. 왼쪽의 탐색 트리에서 다음을 클릭하세요. 외부 프로젝트.
    외부 프로젝트 보기
  2. 가져오려는 프로젝트를 클릭하세요.
    프로젝트 가져오기 보기
  3. ‘데이터 세트’, ‘모델’ 및 ‘매핑’ 탭에서 프로젝트의 자료를 확인해 보세요.
  4. 프로젝트가 마음에 드신다면, [클릭]하세요 프로젝트 가져오기.
    외부 프로젝트 가져오기 대화 상자
  5. 이름과 간단한 설명을 입력하세요(선택 사항).
  6. Next를 클릭합니다.
  7. 가져오려는 데이터 세트를 선택하십시오.
    이 작업은 나중에 수행할 수도 있습니다. 외부 프로젝트에 포함된 데이터 세트만 가져올 수 있습니다.
  8. Next를 클릭합니다.
  9. 가져오려는 모델을 선택하십시오.
    이 작업은 나중에 수행할 수도 있습니다. 외부 프로젝트에 포함된 모델만 가져올 수 있습니다.
  10. ‘가져오기’를 클릭합니다.
    프로젝트가 가져와져 프로젝트 라이브러리에 추가됩니다.
  11. 왼쪽의 탐색 트리에서 다음을 클릭하세요. 내 프로젝트.
    내 프로젝트 보기
    방금 추가하신 프로젝트가 이제 이용 가능합니다.
  12. 프로젝트를 클릭하여 편집하세요. 예를 들어, 아직 데이터 세트나 모델을 추가하지 않았다면 이를 추가하고 매핑을 확인하세요.
  13. 테스트를 실행하고 번들을 생성합니다.