추천 엔진 구축 과정 확대

게시 됨: 2023-08-03

사람들이 Netflix에서 시청하는 프로그램의 80% 이상이 플랫폼의 추천 엔진을 통해 발견됩니다. 그것은 당신의 눈에 닿는 것의 대부분이 정교한 기계가 내린 결정의 결과라는 것을 의미합니다.

스트리밍 서비스는 인공 지능에 의존하여 콘텐츠 내의 미묘한 스레드를 살펴보고 시청자의 선호도를 깊이 파고듭니다. 그리고 말할 수 있습니다. 노력이 결실을 맺었습니다!

아직 시대에 뒤떨어져 있지만 고객의 비즈니스 경험을 개선하고 싶다면 계속 읽으십시오. 이 블로그 게시물에서는 추천 엔진을 구축하는 과정을 안내하고 AI 서비스 공급업체에 문의하기 전에 알아야 할 모든 사항을 조명합니다.

추천 엔진 101: 개발을 시작하기 전에 알아야 할 사항

추천 엔진을 구축하는 방법에 대해 알아보기 전에 추천 엔진의 유형, 사용 사례 및 구현 옵션을 살펴보겠습니다.

전통적으로 추천 시스템은 콘텐츠 기반 필터링과 협업 필터링 시스템의 두 가지 범주로 나뉩니다.

콘텐츠 기반 필터링

콘텐츠 기반 필터링 시스템은 콘텐츠의 특성이나 기능을 기반으로 추천을 생성합니다. 즉, 사용자가 이전에 좋아요를 누르거나 상호 작용한 것과 유사한 제품이나 콘텐츠를 추천합니다. 이렇게 하면 추천 엔진이 "서부 전선의 조용함"과 "Catch-22"를 즐겼던 독자에게 "A Farewell to Arms"를 제안할 수 있습니다.

그러나 엔진은 어떤 항목이 유사한지 어떻게 알 수 있습니까? 이를 이해하기 위해 추천 엔진을 구축하는 Netflix의 접근 방식을 살펴보겠습니다. Netflix의 추천 시스템은 혼합형이지만 콘텐츠 유사성에 크게 의존합니다.

스트리밍 서비스에는 모든 새로운 콘텐츠를 보고 레이블을 지정하는 태거 팀이 있습니다. 태그는 작품이 얼마나 액션으로 가득 차 있는지부터 공간을 배경으로 하는지 또는 특정 배우가 출연하는지에 이르기까지 매우 다양합니다. 머신 러닝 알고리즘을 사용하여 시청자 행동에 대한 태그 데이터를 분석하면 스트리밍 플랫폼이 각 사용자에게 실제로 관련된 것이 무엇인지 파악할 수 있습니다.

협업 필터링

협업 필터링 시스템은 사용자 피드백을 기반으로 추천합니다. 이러한 시스템은 유사한 항목을 즐겼던 사용자가 새로운 제품 및 콘텐츠에 유사한 반응을 보일 가능성이 있다고 가정합니다.

협업 필터링에 의존하는 추천 엔진을 구축하는 방법에는 사용자 기반과 항목 기반의 두 가지 접근 방식이 있습니다.

사용자 기반 필터링을 사용하면 기본 설정을 공유하는 유사한 사용자 세그먼트를 생성할 수 있습니다. 따라서 사용자는 세그먼트의 다른 사용자가 좋아하는 항목을 추천할 가능성이 높습니다. 콘텐츠의 특성은 고려하지 않습니다.

항목 기반 필터링을 통해 엔진은 사용자가 좋아하는 항목과 제안된 항목의 유사성을 기반으로 권장 사항을 생성합니다. 콘텐츠 기반 필터링과 유사하게 들리지 않습니까? 콘텐츠 기반 필터링과 항목 기반 협업 필터링 시스템은 모두 항목 유사성을 사용하여 추천하지만 유사한 항목을 결정하는 방법이 다릅니다.

콘텐츠 기반 필터링 시스템은 사용자가 이미 좋아한 항목과 유사한 항목을 추천할 뿐입니다. 항목 기반 협업 필터링을 사용하면 내가 좋아하는 항목과 유사하고 세그먼트의 사용자도 좋아하는 항목을 추천합니다.

추천 엔진의 사용 사례

