전체 글 17

헷갈리는 Precision, Recall, F1-score 한 방에 정리하기

오늘은 머신러닝 모델 평가에서 가장 중요한 지표들인 Precision, Recall, 그리고 F1-score에 대해 알아보려고 합니다. 머신러닝 모델을 만들었다면, 그 성능이 얼마나 좋은지 평가해야 하는데요. "좋은 모델"이란 과연 무엇일까요? 단순히 정확도가 높다고 해서 좋은 모델일까요?예를 들어, 암 진단 모델에서는 실제 암환자를 놓치는 것과 정상인을 암환자로 잘못 진단하는 것 중 어느 것이 더 위험할까요? 이런 다양한 상황을 제대로 평가하기 위해서는 여러 가지 평가 지표들을 이해해야 합니다.이러한 평가 지표들의 기초가 되는 것이 바로 혼동행렬(Confusion Matrix)인데요 혼동행렬(Confusion Matrix)은 기계가 문제를 푸는 과정에서 얼마나 헷갈려하고 있는지, 혼란(confuse)을..

DM 2024.11.29

CPU 성능 향상 기법

1. 빠른 CPU를 위한 설계 기법📌 클럭컴퓨터 부품들은 '클럭 신호'에 맞춰 일사불란하게 움직입니다.그리고 CPU는 '명령어 사이클'이라는 정해진 흐름에 맞춰 명령어들을 실행합니다. 클럭 신호가 빠르게 반복된다면CPU를 비롯한 컴퓨터 부품들은 그만큼 빠른 박자에 맞춰 움직이게 됩니다. 즉, 클럭 속도가 높아지면 CPU는 명령어 사이클을 더 빠르게 반복할 것이고, 다른 부품들도 그에 발맞춰 더 빠르게 작동할 것입니다. 실제로 클럭 속도가 높은 CPU는 일반적으로 성능이 좋습니다. 그래서 클럭 속도는 CPU 속도 단위로 간주되기도 합니다. 클럭 속도는 헤르츠(Hz) 단위로 측정합니다.이는 1초에 클럭이 몇 번 반복되는지를 나타냅니다.가령 클럭이 똑-딱-하고 1초에 한 번 반복되면 CPU 클럭 속도는 1H..

CPU의 작동 원리

CPU란? 메모리에 저장된 명령어를 읽어 들이고, 해석하고, 실행하는 장치입니다.더보기가장 큰 사각형은 메인보드메인보드 안에 시스템 버스(양방향 수직 화살표)가 있음CPU 내부에는 ALU(산술논리연산장치), 제어장치와 여러 레지스터가 있음.CPU는 메인보드 내 시스템 버스와 연결되 어있음메모리는 메인보드 내 시스템 버스와 연결되어 있음보조기억장치는 메인보드 내 시스템 버스와 연결되어 있음모니터, 키보드, 마우스 등은 메인보드 내 시스템 버스와 연결되어 있음. 이들을 입출력장치라고 부름.CPU의 구성 요소 중 ALU와 제어장치를 알아봅시다.1. ALU와 제어장치📌 ALU ALU는 계산하는 부품입니다.계산하기 위해서는 무엇이 필요할까요? 1+2를 계산할 때 1과 2라는 피연산자와 더하기라는 수행할 연산이 ..

명령어

1. 소스 코드와 명령어📌 고급 언어와 저급 언어컴퓨터는 C, C++, Java, Python과 같은 프로그래밍 언어를 이해할 수 있을까요? 답은 "그렇지 않다"입니다. 우리가 프로그램을 만들 때 사용하는 프로그래밍 언어는 컴퓨터가 이해하는 언어가 아닌 사람이 이해하고 작성하기 쉽게 만들어진 언어입니다.컴퓨터는 이 언어를 이해하지 못합니다.이렇게 "사람을 위한 언어"를 고급 언어 high-level programming language라고 합니다.➡ 대부분의 프로그래밍 언어가 고급 언어에 속합니다. 반대로 컴퓨터가 직접 이해하고 실행할 수 있는 언어를 저급 언어 low-level programming language라고 합니다.컴퓨터가 이해하고 실행할 수 있는 언어는 오직! 저급 언어일 뿐입니다. 그래..

컴퓨터 데이터, 정보단위

1. 0과 1로 숫자를 표현하는 방법정보 단위컴퓨터가 표현하는 정보단위란?컴퓨터는 0 또는 1밖에 이해하지 못합니다.(*이진수는 컴퓨터의 회로에서 전기 신호의 상태(켜짐, 꺼짐)를 표현하는데 적합하기 때문에 사용합니다.) 0과 1을 나타내는 가장 작은 정보 단위를 비트 bit(Binary Digit)라고 합니다. 비트는 0과 1을 표현할 수 있는 가장 작은 정보 단위 예를 들어, 하나의 전구를 꺼짐과 켜짐  두 가지 상태를 표현할 수 있듯이,비트는 0 또는 1, 두 가지 정보를 표현할 수 있습니다. 그럼 2개의 전구는 몇 가지 상태를 보여줄 수 있을까요?(꺼짐, 꺼짐), (꺼짐, 켜짐), (켜짐, 꺼짐), (켜짐, 켜짐) 총 4가지의 정보를 표현할 수 있습니다. 이처럼 2비트는 4가지를 표현할 수 있습..

