부스트캠프 AI Tech 5기 4주차 [Data Viz&NLP]

README·2023년 3월 31일
0

Data Viz 학습 정리

4강

Seaborn: Matplotlib 기반 통계 시각화 라이브러리로 보통 sns로 축약해서 사용
Box Plot: Box 모양을 이용해 수치 데이터를 표현하는 방식으로 최솟값, 제 1,2,3사분위 수, 최댓값 5가지 값을 요약하여 그립니다.
Violin Plot: boxplot과 비슷하지만, 데이터의 분포를 볼 수 있고 전체적인 그림을 더 자세히 볼 수 있습니다.
Histogram: 막대를 사용해서 데이터를 시각화하는 방법으로 연속형 데이터를 범위별로 나누어서 분포를 나타냅니다.
kdeplot: 히스토그램은 구간 설정에 따라서 잘못된 해석을 하게 될 수도 있기 때문에 이를 해결하기 위해 히스토그램의 막대를 곡선으로 바꾼 느낌으로 나타냅니다.
Scatter Plot: 데이터를 좌표상의 점으로 표시하여 변수 간의 관계를 나타내고 데이터의 분포나 추세 등을 알아볼 수 있습니다.
Line Plot: 데이터의 변화와 추세를 시각화하는데 유용한 방법으로 어떤 데이터가 어떤 시간에 어떤 값을 가지는지를 선으로 나타냅니다.
Heatmap: 데이터의 상관관계를 색으로 나타내어 데이터 간의 관계를 알아볼 수 있게 해줍니다.

5강

Polar Plot: 극 좌표계를 사용하여 데이터를 시각화 하는 방법으로 회전이나 주기성 등을 표기하기에 적합
Pie Chart: 원을 분할하여 데이터를 시각화하는 방법

6강

Interactive: 사용자가 보고 싶은 정보를 볼 수 있도록 사용자의 필요에 따라서 그래프를 변화시키는 방법으로 Matplotlib, Plotly등을 이용해서 구현

7강

Theme: matplotlib에서는 사용자의 필요에 따라 다크모드 같은 Theme도 설정 가능
Text Visualization: Text에도 색이나 크기, 배치 등을 활용해서 다양한 시각화 기법을 적용 가능

NLP 학습 정리

1강

NLP: 자연어처리는 자연어의 의미를 컴퓨터가 이해할 수 있도록 처리하는 일로 주요 분야로는 QA, 문장 예측, 기계 번역 등이 있음
나이브 베이즈 분류기: 베이즈 확률을 이용해서 어떤 문장의 카테고리를 예측하는 모델

2강

Word Embedding: 자연어 처리의 과정 중 하나로 자연어를 기계가 이해할 수 있도록 vector로 나타내는 과정입니다.
Word2Vec: 단어들의 문맥에 따라 단어들을 vector로 변환하는 알고리즘으로 비슷한 문맥 속의 단어는 비슷한 의미를 가짐
CBOW: 주변 단어를 통해 주어진 단어를 예측하는 방법으로 전후로 c/2개의 단어로 필요한 단어를 예측
Skip-gram: 하나의 단어에서 여러 단어를 예측하는 방법으로 중심 단어를 통해 주변 단어를 예측하고 CBOW에 비해 성능이 뛰어남
Glove: 임베딩 과정에서 input과 output에 중복된 단어를 두 번 처리하는 것을 피하기 위해 중복 단어를 먼저 검사한 후 임베딩 하는 방식으로 학습 속도가 빠름

3강

RNN Type: One-to-one: 일반적인 NN, One-to-many: 이미지 캡션, Many-to-one: 감정분석, Sequence-to-sequence: 기계번역
BPTT: RNN에서 수행하는 역전파 과정으로 시계열 데이터에서 시간 크기가 너무 커지는 것을 막기 위해 적당한 거리까지만 역전파를 수행합니다.

4강

LSTM, GRU : 정보를 전달하거나 폐기하는 gate를 가지고 있는 RNN의 개량 모델

5강

Seq2Seq with Attention: seq2seq은 sequence를 입력으로 받고 sequence를 출력하는 모델로 encoder와 decoder로 구성되어 있음, seq2seq 모델에 Attention을 이용하여 병목현상을 해결
Attention: decorder의 hidden state를 통해 attention score를 계산하고 알맞은 context vector를 가져오고 그를 통해 output을 예측

6강

Beam Search: Greedy search의 문제젬을 해결하기 위해 한 단계에 하나의 가능성만 선택하는 것이 아니라 k개의 가능성을 선택해서 선택의 폭을 늘리고 그를 통해 global optimal solution에 가까워지는 것
BLEU: 기계 번역의 결과를 평가하는 알고리즘으로 output과 input의 길이, token들의 precision을 이용해 계산을 합니다.

부캠살롱 후기

이번 주에는 캠퍼들끼리 관심 있는 분야에 관해 이야기하는 시간을 가지는 부캠살롱을 진행하였다. 부캠살롱은 팀마다 정해진 주제가 있으니 스페셜 피어세션과는 다른 느낌으로 다가왔었다. 다들 처음 보는 분들이었지만 모두 힘든 부스트캠프 과정을 버티고 있고 비슷한 관심사를 가진 사람들이다 보니 편하게 대화할 수 있었던 것 같다. 부캠살롱이 일회성 이벤트인지 아니면 주기적으로 진행되는 정기 컨텐츠 인지는 모르겠지만, 기억에 남고 좋았던 컨텐츠 인 것 같다.

깃 특강 후기

이번 주에는 개발자의 기본 소양인 깃허브에 관해 특강을 들었다. 이번 주와 다음 주 2주에 걸쳐서 화요일마다 특강이 진행되는데 2일이라는 기간 안에 많은 것을 배워야 하다 보니 특강 시간이 매우 길었었다. 그래서 강의 중에 집중력이 흐려지고 중간 중간 졸음과 싸움을 벌여야 했지만 개발자의 기본기라는 깃을 단 5시간 만에 어느 정도 배울 수 있었다. 그리고 이번에 깃을 배운 것이 이후 프로젝트와 협업을 할 때 많은 도움이 될 것 같다. 단순히 인공지능 관련 지식만 배우는 것이 아니라 개발자로서 갖춰야 할 기본 능력을 키워주는 것 같아서 좋은 것 같다.

Week 4 회고

이제 부스트캠프에 입소한 지 한 달이 다 되어가는데 시간이 너무 빨리 가는 것 같다. 매일 강의, 과제, 피어세션에 매주 다양한 이벤트까지 하다 보니 언제 한달이 지나갔나 싶다. 특히 이번 주는 깃 특강으로 화요일을 보내고 나니 더 그런 것 같다. 이제 부스트캠프의 과정을 20% 정도 진행했는데 남은 80%는 어떤 과정일지 궁금하고 그 과정을 버티다 보면 성장해서 좋은 개발자가 될 수 있을 거라고 믿는다.

잡담

이번 주에 드디어 백준 골드 1을 찍었다. 이제 목표인 플래티넘까지 한 단계만 남았는데 부 캠 기간 동안 할 수 있다면 달성해보고 싶다. 빨리 알고리즘 청정수를 벗어나서 2급수가 되고 싶다.(종만북도 사놓고 어려워서 안 보고 있는데 플레를 찍으면 다시 한번 도전해봐야겠다.)

profile
INTP 개발자 지망생

0개의 댓글