[데이터베이스] Transaction의 Isolation Level에 대해서 설명해 보세요.
·
공부 정리/면접 준비
트랜잭션의 격리 수준은 여러가지 단계가 있습니다. Lock 또는, MVCC(multiversion concurrency control)를 사용합니다. Level0, Read Uncommitted는 트랜젝션에서 처리중인, 아직 커밋되지 않은 데이터를 다른 트랜잭션이 읽는 것을 허용합니다. Dirty Read현상이 발생합니다. 정합성에 문제가 많아 주로 사용하지는 않습니다. Level1, Read Committed는 커밋되어 확정된 데이터만 읽는 것을 허용합니다. Non-Reapeatable Read(Inconsistent Analysis)현상이 발생합니다. 읽기를 공유하는 Lock를 이용해서 하나의 레코드를 읽을 때 Lock를 설정하고, 해당 레코드에서 빠지는 순간 Lock을 해제해서 구현하는 방식이 있습..
[데이터베이스] Transaction, ACID에 대해서 설명해 보세요.
·
공부 정리/면접 준비
트랜잭션이란 DB내에서 하나의 논리적 기능을 수행하기 위해서 여러 작업들을 묶어놓은 단위입니다. ACID란 트랜잭션의 특징입니다. Atomicity, Consistency, Isolation, Durability를 나타냅니다. Atomicity, 원자성은 All or Nothing, 즉 한 트랜잭션 내의 모든 연산이 전부 수행되거나, 아니면 전부 수행되지 않는다는 것을 나타냅니다. Consistnecy, 일관성은 트랜잭션 완료 이후에도 일관성 있는 DB상태를 유지하는 것을 의미합니다. 시스템의 규칙은 수행 전과 수행 후에도 같아야 합니다. Isolation, 독립성은 트랜잭션 수행 중에는 다른 작업이 영향을 주지 않는다는 뜻입니다. 즉, 트랜잭션의 순서는 연속적이여야만 함을 의미합니다. Durabilit..
[ 인공지능 ] 모델의 성능 평가 지표에는 무엇이 있는가?
·
공부 정리/면접 준비
참고 자료 : https://project-notwork.tistory.com/81 https://bigdaheta.tistory.com/53
[ 인공지능 ] Cross validation이란?
·
공부 정리/면접 준비
Cross validation이란 오버피팅을 방지하는 여러 기법 중 하나입니다. 저희가 모델을 만들어서 데이터로 학습을 시켰는데 학습시킨 데이터에 대해서는 loss(예측값 - 정답값)값이 적게 잘나오지만 학습시키지 않은 데이터를 넣으면 loss가 엉청 큰 경우 오버피팅이 난것입니다. 그럼 모델 만들면 test를 해봐야겟구나 하면서 나온게 train / test였습니다. test를 통해 오버피팅을 확인해 볼 수 있었는데, train을 다돌리고 test하니까 엉청오래걸리는 문제점이 있었습니다. 그리고 어디서부터 오버피팅이 난건지 명확하지가 않았습니다. test/ train/ val 이렇게 3개로 나누는것이 필요하다고 느끼게 되었고 매 에포크마다 val data를 통해 매번매번 test를 하게 되었습니다. 그..
[ 운영체제 ] Context Switching 과정에 대해서 설명해 보세요.
·
공부 정리/면접 준비
Context Switch 문맥전환 > CPU가 다른 프로세스로 전환되는 경우, - 시스템은 전환되기 이전의 프로세스 관련 정보를 저장해야합니다. - 컨텍스트 스위치를 통해 새 프로세스에 대해 저장된 상태를 로드합니다 > PCB에 표시된 프로세스의 컨텍스트 > 컨텍스트 스위치는 오버헤드입니다. = 전환 중에 시스템이 유용하게 작동하지 않습니다. OS와 PCB가 복잡해질수록, 컨텍스트 스위치가 길어집니다. > 하드웨어에따라 컨텍스트 스위칭 시간이 변화되기도 합니다. 일부 하드웨어는 CPU당 여러 개의 레지스터 세트를 제공합니다. -> 여러 컨텍스트를 동시에 로드할 수 있습니다. Process control block PCB는 일종의 운영체제에서 프로세스를 관리하는 자료구조로, 구조체 입니다. 레지스터에 있..
[ 인공지능 ] Loss Surface란?
·
공부 정리/면접 준비
Loss surface는 머신 러닝 모델의 손실 함수가 그래프로 표현된 것입니다. 손실 함수는 모델의 예측 결과와 실제 값 사이의 차이를 측정하고, 모델을 최적화하는 데 사용됩니다. 따라서 손실 함수의 그래프는 모델의 성능과 최적화 과정에 매우 중요한 역할을 합니다. Loss surface의 특징: 고차원: 대부분의 머신 러닝 모델은 매우 높은 차원의 입력 공간에서 작동합니다. 따라서 loss surface는 매우 높은 차원의 공간에 있는 함수로 볼 수 있습니다. 비선형성: 많은 머신 러닝 모델은 비선형 함수를 사용합니다. 이러한 모델의 손실 함수는 비선형적이며, loss surface는 매우 복잡한 형태를 가질 수 있습니다. 지역 최소값: 일부 모델의 손실 함수는 지역 최소값이 존재할 수 있습니다. 이..
[ 데이터 베이스 ] RDBMS와 NOSQL의 특징에 대해서 설명해 보세요.
·
공부 정리/면접 준비
RDB의 경우, 정해진 스키마를 갖고 있습니다. 데이터는 관계를 통해서 여러개의 테이블에 분산됩니다. 테이블간의 관계에서 foreigen key를 사용해서 join이 가능하다는 점이 특징입니다. NOSQL의 경우에는 다양한 프로그램들이 있어서 각기 특징이 다릅니다. 보편적인 특징으로는, RDB와 반대로 Schema가 존재하지 않고, 테이블 간의 관계를 정의하지 않으며, 분산 저장을 통한 Scale-out에 유리한 구조를 가지고 있습니다. RDB는 데이터 구조가 명확하고 변경 될 여지가 없고, 데이터 무결성에 대한 보장이 필요한 시스템에서 사용하는 것이 좋습니다. 또한, 관계를 맺고 있는 데이터가 자주 Update가 일어나는 경우에 적합합니다. NOSQL은 데이터 구조를 잘 알 수 없고, 데이터의 구조의 ..
[ 인공지능 ] 머신러닝과 딥러닝의 차이점은?
·
공부 정리/면접 준비
인공지능 : 사람의 지적 능력을 컴퓨터를 통해 구현하는 기술 머신러닝 : 사람이 정한 모델과 특징 추출 방법을 이용하여 데이터를 기반으로 추론할 수 있게 하는 기술 딥러닝 : 인공신경망 방법을 이용해 만든 머신러닝 기술로, 빅테이터 학습에 적합한 기술 머신러닝과 딥러닝의 차이 는 사람의 개입 여부. 머신러닝과 딥러닝 모두 데이터를 분류하는 데 사용하는 기술이지만 두 기술의 가장 큰 차이점은 바로 사람의 개입 여부입니다. input과 특징점 추출에서 사람이 개입한다. 머신러닝은 신경망이 없음! ( 머신러닝은 주어진 데이터를 인간이 먼저 처리합니다. 사람이 먼저 컴퓨터에 특정 패턴을 추출하는 방법 을 지시하고, 그 이후 컴퓨터가 스스로 데이터의 특징을 분석하고 축적합니다. 이렇게 축적된 데이터를 바탕으로 문..
포카칩인심
'공부 정리/면접 준비' 카테고리의 글 목록 (4 Page)