MST 최소 신장 트리

최소 비용 신장 트리(Minimum Spanning Tree, MST)는연결된 가중 그래프에서 모든 정점을 포함하고, 간선의 총 가중치가 최소인 트리를 의미합니다. 예를 들어, 아주 큰 놀이터를 설계하고 있다고 생각해봅시다. 이 놀이터에는 여러 개의 놀이기구가 있는데, 이 놀이기구들을 "모두 연결하는 길"을 만들어야 합니다. 길을 만들 때는 "비용"이 드니까, 가능한 "적은 비용"으로 모든 놀이기구를 연결하는 것이 목표입니다. 어떻게 하면 좋을까요? 놀이기구는 점으로 생각하고, 길은 선으로 생각해봅시다. 모든 놀이기구를 연결하는 선을 그려야 해요. 그리고 가장 적은 비용으로 모든 놀이기구를 연결해야 해요. 즉, 길의 총 길이가 최소가 되도록 해야 하는 거죠. 길을 만들 때, 같은 곳을 두 번 이상 돌아오..

Python 2024.10.09

컴퓨터 구조 시작하기

1. 컴퓨터 구조를 알아야 하는 이유1️⃣ 문제 해결똑같은 코드로 실습하고 있음에도 코드가 제대로 작동하지 않음컴퓨터 구조를 이해하고 있다면 문제 상황을 빠르게 진단할 수 있고, 문제 해결의 실마기를 다양하게 찾을 수 있음.컴퓨터 내부를 거리낌 없이 들여다보며 더 좋은 해결책 고민 가능. 문법에 맞는 소스 코드를 컴퓨터에 입력만 하는 개발자 ➡ 컴퓨터를 내려다보며 문제를 해결할 수 있는 개발자2️⃣ 성능, 용량, 비용개발한 웹사이트는 여느 프로그램과 마찬가지로 컴퓨터에서 작동하기 때문에 사용자들에게 선보이려면 이를 실행할 컴퓨터, 즉 서버 컴퓨터가 필요함.무조건 저렴? 최신?이런 단순한 기준은 개인 컴퓨터를 고를 땐 문제가 되지 않으나, 프로그램을 실행할 서버 컴퓨터를 고를 땐 문제가 됨무작정 저렴한 컴..

파일 시스템

👩‍💻 학습 목표파일에 대해 이해하기.디렉터리에 대해 이해하기.파티셔닝과 포매팅이 무엇인지 이해하기.파일 시스템의 파일 할당 방법 학습하기.FAT 파일 시스템과 유닉스 파일 시스템을 학습하기.1. 파일과 디렉터리파일과 디렉터리는 모두 운영체제 내부 파일 시스템이 관리하는 존재파일과 디렉터리는 보조기억장치에 있는 데이터 덩어리 ➡ 어떻게 운영체제가 인식하고 관리하는 걸까?📃 파일파일(file)이란 하드 디스크나 SSD와 같은 보조기억장치에 저장된 관련 정보의 집합을 의미한다.달리 표현하면 파일은 의미 있고 관련 있는 정보를 모은 논리적 단위를 의미한다. [파일의 구성]이름파일을 실행하기 위한 정보파일 관련 부가 정보 : 속성(attribute) or 메타데이터(metadata) 파일 속성 : 파일 형..

Computer Science/OS 2024.09.25

가상 메모리 | 페이지 교체 알고리즘

가상 메모리 이전 내용 가상 메모리👩🏻‍💻 학습 목표스와핑이 무엇인지 이해하기연속 메모리 할당 기법과 외부 단편화 문제 이해하기가상 메모리 관리 기법인 페이징의 개념과 작동을 이해하기요구 페이징의 개념과 페이지water-lee.tistory.com 3. 페이지 교체와 프레임 할당 가상 메모리를 통해 작은 물리 메모리보다 큰 프로세스도 실행할 수 있다고는 하지만, 글머에도 불구하고 여전히 물리 메모리의 크기는 한정되어 있음. 운영체제는 프로세스들이 한정된 메모리를 효율적으로 이용할 수 있도록기존에 메모리에 적재된 불필요한 페이지를 선별하여 보조기억장치로 내보낼 수 있어야 하고,프로세스들에 적절한 수의 프레임을 할당하여 페이지를 할당할 수 있게 해야함. 1) 요구 페이징📌 요구 페이징 demand p..

Computer Science/OS 2024.09.20