Recommendation systems are among most widely preffered marketing strategies.

Overview

Recommendation_Systems-ARL-and-CF

Tavsiye sistemleri, pazarlama stratejileri için sıkça tercih edilen yöntemlerdendir. Bu yaygınlığın sebebi kullanıcı ve ürünlerin kendi içindeki ve birbirleri arasındaki ilişkilerini tahmin etmede elde ettiği başarıdır. Bu projede iki farklı veri seti üzerinde iki farklı tavsiye sistemi algoritması uygulanmıştır: "Birliktelik Kuralı Öğrenimi (Association Rule Learning)" ve "İş Birlikçi Filtreleme (Collaborative Filtering)". Bahsedilen algoritmalar hakkında detaylı bilgi yazının devamında sunulmuştur.

ARL-CF

Özellikle son zamanlarda talebi artan tutan e-ticaret sitelerinin ürün yelpazesi oldukça geniştir. Bir kullanıcının bütün siteyi tarayarak istediği ürüne ulaşması ya da kullanıcının geçmiş ve anlık tercihlerine uygun ürün önerisinde bulunmak tavsiye sistemleri olmadan mümkün değildir. Tavsiye sistemleri temelde kullanıcının geçmiş bilgilerini kullanarak tercih ettiği ürünlerin diğer ürünlerle ilişkisini tespit ederek satın alma ihtimali yüksek olan ürünleri karşısına çıkarmak için kullanılır.

Association Rule Learning:

Özellikle ürün çeşitliliğinin çok olduğu veri setleri içinde gizlenmiş ilişkileri bulmak için kullanılan bir kural tabanlı bir makine öğrenmesi yöntemidir. Örneğin: bir market veri setinin barındırdığı fişlerin değerlendirilmesi sonucu Süt -> Tereyağı, Süt -> Ekmek gibi birlikte alınan ürünlerin tespit edilmesi. Müşterilerin ortak olarak birlikte alma davranışı gösterdiği ürünleri bulmak önemlidir.

Bir müşterinin süt aldığında ekmek alma olasılığı nedir? Bir müşterinin cips aldığında gazlı içecek alma olasılığı kaç kat artar? Bu soruların cevaplarından elde edilen öngörü çeşitli aksiyonlar alınabilir. Birlikte tercih edilen ürünleri, biri alındığında diğeri de alınan ürünleri tespit etmek gerek e-ticarette ürün önerisi stratejisi, gerek fiziksel marketlerde ürünlerin raf sıralaması, market konumlandırması gibi strateji geliştirmek için önemlidir. Ayrıca, bu kurallar müşteri satın alma davranışlarını kavrayabilmeyi de sağlar.

Bu birliktelikleri tespit etmek için bir sepet analizi yöntemi olan Apriori Algoritması kullanılır. Tablo-1'de formülleri ve açıklamaları verilen Support, Confidence ve Lift değerleri bulunarak sonuca bağlı çeşitli pazarlama teknikleri kullanılabilir.

Tablo-1: ARL

Birliktelik kuralını bulabilmek için bir support değeri belirlendilten sonra sırasıyla iki adımlı süreç izlenir:

1- Tüm sık tekrarlanan çift ve üçlü kombinasyonlar arasından belirlenen eşik değerin altında kalanlar elenir. 3- Elde kalan kombinasyonların support, confidence ve lift değerleri hesaplanarak güçlü birliktelik sergileyen gruplar tespit edilir. Buna göre aksiyon alınır.

2- Sık tekrarlanan Öğelerden güçlü birliktelik kuralları oluşturulur: Bu kurallar minimum destek ve minimum güven değerlerini karşılamalıdır.

Colaborative Filtering:

İşbirlikçi filtreleme yöntemleri bir kullanıcının herhangi bir ürüne olan ilgi düzeyini tespit etmek ve buna bağlı ürün filtreleyerek öneride bulunmak için kullanılır. Bu amaç için temelde iki farklı yönteme başvurulur: Model Tabanlı İşbirlikçi Filtreleme ve Bellek Tabanlı İşbirlikçi Filtreleme Yöntemleri. Model Tabanlı İşbirlikçi Filtreleme yöntemleri ise Öğe Tabanlı İşbirlikçi Filtreleme ve Kullanıcı Tabanlı İşbirlikçi Filtreleme olarak ikiye ayrılır. Ancak, bu yöntemler birlikte kullanılarak hibrit bir model de oluşturulabilir.

Kullanıcı temelli filtrelemede amaç kullanıcı davranışları ile öneriler gerçekleştirmektir. Filtreleme yaparken bir kullanıcının bir ürüne olan muhtemel ilgisini bulmak için ilk önce söz konusu ürünü değerlendiren kullanıcılar arasındaki benzerlikler ve aktif kullanıcıya en çok benzeyen kullanıcılar bulunur. Örneğin Spotify'da kişinin tercih ettiği müzikler üzerinden diğer kullanıcılar ile benzerliği tespit edilerek kullanıcıya en çok benzeyen kullanıcıların dinlediği diğer müziklerin önerilmesi. İki kullanıcı arasındaki benzerliğini bulmak içinse kosinüs benzerliği ve pearson korelasyon katsayısı en çok tercih edilen yöntemlerdir.

Ürün temelli filtreleme ise kullanıcıların verdiği oylar üzerinden ürün benzerliklerini tespit eden bir yöntemdir. Yani örneğin kişi yöntemin bir nesnesi olmaktan çıkarılarak izlediği bir filmle benzer beğenilme yapısı gösteren filmler bulunur. Diğer izleyicilerin toplu olarak farklı filmlere verdiği benzer reaksiyonlar bulunarak benzer filmler de bulunmuş olur. Korelasyonu en yüksek filmler seçilerek kullanıcıya öneri olarak sunulur.

Bu çalışmada kişi ve öğe temelli (user-based, item-based) hibrit bir model çalışılmıştır.

Kaynakça:

  1. https://www.veribilimiokulu.com/
  2. M. Kaur ve S. Kang, “Market Basket Analysis: Identify the Changing Trends of Market Data Using Association Rule Mining”, Procedia Computer Science, c. 85, ss. 78-85, 2016, doi: 10.1016/j.procs.2016.05.180.
  3. Oğuzlar, A . (2004). VERİ MADENCİLİĞİNDE BİRLİKTELİK KURALLARI . Öneri Dergisi , 6 (22) , 315-321 . DOI: 10.14783/maruoneri.678958
  4. https://burakdogrul.medium.com/overview-of-recommender-systems-and-implementations-cae13088369
  5. H. Bulut ve M. Milli, “New prediction methods for collaborative filtering”, Pamukkale J Eng Sci, c. 22, sy 2, ss. 123-128, 2016, doi: 10.5505/pajes.2014.44227.
You might also like...
Trading Strategies (~50%) developed by GreenT on QuantConnect platform over the autumn quarter
Trading Strategies (~50%) developed by GreenT on QuantConnect platform over the autumn quarter

Trading Strategies ~50% of codes from the Applied Financial Technology Course. Contributors: Claire W. Derrick T. Frank L. Utkarsh T. Course Leads: Dy

Cryptocurrency Trading Bot - A trading bot to automate cryptocurrency trading strategies using Python, equipped with a basic  GUI
Cryptocurrency Trading Bot - A trading bot to automate cryptocurrency trading strategies using Python, equipped with a basic GUI

Cryptocurrency Trading Bot - A trading bot to automate cryptocurrency trading strategies using Python, equipped with a basic GUI. Used REST and WebSocket API to connect to two of the most popular crypto exchanges in the world.

The most expensive version of Conway's Game of Life - running on the Ethereum Blockchain
The most expensive version of Conway's Game of Life - running on the Ethereum Blockchain

GameOfLife The most expensive implementation of Conway's Game of Life ever - over $2,000 per step! (Probably the slowest too!) Conway's Game of Life r

Most Powerful Chatbot On Telegram Bot

About Hello, I am Lycia [リュキア], An Intelligent ChatBot. If You Are Feeling Lonely, You can Always Come to me and Chat With Me! How To Host The easiest

