jupyterlab 의 확장 모듈을 다운받아 설치시 nodejs 실행 환경이 제공되야 한다.
jupyterlab 확장 build error
jupyterlab 의 확장 모듈을 다운받아 설치하다 보면 npm 과 연계한 프로그램이 많다. 아래 같은 nodejs 관련 에러를 발생한다.
1 2 3 4 5 6
daddy> jupyter lab build ... ... An error occurred. RuntimeError: npm dependencies failed to install See the log file for details: C:\Users\USERID\AppData\Local\Temp\jupyterlab-debug-4kr1lkn1.log
결론으로 현재 jupyterlab 을 실행하는 환경에서
nodejs 버전이 설치되어 있고
jupyterlab extensions가 활성화 되어 있다면
해당 로그 파일을 확인해 보면 대부분 nodejs 버전이 일치하지 않아서 아래 같은 로그를 기록하고 있어 보인다.
1 2
error readable-stream@4.3.0: The engine "node" is incompatible with this module. Expected version "^12.22.0 || ^14.17.0 || >=16.0.0". Got "14.15.0" error Found incompatible module.
GRANTALL PRIVILEGES ON DB이름.테이블이름 TO 아이디@호스트 IDENTIFIED BY'비밀번호'withgrant option;
-ALL PRIVILEGES : 모든 권한 추가 -SELECT, INSERT, UPDATE, DELETE, ... : 권한을 일부분을 추가 -withgrant option : GRANT를 사용할 수 있는 권한 추가 -Grant 로 주어지는 권한은 여기 [grant: privilege-levels](https://mariadb.com/kb/en/grant/#privilege-levels) 명령에서 찾을 수 있다.
아래는 userid 사용자가 특정 sampledb 에만 모든 권한을 부여하고 있다.
1 2
mysql>GRANTALL PRIVILEGES ON sampledb.*TO'USERID'@'localhost'; mysql> FLUSH PRIVILEGES;
다음 GRANT 명령에서 ALL PRIVILEGES ON *.* 는 모든 권한(ALL PRIVILEGES)을 모든 스카마의 모든 테이블 *.* 에 준다는 의미.
회사 등에서 방화벽을 사용하는 경우 pip / conda 저장소에서 패키지 설치가 안되는 경우가 있다. 또한 방화벽 안에서 설치할 경우 SSL verification error 에러 발생으로 설치가 안되기도 한다. 이런 경우 직접 pip 혹은 conda 설치가 안되는 경우에 프락시 지정을 해서 사용이 가능하다.
TensorFlow Lite는 더 작고 휴대 가능하며 효율적인 기계 학습 모델 형식으로 변환되는 TensorFlow 모델을 사용합니다. Android에서 TensorFlow Lite와 함께 사전 빌드된 모델을 사용하거나 고유한 TensorFlow 모델을 빌드하고 TensorFlow Lite 형식으로 변환할 수 있습니다.
단, TensorFlow Lite 모델과 TensorFlow 모델은 형식이 다르며 상호 교환할 수 없습니다. TensorFlow 모델은 TensorFlow Lite 모델로 변환할 수 있지만 해당 프로세스는 되돌릴 수 없습니다.
- 개발 워크플로
다음 가이드는 워크플로의 각 단계를 둘러보고 다음 안내에 관한 링크를 제공합니다.
TensorFlow Lite 모델 생성
추론 실행
1. TensorFlow Lite 모델 생성
TensorFlow Lite 모델은 FlatBuffers(.tflite 파일 확장자로 식별됨)라는 효율적으로 이동 가능한 특수 형식으로 표현된다. TensorFlow Lite 모델은 선택적으로 메타데이터를 포함할 수 있으며 이 메타데이터에는 기기 추론 중에 파이프라인 전처리와 후처리의 자동 생성을 위해 사람이 읽을 수 있는 모델 설명과 머신이 읽을 수 있는 데이터가 포함됩니다. 자세한 내용은 메타데이터 추가 를 참고하세요.
다음 방법으로 TensorFlow Lite 모델을 생성할 수 있습니다.
기존 TensorFlow Lite 모델 사용: 기존 모델을 선택하려면 TensorFlow Lite 예를 참고하세요. 모델은 메타데이터를 포함할 수도 있고, 포함하지 않을 수도 있습니다.
TensorFlow Lite 모델 생성: TensorFlow Lite Model Maker를 사용하여 자체 맞춤 데이터 세트를 포함하는 모델을 만듭니다. 기본적으로 모든 모델은 메타데이터를 포함합니다.
TensorFlow 모델을 TensorFlow Lite 모델로 변환: TensorFlow Lite 변환기를 사용하여 TensorFlow 모델을 TensorFlow Lite 모델로 변환합니다. 변환 중에 최적화(예: 양자화)를 적용하여 정확성의 손실이 없거나 최소화된 상태로 모델 크기와 지연 시간을 줄일 수 있습니다. 기본적으로 모든 모델은 메타데이터를 포함하지 않습니다.
2. 추론 실행
메타데이터가 없는 모델: TensorFlow Lite Interpreter API를 사용합니다. 다양한 플랫폼과 언어(예: 자바, Swift, C++, Objective-C, Python)에서 지원됩니다.
메타데이터가 있는 모델: TensorFlow Lite 작업 라이브러리를 사용하는 즉시 사용 가능한 API를 활용하거나 TensorFlow Lite 지원 라이브러리를 사용하는 맞춤 추론 파이프라인을 빌드할 수 있습니다. Android 기기 사용자는 Android 스튜디오 ML 모델 결합 또는 TensorFlow Lite 코드 생성기를 사용하여 자동으로 코드 래퍼를 생성할 수 있습니다. Swift(iOS)와 C++는 작업 중이며 자바(Android)에서만 지원됩니다.
2. 기계햑습 모델과 Android
Tensorflow 모델에서 생상한 추론 엔진을 Android 앱에서 사용할 수 있도록 한다.
Android 에서 Tensorflow 모델 실행
Android 앱은 TensorFlow Lite 모델을 실행하기 위해 다음 요소가 필요합니다.
Android App (Java, Kotlin)
모델 실행을 위한 TensorFlow Lite 런타임 환경
데이터를 텐서로 변환하는 모델 입력 핸들러
출력 결과 텐서를 수신하고 예측 결과로 해석하는 출력 핸들러를 모델링한다.
Tensorflow Lite Runtime 환경
Android 앱에서 모델을 실행하기 위해 런타임 환경을 활성화하는 방법에는 여러 가지가 있습니다. 다음은 기본 옵션입니다.