[Classification] Evaluation Metric

오차행렬(confusion matrix)은 학습된 모델이 얼마나 혼동하고(confused) 있는지 보여주는 지표로, 이진 분류의 예측 오류가 얼마인지, 어떤 유형으로 발생하고 있는지를 나타낸다. 오차 행렬은 실제 클래스 값과 예측 클래스 값을 기준으로 4분면 행렬에 어

2022년 11월 16일
·
0개의 댓글
·

[Database] DeadLock

교착 상태(DeadLock)란 여러 개의 트랜잭션(Transaction)이 작업을 실행하지 못하고 서로 Lock이 풀리기만을 무한정 기다리는 상황을 말한다. 기본적으로 데이터베이스는 트랜잭션의 동시성을 제어하기 위해 로킹(Locking)이라는 방법을 사용하는데, 이것이

2022년 8월 19일
·
0개의 댓글
·

[Database] Transaction

트랜잭션은 데이터베이스의 상태를 변화시키기 위해 여러 연산들로 구성된 하나의 논리적 작업 단위를 의미한다. 여기서 작업 단위란 사람이 어떤 기준에 따라 직접 하나의 작업을 정한 것을 의미한다.예를 들어 사용자 A가 B에게 10만원을 송금한다면, DB 작업과 트랜잭션은

2022년 8월 18일
·
0개의 댓글
·

[Database] Index

인덱스는 SELECT를 사용해서 테이블을 조회할 때 결과를 빠르게 추출하도록 도와주는 기능이다. 즉, 인덱스는 데이터를 빠르게 찾을 수 있도록 도와주는 도구이다.클러스터형 인덱스(Clustered Index)클러스터형 인덱스는 기본 키(primary key)로 지정하면

2022년 8월 17일
·
0개의 댓글
·

[Database] RDBMS 구조와 설계

DBMS(DataBase Management System)란 데이터를 관리하고 운영하는 소프트웨어이다.RDBMS(Relational DataBase Management System)란 관계형 데이터베이스 관리 시스템으로, 모든 데이터를 2차원 테이블 형태로 표현하는 데

2022년 8월 16일
·
0개의 댓글
·

[Database] NoSQL DB

NoSQL DB는 비관계형 데이터베이스를 의미하며, 관계형 데이터베이스의 테이블과는 다른 형식으로 데이터를 저장한다. 다양한 데이터 처리 방식으로 목적에 따라 데이터베이스를 유연하게 설계할 수 있어, 비정형 데이터를 처리하는데 용이하다. NoSQL DB는 다양한 대규모

2022년 8월 16일
·
0개의 댓글
·

[자료 구조] Binary Search Tree(BST)

트리(tree)란 노드(데이터)를 거꾸로 뒤집힌 나무의 모양처럼 저장한 비선형 계층적 자료구조이다.트리는 다음과 같은 특징을 가지고 있습니다.하나의 루트 노드와 0개 이상의 하위 트리로 구성되어 있습니다.데이터를 순차적으로 저장하지 않기 때문에 비선형 자료구조입니다.트

2022년 7월 25일
·
0개의 댓글
·

[자료 구조] Hash Table

Hash table은 효율적인 탐색(빠른 탐색)을 위한 자료구조로써 key-value쌍의 데이터를 입력받는다. Hash function h에 key 값을 입력으로 넣어 얻은 해시값 h(k)를 위치로 지정하여 key-value 데이터 쌍을 저장한다. 저장, 삭제, 검색의

2022년 7월 25일
·
0개의 댓글
·

[자료 구조] Circular Queue

동적 배열을 사용한 큐에서는 배열의 가장 앞에서부터 데이터를 꺼내오기 때문에, 데이터를 꺼낸 후 그 다음 인덱스의 데이터들을 모두 한 칸씩 이동시켜줘야 한다는 문제가 있다. 이 과정은 자료 하나를 꺼낼 때마다 O(n)의 시간 복잡도를 요구하기 때문에 매우 비효율적이다.

2022년 7월 23일
·
0개의 댓글
·

[자료 구조] Stack, Queue, Priority Queue

스택(stack)은 데이터를 입력된 순서대로 쌓고, 나중에 들어온 데이터부터 먼저 꺼내 사용하는 자료 구조이다.스택의 특징맨 마지막에 들어온 데이터가 가장 먼저 스택에서 제거되는 LIFO(Last in First Out) 원리가 작용한다.요소의 삽입/제거가 'top'이

2022년 7월 23일
·
0개의 댓글
·

[자료 구조] Array, Dynamic Array, Linked List

