function [RecList] = DUoR_New_Method(sirali_tahmini_puanlar,sirali_tahmini_indisler,Bas_urunler,Kuyruk_urunler,PopRecList,topN,pop_u,M,Train_prefScore,i) %% %%%%***** DUoR ******%%%%%%%%%%%%%% % C --> aday ürünler kümesi C_puan=sirali_tahmini_puanlar(1:M); C_indis=sirali_tahmini_indisler(1:M); kesisim=intersect(C_indis,Bas_urunler); [C_etiketler_BAS_Puan,C_etiketler_BAS_indis]=sort(sirali_tahmini_puanlar(1,kesisim),'descend'); C_etiketler_BAS_indis=kesisim(C_etiketler_BAS_indis); C_etiketler_KUYRUK=intersect(C_indis,Kuyruk_urunler); % ---- RecList hazırlama ----% RecList(1,1)=C_indis(1,1); C_indis(1)=[]; if intersect(RecList(1,1),Kuyruk_urunler) PopRecList=PopRecList+Train_prefScore(i,RecList(1,1)); elseif intersect(RecList(1,1),Bas_urunler) PopRecList=PopRecList+Train_prefScore(i,RecList(1,1)); end Son_PopRecList=PopRecList/size(RecList,1); % B=1; K=0; while true if (size(RecList,1)>=topN) break; else [Son_PopRecList,PopRecList,RecList,C_etiketler_BAS_indis,C_etiketler_KUYRUK] = popRecListCalc_New(Son_PopRecList,pop_u,C_etiketler_BAS_indis,RecList,C_etiketler_KUYRUK,PopRecList,Train_prefScore,i); end end end