Ultralytics YOLO27:
Get Started

Ultralytics Python 패키지의 데이터 수집#

개요#

Ultralytics는 개발 중인 고급 YOLO 모델을 포함하여 Python 패키지의 기능과 사용자 경험을 지속적으로 개선하기 위해 노력합니다. 개선 기회를 파악하고 소프트웨어의 안정성을 보장할 수 있도록 익명화된 사용 통계와 충돌 보고서를 수집합니다. 이 투명성 문서에서는 수집하는 데이터와 그 목적, 그리고 데이터 수집과 관련해 사용자가 선택할 수 있는 사항을 설명합니다.

익명화된 Google Analytics#

Google Analytics는 웹사이트 트래픽을 추적하고 보고하는 Google의 웹 분석 서비스입니다. 이 서비스를 통해 Python 패키지의 사용 방식을 파악할 수 있으며, 이는 설계와 기능에 관한 정보에 입각한 결정을 내리는 데 매우 중요합니다.

수집하는 데이터#

  • 사용량 지표: 패키지가 얼마나 자주, 어떤 방식으로 사용되는지, 어떤 기능이 선호되는지, 일반적으로 어떤 명령줄 인수를 사용하는지 파악하는 데 도움이 됩니다.
  • 시스템 정보: 다양한 시스템에서 패키지가 원활하게 작동하는지 확인하기 위해 컴퓨팅 환경에 관한 일반적인 비식별 정보를 수집합니다.
  • 성능 데이터: 학습, 검증, 추론 중 모델의 성능을 파악하면 최적화 기회를 식별하는 데 도움이 됩니다.

Google Analytics 및 데이터 개인정보 보호에 관한 자세한 내용은 Google Analytics 개인정보처리방침을 참조하세요.

데이터 사용 방법#

  • 기능 개선: 사용량 지표에서 얻은 인사이트를 바탕으로 사용자 만족도와 인터페이스 설계를 개선합니다.
  • 최적화: 성능 데이터를 활용하여 다양한 하드웨어 및 소프트웨어 구성에서 효율성과 속도를 높이도록 모델을 세밀하게 조정합니다.
  • 트렌드 분석: 사용 트렌드를 살펴 커뮤니티의 변화하는 요구를 예측하고 이에 대응할 수 있습니다.

개인정보 보호 고려 사항#

사용자가 맡긴 데이터의 개인정보 보호와 보안을 보장하기 위해 다음과 같은 조치를 취합니다.

  • 익명화: Google Analytics를 구성하여 수집된 데이터를 익명화하므로 개인 식별 정보(PII)는 수집되지 않습니다. 개인정보가 비공개로 유지된다는 점을 안심하고 서비스를 이용하실 수 있습니다.
  • 집계: 데이터는 집계된 형태로만 분석합니다. 이 방식은 개별 사용자의 활동을 드러내지 않고 패턴을 관찰할 수 있도록 합니다.
  • 이미지 데이터 미수집: Ultralytics는 학습 또는 추론 이미지를 수집, 처리하거나 열람하지 않습니다.

Sentry 충돌 보고#

Sentry는 개발자 중심의 오류 추적 소프트웨어로, 실시간으로 문제를 식별하고 진단하며 해결하여 애플리케이션의 견고성과 신뢰성을 보장하는 데 도움을 줍니다. 패키지에서 Sentry는 충돌 보고를 통해 인사이트를 제공하는 중요한 역할을 하며, 소프트웨어의 안정성과 지속적인 개선에 크게 기여합니다.

참고

Sentry를 통한 충돌 보고는 sentry-sdk Python 패키지가 시스템에 사전 설치된 경우에만 활성화됩니다. 이 패키지는 ultralytics 필수 항목에 포함되어 있지 않으며 Ultralytics에서 자동으로 설치하지 않습니다.

수집하는 데이터#

충돌 보고서는 sentry-sdk 패키지가 이미 설치되어 있고, 설정에서 sync=True인 경우, Ultralytics를 pip에서 설치한 경우(git clone이 아님), 그리고 yolo CLI 명령에서 충돌이 발생한 경우에만 전송됩니다. 충돌 보고서에는 다음 정보가 포함될 수 있습니다.

  • 오류 메시지 및 스택 트레이스: 충돌이 발생한 시점의 예외 메시지와 스택 트레이스입니다.
  • 런타임 컨텍스트: Ultralytics 버전, 운영 체제/환경, 설치 방법, 익명화된 설치 ID, yolo 실행 파일 경로, 시스템 호스트 이름, 설치된 Python 패키지 버전입니다.

Sentry의 데이터 처리 방식에 대한 자세한 내용은 Sentry 개인정보처리방침을 참조하세요.

데이터 사용 방법#

  • 디버깅: 충돌 로그와 오류 메시지를 분석하여 소프트웨어 버그를 신속하게 식별하고 수정할 수 있습니다.
  • 안정성 지표: 충돌을 지속적으로 모니터링하여 패키지의 안정성과 신뢰성을 개선하고자 합니다.

개인정보 보호 고려 사항#

  • 제외되는 데이터: 로컬 변수와 명령줄 옵션은 포함되지 않으며, 키보드 인터럽트, 파일 누락 오류, 메모리 부족 오류는 보고되지 않습니다. 오류 메시지와 스택 트레이스에는 시스템의 파일 경로가 포함될 수 있습니다.
  • 제어된 수집: 충돌 보고는 위에 명시된 충돌 컨텍스트로 제한되며, sync=False인 경우에는 비활성화됩니다.

데이터 수집 비활성화#

