2017.11.16

텐서플로 머신러닝의 새로운 기능

Serdar Yegulalp | InfoWorld
구글의 텐서플로 1.4 머신러닝 라이브러리에 데이터 소스 작업용 공여 데이터셋 API가 추가됐다. 하지만 아직 업데이트에 주의해야 한다.



텐서플로는 머신러닝과 데이터 과학 분야에서 구글이 기여로 신경망을 빠르게 개발할 수 있는 일반적인 프레임워크다. 비교적 새로운 텐서플로는 강력한 추상화 및 사용 용이성 덕분에 이미 이러한 작업을 위한 공통 플랫폼으로 널리 채택되었다.

텐서플로 1.4 API 추가
텐서플로 케라스 API

텐서플로 1.4의 가장 큰 변화는 핵심 텐서플로 API에 두 가지 주요 추가 사항을 포함한다. tf.keras API를 사용하면 텐서플로 이전의 신경망 라이브러리인 케라스(Keras) API를 사용할 수 있지만 신속하게 바꿔버릴 수 있다. tf.keras API를 통해 케라스를 사용하는 소프트웨어는 케라스 인터페이스를 영구적으로 사용하거나 텐서플로를 원래대로 사용하기 위해 재생산되는 소프트웨어로 전환할 수 있다.

텐서플로 데이터셋 API
핵심 텐서플로 API에 추가된 기능은 tf.data 또는 데이터셋 API다. 이 API는 원래 공여 API로 제공되었지만 현재 공식적으로 지원된다. 데이터셋 API는 입력 파이프라인을 만들고 재사용할 수 있는 앱스트랙션(abstractions) 세트를 제공한다. 하나 이상의 소스에서 수집된 복잡한 데이터 세트가 필요에 따라 변형된다. 또한 데이터셋을 통해 여러 번의 교육 과정을 거치고 단계마다 다른 행동이 필요한 경우 데이터셋에는 반복 실행과 관련된 특정 기능이 있을 수 있다.

텐서플로 데이터셋 API 호환성 문제
이전 버전의 텐서플로(tf.contrib.data)에서 제공한 데이터 API의 공여 버전을 이미 사용하고 있다면 tf.data 공식 API가 완벽하게 하위단에서 호환되지 않는다는 메시지를 받게 된다. 변화의 총 횟수는 많지 않지만 전략적으로 많이 사용되는 기능이므로 대부분 기존 코드가 손상될 가능성이 있다.

예를 들어, 이전에 tf.contrib.data.rejection_resample () 또는 tf.contrib.data.Iterator.from_dataset ()을 사용했다면 둘 다 수정되며 전자는 새 기능 서명을 가지며 후자는 완전히 제거되고 Dataset.make_initializable_iterator () 기능으로 대체된다. 텐서플로의 설명서에는 tf.contrib.data에서 마이그레이션하고 공식 tf.data 라이브러리를 대신 사용하는 방법에 대한 다른 세부 정보가 있다.

단순화된 텐서플로 에스터메이터
다른 많은 추가 기능도 있다. train_and_evaluate 기능은 클러스터 전체에 분산된 방식으로 텐서플로의 에스터메이터(Estimator, 일반적인 모델 매개 변수를 자동으로 구성하는 데 사용)를 실행하는 간단한 방법을 제공한다. 또한 텐서플로에 내장된 디버깅 시스템을 사용하면 디버거의 명령 줄에서 임의의 파이썬 코드를 실행할 수 있으므로 신속하게 검사하거나 수정할 수 있다.

텐서플로 CUDA 및 CuDNN 지원
또한 텐서플로 1.4는 CUDA 및 CuDNN에 대한 지원을 업데이트한다. 엔비디아의 GPU 가속 데이터 조작 및 딥러닝 라이브러리는 버전 8 및 6에 각각 업데이트된다. 최신 버전은 아니지만 텐서플로의 개발자는 텐서플로 1.5를 CUDA 9 및 CuDNN 7로 출시할 예정이라고 밝혔다.

텐서플로 1.4 다운로드 위치
텐서플로 프로젝트 페이지에는 우분투 리눅스, 맥OS 및 마이크로소프트 윈도우에서 텐서플로를 설치하는 방법을 제공한다. 도커 사용자는 도커 허브에서 직접 제작한 텐서플로 도커 이미지를 가져올 수 있다. 소스를 바이너리로 컴파일할 수도 있다. 소스는 깃허브에서 사용할 수 있다. ciokr@idg.co.kr
 



