안드로이드 Tensorflow Lite 개발 환경 세팅 : 텐서플로와 호환되는 CUDA, cuDNN 설치

Kim JuYoung·2023년 12월 12일
0

Android A.I

목록 보기
1/2

✏️ 공부하면서 작성된 게시글이므로 개선할 부분이 있다면 댓글로 알려주시면 감사하겠습니다 :)

요즘 인공지능이 대세다 뭐다 원래는 인공지능에 하나도 관심이 없었지만

남들 다 하는데 안하면 뒤떨어 지는 것 같고, 공모전이나 대회에서 인공지능 소금 한꼬집 넣으면 뭔가 대단해 보이는 프로젝트 되는걸 느끼고는 인공지능 공부를 하기로 결심했습니다.

원래 기조는 안드로이드로 진로를 잡았기 때문에, 안드로이드에서 인공지능을 활용하는 방향으로 하려고 합니다.

그래서 이 글부터 시작하는 시리즈는 인공지능에서 안드로이드 활용하는 공부를 배우면서 작성하는 글이 되겠습니다!




안드로이드 인공지능 모델 개발

인공지능 라이브러리른 텐서플로와 파이토치 등이 있는데, 이번에는 텐서플로를 먼저 공부하고 파이토치를 공부해보려고 합니다.

텐서플로에서는 안드로이드와 같은 임베디드 컴퓨터에서 동작할 수 있도록 가볍지만 강력하게 동작하는 텐서플로 라이트 라이브러리를 제공합니다.

안드로이드에서 텐서플로 라이트를 이용하여 서비스를 제공하기 위해서는 기존의 텐서플로 모델을 텐서플로 라이트 모델로 변경해야합니다.

해당 모델은 .tflite 확장자로 저장되며 텐서플로에서 제공되는 API를 이용하여 간편하게 변환할 수 있습니다.

이번에는 텐서플로 개발환경 구축하는 방법을 올려보려고 합니다.


CUDA 지원 확인하기

인공지능 모델을 CPU로 개발해도 되지만 그래픽 카드로 연산을 하게되면 굉장히 빨라지기 때문에 텐서플로에서 그래픽카드를 인식하고 사용할 수 있도록 CUDA와 cuDNN을 설치해야합니다.

그냥 아무거나 설치하면 안되고 현재 운영체제와 버전 호환이 되는 버전을 설치해야합니다.

https://www.techpowerup.com/gpuz/

현재 그래픽 카드가 CUDA를 지원하는지 확인하기 위해 GPU-Z 프로그램을 설치하여 확인합니다.

다운로드 GPU-Z 버튼을 누르고 가장 최근에 업데이트된 버전을 클릭, 다운로드 서버를 선택하면 다운로드가 완료됩니다.

프로그램을 실행하면 아래에 CUDA에 체크표시가 되어있다면 현재 그래픽 카드는 CUDA를 지원하는 그래픽 카드입니다.


버전 호환되는 CUDA, cuDNN 확인

https://www.tensorflow.org/install/source_windows?hl=ko

그래픽 카드에서 쿠다 지원을 확인 했으면 설치 할 텐서플로우 버전과 호환이 되는 쿠다와 cuDNN을 설치해야합니다.

위 사이트에 들어가서 밑으로 내리면 GPU 지원이 되는 텐서플로우 버전과 cuDNN 그리고 CUDA 버전이 적혀있습니다.

지금 당장의 저는 윈도우 운영체제에서 사용할 것이기 때문에 윈도우에서 지원되는 버전에 맞춰서 설치해야합니다.

윈도우에서 GPU 지원되는 텐서플로우의 버전은 2.10.0이고 쿠다 버전은 11.2 그리고 cuDNN은 8.1 을 설치하면 됩니다.

비주얼 스튜디오도 설치해야하는데 이건 너무 쉽기 때문에 되어 있다고 가정하겠습니다. C/C++ 선택해서 설치하면 됩니다.