사용자가 데이터를 완전히 제어할 수 있도록 하는 것이 중요하다고 생각합니다. 기본적으로 패키지는 모든 사용자의 경험을 개선하기 위해 분석 데이터와 충돌 보고서를 수집하도록 구성되어 있습니다. 하지만 일부 사용자는 이 데이터 수집을 거부할 수 있다는 점을 존중합니다.

분석 데이터와 충돌 보고서 전송을 거부하려면 YOLO 설정에서 sync=False을 설정하면 됩니다. 이렇게 하면 사용자의 시스템에서 분석 도구로 데이터가 전송되지 않습니다.

설정 확인#

현재 설정 구성을 확인하려면 다음과 같이 설정을 직접 조회할 수 있습니다.

설정 보기

Python을 사용하여 설정을 확인할 수 있습니다. 먼저 ultralytics 모듈에서 settings 객체를 가져옵니다. 다음 명령을 사용하여 설정을 출력하고 반환합니다.

from ultralytics import settings

# 모든 설정 보기
print(settings)

# 분석 및 충돌 보고 설정 반환
value = settings["sync"]

설정 수정#

Ultralytics에서는 사용자가 설정을 쉽게 수정할 수 있습니다. 다음 방법으로 설정을 변경할 수 있습니다.

설정 업데이트

Python 환경에서 settings 객체의 update 메서드를 호출해 설정을 변경합니다.

from ultralytics import settings

# 분석 및 충돌 보고 비활성화
settings.update({"sync": False})

# 설정을 기본값으로 재설정
settings.reset()

sync=False 설정을 사용하면 Google Analytics 또는 Sentry로 데이터가 전송되지 않습니다. 설정은 Ultralytics 패키지를 사용하는 모든 세션에 적용되며, 향후 세션을 위해 디스크에 저장됩니다.

개인정보 보호 약속#

Ultralytics는 사용자의 개인정보 보호를 중요하게 생각합니다. 다음 원칙에 따라 데이터 수집 방식을 설계합니다.

  • 투명성: 수집하는 데이터와 데이터 사용 방식을 투명하게 공개합니다.
  • 제어: 사용자에게 데이터에 대한 완전한 제어 권한을 제공합니다.
  • 보안: 수집한 데이터를 보호하기 위해 업계 표준 보안 조치를 적용합니다.

질문 또는 우려 사항#

데이터 수집 방식에 관한 질문이나 우려 사항이 있으면 문의 양식 또는 support@ultralytics.com를 통해 문의해 주세요. 사용자가 패키지를 사용할 때 개인정보 보호와 관련하여 충분한 정보를 얻고 안심할 수 있도록 최선을 다하고 있습니다.

자주 묻는 질문#

  • Ultralytics는 몇 가지 주요 조치를 통해 사용자의 개인정보를 우선적으로 보호합니다. 먼저 Google Analytics와 Sentry를 통해 수집하는 모든 데이터는 익명화하여 개인 식별 정보(PII)가 수집되지 않도록 합니다. 둘째, 데이터를 집계된 형태로 분석하여 개별 사용자의 활동을 식별하지 않고 패턴을 관찰할 수 있습니다. 마지막으로 학습 또는 추론 이미지는 수집하지 않아 사용자 데이터를 더욱 보호합니다. 이러한 조치는 투명성과 개인정보 보호에 대한 당사의 약속에 부합합니다. 자세한 내용은 개인정보 보호 고려 사항 섹션을 참조하세요.

  • Ultralytics는 Google Analytics를 사용하여 다음 세 가지 주요 유형의 데이터를 수집합니다.

    • 사용량 지표: YOLO Python 패키지의 사용 빈도와 사용 방식, 선호되는 기능, 일반적으로 사용되는 명령줄 인수가 포함됩니다.
    • 시스템 정보: 패키지가 실행되는 컴퓨팅 환경에 관한 일반적인 비식별 정보입니다.
    • 성능 데이터: 학습, 검증, 추론 중 모델의 성능과 관련된 지표입니다.

    이 데이터는 사용자 경험을 개선하고 소프트웨어 성능을 최적화하는 데 도움이 됩니다. 자세한 내용은 익명화된 Google Analytics 섹션을 참조하세요.

  • 데이터 수집을 거부하려면 YOLO 설정에서 sync=False을 설정하면 됩니다. 이렇게 하면 분석 데이터나 충돌 보고서가 전송되지 않습니다. Python 또는 CLI를 사용하여 데이터 수집을 비활성화할 수 있습니다.

    설정 업데이트
    from ultralytics import settings
    
    # 분석 및 충돌 보고 비활성화
    settings.update({"sync": False})
    
    # 설정을 기본값으로 재설정
    settings.reset()

    설정 수정에 대한 자세한 내용은 설정 수정 섹션을 참조하세요.

  • sentry-sdk 패키지가 사전 설치되어 있으면 충돌이 발생할 때마다 Sentry가 상세한 충돌 로그와 오류 메시지를 수집합니다. 이 데이터는 문제를 신속하게 진단하고 해결하는 데 도움이 되어 YOLO Python 패키지의 견고성과 신뢰성을 높입니다. 수집된 충돌 로그에서는 사용자의 개인정보를 보호하기 위해 개인 식별 정보를 제거합니다. 자세한 내용은 Sentry 충돌 보고 섹션을 참조하세요.

  • 예, 현재 설정을 간편하게 확인하여 데이터 수집 기본 설정 구성을 파악할 수 있습니다. 다음 방법으로 해당 설정을 확인하세요.

    설정 보기
    from ultralytics import settings
    
    # 모든 설정 보기
    print(settings)
    
    # 분석 및 충돌 보고 설정 반환
    value = settings["sync"]

    자세한 내용은 설정 검사 섹션을 참조하세요.