높은 수준의 개인화는 사용자가 기대하는 필수 요소가 되었으며 기업은 추천 엔진을 통해 온라인 경험을 풍부하게 만들었습니다. 추천 엔진이 공통 스팬이 된 분야:

  • 소매 및 전자 상거래: 전자 상거래의 추천 엔진은 제품 분류에서 고객이 구매할 새 항목 제안에 이르기까지 모든 작업을 수행할 수 있습니다. 전자 상거래에 추천 엔진을 구현하고 향상된 고객 서비스, 향상된 마케팅 및 이와 함께 제공되는 상향 판매 가능성 확대로 인한 영향은 과대 평가하기 어렵습니다. 예를 들어, 잘 알려진 전자 상거래 거물인 Amazon은 추천 시스템의 도움으로 매출의 35%를 창출합니다.
  • 미디어 및 엔터테인먼트: 재생 목록 큐레이팅에서 과거 상호 작용을 기반으로 한 개인화된 제안 제공에 이르기까지 추천 엔진은 미디어 및 엔터테인먼트 플랫폼이 사용자가 발견하지 못한 콘텐츠를 보여줌으로써 사용자가 더 오래 참여하도록 돕습니다. YouTube, Netflix, Spotify와 같은 최대 미디어 및 엔터테인먼트 플랫폼은 신규 사용자를 유치하고 유지하기 위해 AI가 생성한 개인화 추천에 크게 의존하고 있습니다.
  • 소셜 미디어: 소셜 미디어 부문은 개인화된 제안도 제공할 수 있는 가능성을 활용하고 있습니다. 사용자가 유사한 페이지와 계정을 찾을 수 있도록 지원하는 소셜 미디어 플랫폼은 사용자가 콘텐츠와 상호 작용하는 데 더 많은 시간을 할애하도록 유도하여 클릭률을 높이고 수익을 높입니다.
  • 은행 및 금융: AI 기반 추천 시스템을 통해 은행은 사용자의 거래를 분석하고 상향 판매하여 수익을 높일 수 있습니다. 예를 들어 사용자가 500달러 상당의 항공권을 구매하면 추천 엔진은 자동으로 사용자가 해외로 여행 중이라고 가정하고 여행자 보험 번들을 구매하도록 제안합니다.

선택할 수 있는 구현 옵션

추천 엔진을 구축하는 여정을 시작하면서 다음과 같이 고유한 이점과 고려 사항이 있는 여러 가지 구현 옵션을 만나게 됩니다.

플러그 앤 플레이 추천 엔진

플러그 앤 플레이 추천 엔진은 개인화된 추천을 제품이나 플랫폼에 통합할 수 있는 편리하고 번거로움 없는 방법을 제공합니다. 사전 구축되어 있으며 기존 인프라에 원활하게 통합되도록 설계되었습니다.

플러그 앤 플레이 추천 엔진의 주요 이점은 단순성과 사용 용이성에 있습니다. 일반적으로 사용자 친화적으로 설계되어 기술 지식이 없는 사용자도 최소한의 노력으로 설정할 수 있습니다. 플러그 앤 플레이 추천 엔진의 예는 Recombee, Seldon 및 LiftIgniter와 같은 플랫폼에 걸쳐 있습니다.

플러그 앤 플레이 추천 엔진과 함께 제공되는 단점은 사용자 지정 및 적응성이 제한적이라는 것입니다. 편의성과 속도를 제공하지만 맞춤형 솔루션이 제공하는 수준의 유연성과 미세 조정을 제공하지 못할 수 있습니다.

사전 훈련된 클라우드 기반 추천 서비스

클라우드 기반 추천 엔진을 사용하면 클라우드 서비스 공급자의 방대한 계산 리소스와 전문 지식을 활용할 수 있습니다. 이러한 추천 서비스는 일반적으로 개발자가 추천 기능을 애플리케이션에 쉽게 통합할 수 있도록 사용하기 쉬운 API를 제공합니다.

클라우드 기반 추천 엔진은 확장성이 뛰어나 대규모 사용자 기반과 높은 트래픽 부하를 처리할 수 있습니다. 또 다른 이점은 기본 모델이 서비스 공급자에 의해 업데이트되고 개선됨에 따라 지속적으로 개선된다는 것입니다.

