KNIME에서 python을 사용할 수 있지만, 사용에 앞서 몇 가지 설정해야할 사항들이 있다. 순서대로 알아보도록 하자.
Anaconda 설치

Anaconda는 데이터 분석 및 ML에 사용되는 workflow로, KNIME에서 python 가상환경을 만들기 위해 사용된다. 혹시 설치가 되어 있지 않으면, https://www.anaconda.com/download 에서 운영체제에 맞게 설치를 진행하면 된다.


설치가 끝났으면, KNIME을 실행하고 왼쪽 상단의 File -> Preferences로 들어간다. KNIME을 누르면 Conda가 보이는데, 여기서 사전에 설치한 Anaconda의 directory를 설정하고 버전에 이상이 없는지 확인한다. 만약 오류가 있다면, version 정보가 아닌 error 메시지가 보일 것 이다.
Python Environment

Conda 설치가 끝나고 왼쪽의 스크롤바를 내리면 Python 메뉴가 보인다. 우리는 위에서 Conda를 설치하고 경로를 설정했기 때문에, conda로 config를 진행한다. 기존의 가상 환경을 사용할 수도 있지만, 오류가 발생할 수 있으므로 오른쪽의 New environment를 눌러서 KNIME에서 python 3를 쓰기 위해 새로운 가상환경을 만들어준다. 정상적으로 실행이 됐으면, 버전이 출력된다.
Python (legacy)

node를 사용하다보면, python(legacy)에 속해있는 node를 사용할 때도 있다. 실제로 코스피 방향 예측 프로젝트에서 legacy를 사용한 적이 있기 때문에, python 2와 3에 맞게 각각 가상환경을 설정해준다. 단, 보통은 python 3를 사용하기 때문에 default로는 python 3를 설정해준다. python 2는 가상환경이 없기 때문에, New Environment로 python 2를 위한 환경을 만들어주면 좋다.
Python Deep Learning


KNIME은 ML 뿐만 아니라 DL 역시 지원한다. 아쉽게도 Pytorch는 직접적으로 사용할 수 없고, Keras 및 Tensorflow 2를 지원하고 있다. Preferences의 python deep learning에서 위의 사진과 동일하게 선택하고, Keras와 Tensorflow 2를 위한 가상 환경을 제작한다. 사전에 Extensions를 설치했다면, 해당 설정을 마치고 Apply and Close를 누르면 node에서 keras 및 tf를 사용할 수 있다. 만약 pytorch를 사용하고 싶으면, 설정을 마치고 python script 혹은 source 등을 활용해 module를 사용하면 된다.
Package Install

KNIME에서 python을 사용하다보면 가상환경에 설치되지 않은 패키지가 필요하거나, 다른 사람의 component(class) 혹은 example을 실행할 때 필요한 패키지가 생길 수 있다. 설치를 위해서 다음과 같은 순서로 실행하면 된다.
- Anaconda Prompt를 관리자 권한으로 실행한다.
- 가상환경을 활성화 해준다. 여기서는 python 3를 default로 사용하기 때문에 py3_knime을 활성화 시켰다.
- py3_knime이 활성화 되었으면, conda install package_name을 사용해 필요한 package를 다운받는다. 설치 외에도 다양한 명령어가 있는데, 대표적인 명령어는 아래와 같다.
| 원하는 옵션 | 명령어 |
| 가상환경 리스트 확인 | conda env list |
| 가상환경 활성화 | conda activate myenv |
| 패키지 설치 | conda install package_name |
| 특정 패키지 특정 버전으로 업그레이드(다운그레이드) | conda install package_name = version |
| 특정 패키지 버전 확인 | conda search package_name |
| 패키지 업데이트 | conda update package_name |
| 패키지 삭제 | conda remove package_name |
| 패키지 리스트 확인(현재 가상환경) | conda list |
출처
지식광장네트워크 - 이강배 교수님
'Data Science' 카테고리의 다른 글
| [Pytorch] Neural Network (0) | 2023.09.21 |
|---|---|
| [NLP] Tokenizer (0) | 2023.09.20 |
| [KNIME] 설치방법 (0) | 2023.09.16 |
| [NLP] Transfer Learning (0) | 2023.09.13 |
| [시계열 분석] 시계열의 의미와 요인 (2) | 2023.08.23 |