온라인 시네마 작동 방식
플랫폼은 등록 직후 각 시청자의 콘텐츠를 개인화합니다. 그런 다음 시스템은 그 사람에게 훈련되고 적응됩니다. 응용 프로그램이나 사이트를 더 자주 사용할수록 권장 사항과 기본 페이지에서 더 관련성이 높은 콘텐츠를받습니다.
우리의 경우 "관련성"은 사용자가 이전에 본 것과 "유사성"일뿐만 아니라 다양한 비율의 영화는 인기있는 영화, 비정형 장르의 참신함, 이벤트 콘텐츠 - 시청자를 유치 할 수있는 모든 것을 제공합니다.
추천 시스템 작동 방식
온라인 영화의 추천 시스템에서 인공 지능의 주요 임무는 각 특정 사용자에 대해 올바른 영화와 TV 시리즈를 선택하는 것입니다. 시청자와 그의 행동뿐만 아니라 사이트의 모든 콘텐츠를 분석하는 알고리즘에 의해 수행됩니다.
우리는 몇 가지 알고리즘을 사용합니다 : 간단한 휴리스틱 (예 : 사용자 세그먼트 내의 인기) 및 복잡한 신경망 접근법. 따라서 한 사용자의 서로 다른 관심사를 고려하기 위해 DSSM을 기반으로 한 다중 모드 임베딩이 수행됩니다.
장치 및 학습 방법 측면에서 이것은 고전적인 DSSM과 매우 유사합니다. 그러나 하나의 사용자 모델 대신 네 개의 사용자 모델을 사용하여 각 사람에 대해 여러 벡터를 가져옵니다.
다음으로, 사용자의 벡터와 콘텐츠 벡터를 비교하여 필름의 관련성을 평가합니다. 권장 사항을보다 다양하게하기 위해 사용자 벡터의 근접성에 대해 다른 모델의 작은 페널티를 추가합니다.
이제 권장 사항 발급은 다음과 같습니다.
거의 실시간으로 고객으로부터 응용 프로그램 및 웹의 이벤트에 대한 데이터를받습니다. 데이터는 DQ 시스템을 통해 구동되고 검증되고 최종 상점으로 변환됩니다. 하루에 한 번 모델은 이러한 창에서 학습됩니다. 우리는 추천이 전달되는 장소의 수에 따라 그들 중 몇 가지를 가지고 있습니다. 점수. 배달 장소에 따라 하루에 반 시간의 빈도로 발생합니다. 결과적으로, 우리는 사용자 또는 가장 관련성이 높은 아이템 순위 목록을 얻습니다.
이 모든 것은 빠른 스토리지로 배송되며 api를 통해 클라이언트로 전달됩니다. 한 시간에 한 번ㅜ품질을 모니터링하는 서비스가 트리거되며, 이는 비즈니스 논리의 심각한 위반이 발생할 경우 경고합니다. 예를 들어, 사용자가 너무 적은 아이템을 제공하기 시작하거나 컬렉션이 너무 단조로워진 경우. 또한 소프트 품질 기준 준수를 모니터링합니다.
온라인 영화관을위한 멋진 추천 시스템을 구축하는 방법은 무엇입니까?
추천 시스템을 만들 때 중요한 작업은 모델을 정확하게 학습하는 데 도움이 되는 사용자에 대한 "올바른" 데이터를 수집하는 것입니다. 여기에서는 모든 통신 사업자와 마찬가지로 사용자에 대한 비개인적인 정보가 사전에 수집된다는 이점이 있습니다. 이것은 "콜드 스타트"의 문제를 해결하고 새로운 사용자에게 그를 위해 선택된 "쇼케이스"를 보여주는 데 도움이됩니다, 또한 콘텐츠를 선택할 때 알고리즘은 클릭, 예고편보기, 영화 / 시리즈 시청 시작, 검사, 등급 및 기타 데이터를 봅니다. 각 유형의 상호 작용에는 학습을위한 긍정적 인 예를 형성하는 데 사용되는 "가중치"가 할당됩니다. 경험에 비추어 볼 때, 작업 시간의 최대 90 %가 교육 및 기능 선택을위한 데이터 준비에 소비됩니다.
데이터가 많을수록 시스템이 더 좋고 정확해집니다. 복잡한 신경망 알고리즘을 즉시 도입하기 위해 서두르지 마십시오. 따라서 중요한 통찰력을 놓칠 위험이 있으며, 그렇지 않으면 모델의 추가 개선을위한 가설을 공식화 할 수 없습니다. 외부 컨텍스트를 고려하여 사용자에게 이벤트 및 다른 시청자에게 인기있는 콘텐츠를 포함하여 다양한 콘텐츠를 보여줍니다.
자동 실행 기능의 예를 사용하여 A/B 테스트가 수행되는 방법을 이해할 수 있습니다. 자동 재생은 사용자 참여를 위한 기능입니다. 사람이 영화 감상을 마쳤을 때, 우리는 그것을 쇼케이스, 검색, 필터 또는 다른 곳으로 보내지 않고 방금 본 것과 비슷한 새로운 테이프를 제공합니다.
자동 실행 작동 방식
영화 및 TV 프로그램은 콘텐츠 측면에서 표시됩니다. 크레딧이 시작되고 사용자가 다음에 수행할 작업에 대해 생각하면 시스템은 그에게 추천을 선택하고 제공합니다.
미리보기가 나옵니다 : 두 개의 버튼도 나타납니다 : "영화 보기"와 "크레딧 보기". 테이프는 어떻게 선택됩니까? 우리는 콘텐츠를 가져 와서 다른 사용자가 그것으로 본 것을 봅니다. 그런 다음이 지식을 바탕으로 예측 모델을 구축하고 시청자가 좋아할 수있는 영화를 결정합니다. 또 다른 방법은 P2P 모델을 사용하는 것입니다 - 사람별로. 어느 정도의 콘텐츠를 본 두 사람이 있습니다. 그들의 탐색 기록 중에서 우리는 교차점을 발견하고 두 사람의 취향이 비슷하다는 결론을 내립니다. 그리고 우리는 한 사람이 특정 영화를 좋아한다면, 두 번째 사람이 흥미로울 것이라고 가정합니다.
A / B 테스트를 수행하는 방법
우리는 가설을 제시하고 두 그룹의 뷰어 (A와 B)를 취합니다. 그룹 A에서는 기능이 변경되지 않고 그룹 B에서 새로운 기능을 출시하고 어떻게 작동하는지, 그룹 A와 차이가 있는지 확인합니다. 이를 기반으로 기능을 구현할지 여부를 결정합니다.
가설
우리는 제품 관리자와 분석가라는 팀을 가지고 있습니다. 그들은 제품을 연구하고, 어떤 메트릭을 늘리고 싶은지 결정하고, 이론적으로 이것에 도움이되어야한다는 가설을 제시합니다. 이 시점에서 우리는 어떤 변화를보고 싶은지, 그리고 변화가 통계적으로 유의하도록 연구에 참여해야하는 사용자 수를 명확히합니다. 자동 재생 실험에서 우리는 기능 덕분에 사용자가 플랫폼에 더 오래 머무르고 더 많은 영화를 볼 것이라고 가정했습니다. 그리고 그들은 또한 그것이 사람을 "선택의 고통"으로부터 구할 것이라고 결정했습니다. 주요 지표는 TVTU (사용자 당 총 시청 시간)와 세션 당 본 콘텐츠의 양이었습니다.
피쳐 만들기
가설을 바탕으로 팀은 기술적 인 작업을 작성하고 시청자가 플랫폼에 와서 새로운 기능을 시도 할 때보고 싶은 것을 설명합니다. 예를 들어, 사용자가 다음 콘텐츠로 이동하라는 제안이 있는 버튼을 보는 빈도, 단추를 클릭하는 빈도 또는 자동 실행이 트리거되는 빈도를 알고 싶습니다. 동시에, 전환이 일어나는 내용에서 우리에게 중요합니다. 개발자에게, 생성 된 기능은 테스터에게 이동 한 다음 우리에게 돌아갑니다. 그리고 실험이 시작됩니다.
온라인 영화관의 예에 대한 A/B 테스트
실험 진행 방식을 확인할 수 있는 대시보드를 준비하고 모든 메트릭을 모니터링합니다. 그리고 우리는 두 개의 사용자 그룹을 선택합니다 : 하나의 기능을 사용할 수 있고 다른 기능은 사용할 수 없습니다. 후자의 경우, Firebase가 사용되며, 그룹으로 사람들을 무작위로 때리는 소프트웨어가 사용됩니다. 먼저 실험의 이름과 설명을 정의하며, 여기서 우리는 일반적으로 합류에 대한 링크를 삽입합니다.

