일 | 월 | 화 | 수 | 목 | 금 | 토 |
---|---|---|---|---|---|---|
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 |
- googleapiclient
- 국민대학교
- LSTM
- 데이터베이스
- 스택
- OS
- db
- 정렬
- 재귀
- SQL
- 프로그래머스
- GIT
- gan
- instaloader
- Regression
- Heap
- kmu
- machine learning
- PANDAS
- python3
- Seq2Seq
- programmers
- 회귀
- Stack
- 머신 러닝
- 운영체제
- Python
- 파이썬
- 국민대
- C++
- Today
- Total
목록개념 정리 (76)
정리 노트
이번 글에서는 DFA(Determistic Finite State of Automaton)을 이용해 문자열 안에서 특정 패턴을 찾는 방법에 대해 적어보겠습니다. Naive 한 방법 DFA로 들어가기 전에 왜 DFA를 써야 하는지 느끼기 위해 naive 하게 찾는 방법부터 보겠습니다. 예를 들어 문자열 "BLUERED"이 있고, 여기서 패턴 "RED"을 찾는 문제를 푼다고 합시다. RED를 찾는 가장 naive 한 방법은 하나하나 다 살펴보는 것입니다. 이렇게 하나하나 체크해서 패턴을 찾을 수 있습니다. 하지만 이렇게 찾는다면 시간이 오래 걸립니다. 문자열의 길이를 N, 패턴의 길이를 M이라고 한다면, time complexity는 O(NM)이라 표현할 수 있습니다. 그리고 이러한 방법은 매번 불일치가 일..
이 포스트는 국민대학교 소프트웨어학부 '인공지능' 강의를 듣고 요약하는 포스트입니다. 원하시는 정보가 없을 수도 있습니다. 이 점 유의 바랍니다. 오류 지적은 매우 환영합니다! LSTM은 RNN에 대한 기초적인 지식을 요구하기 때문에 RNN에 관련한 글을 읽고 이 글을 읽으시는 것을 추천드립니다. 제가 저번에 썼던 글을 읽으셔도 괜찮습니다. 2022.12.12 - [개념 정리/머신러닝 & 딥러닝 & A.I] - RNN(Recurrent Neural Network) LSTM을 사용하는 이유 저희에게 아주 긴 문장을 RNN의 입력으로 넣는다고 합시다. 예를 들어 "글쓴이는, 어제는 친구와 PC방을 다녀왔고, 그저께는 마트에 가서 라면을 사 오고, 그 전날은 대학교 친구들과 함께 밤을 새우면서 과제를 같이 했..
이 포스트는 국민대학교 소프트웨어학부 '인공지능' 강의를 듣고 요약하는 포스트입니다. 원하시는 정보가 없을 수도 있습니다. 이 점 유의 바랍니다. 오류 지적은 매우 환영합니다! RNN은 CNN이나 GAN과 다르게 순차 데이터(시간성 데이터)를 처리하는데 특화된 딥러닝 모델의 구조입니다. 순차 데이터는 동적이며 보통은 길이가 가변적입니다. 예를 들어 음성 신호, 주식 시세, 심전도 신호 등이 시간성 데이터라 할 수 있습니다. 순차 데이터를 표현하는 방법은 제가 저번에 적었던 글을 참고하셔도 됩니다. 2022.08.15 - [[TIL]국민대X프로그래머스 여름방학 인공지능 과정] - 31일 차(2022/08/15) RNN(순환 신경망)의 3가지 필수 기능 순환 신경망에서는 기본적으로 3가지의 필수 기능들을 갖..
이 글은 국민대학교 소프트웨어학부 '컴퓨터 비전' 강의를 듣고 요약하는 글입니다. 실제로 원하시는 정보가 여기에 없을 수도 있습니다. 이 점 유의 바랍니다. 오류 지적 매우 환영합니다! 이번 글에서는 GAN 모델이 무엇인지에 대해 적어보겠습니다. GAN(Generative Adversarial Networks) GAN은 쉽게 말해 '생성 모델'입니다. 기본적인 DNN이나 CNN 구조에서는 입력을 특정 레이블로 분류하는데 목적을 둔 분별 모델(discriminative model)입니다. 즉, 입력으로 주어지는 이미지(X)가 어떤 레이블(Y)인지 예측해야 하므로 P(Y | X)를 추정하는 것이 목적입니다. 분별 모델은 P(X), 이미지들이 어떠한 분포를 가지고 있는지에 대해서는 예측할 수 없습니다. 그래서..
이 글은 저번에 적었던 글에 이어서 진행됩니다. 2022.12.10 - [개념 정리/알고리즘] - Heap 정렬(Heap Sort) - Heap 만들기 Heap 정렬(Heap Sort) - Heap 만들기 힙 정렬의 과정 Heap 정렬이 일어나는 과정은 크게 두 단계로 나눠서 볼 수 있습니다. 입력으로 받은 배열을 Heap으로 만드는 과정 만들어진 Heap을 가지고 정렬하는 과정 이번 글에서는 첫 번째 과 study-note-99.tistory.com Heap 정렬하기 Heap을 정렬하는 단계에서는 아래와 같은 과정을 거치게 됩니다. heap에서 최댓값(max heap인 경우) 또는 최솟값(min heap인 경우) 제거 => 루트 노드 제거 heap의 가장 마지막 원소를 root 노드로 복사 root 노..
힙 정렬의 과정 Heap 정렬이 일어나는 과정은 크게 두 단계로 나눠서 볼 수 있습니다. 입력으로 받은 배열을 Heap으로 만드는 과정 만들어진 Heap을 가지고 정렬하는 과정 이번 글에서는 첫 번째 과정인 heap을 만드는 과정에 대해 적겠습니다. 입력이 {0, 7, 2, 5, 3, 1, 6}(0은 인덱스 1부터 맞춰 적기 위해 끼워 넣은 의미 없는 값)과 같이 들어왔다고 할 때, heap이 만들어지는 과정을 봅시다. 힙 만들기(Heap Construction) Heap 정렬을 하기 위해서는 먼저 입력받은 배열을 heap 구조를 따르게 재구성해야 합니다. 오름차순으로 정렬하는 것을 목적으로 한다면 max heap으로 구성해야 합니다. 현재 입력받은 배열의 상황은 아래와 같습니다. Heap의 구조를 만들..
이 포스트는 국민대학교 소프트웨어학부 '인공지능' 강의를 듣고 요약하는 포스트입니다. 원하시는 정보가 없을 수도 있습니다. 이 점 유의 바랍니다. 오류 지적은 매우 환영합니다! 2022.10.20 - [개념 정리/머신러닝 & 딥러닝 & A.I] - 확률적 경사 하강(SGD) 확률적 경사 하강(SGD) 이 포스트는 국민대학교 소프트웨어학부 '컴퓨터 비전' 강의를 듣고 요약하는 포스트입니다. 원하시는 정보가 없을 수도 있습니다. 이 점 유의 바랍니다. 질문과 오류 지적은 매우 환영합니다! G study-note-99.tistory.com 이번 글에서는 확률적 경사 하강법의 변형들을 살펴보겠습니다. 확률적 경사 하강법에 대한 내용은 제가 전에 적었던 글을 읽고 오시면 조금이나마 감을 잡으실 수 있을 것입니다...
이 포스트는 국민대학교 소프트웨어학부 '컴퓨터 비전' 강의와 '인공지능' 강의를 듣고 요약하는 포스트입니다. 원하시는 정보가 없을 수도 있습니다. 이 점 유의 바랍니다. 오류 지적은 매우 환영합니다! 딥러닝 모델을 구현하거나 모델의 구조를 본 적이 있는 사람들은 Batch Normalization을 사용한 모델들을 몇 번 보셨을 것입니다. 예를 들어 ResNet이라 하는 CNN 구조를 따르는 모델이 있습니다. Pytorch에서 제공하는 resnet 모델의 구조를 살펴보면 'BatchNorm2d'를 통해 배치 정규화를 적용했음을 확인할 수 있습니다. 이번 글을 통해 배치 정규화가 왜 등장했고, 배치 정규화가 무엇인지에 대해 알아보려 합니다. 배치 정규화를 하는 이유 이 이유를 알기 위해서는 2가지 개념에 ..