w2v를 필두로 영상에 소개된 vectorization 접근 방식이 한동안 핫했죠. 되게 유용하긴 한데 이런저런 한계점도 있습니다. 예를 들어서, - 너 참 잘 생겼다 vs 너 참 멋지다 - 너 참 잘 생겼다 vs 너 참 못 생겼다 이렇게 비교하면 뒤쪽 페어의 유사도가 더 높다고 판정해버리는 식입니다. 임베딩 자체가 기본적으로 언어의 의미보다도 문법적 구조에 영향을 많이 받는 편이라... 그래도 LLM에 쓰이는 대규모 데이터셋으로 훈련한 모델을 API 딸깍하면 쓸 수 있다는건 되게 편리하고 유용한 것 같네요.
영상에서는 임베딩 원리만 다루는 것처럼 보이지만 상품 등 커스터마이즈 된 데이터를 애드온처럼 LLM에 붙여주는 생성 방식을 RAG(Retrieval Augmented Generation)라고 합니다. Langchain이나 LlamaIndex 같은 프레임워크가 이미 나와있어서 다들 한 번 보시는건 어떨까 싶네요.
불과 5년 전에는 박사님들과 싸워가면 임베디드로 유사도 거리를 구현해서 유사도 거리를 구현했었는데, 지금은 당연하다는 듯이 벡터 DB 등이 등장하는 거를 보면 발전이 빠른게 느껴지네요. 당시 논문을 쓰자고 했지만, 회사에서는 특허 내겠다고 해서 내긴 했는데, 특허는 그다지 유용하지 않았던 것은 덤... 참고 cos 거리는 각도라기보다는 다차원 벡터들간 거리 혹은 유사도에 더 가깝습니다.
근데 이거 직접 훈련시키는것도 그렇게 안힘듬 word2vec sen2vec 이런 개념이 최근에 만들어진게 아니라 11년 전부터 쭉 컨셉이 이어진거라 훈련시키는것도 라이브러리 널렸고, 모델들도 널림ㅋㅋ 리소스도 토큰들이 작다보니 그렇게 심하게 요구되지도 않고.. 한 3년전에 내 개인pc로도 했으니...
일하기 싫을때 일 작게 쪼개는 방법같은거 아님 타이머 놓고 짧게 일하고 놀고 일하고 하는등 뭐 그런 팁좀 알려주세요. 일하기가 너무 싫어요 먹고는 살아야 하는데 아아아아.... Trello 에 Backlog, Todo, Ready, Doing, .... 등을 만들어놓고 todo ready doing 이 계속 늘어만가는중... ㅜㅠ
@@dark3dVoid 맞긴 한데요, 코사인 유사도는 두 벡터 사이의 거리와 정말로 아무런 관련이 없습니다. 쉽게 설명하자면 코사인 유사도를 계산하는 과정에는 두 벡터의 크기를 1로 만드는, 다시 말해 벡터가 반지름의 길이가 1인 원 위에 놓이도록 하는 과정이 포함되기 때문이라고 보시면 됩니다.