A/B 테스트의 이름과 설명 확인
그런 다음 실험을 수행할 플랫폼과 응용 프로그램 버전을 선택합니다. 각 플랫폼에서 테스트를 별도로 실행하는데, 이는 인터페이스, 대상 그룹 등으로 인해 결과가 다를 수 있기 때문입니다.우리는 또한 우리가 사용할 청중의 비율을 선택합니다. 각 실험에는 뷰어가 속한 그룹 (A 또는 B)을 이해하는 데 도움이되는 자체 키가 있습니다 (즉, 기능을 사용할 수 있는지 여부). 이 키를 사용하여 새 버전의 응용 프로그램을 롤아웃합니다. 이것이 A / B 테스트가 작동하는 방식입니다. 사용자를 그룹 A와 B로 나눕니다.

일정 시간이 지나면 메트릭을보고 플랫폼에있는 사람들의 행동에 차이가 있는지 여부와 그것이 얼마나 눈에 띄는지 결론을 내립니다. 우리의 경우, 테스트는 한 달 동안 수행되었습니다.
계산
실험을 얼마나 오래 유지해야 하는지 결정하기 위해, 우리는 MDE (최소 검출 효과)를 선택합니다 – 우리의 변화 덕분에 우리가 볼 것으로 예상되는 최소 효과. 다음으로, 필요한 관측치 수를 계산하기 위한 표준 공식을 대체합니다.