2017.11.16

텐서플로 머신러닝의 새로운 기능

Serdar Yegulalp | InfoWorld
구글의 텐서플로 1.4 머신러닝 라이브러리에 데이터 소스 작업용 공여 데이터셋 API가 추가됐다. 하지만 아직 업데이트에 주의해야 한다.



텐서플로는 머신러닝과 데이터 과학 분야에서 구글이 기여로 신경망을 빠르게 개발할 수 있는 일반적인 프레임워크다. 비교적 새로운 텐서플로는 강력한 추상화 및 사용 용이성 덕분에 이미 이러한 작업을 위한 공통 플랫폼으로 널리 채택되었다.

텐서플로 1.4 API 추가
텐서플로 케라스 API

텐서플로 1.4의 가장 큰 변화는 핵심 텐서플로 API에 두 가지 주요 추가 사항을 포함한다. tf.keras API를 사용하면 텐서플로 이전의 신경망 라이브러리인 케라스(Keras) API를 사용할 수 있지만 신속하게 바꿔버릴 수 있다. tf.keras API를 통해 케라스를 사용하는 소프트웨어는 케라스 인터페이스를 영구적으로 사용하거나 텐서플로를 원래대로 사용하기 위해 재생산되는 소프트웨어로 전환할 수 있다.

텐서플로 데이터셋 API
핵심 텐서플로 API에 추가된 기능은 tf.data 또는 데이터셋 API다. 이 API는 원래 공여 API로 제공되었지만 현재 공식적으로 지원된다. 데이터셋 API는 입력 파이프라인을 만들고 재사용할 수 있는 앱스트랙션(abstractions) 세트를 제공한다. 하나 이상의 소스에서 수집된 복잡한 데이터 세트가 필요에 따라 변형된다. 또한 데이터셋을 통해 여러 번의 교육 과정을 거치고 단계마다 다른 행동이 필요한 경우 데이터셋에는 반복 실행과 관련된 특정 기능이 있을 수 있다.

텐서플로 데이터셋 API 호환성 문제
이전 버전의 텐서플로(tf.contrib.data)에서 제공한 데이터 API의 공여 버전을 이미 사용하고 있다면 tf.data 공식 API가 완벽하게 하위단에서 호환되지 않는다는 메시지를 받게 된다. 변화의 총 횟수는 많지 않지만 전략적으로 많이 사용되는 기능이므로 대부분 기존 코드가 손상될 가능성이 있다.

예를 들어, 이전에 tf.contrib.data.rejection_resample () 또는 tf.contrib.data.Iterator.from_dataset ()을 사용했다면 둘 다 수정되며 전자는 새 기능 서명을 가지며 후자는 완전히 제거되고 Dataset.make_initializable_iterator () 기능으로 대체된다. 텐서플로의 설명서에는 tf.contrib.data에서 마이그레이션하고 공식 tf.data 라이브러리를 대신 사용하는 방법에 대한 다른 세부 정보가 있다.

단순화된 텐서플로 에스터메이터
다른 많은 추가 기능도 있다. train_and_evaluate 기능은 클러스터 전체에 분산된 방식으로 텐서플로의 에스터메이터(Estimator, 일반적인 모델 매개 변수를 자동으로 구성하는 데 사용)를 실행하는 간단한 방법을 제공한다. 또한 텐서플로에 내장된 디버깅 시스템을 사용하면 디버거의 명령 줄에서 임의의 파이썬 코드를 실행할 수 있으므로 신속하게 검사하거나 수정할 수 있다.

텐서플로 CUDA 및 CuDNN 지원
또한 텐서플로 1.4는 CUDA 및 CuDNN에 대한 지원을 업데이트한다. 엔비디아의 GPU 가속 데이터 조작 및 딥러닝 라이브러리는 버전 8 및 6에 각각 업데이트된다. 최신 버전은 아니지만 텐서플로의 개발자는 텐서플로 1.5를 CUDA 9 및 CuDNN 7로 출시할 예정이라고 밝혔다.

텐서플로 1.4 다운로드 위치
텐서플로 프로젝트 페이지에는 우분투 리눅스, 맥OS 및 마이크로소프트 윈도우에서 텐서플로를 설치하는 방법을 제공한다. 도커 사용자는 도커 허브에서 직접 제작한 텐서플로 도커 이미지를 가져올 수 있다. 소스를 바이너리로 컴파일할 수도 있다. 소스는 깃허브에서 사용할 수 있다. ciokr@idg.co.kr
 

X