이 포스트는 프로젝트 진행 중 발생한 모든 오류 해결 과정을 포함하고 있습니다. 다소 긴 내용이 될 수 있으므로, 필요한 부분만 참고하시기 바랍니다.
[상 편에 이어 진행 됩니다.]
1. 파이썬 가상 환경 만들기
책에서 제시한 2.7 버전은 아키텍쳐 때문에 m1 m2 m3 mac 에서 사용이 불가능하다.
arm 과 호환성을 위해 파이썬 3.8.11 버전으로 가상환경을 구축한다.
conda create --name mlsec_3811 python=3.8.11
y 를 입력해 진행
아래와 같이 나온다면 설치가 잘 진행된 것이다.
명령어를 잘 기억해 두자.
가상환경 활성화 명령어 = conda activate mlsec_3811
가상환경 비활성화 명령어 = conda deactivate
반드시 터미널을 재시작해야 명령어를 사용할 수있다.
2. 가상환경에 주피터 설치하기
주피터는 여러 프로그래밍 언어를 지원하는 코드 작업 환경이다.
웹상에서 코드를 작성하고 설명을 추가하고, 그래프를 바로 그릴 수 있다는 장점이 있다.
여러 형식으로 결과파일을 생산할 수있다. (html, pdf, ipynb)
mlsec_3811 가상환경을 주피터에 등록하여 해당환경에서 사용할수 있도록 하자
책에서는 직접 파일을 생성하여 등록하는데 명령어 입력으로 간단하게 처리해본다.
mlsec_3811 가상환경을 주피터에 등록하기위해 우선 활성화 시킨다.
conda activate mlsec_3811
pip install ipykernel
아래와 같이 나온다면 성공
주피터 설치
conda install notebook
주피터에 가상환경 등록
python -m ipykernel install --user --name=mlsec_3811 --display-name "Python (mlsec_3811)"
주피터 실행
터미널을 모두닫은 후 재시작한다.
conda activate mlsec_3811
jupyter notebook --ip=0.0.0.0
아래와 같이 윈도우가 뜨며 new 를 눌렀을때 설치한 내역들이 보인다면 성공이다.
3. Numpy(Numpy.ipynb)
numpy는 수치 계산을 위한 핵심 라이브러리로, 주로 배열(다차원 배열) 및 행렬 연산을 수행하는 데 사용된다.
가상환경이 활성화 된 상태에서 홈디렉터리로 이동.
conda activate mlsec_3811
cd ~
그후 주피터 실행한다.
jupyter notebook --ip=0.0.0.0
아래주소에서 실습자료를 다운로드
자료 다운로드 링크를 타고 들어가면 "인공지능 보안을 배우다_실습자료" 라는 폴더가 있을텐데, 이를 다운받는다.
https://github.com/bjpublic/Ai-learnsecurity?tab=readme-ov-file
아래 세개의 파일을 준비한다.
주피터에서 upload 버튼 클릭
numpy.ipynb 파일, pandas, metaaplotilib.ipynb 파일을 하나씩 드래그 앤 드롭 후 open 버튼 클릭 (한번에 세개 동시에 업로드가 안될 수 있다.)
아래와같이 홈화면에 파일이 보인다면 업로드에 성공한 것이다.
numpy를 더블클릭한다.
커널을 mlsec_3811으로 지정한다.
이렇게 뜨면 성공
재생 버튼을 누르면 코드를 실행할수있으나 현재 numpy 패키지가 설치되어있지 않아 실행 오류가 났다.
numpy 패키지를 설치한다.
인터넷 창을 닫고 터미널에서 ctrl + z 를 입력하여 주피터를 중단한 다음 아래의 코드를 입력한다.
pip install numpy pandas scipy matplotlib xlrd lxml graphviz scikit-learn
이렇게 나오면 제대로 설치 중인것이다.
sudo apt-get install graphviz
y 입력
설치가 완료 되었다.
설치가 완료되었다면 다시 numpy 페이지를 열어보자.
안된다면 터미널을 모두 닫고 다시 해 본다.
* 주의할점은 항상 가상환경을 활성화 한 상태에서 주피터를 실행해야 한다는 것이다.
jupyter notebook --ip=0.0.0.0
첫번째 블록을 클릭하고 재생버튼을 눌렀을때 에러가 뜨지 않고 실행결과가 출력된다면 성공한 것이다.
4. pandas
판다스는 데이터 프레임 자료형을 제공하는 패키지이며, 데이터 분석을 보다 쉽고 직관적으로 할 수 있도록 도와준다.
판다스 실행 테스트를 위해 실습자료의 csv파일과 xlsx 파일을 업로드한다.
업로드 방식은 아까전 numpy등을 업로드 했을 때와 동일하게 하면 된다.
jupyter 메인 화면에서 pandas를 더블클릭한다.
그런데 엑셀파일을 불러오는 코드에서 실행오류가 발생했다.
pandas 를 위한 패키지 몇개가 설치되어있지 않다는데,
아래코드로 몇개의 패키지를 추가로 설치한다.
pip install python-dateutil pytz openpyxl
다시 주피터를 실행해서 코드실행을 해보면
제대로 되는 것을 확인 할 수 있다.
드디어 모든 준비가 다 되었다.
혹시나 패키지 설치에 막힌 부분이 있다면, 내가 사용하고있는 버전이 m1 mac 과 호환되는지, 또는 각 소프트웨어 버전과 호환되는지 확인 해보길 바란다.