본문 바로가기
반응형

Python17

허깅페이스 Transformers 라이브러리 허깅페이스의 Transformers 라이브러리는 Transformer 구조 기반의 다양한 모델을 지원하여 개발에 활용할 수 있다. pre-training된 모델도 지원하기 때문에 모델을 처음부터 학습 시킬 필요가 없어 시간과 리소스를 절약할 수 있다. 초기에는 자연어처리 관련 모델 위주로 지원했지만 현재는 여러 가지 도메인에 대한 모델을 지원한다. 2024년 기준 157개의 모델 아키텍처를 지원하고 있다. 또한 모델에 들어가는 컴포넌트를 모듈화해서 제공하기도 한다.Transformers 라이브러리는 pip를 통해 설치할 수 있다.pip install transformersPipeline을 이용한 간단한 사용법Transformers에서 가장 간단하게 사용할 수 있는 방법은 pipeline API이다. pi.. 2025. 4. 17.
Python 내장함수 : getattr, isinstance getattr 이름이 문자열로 주어진 객체의 속성을 반환하는 함수다. 함수의 기본적인 형태는 다음과 같다. getattr(object, name[, default]) 여기서 각 인자는 다음과 같은 의미를 가진다. object: 속성을 가져올 대상 객체. name: 가져올 속성의 이름을 나타내는 문자열. 이 이름에 해당하는 속성이 객체에 없는 경우 AttributeError가 발생한다. default (선택적): 이름에 해당하는 속성이 객체에 없는 경우 반환할 기본값. 이 인자가 제공되지 않고 해당 이름의 속성이 없는 경우 AttributeError가 발생한다. class Test: x = 'hello' t = Test() print(getattr(t, 'x')) # 출력: hello print(getat.. 2023. 7. 24.
MediaPipe를 이용한 3D Object Detection MediaPipe란?MediaPipe는 Google에서 개발한 크로스 플랫폼 프레임워크로, 비디오, 이미지, 오디오 및 3D 데이터를 처리할 수 있는 높은 성능의 머신러닝 모델을 사용하여 다양한 응용 프로그램을 구현할 수 있게 해준다. 언어는 C++, Python, JavaScript를 지원하고 Android와 iOS에서도 사용 가능하다. 여기서는 python으로 손 검출하는 방법을 알아볼 것이다. 우선 MediaPipe를 설치해야 한다. 설치하는 명령어는 다음과 같다. pip install mediapipe MediaPipe를 이용한 3D Object Detection3D Object Detection를 위해서는 'Objectron'이라는 MediaPipe의 솔루션을 사용할 수 있다. import cv.. 2023. 7. 10.
MediaPipe를 이용한 손 랜드마크 검출 MediaPipe란? MediaPipe는 Google에서 개발한 크로스 플랫폼 프레임워크로, 비디오, 이미지, 오디오 및 3D 데이터를 처리할 수 있는 높은 성능의 머신러닝 모델을 사용하여 다양한 응용 프로그램을 구현할 수 있게 해준다. 언어는 C++, Python, JavaScript를 지원하고 Android와 iOS에서도 사용 가능하다. 여기서는 python으로 손 검출하는 방법을 알아볼 것이다. 우선 MediaPipe를 설치해야 한다. 설치하는 명령어는 다음과 같다. pip install mediapipe MediaPipe를 이용한 손 랜크마크 검출 python으로 MediaPipe 프레임워크를 사용해서 손과 손의 랜크마크를 검출하는 코드는 아래와 같다. 속도는 비교적 빨라서 GPU가 장착되지 않은.. 2023. 7. 8.
파이썬 Parquet 데이터 포맷 확인하는법 Parquet 파일은 아파치 파운데이션에서 개발한 열 지향 저장 포맷이다. 열 지향 저장 포맷은 컴퓨터에서 데이터 저장 방식을 의미하며, 이는 모든 컬럼 데이터가 함께 저장되는 형태다. 이 방식은 대규모의 데이터 세트를 다룰 때 효율적이다. Parquet는 다음과 같은 특징을 지니고 있다. 열 지향 포맷 : Parquet 파일은 데이터를 열 별로 저장한다. 데이터 분석에서 특정 열(또는 속성)에 대한 작업을 주로 수행하는 경우, 모든 행을 검색하지 않고 해당 열에 대한 데이터만 읽어오면 되므로 I/O 작업을 최소화하고, 전체적인 성능을 향상시킬 수 있다. 스키마 진화 : 파일 스키마 진화를 지원한다. 즉, 데이터 스키마가 시간이 흐르며 변경되더라도 이전 버전의 데이터를 새로운 스키마로 읽는 것이 가능하다.. 2023. 7. 7.
python 성능 최적화 코드 작성 방법 적절한 자료 구조 사용 Python에서 자료 구조를 적절하게 사용하는 것은 코드의 성능을 향상시킬 수 있는 중요한 방법이다. 예를 들면 Python에서는 리스트 컴프리헨션을 사용하는 것이 map 함수나 일반적인 for 루프를 사용하는 것보다 일반적으로 더 빠르다. numbers = range(1, 1000000) # for loop 사용 def square_for_loop(numbers): squares = [] for n in numbers: squares.append(n * n) return squares # map 함수 사용 def square_map(numbers): return list(map(lambda n: n * n, numbers)) # 리스트 컴프리헨션 사용 def square_comp.. 2023. 6. 30.
반응형