Amazon Web Services, Google Cloud Platform 및 Microsoft Azure와 같은 주요 클라우드 서비스 공급업체는 사전 훈련된 추천 서비스를 제공합니다.

사전 학습된 클라우드 기반 추천 서비스를 선택할 때 고려해야 할 요소는 데이터 개인 정보 보호, 벤더 종속 및 사용자 지정 요구 사항에 걸쳐 있습니다. 이러한 서비스는 편의성과 확장성을 제공하지만 특정 비즈니스 요구 사항에 맞게 추천 ​​알고리즘을 사용자 지정하는 데 제한이 있을 수 있습니다.

맞춤 추천 엔진

사용자 지정 추천 엔진은 최고 수준의 유연성과 제어 기능을 제공하므로 독점 알고리즘을 통합하고 도메인별 지식을 활용하며 데이터의 미묘한 차이를 고려할 수 있습니다. 사용자 지정 방식을 사용하면 사용자 선호도, 항목 특성 및 상황적 요인의 복잡성을 포착할 수 있으므로 일반적으로 더 정확하고 관련성 높은 권장 사항을 얻을 수 있습니다.

그러나 사용자 지정 추천 엔진은 최고의 유연성을 제공하지만 상당한 개발 리소스, 기계 학습에 대한 전문 지식 및 지속적인 유지 관리 노력이 필요합니다. 따라서 맞춤형 추천 엔진을 구축하기 전에 비즈니스 요구 사항, 사용 가능한 리소스 및 장기 목표를 신중하게 평가하십시오.

경험 법칙은 다음 시나리오에서 사용자 지정 경로로 이동하는 것입니다.

  • 고유한 비즈니스 요구 사항이 있습니다. 비즈니스에 기성 솔루션으로 충족할 수 없는 고유한 요구 사항이 있는 경우 맞춤형으로 이동하십시오. 특정 작업에 알고리즘을 맞출 수 있습니다. 장인 제품을 판매하는 틈새 전자상거래 플랫폼이라고 가정해 보겠습니다. 제품 제안과 관련하여 고유한 요구 사항이 있을 수 있습니다. 추천 엔진은 제품 희귀성, 장인 정신 및 특정 스타일이나 재료에 대한 사용자 선호도와 같은 요소를 고려해야 합니다. 처음부터 추천 엔진을 구축하면 사용자의 선호도에 맞는 추천을 생성할 수 있습니다.
  • 완전한 제어 및 소유권을 원하는 경우: 맞춤형 추천 엔진을 구축하면 데이터 전처리에서 알고리즘 선택, 미세 조정에 이르기까지 전체 추천 생성 프로세스를 완벽하게 제어할 수 있습니다. 이를 통해 시스템의 완전한 소유권을 얻고 타사 솔루션에 의존하지 않고 비즈니스가 발전함에 따라 적응할 수 있습니다.
  • 도메인별 지식 보유: 도메인별 전문 지식이 있거나 추천 정확도를 크게 향상시킬 수 있는 특수 데이터에 액세스할 수 있는 경우 사용자 지정 솔루션을 구축하면 해당 지식을 효과적으로 활용할 수 있습니다. 맞춤형 추천 엔진을 개발하면 사전 훈련된 솔루션에서는 사용할 수 없는 도메인별 기능이나 제약 조건을 통합할 수 있습니다.
  • 애플리케이션에는 높은 확장성과 성능이 필요합니다. 대량의 사용자 또는 항목이 예상되거나 엄격한 대기 시간 제약이 있거나 크고 복잡한 데이터 세트를 처리해야 하는 경우 사용자 지정 추천 엔진을 구축하면 시스템을 최대한 유연하게 설계하고 최적화할 수 있습니다. 확장성 및 성능. 실시간 또는 실시간에 가까운 추천을 생성하려는 경우에도 마찬가지입니다.
  • 경쟁 우위를 확보하려는 경우: 정확한 추천이 제품 또는 서비스의 핵심 차별화 요소인 경우 맞춤형 추천 엔진을 구축하면 경쟁 우위를 확보할 수 있습니다. 이 경우 맞춤형 솔루션에 투자하면 고유하고 개인화된 경험을 제공하여 참여, 충성도 및 고객 만족도를 높일 수 있습니다.

맞춤형 추천 엔진 구축, 단계별

