잘 알려진 것 처럼
텐서플로우(TensorFlow)는 파이썬에서 동작하는 딥러닝, 머신러닝 등에 사용하는 프레임워크로 잘 알려져 있습니다. 여기에 .js를 붙이면 바로 TensorFlow.js가 되죠. 바로 이것은 무엇인지 알아봅니다.
# TensorFlow.js란 무엇인가?
텐서플로우는 구글에서 만든 파이썬 기반의 프레임워크으로 서버에서 구동되고 동작합니다. 하지만 머신러닝, 딥러닝이 꼭 서버에서만 필요한 것은 아니겠죠. 서버가 아닌 클라인언트 측에서 동작한다면 어떨까요?
TensorFlow.js는 클라이언트에서 동작하는 자바스크립트 라이브러리이다
한 마디로 요약하면 이렇게 말 할 수 있습니다.
이미지 출처) Tensorflow.js 홈페이지
! TensorFlow.js의 시작
텐서플로우를 처음 만들어 공개했던 구글은 자바스크립트 기반의
TensorFlow.js를 발표했고 2019년에 드디어 안정된 버전 v1.0을 소개했습니다. 이제는 서버가 아닌 클라이언트에서도 머신러닝, 딥러닝을 통한 학습과 결과를 도출할 수 있게 되었습니다.
다음으로 TensorFlow.js의 가장 장점은 무엇일까요? 가장 큰 장점은 아래와 같을 것입니다.
- 자바스크립트 언어만으로 DeepLearning, ML 등의 구현이 가능
- 웹, 앱 등의 어플리케이션에서 바로 구현이 가능
- 데이터트래픽이 발생하지 않음
- 네트워크가 없어 즉시 동작하여 네트워크가 없어도 동작함
이런 장점들이 대표적인 장점입니다.
! TensorFlow.js를 주목해야 하는 점
과거로 돌아가보면... 2000년 초반까지는 서버 기반의 웹개발이 주도를 이루었다면 Ajax과 더불어 서버에서 클라이언트로 점점 옮겨졌던 시기가 있었습니다. 이는 서버의 부담을 최소로 줄일 수 있고 서버는 서버로서의 역할에 더 집중할 수 있었죠.
어찌보면 현재 TensorFlow 역시 이와 비슷한 과정을 겪는 것 같습니다. TensorFlow.js를 사용하면 앞으로는 서버가 없어도 브라우저 또는 사용자가 가진 모든 디바이스, 환경에서 즉시 원하는 머신러닝, 딥러닝을 손 쉽게 구현할 수 있게 될 것입니다.
다시 말하면 좀 더 서비스 측면에... 엔드 유저가 가까운 머신러닝 기술 사용이 가능하게 된 것임을 의미 하기도 합니다.
2020년 부터는 딥러닝, 머신 러닝, AI 기술의 속도가 점점 더 가속화 될 것입니다. 초기 웹개발자 영역이 분리되며 여러개의 새로운 분야가 나타난 것 처럼 아마 이 분야의 좀 더 전문화 된 영역으로 나타나지 않을까 생각됩니다. 새로운 기회가 생겨난 것이죠.