답변:
딥 러닝 프레임 워크는 2 가지 추상화 수준에서 작동합니다.
Keras와 TensorFlow는 서로 다른 추상화 레벨에 있으므로 비교할 수 없습니다. 또한이 기회를 통해 Keras 사용 경험을 공유하고 싶습니다.
Keras는 모든 기능을 포함하지만 기본적으로 CPU에서만 실행됩니다. TensorFlow 또는 CNTK (개인적으로 선호하는)와 같은 백엔드를 연결하면 일부 ML 워크로드, 특히 DL 워크로드를 크게 가속화 할 수있는 GPU의 성능을 활용할 수 있습니다. 별도의 GPU가 없으면 이점이 최소화됩니다.
실제로 대부분의 경우 백엔드를 설정하고 잊어 버릴 수 있으며 Keras 내에서 완전히 작업하고 백엔드를 다른 것으로 교체하고 성능을 비교할 수도 있습니다. 따라서 하위 레벨에서 직접 코딩하지 않는 한 TF의 특성을 배울 필요가 없습니다.
TensorFlow가 일반적으로 Keras보다 더 낮은 수준의 라이브러리라는 점을 감안할 때 이것이 유연성과 성능 향상을 제공한다는 것을 알 수 있습니다 (상대적으로는 적지 만 코드 작성 방법에 따라 다름). 새로운 유형의 신경망을 연구하거나 개발하고 있다면 TensorFlow에 대한 지식이 매우 유용 할 것입니다. 그 외에는 TensorFlow의 작동 방식을 이해하면 백엔드로 사용하는 경우 여전히 도움이 될 수 있지만 Keras를 사용하는 것이 좋습니다.
그러나 얼마 전 Keras와 TensorFlow가 더욱 통합되어 삶을 훨씬 쉽게 만들 수 있다고 읽었습니다.
분명히 이것은 내 개인적인 견해 일 뿐이므로, 나는 당신이 당신의 자신의 독서를 할 수 있도록 여분의 기사를 지적하고 싶습니다. Kaggle에 대한이 토론 에서는 인수와 사용시기에 대한 개요를 제공합니다. 이 주제에 대한 중간 게시물 .