CUDA 11.2 설치

위에서 설치해야할 CUDA 버전이 11.2 라는 것을 확인했습니다.

https://developer.nvidia.com/cuda-11.2.0-download-archive

여기 링크에서 CUDA 11.2를 다운받을 수 있습니다.

지금 컴퓨터는 윈도우 10이라서 상관없지만 윈도우 11 버전은 해당 버전을 설치할 수 없습니다.

이럴 경우 CUDA 12.1 버전을 다운 받아서 설치해야합니다.

제 개인 컴퓨터는 윈도우 11이라서 12.1을 설치했고 정상작동 하는 것을 확인했습니다.

윈도우 11 다운로드 방법은 아래 참고를 확인해주세요.


CUDA 11.2 다운로드가 끝났으면 실행해서 설치를 해줍니다.

이번 과정에서는 어려운 것이 딱히 없고, 그래픽카드 드라이브 설치하는 것 처럼 다음 딸깍 딸깍 해주면 끝납니다.


cuDNN 8.1 설치

https://developer.nvidia.com/rdp/cudnn-archive

CUDA 설치가 끝났으면 cuDNN을 설치해야합니다. 아까 8.1 버전을 설치해야한다고 확인 했으니 8.1 버전을 다운로드 해봅시다.

이번에는 엔비디아 계정 로그인이 필요합니다. 간단하게 회원가입을 했다고 가정하고 진행합니다.

링크로 들어가서 밑으로 내려가면 Download cuDNN 8.1.1을 확인할 수 있습니다. 들어가서 윈도우 운영체제에 맞는 것을 설치하면 됩니다.

요즘 컴퓨터 중에 32 비트 컴퓨터는 못봤지만 x86 이라고 되어있는게 이상합니다만 어쩔 수 없습니다. 다운로드를 해줍시다.

다운 받고 압축을 풀어줍시다.

그러면 이런 폴더들이 있는데 이걸 복사를 해주고

C:\Program Files\NVIDIA GPU Computing Toolkit\CUDA\v11.2

CUDA를 설치한 해당 경로에 그대로 복붙해주면 됩니다.

만약 CUDA 설치 과정에서 경로를 변경했다면 변경된 경로에 복붙해야합니다.

그대로 복붙해주면 됩니다.


텐서플로우 2.10.0 설치

이제 마지막 단계 입니다. 아나콘다는 설치되어 있다고 가정하겠습니다.

저는 아나콘다 가상환경으로 python 3.8 버전으로 세팅을 해놨습니다.

텐서플로우를 설치하기 전에 conda 프롬프트로 nvcc --version을 입력해서 cuda가 제대로 설치되었는지 확인해봅시다.

이제 진짜 텐서플로우를 설치합니다.

pip install tensorflow==2.10.0

을 입력해줍시다.

그러면 프롬프트 창에 텐서플로우가 설치되는 중이라고 밑에 현재 진행 상황이 출력됩니다.

설치가 완료되면 이렇게 뜹니다.

conda list를 입력하여 제대로 설치되었는지 확인해봅시다.


텐서플로 GPU 인식 확인하기

텐서플로 GPU 확인 파이썬 코드

import tensorflow as tf

print(tf.__version__)
print(tf.config.experimental.list_physical_devices('GPU'))

이제 진짜 마지막으로 파이참이든 뭐든 파이썬 코드를 입력해봅시다.

이렇게 출력이 된다면 제대로 GPU를 인식하고 사용할 수 있다고 확인할 수 있습니다.

끝!


참고

윈도우 11에서 텐서플로 2.10.0 호환되는 CUDA 설치

https://walwalgabu.tistory.com/entry/1-Window11%EC%9C%88%EB%8F%84%EC%9A%B011-CUDA-%EC%84%A4%EC%B9%98-1-tensorflow-gpu

profile
안드로이드와 인공지능에서 살아남기

0개의 댓글

관련 채용 정보