결과적으로 두 그룹 모두에서 필요한 수의 관측치를 얻을 수 있습니다. 하루에 얼마나 많은 사용자가 오는지 이해하면 실험을 유지하는 데 필요한 기간을 대략적으로 예측할 수 있습니다.
다음으로, 메트릭의 결과 변경에 대한 통계적 유의성을 고려합니다.
T-테스트
우리는 표준 T 테스트를 실행하고 p_value의 값을 봅니다 - 특정 한계보다 작은지 여부 (일반적으로 0.05가 취해집니다). 그렇다면 메트릭에서 통계적으로 유의미한 변화를 기록합니다. 그렇지 않다면 차이가 있다고 말할 수 없습니다. 실험이 그것을 구성하지 않았다고해서 전혀 효과가 없다는 것을 의미하지는 않는다는 것을 기억하는 것이 중요합니다. 아마도 그것은 우리가 선택한 MDE보다 단순히 작을 것입니다. 별도로 메트릭에 대한 다른 테스트와 마찬가지로 T- 테스트를 신뢰할 수 있는지 확인하는 방법에 주목할 가치가 있습니다. TVTU의 분포가 매우 비정상적이라는 것을 감안할 때.

이를 위해 A와 B 그룹으로 나뉘어지지 않은 경우 실험 전에 사용자의 필수 부분(예: 테스트된 플랫폼의 사용자만)에서 이 메트릭의 값을 가져옵니다. 그런 다음 그룹 A와 B에서 이러한 사용자를 무작위로 이기고 T- 테스트를 수행하고 p_value의 값을 수정합니다. 우리가 받아 들인 것보다 작 으면 (예 : .0.05), 실험이 중복되었다는 것을 별도의 카운터에 기록합니다. 10,000 번 반복하고, 매번 무작위로 A 및 B 그룹으로 나뉩니다. 착색 된 실험의 수가 약 5 % 인 경우 테스트를 신뢰할 수 있습니다. 5 % 미만으로 칠해지면 그렇게 중요하지 않습니다. 그러나 이것은 메트릭이 그렇게 민감하지 않으며 실제로 존재하는 곳에서 효과를 기록 할 가능성이 적다는 것을 의미합니다. 그러나 그것이 확립 된 5 %보다 훨씬 더 자주 그려지면 실제 실험에서 우리는 예상했던 것보다 더 자주 오류를 받게됩니다.
T-테스트 결과
여기서 T-test가 이러한 분포에 매우 적합하다는 것을 알 수 있습니다.

구현 된 자동 재생의 예에 대한 A / B 테스트에 따르면, 우리의 가설은 효과가 있었다 : 사용자가 참여하고 있으며, 그 중 절반 이상이 자동 재생이 제공하는 영화를 본다. 전체 TVT는 3.8 %만큼 많이 변하지 않았는데, 모든 사용자가 태그가 지정된 콘텐츠에 도달하고 기능을 못했기 때문입니다. 그러나 게시 된 콘텐츠를 본 그룹 간의 결과는 우수합니다. 우리는 적어도 플러스 5 %를 계산했습니다. 그러나 TVTu 세션은 21 % 더 높았습니다. 그리고 TVT VOD는 23 % 더 높습니다.
'IT' 카테고리의 다른 글
아마존 ECR에서 이미지 안전하게 제거하기 (0) | 2022.09.01 |
---|---|
사이트별 크롤러 종류와 SEO 공부법 (0) | 2022.08.29 |
파이썬으로 웹사이트 크롤링 하기 (0) | 2022.08.20 |
파이썬을 통한 얼굴인식 프로그래밍 코딩 (0) | 2022.08.19 |
학생인증 서비스 제공 사이트 SheerID (0) | 2022.08.17 |
댓글