개인화된 추천을 제공하는 것은 일반적으로 기계 학습으로 해결되는 작업입니다. 신경망도 사용할 수 있지만 그 역할은 대부분 훈련 데이터 전처리로 제한됩니다. 다음은 ITRex의 기계 학습 개발자가 공유하는 추천 엔진 구축 프로세스의 주요 단계입니다.

Step 1. 방향 설정

나머지 프로젝트의 방향을 설정하여 개발을 시작합니다. 이 단계에서 해야 할 필수 작업은 다음과 같습니다.

목표 설정 및 프로젝트 범위 정의

추천 시스템으로 달성하려는 목표를 명확하게 설명하고 리소스 및 예산 제한에 대해 설정된 목표를 평가합니다. 예를 들어 온라인 상점에서 고객 참여를 개선하고 판매를 늘리려는 경우 이미 구매한 고객에게 제품을 추천하는 것으로 프로젝트 범위를 제한할 수 있습니다. 범위를 매우 좁게 유지하는 것은 모든 고객을 대상으로 하는 추천 엔진을 구축하는 것보다 적은 노력으로 요구되지만 ROI 생성 가능성은 상당히 높게 유지됩니다.

사용 가능한 데이터 소스 평가

추천 시스템의 성능은 훈련 데이터의 양과 품질에 크게 좌우됩니다. 교육을 시작하기 전에 권장 사항을 생성하기에 충분한 데이터 포인트가 있는지 신중하게 평가하십시오.

성능 메트릭 정의

처음부터 고려해야 하는 추천 엔진 구축의 주요 과제 중 하나는 성공 지표를 정의하는 것입니다. ML 알고리즘 교육을 시작하기 전에 사용자가 새로 생성된 권장 사항을 실제로 즐기는지 알 수 있는 방법을 찾으십시오.

2단계. 학습 데이터 수집

맞춤형 추천 시스템 구축 프로세스의 다음 단계는 머신 러닝 알고리즘 훈련을 위한 데이터를 수집하고 준비하는 것입니다. 신뢰할 수 있는 추천 시스템을 구축하려면 사용자 선호도에 대한 충분한 데이터가 필요합니다.

추천 엔진을 구축하는 접근 방식에 따라 초점이 바뀝니다. 협업 필터링 시스템을 만들 때 수집하는 데이터는 사용자 행동을 중심으로 합니다. 콘텐츠 기반 필터링 시스템으로 사용자가 좋아하는 콘텐츠의 특징에 집중합니다.

협업 필터링

사용자 행동에 대한 데이터는 다양한 형태로 제공될 수 있습니다.

  • 명시적 사용자 피드백은 리뷰 작성, 콘텐츠 또는 제품에 대한 좋아요 표시, 불만 제기 또는 반품 시작과 같이 사용자의 노력이 필요한 모든 것입니다.
  • 과거 구매 내역, 사용자가 특정 제안을 보는 데 소비한 시간, 보기/듣기 습관, 소셜 미디어에 남긴 피드백 등과 같은 암시적 사용자 피드백.

추천 엔진을 구축할 때 명시적 피드백과 암시적 피드백을 모두 결합하는 것이 좋습니다. 후자는 인정하기를 꺼릴 수 있는 사용자 선호도를 파헤쳐 시스템을 더 정확하게 만들 수 있기 때문입니다.

콘텐츠 기반 필터링

콘텐츠 기반 필터링 시스템을 위한 데이터를 수집할 때 사용자가 좋아하는 것을 파헤칠 때 어떤 제품/콘텐츠 기능에 의존해야 하는지 이해하는 것이 중요합니다.

음악 애호가를 위한 추천 엔진을 구축한다고 가정합니다. 특정 사용자가 어떤 유형의 음악을 좋아하는지 이해하고 유사한 스펙트로그램으로 곡을 추천하기 위해 스펙트로그램 분석에 의존할 수 있습니다.

또는 추천의 기초로 노래 가사를 선택하고 유사한 주제를 다루는 노래를 조언할 수 있습니다.

핵심은 자신에게 가장 적합한 것이 무엇인지 이해하고 초기 모델을 지속적으로 개선할 준비를 하기 위해 테스트하고 조정하는 것입니다.

3단계. 데이터 정리 및 처리

