Closed ggasogeum closed 1 year ago
개공감이요.... 유사도가 제대로 학습된건지 전혀 모르겠어요 유사도에 대한 설명 보고 정답 단어의 유사 단어들 보면 '이게 맞나' 싶어요 ㅋㅋㅋㅋ
안녕하세요.
먼저 꼬맨틀에 관심을 가져주셔서 감사합니다. 문의하신 내용에 대해 답변드리겠습니다.
꼬맨틀에서 사용하는 '유사도'라는 개념은 단어의 뜻을 기반으로 추정되는 값이 아니라는 점을 먼저 말씀드려야 할 것 같습니다.
현재 꼬맨틀에서는 단어 간의 유사도를 추정하기 위해 FastText라는 모델을 사용하고 있습니다. 이 '유사도'라는 개념을 더 엄밀하게 설명하자면, FastText로 벡터화한 두 단어의 코사인 유사도(cosine similarity)를 -100부터 100 사잇값으로 변환한 값입니다.
이러한 추정 방법으로 인해, 두 단어의 유사도가 높다는 것은 두 단어가 의미상으로 가깝다기 보다는 같은 문맥에서 많이 사용된다는 것을 의미합니다. 그렇기 때문에 '사랑'과 '증오'는 의미적으로는 정반대이지만 동일한 문장이나 맥락에서 자주 등장하기 때문에 서로 유사도가 높을 것입니다.
일반적으로 주로 오해할 수 있는 상황에 대한 예시는 다음과 같습니다.
문의해주신 내용처럼 '깨소금'이라는 단어는 의미적이나 철자로는 '소금'과 '깨'에 더 가깝습니다. 그러나 저희가 사용하는 FastText 모델을 훈련한 데이터에서는 '생강즙'이 '깨소금'과 같은 문맥에서 더 많이 등장했기 때문에 더 높은 유사도를 얻었을 것으로 추정됩니다. (예를 들어, '마지막으로 깨소금을 넣어서 요리를 완성합니다.', '마지막으로 생강즙을 넣어서 요리를 완성합니다.')
FastText는 Meta(구 Facebook)에서 연구하여 공개한 모델로 주로 Wikipedia나 웹 사이트들에서 수집한 문장을 바탕으로 훈련되었으며, 뉴스젤리에서 직접 훈련한 모델이 아니기 때문에 확실한 답변을 드리기는 어렵다는 점을 이해해 주시기를 바랍니다.
감사합니다.
정답이 “깨소금”인데 유사도 2위가 “생강즙”이고 “소금”이 저 밑에 유사도 360위인게 개발자님에게는 납득이 가시는지.. 제 견문이 얕은탓일까봐 인터넷에 생강즙 레시피도 쳐봤어요 깨소금은 한스푼도 들어가질 않더군요 글자 수만 같으면 유사도 랭킹이 올라가나요? 기준이 좀 이상한 것 같아요 단어라는게 받아들이는 사람마다 그 의미가 달라진다지만 생강즙을 보고 깨소금을 떠올리는 사람은 전세계에 단한명도 없을거에요