AIFFEL 99

Exploration 11 : 뉴스 요약봇 만들기

1. 텍스트 요약이란 - 텍스트 요약 : 긴 길이의 문서(Document) 원문을 핵심 주제만으로 구성된 짧은 요약(Summary) 문장들로 변환하는 것을 말한다. - 중요한 것은 요약 전후에 정보 손실 발생이 최소화되어야 한다는 점이다. 이것은 정보를 압축하는 과정과 같다. - 이렇게 요약 문장을 만들어 내려면 크게 2가지 방법이 있다. 추출적 요약과 추상적 요약이다. - 추출적 요약(Extractive Summarization) 1) 단어 그대로 원문에서 문장들을 추출해서 요약하는 방식이다. 2) 하지만 꺼내온 문장이 원문에서 중요한 문장일 수 있어도 4개의 문장의 연결이 자연스럽지 않을 수 있다. 3) 대표적인 것은 네이버 뉴스의 요약봇 기능이다. - 추상적 요약(Abstractive Simmari..

공부/AIFFEL 2021.02.19

FUNDAMENTAL 20. 그나저나 데이터는 어디서 가져오지?

1. 텍스트 데이터의 변환과 교환 - 텍스트 데이터의 변환 1) 우리가 사용하는 텍스트 데이터를 컴퓨터가 이해할 수 있는 형태로 변환하기 위해서, 텍스트 데이터는 문자열로 나타내고 문자열은 다시 인코딩 과정을 거쳐야 한다. - 데이터의 교환 1) 텍스트 데이터의 변환 과정(Encoding, Decoding)은 여러 대의 컴퓨터에서 데이터를 교환하는 작업에서도 진행이 된다. 2) 프로토콜(protocol) : 인터넷을 통해 데이터를 주고받을 때 어떤 규약에 따라 데이터를 교환하는데 이런 규약을 프로토콜이라 부른다. 3) HTTP : 웹에서 데이터를 주고 받을 때 사용하는 프로토콜 중 하나 - 용어 정리 1) Communication(통신) : 데이터를 보내고 싶은 곳에 원격으로 전송하고 다시 데이터를 수신..

공부/AIFFEL 2021.02.19

Exploration 10 : 인물사진을 만들어 보자

1. 인물사진 모드란? - 피사체를 가깝게 찍을 때 배경이 흐려지는 효과를 가진 카메라 모드를 뜻함. - 오늘은 이런 인물사진 모드처럼 사진을 편집하는 것을 과제로 실습함. 2. 사진을 준비하자 - 대략적인 흐름은 촬영된 이미지 -> 피사체 분리 -> 배경을 흐리게 만들기 -> 이미지 합성이다. 1) 배경이 있는 셀카를 촬영한다. (배경과 사람의 거리가 약간 멀리 있으면 좋다.) 2) 시멘틱 세그멘테이션(Semantic segmentation)으로 피사체(사람)와 배경을 분리한다. 3) 블러링(blurring) 기술로 배경을 흐리게 한다. 4) 피사체를 배경의 원래 위치에 합성한다. - 사진을 찍거나 기존의 가지고 있는 사진을 준비한다. 3. 세그멘테이션으로 사람 분리하기 - 이미지 세그멘테이션(imag..

공부/AIFFEL 2021.02.16

풀잎스쿨 - DeepML(CS231N) Lec. 07 ~ Lec. 09

오늘은 Lec.07의 나머지 부분과 Lec.09의 일부분을 공부했다. (Lec.08은 건너뛰었다.) Lec.07 1. learning rate에 대해 봤다. - learning rate decay : Adam보다는 SGD + Momentum에서 많이 쓴다. - First-Order Optimization : 기울기를 사용하여 선형으로 근사시켰다. 근사치를 minimize 하는 단계이다. - Second-order Optimization : 기울기와 Hessian 행렬을 사용하여 2차적으로 근사시켰다. 근사치를 minima하는 단계 - Second-order에서 BGFS와 L-BFGS가 있는데 딥러닝에서는 잘 사용되지 않는다. - 만약 full batch가 가능하면 잘 작동할 수 있으나, mini batc..

공부/AIFFEL 2021.02.15

FUNDAMENTAL 19. TF2 API 개요

1. Tensorflow2의 구성과 특징 - Tensorflow V1의 특징과 문제점 1) 거대한 노드-엣지 사이의 유향 비순환 그래프(Directed Acyclic Graph, DAG)로 정의했다. 2) 이러면 노드와 노드를 연결하는 매 엣지마다 chain-rule을 기반으로 gradient가 역방향으로 전파될 수 있다는 간단하면서 강력한 아이디어이다. 3) 이런 방식을 Tensorflow의 Graph Mode라고 한다. 4) 이런 선계의 큰 다점이 하나 있는데, 딥러닝 모델을 구성하는 그래프를 그려나가는 부분과, 연상이 실제 진행되는 과정을 엄격히 분리해 놓았다는 점이다. 5) 여기에 가장 중요한 것이 session이라는 개념이였다. 이 방식이 대규모 분산환경에서의 확장성과 생산성이라는 장점도 있었지..

공부/AIFFEL 2021.02.15

