Exploration 20

Exploration 11 : 뉴스 요약봇 만들기

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

공부/AIFFEL 2021.02.19

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

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

공부/AIFFEL 2021.02.16

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

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

공부/AIFFEL 2021.02.05

Exploration 8 : 아이유팬이 좋아할 만한 다른 아티스트 찾기

1. 추천시스템이란게 먼가요? - 협업 필터링(Collaborative Filtering)방식 : 다수의 사용자가 아이템을 구매한 이력 정보만으로 사용자간 유사성 및 아이템 간 유사성을 파악한다. - 콘텐츠 기반 필터링(Contents-based Filtering)방식 : 아이템의 고유의 정보를 바탕으로 아이템 간 유사성을 파악한다. - 즉, 협업 필터링은 아이템과 사용자 간의 행동 또는 관계에만 주목하고, 콘텐츠 기반 필터링은 아이템 자체의 속성에 주목한다. - 협업 필터링의 단점 1) 시스템이 충분한 정보를 모으지 못한 사용자나 아이템에 대한 추론을 할 수 없는 상태인 콜드 스타트(Cold Start)상황을 겪는다. 2) 계산량이 너무 많아 추천의 효율이 떨어지는 상황이 발생한다. 3) 롱테일의 꼬리..

공부/AIFFEL 2021.02.03

Exploration 7 : 나랑 닮은 연예인은 누구?

1. 임베딩은 무엇일까 - 고차원 정보를 저차원으로 변환하면서 필요한 정보를 보존하는 것 - 임베딩 기법을 활용하여 표현할 수 있는 데이터 유형 1) 텍스트(단어, 문장, 전체 문서), 이미지, 오디오 등과 같은 구조화되지 않은 데이터 2) 사용자가 시청한 영화 목록 및 사용자 ID와 같이 상호 작용 컨텍스트만 있고 입력 특성이 없는 항목 3) 그래프 및 네트워크와 같은 복잡한 구조 데이터. ex) 소셜 네트워크 및 생화학 화합물 4) 텍스트 설명을 사용한 이미지 검색 및 이미지 캡션 작성과 같은 다중 모달 변환 5) 위치 및 점유와 같은 희소 특성 (이를 밀집 특성으로 변환) 6) 인구통계, 사회, 금융, 행동 속성이 300개 이상 포함된 고객 레코드와 같은 고차원 항목(이러한 항목을 보다 간결한 표현..

공부/AIFFEL 2021.01.28

Exploration 6 : 작사가 인공지능 만들기

1. 시퀀스? 스퀀스! - Sequence : 나열된 데이터, 각 요소들이 동일한 속성을 띌 필요는 없다. 어떤 기준에 따라 정렬되어 있지 않아도 된다. 2. I 다음 am을 쓰면 반 이상은 맞더라 - 인공지능이 글을 이해하는 방식은 수많은 글을 읽게 하는 것이다. 즉, 많은 데이터가 곧 좋은 결과를 만들어 낸다. - 이 방식을 가장 잘 처리하는 인공지능 중 하나로 순환신경망(RNN)이 있다. - 순환신경망 : 데이터를 입력 받은 신경망이 결과값을 다시 입력으로 사용하는 것. 3. 실습 (1) 데이터 다듬기 - 데이터에 필요없는 게 있는지? : 불필요한 특수기호, 공백 등을 가공하기 - 토큰화(Tokenize) - 소스 문장과 타켓 문장으로 분류하기 - 벡터화를 하여 텐서만들기 4. 실습 (2) 인공지능..

공부/AIFFEL 2021.01.26

Exploration 5 : 사람이 말하는 단어를 인공지능 모델로 구분해보자

1. 음성과 오디오 데이터 - 파동으로서의 소리 : 진폭, 주파수, 위상, 복합파 - 오디오 데이터의 디지털화 : 나이키스트-섀넌 표본화에 따라 Sampling rate가 결정되며, 일반적으로 사용되는 주파수 영역대는 16kHz, 44.1kHz이다. - 표본화, 양자화, 부호화 2. Train / Test 데이터셋 구성하기 - Label data 처리 - 학습을 위한 데이터 분리 : sklearn.model_selection.train_test_split를 이용하기 - Data setting : one_hot, data.Dataset.from_tensor_slices, map, repeat, batch을 이용하기 3. Wave classification 모델 구현 - layers.input, layers..

공부/AIFFEL 2021.01.22

Exploration 3 : 카메라 스티커앱 만들기 첫걸음

1. 어떻게 만들까? 사진 준비하기 - 얼굴이 포함된 사진을 준비하고 -> 사진으로부터 얼굴 영역을 찾고 -> 머리에 왕관 스티커를 씌운다. - import cv2, matplotlib.pyplot, numpy, os - os.getenv, cv2.imread, cv2.resize, cv2.cvtColor 2. 얼굴 검출 : face detection - 이미지에서 gradient를 feature로 사용하는 이유 : 주변 상황과 무관하게 동일한 표현을 얻을 수 있다. - 단일 픽셀의 gradient를 사용하지 않고 16x16의 정사각형을 이용하는 이유 : 너무 자세히 다루면 숲을 보지 못한다. - import dlib - dlib.get_frontal_face_detector - for dlib_rect..

공부/AIFFEL 2021.01.12

Exploration 2 : Iris의 세 가지 품종, 분류해볼 수 있겠어요?

1. Iris의 세 가지 품종을 분류하기 - 사이킷-런 데이터셋 종류와 붓꽃(Iris) 데이터의 구성 - 붓꽃 데이터 보기 : load_iris().keys(), load_iris().data, load_iris().target 등 2. 첫 번째 머신러닝 실습, 간단하고도 빠르게! - train_test_split 를 이용하여 데이터를 트레이닝 셋과 테스트 셋으로 나누기 - 지도학습과 비지도학습, 분류와 회귀 - Decision Tree, Random Forest, SVM(Support Vector Machine), SGD(Stochastic Gradient Descent), Logistic Regression - 각 모델들 fit, predict 하기 - classification_report를 통해 ..

공부/AIFFEL 2021.01.07

Exploration 1 : 인공지능과 가위바위보 하기

1. 인공지능과 가위바위보 하기 - 이미지 분류기는 어떤 것이 있을까? - 데이터 준비하기 : MNIST 숫자 손글씨 데이터 2. 데이터 준비하기 - MNIST 숫자 손글씨 불러오기 - 검증용 데이터(validatation set), 교차검증(cross validation) 3. 딥러닝 네트워크 설계하기 - Sequenential Model 사용하기 4. 딥러닝 학습시키기 - fit(), epochs, shape, reshape 5. 얼마나 잘 만들었는지 확인하기 - loss 확인, accuracy 확인 6. 더 좋은 네트워크 만들어 보기 - 하이퍼파라미터들을 바꾸면서 학습시켜보기 : channel1, channel2, dense, train_epoch 7. 프로젝트 : 가위바위보 분류기 만들기 - 가위..

공부/AIFFEL 2021.01.05