پای‌دانتیکپای‌دانتیکپای‌دانتیک
  • صفحه اصلی
  • اخبار
  • آموزش
  • تجربه
  • نقشه راه
  • فریمورک
    • django
    • fastapi
خواندن: چگونه یک ریکامندر سیستم با Django و Prophet بسازیم
اشتراک گذاری
ورود
0

هیچ محصولی در سبد خرید نیست.

اعلان نمایش بیشتر
تغییردهنده سایز فونتAa
پای‌دانتیکپای‌دانتیک
0
تغییردهنده سایز فونتAa
Search
  • صفحه اصلی
  • آموزش
  • اخبار
  • تجربه
  • نقشه راه
  • فریمورک
    • django
    • fastapi
Have an existing account? ورود
ما را دنبال کنید
© 2022 Foxiz News Network. Ruby Design Company. All Rights Reserved.
پای‌دانتیک > فریمورک > django > چگونه یک ریکامندر سیستم با Django و Prophet بسازیم
django

چگونه یک ریکامندر سیستم با Django و Prophet بسازیم

محمد عزیززاده
آخرین به روز رسانی: شهریور 16, 1402 10:16 ق.ظ
محمد عزیززاده
اشتراک گذاری
5 دقیقه زمان مطالعه
چگونه یک ریکامندر سیستم با Django و Prophet بسازیم
چگونه یک ریکامندر سیستم با Django و Prophet بسازیم
اشتراک گذاری

معرفی

Contents
راه اندازی Environmentآشنایی با سیستم های پیشنهادی هوش مصنوعیاستفاده از prophet برای پیش بینیادغام Prophet با جنگومرحله 1: بارگذاری داده های Historicalمرحله 2: پیش پردازش داده هاساخت Recommendation Engineمرحله 2: بازیابی فعالیت کاربرمرحله 3: ایجاد Recommendationsپیاده سازی Frontend

سیستم‌های Recommendation به بخش مهمی از بسیاری از پلتفرم‌های آنلاین، از سایت‌های تجارت الکترونیک گرفته تا خدمات پخش تبدیل شده‌اند.

این سیستم‌ها از داده‌های Historical و الگوریتم‌های یادگیری ماشین برای پیش‌بینی آنچه کاربران ممکن است بر اساس رفتار و ترجیحاتشان بپسندند، استفاده می‌کنند. در این آموزش، ما یک سیستم توصیه می‌سازیم که محصولات، محتوا یا مواردی را به کاربران پیشنهاد می‌کند.

راه اندازی Environment

قبل از شروع، مطمئن شوید که پایتون، جنگو و کتابخانه های مورد نیاز را نصب کرده اید. شما می توانید یک محیط(Environment) مجازی راه اندازی کنید تا وابستگی های پروژه خود را ایزوله نگه دارد:

python -m venv recommendation-system
source recommendation-system/bin/activate
pip install django pandas prophet

آشنایی با سیستم های پیشنهادی هوش مصنوعی

سیستم های توصیه هوش مصنوعی معمولاً به دو دسته تقسیم می شوند: فیلتر مبتنی بر محتوا و مشارکتی. در این آموزش، ما بر روی توصیه‌های مبتنی بر محتوا با استفاده از کتابخانه Prophet برای پیش‌بینی تمرکز می‌کنیم.

استفاده از prophet برای پیش بینی

Prophet یک ابزار قدرتمند پیش بینی است که توسط فیس بوک برای داده های سری زمانی توسعه یافته است.

این به ویژه هنگام برخورد با روندها و الگوهای فصلی مفید است. ما از قابلیت‌های Prophet برای پیش‌بینی اولویت‌ها و علایق کاربر استفاده خواهیم کرد.

ادغام Prophet با جنگو

اولین قدم ما بارگذاری داده های Historical در مدل های جنگو است. فرض کنید مدلی به نام UserActivity با فیلدهای user، item، timestamp و rating داریم. برای آماده سازی داده ها برای پیش بینی، تعاملات کاربر-مورد و مهرهای زمانی را استخراج می کنیم.

مرحله 1: بارگذاری داده های Historical

یک مدل جنگو برای نمایش فعالیت کاربر ایجاد کنید. برای مثال می توانید مدلی به نام UserActivity با فیلدهای user، item، timestamp و rating تعریف کنید.