고성능 추천 엔진을 구축하려면 변화하는 사용자 취향을 고려해야 합니다. 추천 항목에 따라 이전 리뷰 또는 평점이 더 이상 관련이 없을 수 있습니다.

부정확성을 방지하려면 현재 사용자 취향을 나타낼 가능성이 더 높은 기능만 살펴보고, 더 이상 관련이 없는 데이터를 제거하고, 이전 사용자 작업이 아닌 최근 사용자 작업에 가중치를 더하는 것을 고려하세요.

4단계. 최적 알고리즘 선택

추천 엔진 구축 프로세스의 다음 단계는 작업에 적합한 기계 학습 알고리즘을 선택하는 것입니다. ITRex의 데이터 과학자들은 다음 사항을 고려할 것을 권장합니다.

  • 행렬 분해는 큰 데이터 세트를 작은 부분으로 분해하여 사용자와 항목 간의 숨겨진 패턴과 유사성을 발견합니다.
  • 텐서 분해는 텐서라고 하는 고차원 데이터 구조를 처리할 수 있는 행렬 분해의 확장입니다. 텐서를 잠재 요소로 분해하여 더 복잡한 패턴을 캡처하여 사용자 항목 상호 작용에 대한 더 자세한 이해를 제공합니다.
  • Factorization Machine은 고차원 및 희소 데이터를 처리할 수 있는 강력한 모델입니다. 기능 간의 상호 작용을 캡처하고 추천 작업에 적용할 수 있습니다. 기능 상호 작용을 고려하여 데이터가 불완전한 경우에도 정확한 권장 사항을 제공할 수 있습니다.
  • 이웃 모델은 속성 또는 행동을 기반으로 사용자 또는 항목 간의 유사성을 찾습니다. 특히 협업 필터링에 효과적이며 네트워크의 사용자 또는 항목 간에 연결을 구축하고 유사한 사용자 또는 항목의 선호도를 기반으로 추천합니다.
  • Random Walk 는 네트워크에서 항목 또는 사용자 간의 연결을 탐색하는 그래프 기반 알고리즘입니다. 네트워크를 탐색하여 항목 또는 사용자 간의 유사성을 캡처하고 캡처된 연결을 기반으로 권장 사항을 만듭니다.
  • SLIM 은 항목이 서로 어떻게 관련되어 있는지 이해하기 위해 추천 시스템에서 사용되는 기술입니다. 항목 간의 관계에서 패턴을 찾는 데 중점을 두고 이러한 패턴을 사용하여 권장 사항을 만듭니다.
  • 선형 모델은 기능 간의 선형 관계를 기반으로 사용자 항목 선호도를 예측합니다. 이해하기 쉽고 빠르게 훈련할 수 있지만 다른 접근 방식만큼 효과적으로 복잡한 패턴을 캡처하지 못할 수 있습니다.

또한 다음 딥 러닝 모델 중에서 선택할 수 있습니다.

  • DSSM (Deep Structured Semantic Models)은 텍스트 또는 문서의 표현을 학습합니다. 그들은 구조화된 프레임워크 내에서 단어의 의미론적 의미와 그 관계를 포착하는 데 중점을 둡니다.
  • Graph Convolutional Networks는 그래프 구조의 데이터용으로 설계되었습니다. 그래프에서 작동하여 그래프의 노드 간의 관계 및 상호 작용을 캡처합니다.
  • Variational Auto-Encoder는 기본 잠재 공간을 캡처하여 데이터 표현을 학습하는 생성 모델입니다. 이러한 모델은 인코더-디코더 아키텍처를 사용하여 데이터를 저차원 공간으로 압축하고 재구성합니다.
  • Transformer는 self-attention 메커니즘을 사용하여 문장이나 문서에서 단어 간의 문맥 관계를 캡처하는 모델입니다.

