Ինչպես ստանալ առաջարկություններ փոխազդեցության մատրիցից?
sobes.tech AI
Պատասխան AI-ից
Հարաբերության մատրիցային (օրինակ, օգտվող-մասին) առաջարկությունները կարելի է ստանալ համագործակցային ֆիլտրացման մեթոդների միջոցով: Հիմնական մոտեցումները:
-
Մատրիցային ֆակտորիզացիա — հարաբերությունների մատրիցան բաժանվում է երկու ցածր չափի գործոնների (օգտագործողների և արտադրանքի հատկությունների մատրիցաներ): Այնուհետև, անհայտ գնահատականները կարող են կանխատեսվել համապատասխան վեկտորների սքալարային արտադրյալով:
-
Համոզված հարևանների մեթոդներ — օգտագործողների կամ արտադրանքների միջև նմանության հաշվարկ (օրինակ, կոսինուս նմանություն) և առաջարկություններ՝ հիմնված նման օգտվողների կամ նման արտադրանքների նախընտրությունների վրա:
Python և surprise գրադարանի միջոցով մատրիցային ֆակտորիզացիայի օրինակ:
from surprise import Dataset, Reader, SVD
from surprise.model_selection import train_test_split
# Օրինակ տվյալներ՝ user_id, item_id, rating
ratings_dict = {'userID': ['A', 'A', 'B', 'B'],
'itemID': ['1', '2', '2', '3'],
'rating': [5, 3, 4, 2]}
reader = Reader(rating_scale=(1, 5))
data = Dataset.load_from_df(pd.DataFrame(ratings_dict), reader)
trainset, testset = train_test_split(data, test_size=0.25)
algo = SVD()
algo.fit(trainset)
predictions = algo.test(testset)
for pred in predictions:
print(f'Օգտագործող: {pred.uid}, Ապրանք: {pred.iid}, Նախատեսված գնահատականը: {pred.est:.2f}')
Այսպիսով, հարաբերությունների մատրիցան ծառայում է որպես հիմք՝ կառուցելու մոդել, որը կանխատեսում է օգտվողի հնարավոր հետաքրքրությունները և առաջարկություններ ստեղծում: