전체 글

전체 글

    [Project Euler] Problem 1 ~ 7번 알고리즘 풀이

    1. 1000보다 작은 자연수 중에서 3 또는 5의 배수를 모두 더하면? s = 0 for i in range(1000): if i%3==0 or i%5==0: s = s + i else: pass print(s) 2. 4백만 이하의 짝수 값을 갖는 모든 피보나치 항을 더하면 ? n1 = 0 n2 = 1 n3 = n1+n2 result = 0 while n3

    [SQL] 데이터 집계(Group by, Having, Grouping set, Roll up, Cube)

    데이터 집계는 조인 다음으로 정말 중요하다! 오늘은 집계 함수에 대해 포스팅해보고자 한다~_~ 1. Group by 각 그룹에 대한 합계, 평균, 카운트 등을 계산 select segment, count(quantity) from sales group by segment; 특이한 점은 select 다음의 count로 groupby aggregation 을 지정한다는 점! 그래서 이 부분을 마지막에 코딩하는 것도 방법인 것 같다 +) Group by로 unique한 값만 출력할 수도 있다 --1. groupby 이용 select customer_id from payment group by customer_id; --2. select distinct 이용 select distinct customer_id f..

    [SQL] 데이터 조인(Inner, Outer, Full outer, Cross join)

    [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)

    [NLP] Transformer(트랜스포머, Attention is all you need)

    📚논문참고 Attention is all you need 1. 개요(기존 recurrent 모델의 한계) - Long term dependency problem : 멀리 있는 단어는 예측에 사용하지 못하는 현상 ex) "저는 언어학에 관심이 많아 인공지능 기술 중 딥러닝을 배우고 있고, 그 중 자연어 처리가 가장 흥미롭습니다"라는 문장에서, '자연어처리' 단어를 생성하는데에 가장 중요한 의미를 갖는 단어는 '언어학'일 것임. 하지만 순환신경망 모델은 가까이 있는 딥러닝을 중요하게 인식할 가능성이 높을수도 있음. '딥러닝'으로 생성을 하면 '자연어처리'가 아니라 '컴퓨터비젼' 등을 생성할 수도 있음. - Parallelization problem : 순환 신경명은 연쇄적으로 처리하기 때문에 병렬처리가 어려..

    [NLP] Attention Mechanism (어텐션 메커니즘)

    [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, 시퀀스 투 시퀀스)

    [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

    [BOAZ ADV 컨퍼런스] AI Personal Home Traniner

    이번 컨퍼런스에서 ADV 우리팀은 'AI Personal Home Traniner' 를 주제로 선정했다. youtu.be/gqZZXzuefs4