🎀 First and most powerfull open source clicktune botter
🎀 First and most powerfull open source clicktune botter

CTB 🖤 Follow me here: Discord | YouTube | Twitter | Github 🐺 Features: /* *- The first *- Fast *- Proxy support: http/s, socks4/5, premieum (w

Barbot is a discord bot made from discord.py and python, barbot is most to fun and roleplay for servers!
Barbot is a discord bot made from discord.py and python, barbot is most to fun and roleplay for servers!

BarBot Main source of barbot Overview Barbot is a discord bot made from discord.py and python, barbot is most to fun and roleplay for servers! Links i

a discord bot that pulls the latest or most relevant research papers from arxiv.org

AI arxiver a discord bot that pulls the latest or most relevant research papers from arxiv.org invite link : Arxiver bot link works in progress Usage

This code is for a bot which will find a Twitter user's most tweeted word and tweet that word, tagging said user

max_tweeted_word This code is for a bot which will find a Twitter user's most tweeted word and tweet that word, tagging said user The program uses twe

The most versatile torrent leecher and youtube-dl bot for telegram

TorToolkit Telegram So basically Tortoolkit is aimed to be the most versatile torrent leecher and youtube-dl bot for telegram. This bot is highly cust

Owner
Sübeyte
Sübeyte
Aula-API - a school system widely used in Denmark, as you can see and read about in the python file

Information : Hello, thank you for reading this first of all. This is a Aula-API

Binary.club 2 May 28, 2022
Mini Tool to lovers of debe from eksisozluk (one of the most famous website -reffered as collaborative dictionary like reddit- in Turkey) for pushing debe (Most Liked Entries of Yesterday) to kindle every day via Github Actions.

debe to kindle Mini Tool to lovers of debe from eksisozluk (one of the most famous website -refered as collaborative dictionary like reddit- in Turkey

null 11 Oct 11, 2022
The most fresh and updateable Telegram userbot. By one of the most active contibutors to GeekTG

Installation Script installation: Simply run this command out of root: . <(wget -qO- http://gg.gg/get_hikka) Manual installation: apt update && apt in

Dan Gazizullin 150 Jan 4, 2023
Davide Gallitelli 3 Dec 21, 2021
THERE IS AN IMPOSTER AMONG US. VOTE HIM OUT BEFORE HE [ R E D A C T E D ].

??️ Guardian There is an impostor among us. Can you help us find out who it is? ⚙️ Installation and Usage Make sure to install Tesseract-OCR before ru

Catus Magnus 1 Jan 6, 2022
Utilizing the freqtrade high-frequency cryptocurrency trading framework to build and optimize trading strategies. The bot runs nonstop on a Rasberry Pi.

Freqtrade Strategy Repository Please test all scripts and dry run them before using them in live mode Contact me on discord if you have any questions!

Michael Fourie 90 Jan 1, 2023
Tools for use in DeFi. Impermanent Loss calculations, staking and farming strategies, coingecko and pancakeswap API queries, liquidity pools and more

DeFi open source tools Get Started Instalation General Tools Impermanent Loss, simple calculation Compare Buy & Hold with Staking and Farming Complete

Juan Pablo Pisano 467 Jan 8, 2023
A Pancakeswap v2 trading client (and bot) with limit orders, stop-loss, custom gas strategies, a GUI and much more.

Pancakeswap v2 trading client A Pancakeswap trading client (and bot) with limit orders, stop-loss, custom gas strategies, a GUI and much more. If you

null 571 Mar 15, 2022
A Pancakeswap and Uniswap trading client (and bot) with limit orders, marker orders, stop-loss, custom gas strategies, a GUI and much more.

Pancakeswap and Uniswap trading client Adam A A Pancakeswap and Uniswap trading client (and bot) with market orders, limit orders, stop-loss, custom g

null 570 Mar 9, 2022
Framework for creating and running trading strategies. Blatantly stolen copy of qtpylib to make it work for Indian markets.

>_• Kinetick Trade Bot Kinetick is a framework for creating and running trading strategies without worrying about integration with broker and data str

Vinay 41 Dec 31, 2022