배열(array)는 여러 데이터를 연속된 메모리에 저장할 때 사용하는 자료 구조로, 동일한 자료형의 데이터를 한꺼번에 순차적으로 관리할 수 있게 해준다. 배열은 한번 생성하면 크기를 변경할 수 없다(데이터가 메모리에 정적, 연속적으로 할당됨). 배열은 인덱스(메모리 주

2022년 7월 19일
·
0개의 댓글
·

[JAVA] 예외 처리

오류(error)는 컴파일 오류와 실행 오류로 나뉜다.컴파일 오류(compile error): 프로그램 코드 작성 중 발생하는 문법적 오류실행 오류(runtime error): 실행 중인 프로그램이 의도하지 않은 동작을 하거나(bug) 프로그램이 중지되는 오류실행 오류

2022년 7월 17일
·
0개의 댓글
·

[JAVA] Stream

스트림(stream)은 배열, 컬렉션 등의 자료를 더 효율적으로 일관성 있게 연산 처리를 하도록 도와주는 Java 내장 클래스이다.자료의 대상과 관계 없이 동일한 연산을 수행한다.배열, 컬렉션을 대상으로 동일한 연산을 수행한다. 일관성 있는 연산으로 자료의 처리를 쉽고

2022년 7월 14일
·
0개의 댓글
·

[JAVA] 람다 표현식, 함수형 인터페이스

람다 표현식(lambda expression)이란 자바에서 함수형 프로그래밍(functional programming)을 구현하는 방식이다. Java8부터 지원하고 있으며, 클래스를 생성하지 않고 함수의 호출만으로 기능을 수행할 수 있다.함수형 프로그래밍이란?순수 함수

2022년 7월 14일
·
0개의 댓글
·

[JAVA] 내부 클래스

자바 내부 클래스(inner class)란 클래스 내부에 생성된 클래스이다. 내부 클래스는 구현 위치에 따라 인스턴스 내부 클래스, 정적 내부 클래스, 지역 내부 클래스, 익명 내부 클래스로 나눌 수 있다. 하나씩 예제와 함께 살펴보자.인스턴스 내부 클래스란 외부 클래

2022년 7월 14일
·
0개의 댓글
·

[JAVA] Generic Programming

제네릭 프로그래밍(Generic programming)이란 변수의 선언이나 메서드의 매개변수를 하나의 참조 자료형이 아닌 여러 자료형이 변환될 수 있도록 프로그래밍 하는 방식이다. 클래스의 속성과 기능의 종류는 같지만 참조 자료형만 다른 경우에 제네릭 프로그래밍 방식을

2022년 7월 13일
·
0개의 댓글
·

[JAVA] Singleton 패턴

Singleton 패턴이란 static 명령어를 이용하여 전 시스템에 단 하나의 인스턴스만이 존재하도록 구현하는 방식이다. 구현 방식은 아래와 같이 크게 세 가지로 나눌 수 있다.자바에는 글로벌 변수가 없기 때문에 static 변수(class 변수라고도 함)를 사용하여

2022년 7월 13일
·
0개의 댓글
·
post-thumbnail

[JAVA] JVM 구조 및 메모리 영역 - Class, Heap, Stack Area

JVM(Java virtual machine)은 자바 가상 머신으로 자바 바이트 코드를 해석하는 역할을 한다. JVM만 있다면 플랫폼에 영향을 받지 않으므로 Window, Linux 등 다양한 환경에서 사용이 가능하다. 아래 세 가지 실행 단계를 거쳐 자바 소스코드가

2022년 7월 13일
·
0개의 댓글
·

[JAVA] Object Oriented Programming(OOP) - 추상화, 캡슐화, 상속, 다형성

객체(Object)란 '의사나 행위가 미치는 대상'을 의미하는 것으로 객체 지향 프로그래밍(Object Oriented Programming)은 객체들 간의 상호작용을 기반으로 로직을 구성하는 하는 프로그래밍 방법이다. Java는 대표적인 객체 지향 프로그래밍 언어이다

2022년 7월 12일
·
0개의 댓글
·

[JAVA] 제어문(control flow statements)

제어문이란 프로그램의 흐름을 제어하는 것이다. 제어문은 크게 조건문과 반복문으로 나눌 수 있다. 조건문이란 주어진 조건에 따라 다른 수행문이 실행되도록 프로그래밍하는 것이다.if-elseswitch-case반복문이란 주어진 조건이 만족하는 동안 수행문을 반복적으로 수행

2022년 6월 28일
·
0개의 댓글
·