분류 전체보기
[SQL] 데이터 조인(Inner, Outer, Full outer, Cross join)
SQL의 진짜 목적은 여러 데이터프레임을 합쳐서 내가 원하는 데이터 칼럼을 뽑아내는 것! 이걸 할 수 있는게 Join 인데, 오늘은 Join의 종류를 포스팅 해보고자 한다 😎 1. Inner 조인 교집합을 출력하는 조인 방식 (완죤 간단) --2개 테이블 inner join select a.customer_id, a.first_name, a.last_name, a.email, b.amount, b.payment_date --선택할 칼럼 from customer a inner join payment b -- a와 b를 merge on a.customer_id = b.customer_id --customer_id가 같은거끼리 where a.customer_id = 2 -- customer_id가 2인 row..
[NLP] Transformer(트랜스포머, Attention is all you need)
📚논문참고 Attention is all you need 1. 개요(기존 recurrent 모델의 한계) - Long term dependency problem : 멀리 있는 단어는 예측에 사용하지 못하는 현상 ex) "저는 언어학에 관심이 많아 인공지능 기술 중 딥러닝을 배우고 있고, 그 중 자연어 처리가 가장 흥미롭습니다"라는 문장에서, '자연어처리' 단어를 생성하는데에 가장 중요한 의미를 갖는 단어는 '언어학'일 것임. 하지만 순환신경망 모델은 가까이 있는 딥러닝을 중요하게 인식할 가능성이 높을수도 있음. '딥러닝'으로 생성을 하면 '자연어처리'가 아니라 '컴퓨터비젼' 등을 생성할 수도 있음. - Parallelization problem : 순환 신경명은 연쇄적으로 처리하기 때문에 병렬처리가 어려..
[NLP] Attention Mechanism (어텐션 메커니즘)
1. 개요(Seq2Seq의 한계) - 하나의 고정된 Context Vector에 이전의 모든 정보를 압축하려고 하니 정보손실이 발생 → 고정된 길이의 Context Vector에 비해 Sequence Length가 훨씬 길어진다면 과거 State의 정보가 잊혀지는 Catastrophic Forgetting 현상이 발생 결국 가장 처음 등장했던 단어를 번역해내는데에 실패할 확률이 높음! - RNN의 고질적인 문제인 Gradient Vanishing 문제 발생 - 예측 과정에서 과거 정보를 다시한번 참고할 수 있는 방법은 없을까? 2. 구성 1) 아이디어 디코더에서 출력 단어를 예측하는 매 시점(time step)마다 인코더의 문장을 다시한번 참고! 단, 해당 시점의 단어와 가장 연관이 있는 인코더의 부분을..
[NLP] Sequence-to-Sequence (Seq2Seq, 시퀀스 투 시퀀스)
1. 개요 - 입력된 시퀀스로부터 다른 도메인의 시퀀스를 출력하는 모델 - 챗봇, 번역, 요약, STT 등에 쓰일 수 있음 2. 구성 - RNNLM (RNN Language Model) 임 RNN의 기본 구조 : 현재시점(time step)을 t라고 할 때, RNN셀은 t-1에서의 은닉상태와 t에서의 입력 벡터를 input으로 받음. 그리고 t에서 은닉상태 ht를 만들고, t+1시점의 입력으로 이를 보냄 - 기본적으로 인코더(Encoder)와 디코더(Decoder)로 구성됨 - Context Vector(컨텍스트 벡터)에 인코더에서 입력받은 단어의 정보가 압축됨 이 Context Vector를 디코더로 전송함 (현업에서는 수백차원임) - 인코더, 디코더 아키텍쳐는 두개의 RNN 아키텍쳐 물론 RNN은 G..
[SQL] 데이터 조회와 필터링 (select, order, where, limit, in , between)
[ 데이터 조회 ] 1. Select : 테이블에 저장된 데이터를 불러옴 select * from customer; * 는 전체 칼럼. * 대신 칼럼 지정도 가능! ) ALIAS : 테이블명을 지정하는 것. 코드 가독성을 높이고 성능을 향상시킨다 DBMS(옵티마이저, 최적화기) : SQL을 어떻게 가장 빠르고 저비용으로 실행할 것인가? select a.first_name, a.last_name, a.email from customer a; 2. Order by : 가져온 데이터를 정렬 - ASC : 오름차순 정렬(디폴트) - DESC : 내림차순 정렬 select first_name, last_name from customer order by first_name desc -- first name 기준으로..
[BOAZ ADV 컨퍼런스] AI Personal Home Traniner
이번 컨퍼런스에서 ADV 우리팀은 'AI Personal Home Traniner' 를 주제로 선정했다. youtu.be/gqZZXzuefs4
[미래에셋 인턴십] 한달동안 내가 여의도에서 배우고 느낀점
작년에 2020 금융 빅데이터 페스티벌에서 보험금 청구분야 1등을 해서 인턴십 기회를 얻게됐다! 1월 4일부터 출근을 했고, 한달간의 인턴십 과정이 마무리 돼서 느낀점이나 성장한 점을 기록해보려고 한다 :) 인턴십은 한달동안 회사 내부의 데이터를 보고 자유롭게 주제를 선정하고, 이를 분석하는 방식이었다. 선임님께서 과제 Pool 정의서를 주시고, 그 안에서 마음에 드는 갈래를 골라 나름대로 발전시키는 방식이었는데, 우리는 팀으로 인턴을 왔지만 이 프로젝트는 한달동안 개인적으로 진행했다. 그런데 주제를 정하려니, 보험쪽 domain이 아무것도 없어서 정말 어려웠다. 그리고 공모전은 주제가 정해져있었는데, 이건 주제 선정부터 시작해야하고 그에 따른 비즈니스 가치도 고려해야하니 정말 어려웠다. 비즈니스 애널리..
2020.08.24~09.01 BOAZ 2차 컴퍼티션 문제점과 앞으로 방향성(overfitting 해결방안)
(네이버 블로그 게시글을 옮겨왔다!) 이번 데이콘 스터디 2차 컴퍼티션에서 엄청 열심히했는데 처음으로 실패를 경험했다. 근데 생각해보니 지금까지 참여한 컴퍼티션에서는 오버피팅을 고려한 적이 없었던거다. 그래서 다신 이런 실수를 하지 않으려고 동아리사람들한테 코드도 달라구 하고, 하나하나 내 코드랑 비교해보면서 찾은 문제점을 기록한다! 0. 이번 컴퍼티션에서 주안점을 둔 것 - Kfold를 이용해 cv를 나눠서 for 문으로 부스팅 계열 모델링. (버스 승차량에서도 이걸로 성능 향상을 경험했기 때문) - 최대한 다양한 분류 모델을 쓰려고 노력함. (knn, gb, adaboost까지,,,,,,캐글 타이타닉 커널 참고해서 검색함) - 베이지안 최적화(튜닝할 때 요즘 많이 쓰는 방법이라고 해서 한번 해봄) -..