
TensorFlow Addons
TensorFlow Addons은 잘 확립된 API 패턴을 준수하지만, 핵심 TensorFlow에서 사용할 수 없는 새로운 기능을 구현하는 노력의 리포지토리입니다. TensorFlow는 기본적으로 많은 수의 연산자, 레이어, 메트릭, 손실 및 옵티마이저를 지원합니다. 그러나 ML과 같이 빠르게 발전하는 분야에는 핵심 TensorFlow에 통합할 수 없는 흥미로운 새로운 개발이 많이 있습니다(광범위한 적용 가능성이 아직 명확하지 않거나 커뮤니티의 작은 단위에서 주로 사용되기 때문입니다).
설치
안정적인 빌드
최신 버전을 설치하려면, 다음을 실행합니다.
애드온을 사용하려면,
야간 빌드
TensorFlow의 안정적인 최신 버전에서 빌드된 pip 패키지 tfa-nightly
아래에 TensorFlow Addons의 야간 빌드가 있습니다. 야간 빌드에는 새로운 기능이 포함되어 있지만, 버전이 지정된 릴리스보다 안정성이 떨어질 수 있습니다.
소스에서 설치하기
소스에서 설치할 수도 있습니다. 이를 위해서는 Bazel 빌드 시스템이 필요합니다.
핵심 개념
서브 패키지 내 표준화된 API
사용자 경험과 프로젝트 유지 관리는 TF-Addons의 핵심 개념입니다. 핵심 TensorFlow에서 볼 수 있는 확립된 API 패턴을 준수해야 합니다.
GPU/CPU 사용자 정의 연산
TensorFlow Addons의 주요 이점은 사전 컴파일된 ops가 있다는 것입니다. CUDA 10 설치를 찾을 수 없는 경우, 해당 op는 자동으로 CPU 구현으로 대체됩니다.
프록시 유지 관리
애드온은 하위 패키지와 하위 모듈을 구분하여 해당 구성 요소에 대한 전문 지식과 관심이 있는 사용자가 유지 관리할 수 있도록 설계되었습니다.
서브 패키지의 유지 관리 권한은 쓰기 권한이 있는 사용자의 수를 제한하기 위해 기여한 바가 큰 사용자에게 부여될 수 있습니다. 기여는 이슈 종결, 버그 수정, 문서화, 새 코드 또는 기존 코드의 최적화와 같은 여러 형태를 포함합니다. 하위 모듈의 유지 관리 권한은 리포지토리에 대한 쓰기 권한을 포함하지 않으므로 진입 장벽을 낮추어 부여할 수 있습니다.
자세한 내용은 이 주제에 대한 RFC를 참조하세요.
하위 패키지의 주기적 평가
이 리포지토리의 특성을 고려할 때 하위 패키지와 하위 모듈은 시간이 지남에 따라 커뮤니티에서 그 유용성이 떨어질 수 있습니다. 리포지토리가 지속될 수 있도록 유지하기 위해 2년에 한 번씩 코드를 검토하여 모든 것이 리포지토리 내에 있는지 확인할 것입니다. 검토에 영향을 주는 요소는 다음과 같습니다.
활성 관리자의 수
OSS 사용량
코드로 인한 문제 또는 버그의 양
더 나은 솔루션을 사용할 수 있는 경우
TensorFlow Addons 내의 기능은 3가지 그룹으로 분류할 수 있습니다.
Suggested: 잘 관리된 API, 사용이 권장됩니다.
Discouraged: 더 나은 대안을 사용할 수 있습니다. API는 역사적인 이유로 보관됩니다. 또는 API에 유지 보수가 필요하며 더 이상 사용되지 않을 때까지 기다리는 기간입니다.
Deprecated: 사용자의 책임 하에 사용하세요. 삭제될 수 있습니다.
이 3가지 그룹 간의 상태 변경은 다음과 같습니다. Suggested <-> Discouraged -> Deprecated
API가 'deprecated'으로 표시된 후 삭제되기까지의 기간은 90일입니다. 근거는 다음과 같습니다.
TensorFlow Addons이 매월 릴리스되는 경우, API가 삭제되기 전에 2~3번 릴리즈될 수 있습니다. 릴리스 노트에서 사용자에게 충분한 경고를 제공할 것입니다.
90일은 관리자가 코드를 수정할 수 있는 충분한 시간을 제공합니다.
기여하기
TF-Addons은 커뮤니티 주도의 오픈 소스 프로젝트입니다. 따라서 프로젝트는 공개 기여, 버그 수정 및 문서화에 의존합니다. 기여 방법은 기여 가이드라인을 참조하세요. 이 프로젝트는 TensorFlow의 행동 강령을 따릅니다. 참여를 통해 이 코드를 많이 지지해 주시기 바랍니다.
커뮤니티
메일 그룹에 가입하고 회의에 대한 캘린더 초대 받기