주목해야 할 중요한 점은 위의 방법이 단독으로 거의 사용되지 않는다는 것입니다. 대신 다음 기술과 알고리즘을 통해 결합됩니다.

  • 앙상블은 여러 모델을 독립적으로 교육한 다음 다양한 기술을 통해 예측을 결합하는 것입니다. 각 모델은 최종 예측에 동일하게 기여하며 조합은 일반적으로 간단하며 추가 모델 교육을 포함하지 않습니다.
  • 스태킹은 보다 진보된 접근 방식을 취합니다. 여기에는 기본 모델이라고 하는 여러 모델을 교육한 다음 메타 모델을 통해 예측을 결합하는 작업이 포함됩니다. 기본 모델은 입력 데이터를 기반으로 예측을 하고 해당 예측은 메타 모델의 입력 기능이 됩니다. 그런 다음 메타 모델은 최종 예측을 수행하도록 훈련됩니다.
  • AdaBoost 는 서로 다른 데이터 하위 집합에서 반복적으로 학습하여 기본 모델의 정확도를 향상시키는 앙상블 학습 알고리즘입니다. 이 접근 방식은 올바르게 분류하기 어려운 인스턴스에 초점을 맞추고 후속 훈련 반복에서 더 많은 주의를 기울입니다. 각 반복에서 AdaBoost는 분류 정확도에 따라 교육 인스턴스에 가중치를 할당합니다. 그런 다음 가중 데이터에서 성능이 좋지 않은 모델을 훈련합니다. 여기서 가중치는 이전 반복에서 잘못 분류된 인스턴스를 강조합니다.
  • XGBoost 는 약한 예측 모델을 반복적으로 결합하여 더 강한 모델을 만드는 앙상블 방법입니다. 각 후속 모델이 이전 모델에서 발생한 오류를 수정하는 순차적인 방식으로 모델을 교육합니다.

4단계. 모델 훈련 및 검증

추천 엔진의 알고리즘에 초점을 맞추었다면 이제 모델을 훈련하고 검증할 차례입니다. 추천 엔진을 구축하는 과정의 이 단계는 다음과 같습니다.

먼저 데이터를 훈련 세트와 테스트 세트의 두 세트로 분할해야 합니다. 트레이닝 세트는 이름에서 알 수 있듯이 모델이 사용자 기본 설정의 패턴을 인식하도록 학습시킵니다. 테스트 세트는 새 데이터에 대한 모델의 성능을 평가하는 데 도움이 됩니다.

트레이닝 세트를 준비한 상태에서 모델 트레이닝을 시작합니다. 여기에는 알고리즘을 데이터에 노출하여 기본 패턴과 관계를 학습할 수 있도록 하는 것이 포함됩니다.

학습 단계가 끝나면 테스트 세트를 사용하여 모델의 성능을 평가할 차례입니다. 이렇게 하면 모델이 새 데이터로 얼마나 효과적으로 일반화되는지 이해하는 데 도움이 됩니다.

또는 실시간 피드백에 의존하여 모델이 얼마나 잘 수행되고 있는지 이해할 수 있습니다. 이러한 방식으로 모델을 프로덕션에 배포하고 생성된 권장 사항을 사용자 피드백에 매핑합니다. 그런 다음 반복 학습 프로세스를 통해 매개 변수를 조정하도록 모델을 설정하는 다음 단계로 이동합니다.

5단계. 모델 하이퍼파라미터 조정

모델의 성능을 평가한 후에는 필요에 따라 미세 조정할 수 있습니다. 협업 필터링 알고리즘을 기반으로 구축된 추천 시스템의 예를 살펴보겠습니다.

협업 필터링에서 이웃의 수는 추천을 할 때 얼마나 많은 유사한 사용자 또는 항목이 고려되는지를 결정합니다. 협업 필터링에 의존하고 새로운 영화를 제안하는 추천 엔진을 구축한다고 가정해 보십시오. 처음에는 이웃 수를 10으로 설정합니다. 즉, 추천을 생성할 때 모델이 가장 유사한 사용자 10명의 기본 설정을 고려합니다.

모델의 성능을 평가한 후 권장 사항의 정밀도가 원하는 것보다 낮은 것을 발견했습니다. 이를 개선하기 위해 이웃 수를 조정하여 모델을 미세 조정하기로 결정했습니다.

다양한 이웃 크기의 영향을 알아보기 위해 범위 값으로 실험을 실행할 수 있습니다. 예를 들어 이웃 수를 5로 줄이면 정밀도가 크게 향상될 수 있습니다. 그러나 재현율이 약간 감소하여 모델이 일부 관련 권장 사항을 놓치고 있음을 알 수 있습니다. 숫자를 20으로 늘리면 회상이 약간 향상될 수 있지만 제안이 덜 개인화될 수 있습니다.

