Contents

Google AI, 벡터 검색의 알고리즘 개선을 통해 ScaNN에 효과적이고 오버헤드가 적은 중복성을 도입한 SOAR 출시

Contents

Google의 AI 연구팀은 수많은 머신러닝 모델에서 중요한 역할을 하는 효율적인 벡터 유사도 검색의 요구 사항을 충족하기 위해 ScaNN 벡터 검색 라이브러리를 개발했습니다. 벡터 유사도를 계산하는 기존의 기술은 작은 데이터 세트에서는 효과적으로 작동하지만, 점점 더 큰 데이터 세트로 확장하거나 새롭게 등장하는 애플리케이션을 수용하는 데 어려움을 겪고 있습니다. 벡터 검색의 속도와 효율성을 향상시키기 위해 SOAR 알고리즘은 정확도 저하 없이 계산 오버헤드를 줄이는 것을 목표로 ScaNN 모델을 최적화하여 구현되었습니다.

ScaNN의 기존 방법론은 모든 데이터 포인트가 단독 K-평균 클러스터에 소속되는 클러스터링 기법을 사용합니다. 하지만 이 전략은 쿼리 벡터가 요소와 할당된 클러스터 중심 사이의 불일치를 나타내는 잔차와 높은 평행성을 보일 때 복잡한 문제에 직면하게 됩니다. 이러한 경우, 특히 쿼리의 클러스터 중심과의 호환성이 클러스터 내의 개별 요소와의 친화성을 적절히 반영하지 못하는 상황에서 가장 가까운 이웃이 누락되는 경우가 종종 발생합니다. 이러한 단점을 완화하기 위해 SOAR는 추가 지정을 통해 중복성을 도입하여 데이터 포인트가 둘 이상의 클러스터에 속할 수 있도록 합니다. 또한, 손실 함수를 조정하여 자율적이고 유익한 중복성을 최적화함으로써 보조 클러스터

SOAR는 벡터를 클러스터링하고 수정된 손실 함수를 활용하여 직교 잔여를 촉진함으로써 ScannN의 검색 정확도를 향상시킵니다. 이 기술은 계산을 늘리지 않고도 정확도를 높일 뿐만 아니라 특정 수준의 정밀도를 달성하는 데 필요한 계산 리소스도 줄여줍니다. 테스트 결과에 따르면 SOAR를 통합하면 메모리 사용량 최소화, 신속한 인덱싱, 하드웨어 메모리 레이아웃과의 호환성이라는 ScaNN의 특성을 유지하면서 알고리즘 측면에서 더욱 유리한 측면을 확보할 수 있는 것으로 나타났습니다. SOAR를 통해 ScaNN은 비슷한 색인 속도를 제공하는 다른 라이브러리에 비해 훨씬 빠른 쿼리 속도를 보여줍니다. 따라서 ann-benchmarks glove-100 데이터 세트와 Big-ANN

을 비롯한 다양한 평가에서 우수한 벡터 검색 효율성을 달성하는 데 선호되는 선택입니다. 요약하면, 이 백서에서는 SOAR를 ScaNN 라이브러리에 통합하여 효율적인 벡터 유사도 검색 문제를 해결하기 위한 혁신적인 접근 방식을 제안합니다. 중복성을 줄이고 매칭 프로세스를 최적화함으로써 SOAR는 메모리 사용량과 인덱싱 속도와 같은 중요한 요소를 유지하면서 검색 정밀도와 효율성이 눈에 띄게 향상되었습니다.이 획기적인 성과는 벡터 검색과 관련된 머신 러닝 작업의 점점 더 까다로워지는 요구 사항을 충족하는 데 있어 알고리즘의 발전이 얼마나 중요한 역할을 하는지를 강조합니다.

논문 블로그를 확인하세요. 이 연구에 대한 모든 저작권은 이 프로젝트의 연구진에게 있습니다. 또한 트위터를 팔로우하는 것도 잊지 마세요. 텔레그램 채널, 디스코드 채널, 링크드인 그룹에 가입하세요.

저희의 노력에 감사하는 분들께는 관심을 불러일으킬 만한 최신 노력과 업데이트에 대한 정보를 얻을 수 있는 훌륭한 플랫폼인 뉴스레터를 구독해 주시기 바랍니다.

머신러닝 서브 레딧에서 40,000명이 넘는 회원으로 구성된 광범위한 커뮤니티의 일원이 될 수 있는 기회를 놓치지 마세요.

콘텐츠 파트너십을 원하시면 이 양식을 작성해 주세요….

구글, NVIDIA, 메타, 스탠포드, MIT, 마이크로소프트 등 저명한 기관의 저명한 연구자들이 열렬히 구독하는 빠르게 확장 중인 뉴스레터에 빠져보세요.