일 | 월 | 화 | 수 | 목 | 금 | 토 |
---|---|---|---|---|---|---|
1 | 2 | |||||
3 | 4 | 5 | 6 | 7 | 8 | 9 |
10 | 11 | 12 | 13 | 14 | 15 | 16 |
17 | 18 | 19 | 20 | 21 | 22 | 23 |
24 | 25 | 26 | 27 | 28 | 29 | 30 |
- BFS
- generic class
- 클라우드 컴퓨팅
- DB
- jsp
- dfs
- 자료구조
- MVC
- javascript
- 공개키 암호화
- 자바의정석
- data structure
- 생성자
- 가상컴퓨팅
- Queue
- Stack
- sql
- JDBC
- spring
- 크루스칼
- Java
- dbms
- cloud computing
- python
- 알고리즘
- Algorithm
- JPA
- 코테
- 코딩테스트
- 암호학
- Today
- Total
목록분류 전체보기 (128)
PLOD
*GAN 데이터를 생성하는 generator와 데이터를 구별하는 discriminator가 경쟁하는 과정을 통해서 데이터를 학습한다. Generator는 이미지를 생성하고 Discriminator는 Generator가 생성한 이미지를 구별하는 역할 을 한다. Generator가 실제처럼 보이는 데이터를 생성함으로써 Discriminator를 속이려고 시도하고, 이에 반해 discriminator는 실제 데이터와 만들어진 가짜 데이터를 구별하려고 한다. GAN은 Autoencoder가 사용되었다 Generator가 Decoder에서 noise를 추가하면 Discriminator가 fake라고 판별하는 방식으로 discriminator의 역할을 수행 할 수 있다. GAN에는 Objective 함수 (loss..
*Sequence to Sequence Learning(seq2seq) seq2seq 모델은 입력된 Sequence로부터 다른 도메인의 시퀀스를 출력하는 다양한 분야에서 사용되는 모델이다. 예를 들어 챗봅이나 기계번역이 그러한 대표한 예인데, 입력 시퀀스와 출력 시퀀스를 각각 질문과 대답으로 구성하면 챗봇(ChatBot)으로 만들 수 있고 , 입력 시퀀스와 출력 시퀀스를 각각 입력 문장과 번역 문장으로 만들면 papago, youtube 자동 번역기로도 만들수 있다. 그외에도 내용 요약 , 음성인식 등에서 쓰일 수 있다. ex) 음성 인식 ex 2) 문장 자동 완성
* Autoencoder(AE) 데이터를 인코딩하는 방법을 배우는 효과적인 딥러닝 모델이다. 기존의 모델과의 가장 큰 차이점은 입력 데이터만을 가지고 학습을 진행하는데 있다. (정답데이터 X, Dataset ) Autoencoder은 저차원 공간에서 새로운 이미지를 추출해야 되기 때문에 latent vector가 필요하다. * 손실함수 (L) : 입력 값과 동일한 추력을 가지도록 학습함으로써 네트어크를 통해서 나온 출력값인 decoder(encoder(x))가 입력 값인 x와 얼마나 차이가 있는지 측정 ex 1) hidden dimension = 32, hidden activation = 'relu', output activation = 'sigmoid' 인 AE를 modeling 먼저 test_data..
* Dropout 구글에서 만든 AI 특허 기술, 사용하기 편하며 성능도 우수하다. 학습시 특정 node weight에 의해 overfitting 되는 현상을 막아준다. (regularization) dropout을 사용함으로써 더 작은 신경망을 사용하는것이 정규화의 효과를 준다. dropout이 여러개의 네트워크를 학습한 후에 하나의 네트워크로 합치는 것과 같은 효과를 낸다. Why use DropOut? 1) used to avoid overfitting 2) simple to implement 3) widely adopted dropout을 사용하는 이유는 train data에 있어서 100%의 정확도를 출력하지만, 실제로 test data에 있어서 높은 예측율을 출력하지 못하기 때문이다. 학습시킬..
병행 제어에 앞서, 먼저 병행에 대해서 알아보자. 병행(Concurrency)은 매우 빠르게 여러 트랜잭션 사이를 이동하면서 조금씩 처리를 수행하는 방식이다. 따라서 실제로는 한 번에 한 트랜잭션만 수행하지만, 마치 동시에 여러 트랜잭션을 수행하는 것처럼 보이도록 하는 것이다. 병행 제어(Concurrency Control)는 이렇게 트랜잭션이 병행 수행될 때 트랜잭션이 데이터베이스의 일관성을 파괴하지 않고, 다른 트랜잭션에 영향을 주지 않도록 트랜잭션 간의 상호작용을 제어하는 것을 말한다. 병행 제어의 목적은 다음과 같다. 데이터베이스의 일관성 유지(consistency) 데이터베이스 공유 최대화 시스템 활용도 최대화 사용자 응답 시간 최소화(Minimize response time) 단위 시간당 트랜..
ACID 1. Atomicity(원자성) : 트랜잭션의 작업들이 모두 수행되거나 전혀 수행되지 않아야 함. 일부만 수행된 상태가 되어서는 안됨 2. consistency (일관성) : 트랜잭션의 수행 이후에도 데이터는 항상 일관되고 무결성이 유지된 상태에 있어야 함 -> integrity 유지 3. Isolation(격리성, 고립성) : 각 트랜잭션은 다른 트랜잭션의 수행에 영향을 끼치지 않아야 함 -> serializability : 각 트랜잭션을 따로 수행한 결과와 동일하여야 함 4. Durability(내구성, 지속성) 한번 commit된 트랜잭션의 결과는 계속적으로 유지되어야 함 Transaction Definition in SQL commit을 호출하면 트랜잭션 종료 rollback을 호출하면 ..