핵심은 정밀도와 재현율 사이의 절충점에 안주하고 다양한 사용자 선호 사항을 포착하는 것과 정확한 권장 사항을 유지하는 것 사이의 균형을 맞추는 것입니다.

6단계. 모델 구현, 모니터링 및 업데이트

모델이 준비되고 출시할 준비가 되었으면 이제 구현할 차례입니다.

성공적인 구현을 위해 모델을 기존 인프라에 통합하는 가장 효과적인 방법을 고려하십시오. 예를 들어 모델을 웹사이트의 백엔드에 임베드하여 사용자 인터페이스와 원활하게 상호 작용하도록 할 수 있습니다. 이 통합을 통해 사용자의 기본 설정에 동적으로 적응하는 실시간 추천이 가능합니다.

또는 애플리케이션의 다른 구성 요소가 쉽게 호출할 수 있는 추천 엔진 API와 같은 서비스로 모델을 배포할 수 있습니다. 이 서비스 지향 접근 방식은 유연성과 확장성을 보장하여 애플리케이션이 추천 엔진의 기능을 쉽게 활용할 수 있도록 합니다.

구현 단계는 권장 사항이 사용자에게 제공되는 방법을 고려하기에 좋은 순간이기도 합니다. 직관적인 인터페이스로 깔끔하게 분류되어 웹 사이트 홈페이지에 개인화된 제안으로 표시됩니까? 아니면 앱의 인터페이스에 완벽하게 통합되어 적절한 순간에 사용자를 놀라게 할 것입니까? 선택은 귀하의 몫이지만 항상 사용자 경험을 최전선에 두십시오.

마지막으로 구현된 모델을 엄격하게 테스트하여 원활한 기능을 보장하는 것이 중요합니다. 포괄적인 테스트를 실행하여 다양한 사용자 상호 작용에서 성능과 동작을 검증하고 권장 사항이 정확하고 시의적절하며 사용자 기대에 부합하는지 확인합니다.

추천 엔진 구축의 과제 및 해결 방법

추천 엔진 구축의 과제를 이해하는 것은 개인화되고 관련성 있는 추천을 제공하는 데 중요합니다. 다음은 가장 일반적인 것의 요약입니다.

과제 1. 성공 측정

처음부터 고려해야 하는 추천 엔진 구축의 주요 과제 중 하나는 성공 지표를 정의하는 것입니다. 즉, 데이터를 수집하고 ML 알고리즘을 교육하기 전에 사용자가 새로 생성된 권장 사항을 실제로 즐기는지 알 수 있는 신뢰할 수 있는 방법을 찾아야 합니다. 이는 개발 프로세스를 안내합니다.

예를 들어, 당신은 스트리밍 플랫폼입니다. 추천 엔진의 성능을 측정하기 위해 좋아요 수 또는 월간 유료 구독 수를 계산할 수 있습니다. 그러나 귀하의 권장 사항은 괜찮을 가능성이 높지만 사용자는 자신의 선호 사항을 명시적으로 나타내거나 서비스 비용을 지불하는 것을 꺼립니다.

데이터 과학자들의 경험에 따르면 사용자 행동은 추천 시스템 성능을 측정하는 보다 신뢰할 수 있는 방법입니다. 우리는 사용자가 명시적인 피드백이 제공되지 않더라도 하룻밤 사이에 프로그램을 몰아봤다면 프로그램을 즐겼다는 것을 의심하지 않을 것입니다.

도전 2. 차원의 저주

데이터 차원은 데이터 세트의 기능 수를 나타냅니다. 입력 기능이 많을수록 정확한 추천 엔진을 구축하기가 더 어려워지는 경우가 많습니다. YouTube를 예로 들어 보겠습니다. 플랫폼에는 수십억 개의 동영상과 사용자가 공존하며 각 사용자는 개인화된 추천을 찾고 있습니다. 그러나 인적 자원과 전산 자원은 제한되어 있으며 권장 사항이 로드되는 데 몇 시간을 보내고 싶어하는 사람은 거의 없습니다.

이 문제를 해결하려면 추천 알고리즘을 시작하기 전에 추가 단계인 후보 생성이 필요합니다. 이 단계를 통해 수십억 개의 비디오를 수만 개로 좁힐 수 있습니다. 그리고 이 작은 그룹은 권장 사항을 생성하는 데 사용됩니다.

