`혼동 행렬(Confusion matrix)`을 사용하면 분류(Classification) 문제에서 모델의 성능을 평가할 수 있다. TP, TN, FP, FN와 같은 개념들은 이진 분류에서 유명하지만, 멀티 클래스 분류에서도 사용되는 성능 평가 지표들이다. 이진 분류 및 멀티 클래스 분류에서 Confusion matrix을 계산하는 법을 알아보자.이진 분류에서 TP, TN, FP, FN의 의미먼저 각 값의 의미에 대해서 알아보자.<ul style="list-style-type: disc;" data-ke-list-type="dis..
분류 전체보기
2023년은 정말 많은 일이 있었던 시간이었다. 최근 Spotify의 2023 Wrapped도 받은 겸, 내가 겪은 경험과 느낀 점들을 정리하고자 글을 쓴다. 개인적인 정리이기도 하지만 3-4학년 생활을 정리하는 글인 만큼 진로를 고민하는 학부생들이 읽어도 좋을 것 같다(정작 나도 아직 학부생이지만). 작년에 나는 내 진로를 매우 고민하는 시간을 가졌었다. "나는 어떤 분야에 가장 관심이 있는 거지?"라는 의문이 굉장히 깊게 들었고, 이 고민에 대해서 많은 분들에게 조언을 구했었는데, 공통적인 답변은 "최대한 다양한 분야를 시도해 보고 그중에서 고르라"였다. 2023년은 이 조언에 충실하게 '최대한 많은 분야를 시도해 보는 것'이 목표였었다. Jan-Feb: 인공지능 보안 랩실의 학부생 인턴2023년은 ..
Anaconda는 데이터 과학, 인공 지능, 기계 학습 등의 작업을 수행하기 위한 파이썬 기반 오픈 소스이다. 조금 더 자세히 설명하자면, 아나콘다는 가상환경(Virtual Environment)을 생성해 파이썬 환경을 격리함으로써 프로젝트 간의 의존성 충돌을 방지하고, 프로젝트 별로 필요한 패키지 및 라이브러리를 독립적으로 관리하는 도구이다. 아나콘다를 통해 가상환경을 사용하면 각 프로젝트 별 파이썬 라이브러리 의존성을 격리할 수 있기 때문에, 파이썬 프로젝트를 가동하기 매우 편리해지진다. 프로젝트 A, B에서 각각 다른 버전의 numpy 라이브러리를 사용한다고 할 때, 각기 다른 가상환경을 만들어주고 그 안에 numpy를 버전에 맞게 설치해주면 끝이기 때문이다. 리눅스 서버에 Anaconda를 설치하..
설정 파일 안에 프로그램을 돌리는데 필요한 모든 초기 변수를 저장해 놓으면 나중에 옵션을 수정하기 매우 간편하다. 특히, 여러 옵션을 변경하면서 시도해 봐야 하는 ML/AI 모델이나 시뮬레이터 등을 돌리려고 할 때, 설정 파일을 만들어주면 클린 코드 작성이 가능하며, 수정하기도 편리해진다. 프로젝트 구조 우선 프로젝트 안에 config.ini 파일을 만들어 준다. 이 파일은 main.py 같은 파이썬 스크립트에서 configparser 클래스를 통해서 사용 가능하다. config.ini 파일의 경로를 설정해줄 수 있기 때문에 어떤 모듈에 파이썬 스크립트가 있든 간에 사용 가능하다. project_root/ │ ├── config.ini │ └── module_name/ └── main.py config...
Use kubectl to see a list of Pods in a cluster kubectl 명령어를 통해서 쿠버네티스를 관리하는 일련의 과정은 어떻게 이루어지는 것일까? 클러스터에 대한 권한을 가지고 있는 관리자가 kubectl 명령어를 치면, kubectl은 이를 command line 명령어에서 API call로 변경한다. 이는 HTTPS를 통해 쿠버네티스 제어 영역의 kube-apiserver로 보내진다. kube-apiserver는 해당 request를 etcd에 쿼리를 던짐으로서 처리한다. 처리된 결과는 다시 kube-apiserver를 통해서 다시 kubectl에게 전달되고, 이 결과가 관리자에게 command prompt를 통해 전달된다. Kubectl must be configure..