제 1차 해커톤 (대전) : 캐글 축제

대회 기간 : 2021.02.09(화)~2021.02.10(수) PM 3:00까지 Title : Predict Future Sales 나는 10조로 편성되어 조원 2명과 함께 캐글을 진행하였다. 처음에는 어떻게 해야할 지 감도 안 잡혔다. 내가 무엇을 해야 하는지, 멀 분석해야하는지, 어떤걸 생각하고 작업해야하는지, 이 데이터들이 의미하는 것은 무엇인지 등 많은 생각이 들었고, 결국은 이 것을 하기에는 시간이 부족하다는 핑계로 할 수 있는 한 단순하고 필요해보이는 것만 가지고 모델에 넣어보자. 라는 생각으로 했던 것 같다. 처음에는 score가 7점대로 매우 저조 했다. 대부분 사람들이 1점대 초반에서 0.8점대 사이에 있다는 것을 알고 나서 목표는 1점대 초반이 되었다. 하루에 5번만 제출이 가능하다는..

공부/AIFFEL 2021.02.10

풀잎스쿨 - DeepML(CS231N) Lec. 06 ~ Lec. 07

이전에 다 못본 6강을 봤고, 시간이 부족하여 7강의 일부만 들었다. 6강 1. babysitting the learning process - step1 데이터 전처리를 한다 : zero-centered, normalized - step2 사용할 아키텍쳐를 선택한다. : 입력층, 은닉층, 출력층 설계 - 네트워크 초기화 - 전체 데이터를 쓰지 말고 작은 데이터셋만 가지고 학습을 시켜서 모델이 오버피팅 되는지 확인하기 : 오버피팅이 되면 모델이 잘 학습하는 것이므로 좋다. - learning rate가 너무 작으면 cost가 줄어들지 않을 것이고, 너무 크면 cost가 튈 것이다. 2. Hyperparameter Optimization - regularization과 learning rate를 바꾸면서 학..

공부/AIFFEL 2021.02.08

FUNDAMENTAL 18. 딥러닝 들여다보기

1. 신경망 구성 (1) 개요 - 신경망 : 우리 뇌의 수 많은 뉴런들이 서로 복잡하게 얽혀 있고, 이것을 전체적으로 보면 거대한 그물망같은 형태를 이루는데, 이를 신경망이라 부른다. - 인공신경망 : 우리 뇌 속의 신경망 구조를 착안해서 퍼셉트론(Perceptron)이라는 형태를 제안하며 이를 연결한 형태를 말한다. - 다층 퍼셉트론(Multi-Layer Perceptron, MLP) : 인공신경망 중에서도 2개 이상의 레이어를 쌓아서 만든 것을 보통 의미한다. - 인공 신경망은 크게 입력층, 은닉층, 출력층으로 구성되어있고, 은닉층이 많아지면 인공신경망이 DEEP해졌다고 이야기 한다. -> 충분히 깊어지면 DNN - Fully-Connected Neural Network와 MLP는 다른 용어이다. 1..

공부/AIFFEL 2021.02.08

FUNDAMENTAL 17. 어라, 이 시계열 데이터 이상한데? - Anomaly Detection

1. 이상한 데이터는 어떻게 생겨났을까? - 데이터를 100% 믿는 건 굉장히 위험한 행동이다. 다음의 가능성이 있기 때문이다. 1) 생성 / 측정 단계 : 관측자의 실수 (휴먼에러), 측정 장비의 오류 2) 수집 / 전달 단계 : 데이터 수집 프로그램의 오류 (버그), 데이터 관리자의 실수 (휴먼에러), 데이터 전달 프로그램의 오류 (Open API) - 실무에서 가장 흔한 데이터 오염은 데이터 관리자에 의해 발생한다. - 이상한 데이터를 찾아내는 방법 (Anomaly Detection) 1) 다시 측정한다. 2) 같은 데이터의 다른 출처를 찾아서 비교한다. (Supervised) 3) 데이터 스스로의 특징을 활용하여 찾아낸다. (Unsupervised) - 만약 같은 데이터를 제공하는 다른 출처가 있..

공부/AIFFEL 2021.02.05

Exploration 9 : 나의 첫 번째 캐글 경진대회, 무작정 따라해보기

1. 대회의 시작 (1) 참가 규칙, 평가 기준 살펴보기 - 캐글 들어가서 가입하고, 대회 살펴보기 - RMSE(Root Mean Squared Error) : 실제 정답과 예측한 값의 차이의 제곱을 평균한 값의 제곱근을 말함. - 이 대회의 평가 기준이 RMSE이다. 2. 대회의 시작 (2) 데이터 살펴보기 - 캐글 대회에서 분석하고자 하는 데이터 변수등 데이터 살펴보기 3. 일단 제출하고 시작해! Baseline 모델 (1) Baseline 셋팅하기 - 이번 대회는 주체자 차원에서 Baseline을 제공했다. - 이것을 일단 무작정 따라해보면서 캐글을 알아가는 것이 이번 노드의 내용이다. 4. 일단 제출하고 시작해! Baseline 모델 (2) 라이브러리, 데이터 가져오기 - 라이브러리를 로딩하고, ..

공부/AIFFEL 2021.02.05