최근접 이웃 검색이 가장 두드러지는 다양한 전략이 후보 생성에 사용됩니다. 차원 문제를 극복하기 위한 다른 일반적인 관행에는 비슷한 연령대의 사람들이 공유하는 인기 있는 범주 또는 선호도를 탐색하는 것이 포함됩니다.

도전 3. 콜드 스타트

추천 엔진을 구축하는 과정에서 흔히 발생하는 또 다른 문제인 콜드 스타트 ​​문제는 시스템에 사용자나 항목에 대한 정보가 부족하여 정확한 추천을 제공하기 어려울 때 발생합니다. 이 장애물을 극복하려면 협업 필터링, 콘텐츠 기반 필터링 또는 하이브리드 접근 방식과 같은 방법을 사용하는 것이 포함됩니다.

도전 4. 롱테일

추천 시스템은 "롱테일"로 알려진 현상으로 어려움을 겪을 수 있습니다. 즉, 인기 있는 항목은 더 많은 관심과 추천을 받는 반면 덜 인기 있는 항목은 사용자의 눈에 띄지 않습니다. 이 문제를 해결하려면 개인화된 권장 사항을 생성하고 개별 사용자 기본 설정을 고려해야 합니다.

도전과제 5. 새로운 아이템의 콜드 스타트

새 항목이 시스템에 추가되면 권장 사항을 생성하기 위한 기록 데이터가 거의 또는 전혀 없기 때문에 관련 제안을 생성하기 어렵습니다. 이 문제를 해결하는 한 가지 접근 방식은 콘텐츠 필터를 사용하고 판촉이나 광고를 통해 사용자가 새 항목과 상호 작용하도록 적극적으로 참여시키는 것입니다.

과제 6. 신규 사용자를 위한 콜드 스타트

마찬가지로 신규 사용자는 정확한 추천을 위한 충분한 이전 데이터가 없을 수 있습니다. 이를 극복하기 위해 콘텐츠 기반 필터링, 피드백 요청 및 초기 사용자 설문 조사와 같은 방법을 사용할 수 있습니다.

과제 7. 데이터 희소성

추천 시스템에서 데이터 희소성은 많은 사용자가 적은 수의 항목을 평가하거나 상호 작용하는 일반적인 현상입니다. 이는 사용자 선호도를 예측하는 데 어려움이 있습니다. 이 문제를 해결하기 위해 차원 감소, 정규화 및 기타 기술을 통합한 행렬 분해 방법을 사용할 수 있습니다.

그것을 요 ​​약하기

추천 엔진을 구축하는 것은 알고리즘, 사용자 인사이트 및 반복적인 개선을 통해 추진되는 여정입니다. 문제 정의부터 꼼꼼한 데이터 전처리를 통한 올바른 접근 방식 선택, 모델 교육에 이르기까지 각 단계는 강력한 추천 시스템 생성에 기여합니다.

사용자 기본 설정을 이해하고 맞춤형 권장 사항을 제공하는 추천 엔진의 기능은 비즈니스에 막대한 잠재력을 가질 수 있습니다. Amazon, YouTube, Spotify 및 기타 잘 알려지지 않았지만 그에 못지 않은 성공을 거둔 비즈니스는 제품에 혁신을 일으켰고 이후 맞춤형 추천을 통해 수익을 늘렸습니다.

예를 들어, 주요 차별화 요소로 고도로 개인화된 추천에 의존하는 음악 스트리밍 플랫폼인 Spotify는 매년 사용자 기반과 수익을 지속적으로 성장시키고 있습니다. 2022년 4분기에 새로운 좋아하는 노래를 발견하겠다는 약속으로 플랫폼의 월간 활성 사용자가 20% 증가하여 3,300만 순 추가가 발생했습니다.

아직 뒤쳐져 있다면 AI의 힘을 활용하고 맞춤형 추천 엔진으로 사용자 경험을 혁신할 때입니다.

강력한 추천 엔진으로 솔루션을 개선하고 싶습니까? ITRex 컨설턴트와 상담하십시오.


원래 2023년 6월 6일 https://itrexgroup.com에 게시되었습니다.