트랜스포머 작동 원리를 하나하나 이해하다가 Positional Encoding은 어떻게 이루어지는지 궁금했다. 처음 이 부분을 보자마자 든 생각은 '단순히 각 시퀀스에 인덱스처럼 번호를 부여하면 될까?'였다 만약 시퀀스가 너무 길어진다면 충분히 큰 n이라는 정수값과 Input Embedding이 합쳐졌을 때와 처음 시퀀스(pos=0)와의 차이가 토큰의 의미를 상쇄해버리지 않을까라는 생각이 들었다 Positonal Encoding의 주요 목적은 다음과 같다 1.Input Embedding과 합쳐질 수 있어야한다 2.각 Position 별로 유일한 벡터가 구성되어야한다. 3.서로 다른 길이의 시퀀스의 인덱스 간격이 동일해야한다. 그럼 가장 쉽게 구현할 수 있는 인코딩부터 해보면서 가장 최선의 인코딩이 무엇인..
전체 글
Data Scientist / Data Analyst그로스해킹의 본질은 빠르게 성장함에 있다 빠르게 성장하기 위해선 마케팅 비용에 돈을 많이 쏟는 방법이 가장 단순하고 확실하다 하지만 그로스해킹은 이러한 낭비를 허용하지 않는다 그로스해킹은 종종 입소문 효과(Word of Mouth) 즉, 구전효과로 많은 성공을 이루기도 한다 추천을 하게되면 무료 저장공간을 제공하는 드롭박스도 Viral Loop를 잘 활용했다 입소문은 확실히 효과적이고 효율적인 방법이다 그래서인지 그로스해킹은 [바이럴을 일으키는 것]으로 동일시하는 사람들이 있다. 과연 맞는 말일까? 맞지 않다면 그로스해킹은 무엇이라고 말할 수 있을까? 이 질문에 대한 답은 굉장히 간단해 보일 수 있다 그것은 목적이 무엇이냐에 있는데, 바이럴을 만드는 것이 그로스해킹이 아니라 바이럴을 이용하여 의미있는 퍼..
CF의 알고리즘을 소개하겠다. CF의 간단한 소개는 아래 링크를 참고하자! https://zzz0101.tistory.com/33 Collaborative Filtering - 사용자 기반 필터링과 아이템 기반 필터링 CF(Collaborative Filtering)은 Peer(동료, 타 유저)와의 유사도를 계산하여 유저 u의 기록되지 않은 평점을 희소행렬을 통해 예측하는 기법이다. 예를 들어 유저 c의 3번 아이템에 대한 평점을 예측하고 zzz0101.tistory.com 우리의 목표는 유저 3의 아이템 1과 아이템 6에 대한 정확한 예측을 하는 것이다. 사용자 기반의 예측 방법은 다음과 같다 1. 3번 사용자와 가장 유사도가 높은 peer 그룹을 정의한다 2. 유사도를 기반으로 예측값을 계산한다 이 ..
CF(Collaborative Filtering)은 Peer(동료, 타 유저)와의 유사도를 계산하여 유저 u의 기록되지 않은 평점을 희소행렬을 통해 예측하는 기법이다. 예를 들어 유저 c의 3번 아이템에 대한 평점을 예측하고 싶다. 그렇다면 유저 c와 가장 비슷한 유저인 a를 선택하여 a의 3번 아이템에 대한 평점을 참고해 평점을 매기는 방식이다 (마치 스도쿠를 하듯이 빈 셀의 숫자를 채워넣는 게임이라고 생각하면 쉽다) 이것이 사용자 기반 필터링이다. 하지만 사용자 기반 필터링은 여러가지 문제가 있다. 그 중 가장 큰 문제는 시간에 따라서 사용자의 선호가 바뀔 수 있다는 것이다. 예를 들면 a와 c가 비슷한 취향을 가진 유저 그룹이었는데, a가 갑자기 다른 아이템을 더 선호하게되면 a와 c는 더 이상 유..
surprise 패키지는 추천시스템(Recommender System)을 구축하고 평가하고 배포할 수 있게 해주는 라이브러리이다. 현재까지 추천시스템에 대한 연구에 많이 쓰인 Movielens와 Jester데이터 셋을 제공해주고, 예측 알고리즘, SVD, 유사도, CV 등 여러가지 메소드를 함께 제공해준다 그런데 이 녀석을 사용하려고 하는데 무슨 오류인지 설치가 되지 않았다 Building wheels for collected packages: scikit-surprise Building wheel for scikit-surprise (setup.py): started Building wheel for scikit-surprise (setup.py): finished with status 'error' ..
TEPS 독해 파트는 크게 PART 1 빈칸, 연결어 - 10문제 PART 2 흐름 - 2문제 PART 3 주제(main), 일치(Correct), 추론(Infer) - 13문제 PART 4 긴지문 - 10문제 4개의 파트로 나눌 수 있다 독해는 텝스에서 가장 큰 지분을 차지하는 파트이므로 점수를 단기간에 올리고 싶은 사람들은 이 파트를 절대 버리거나 놓치면 안된다 아래의 문제 분포를 한 번 참고해서 전략을 잘 짜보자 자료는 텝스의 정석 교재에 나와있는 데이터를 이용했다! 파트 유형 번호 문항 수 배점 비중 난이도 1 빈칸 1-8 8개 4-10점 50점(20.8%) 하-중 1 연결어 9-10 2개 4-6점 12점(5%) 하-중 2 흐름 11-12 2개 4-6점 10점(4.2%) 중 3 메인 13-16 4..
대학원 진학을 위해 TEPS 공부를 하고있다 하다보면 느끼는 것이지만 토익과는 차원이 다른 느낌이다 토익이 회사 및 일상에서 쓰는 영어라면 TEPS는 더 학문적이고 연구 중심적이다 수능 영어 + 어려운 어휘 솔솔 뿌린 느낌이다 지문을 계속 보다보면 이 어휘 하나로 해석이 망가지는 느낌이 든다 그래서 기출을 풀면서 어휘력을 키우기로 했다 우리 중 고등학교 때 공책 3분의 1 접어서 단어, 뜻 쓰고 외워본 적 혹시 없는가 대학교에 들어와서 펜보다 키보드가 익숙해진 나는 무엇이든 컴퓨터로 해결하려는 습관이 생겼다 사실 손목이 너무 아프고 환경도 생각해야하기 때문에 컴퓨터로 할 수 있는 효율적인 어휘 공부법을 적어보려한다 (서론이 길어서 죄송하다) https://zzz0101.tistory.com/29 Chat..
ChatGPT를 영어 공부에 활용해보자 영어 공부를 하다가 마주하는 불편함은 네이버에 단어를 검색하면 내가 찾은 단어의 뜻만 보여주는 등 다소 덜 풍부한 데이터를 본다는 것이다 TEPS의 경우 난해한 단어들을 외우게될 때 마구잡이로 단어를 넣기엔 너무 무식한 느낌이고.. 유의어, 반의어, 예문 등과 같이 학습해야하는 필요성을 느꼈다. 간단한 명령이지만 ChatGPT에게 다음과 같은 명령을 입력했다 when i type some word, please show me the data using below format format [my word] : [mean of korean] similar word : [similar word in english] opposite word : [opposite word ..