پایگاه داده خود را با داده های سابقه فعالیت کاربر پر کنید. هر رکورد باید شامل کاربر، موردی که با آن تعامل داشته است، مُهر زمانی تعامل، و به طور بالقوه امتیاز یا امتیاز ترجیحی باشد.

مرحله 2: پیش پردازش داده ها

کتابخانه های مورد نیاز را در ابتدای نمای جنگو یا اسکریپت خود وارد کنید:

from django.shortcuts import render
import pandas as pd
from prophet import Prophet

ساخت Recommendation Engine

عملکردی ایجاد کنید که بر اساس فعالیت Historical یک کاربر خاص، توصیه هایی را ایجاد کند:

def generate_recommendations(user_activity):
    # Convert user activity to a DataFrame
    data = [
        {'ds': activity.timestamp, 'y': activity.rating}  # Use 'y' as per your dataset
        for activity in user_activity
    ]
    df = pd.DataFrame(data)
    
    # Prepare the DataFrame for Prophet
    df.rename(columns={'ds': 'ds', 'y': 'y'}, inplace=True)
    
    # Create and fit a Prophet model
    model = Prophet()
    model.fit(df)
    
    # Create a future DataFrame for predictions
    future = model.make_future_dataframe(periods=7)  # Adjust 'periods' as needed
    
    # Generate forecasts
    forecast = model.predict(future)
    
    # Extract the last predicted values as recommendations
    recommendations = forecast[['ds', 'yhat']].tail(7)  # Get the last 7 predicted values
    
    return recommendations

مرحله 2: بازیابی فعالیت کاربر

در نماهای جنگو، فعالیت Historical را برای یک کاربر خاص بازیابی کنید:

user_id = 123  # Adjust with the user's actual ID
user_activity = UserActivity.objects.filter(user_id=user_id).order_by('-timestamp')

مرحله 3: ایجاد Recommendations

تابع generate_recommendations را با فعالیت کاربر فراخوانی کنید:

recommendations = generate_recommendations(user_activity)

پیاده سازی Frontend

در قالب جنگو خود، از یک حلقه برای نمایش موارد توصیه شده استفاده کنید:

<h2>Recommended Items:</h2>
<ul>
    {% for item in recommendations %}
        <li>{{ item.ds|date:"Y-m-d" }} - Rating: {{ item.yhat }}</li>
    {% endfor %}
</ul>

نتیجه

ادغام Prophet با جنگو به شما این امکان را می دهد که از قابلیت های پیش بینی Prophet برای ساختن یک سیستم توصیه هوش مصنوعی استفاده کنید.

با تهیه داده‌های historical ، آموزش مدل و انجام پیش‌بینی‌ها، می‌توانید توصیه‌های شخصی‌سازی شده را بر اساس تعاملات گذشته کاربران ارائه دهید.

این ادغام یک پایه محکم برای ایجاد یک سیستم توصیه کاربر پسند و جذاب ارائه می دهد که تجربه کاربر را افزایش می دهد و مشارکت بیشتر در پلت فرم مبتنی بر جنگو شما را تشویق می کند.

منبع مطلب

Sign Up For Daily Newsletter

Be keep up! Get the latest breaking news delivered straight to your inbox.
By signing up, you agree to our Terms of Use and acknowledge the data practices in our Privacy Policy. You may unsubscribe at any time.
این مقاله را به اشتراک بگذارید
Facebook Twitter Copy Link Print
اشتراک گذاری
مقاله قبلی ساخت یک وب اپلیکیشن برای پروژه‌های داده‌محور شما با استفاده از low-code Taipy ساخت یک وب اپلیکیشن برای پروژه‌های داده‌محور شما با استفاده از low-code Taipy
مقاله بعدی راهنمای چگونه ننوشتن حلقه for در پایتون ! راهنمای چگونه ننوشتن حلقه for در پایتون !
پیام بگذارید پیام بگذارید

دیدگاهتان را بنویسید لغو پاسخ

نشانی ایمیل شما منتشر نخواهد شد. بخش‌های موردنیاز علامت‌گذاری شده‌اند *

همه دسته بندی ها

  • django
  • fastapi
  • آموزش
  • اخبار
  • تجربه
  • دسته‌بندی نشده
  • نقشه راه
پای‌دانتیکپای‌دانتیک
ما را دنبال کنید
قالب فاکسیز فارسی شده توسط تیم راستچین 2023
Welcome Back!

Sign in to your account