میکند که با فرمول زیر محاسبه میشود. توجه کنید r_i امتیاز واقعی و r ?_i امتیاز پیشبینی شده میباشد.
MAE=1/n ?_(i=1)^n??(r_(i-) r ?_i)? (16)
5-4-2- دقت67 و فراخوانی68
در سیستمهای پیشنهادگر آنچه که برای کاربر فعال مهم است این میباشد که یک لیست اقلام مرتب شده بر اساس تمایلاتش دریافت کند. این دو معیار، معیارهای ارزیابی بازیابی اطلاعات69 میباشند که برای ارزیابی سیستمهای پیشنهادگر نیز به کار میروند.
در حیطه بازیابی اطلاعات توسط موتورهای جستجوگر، دقت، نسبت تعداد اسناد70 بازیابی شده مرتبط به تعدا کل اسناد بازیابی شده است. فراخوانی، نسبت تعداد اسناد بازیابی شده مرتبط نسبت به تعداد کل اسناد مرتبط میباشد. این مفاهیم در شکل شماره 14 نشان داده شدهاند.
شکل شماره 14: نمایش مفاهیم دقت و فراخوانی در حوزه بازیابی اطلاعات
دقت در سیستمهای پیشنهادگر یعنی نسبت پیشنهاداتی که خوب هستند و به کاربر ارائه شدهاند به کل پیشنهاداتی که در لیست وجود دارند. فراخوانی یعنی نسبت پیشنهاداتی که خوب هستند و به کاربر ارائه شدهاند به تعداد کل پیشنهادات خوب که در لیست ظاهر شده- اند. اینجا شرط خوب یا مربوط بودن پیشنهادات که همان اقلام هستند داشتن امتیاز 4 و 5 میباشد و شرط خوب نبودن یا نا مربوط بودن اقلام، داشتن امتیازهای 1 ، 2 و 3 میباشد.
با توجه به مطالبی که گفته شد مقدار دقت 1 یعنی تمام پیشنهاداتی که ارائه شدهاند خوب هستند (نه اینکه تمام پیشنهادات خوب به کاربر ارائه شدهاند) و مقدار فراخوانی 1 یعنی تمام پیشنهادات خوب در لیست به کاربر ارائه شدهاند (بدون توجه به اینکه چه تعداد پیشنهادات بد نیز در لیست وجود دارد).
دقت و فراخوانی با هم رابطه معکوس دارند یعنی هر چقدر دقت بالا رود فراخوانی پایین میآید و هر چقدر دقت پایین آید فراخوانی بالا میرود مانند آنچه که در شکل شماره 15 میبینید.
شکل شماره 15: رابطه معیار فراخوانی با معیار دقت
5-4-3- معیار ارزیابی F
این معیار برای ترکیب معیارهای دقت و فراخوانی و تبدیل آنها به یک معیار به کار میرود و مقدار آن توسط فرمولی که در ادامه قابل مشاهده است محاسبه میشود.
F1=2×(Precision×Recall)/(Precision+Recall) (28)

خاب میگردد.
4-4-1-2- پیش پردازش بر روی پایگاه داده EachMovie
برای هر فیلم موجود در پایگاه داده EachMovieتوسط زبان برنامه نویسی C#.net بر اساس لینک مربوط به آن یک درخواست به سرور IMDB فرستاده میشود. توسط این درخواست قالب HTML صفحه مربوط به آن فیلم در این سایت، در دسترس قرار میگیرد که میتوان اطلاعات مربوط به بازیگران و کارگردانان را که با TAG های مربوطه شناسایی میشوند، از آن استخراج نمود.
URLمربوط به تعدادی از فیلمها در این پایگاه داده معتبر نمیباشد. برای این دسته از فیلمها درخواست بر اساس نام و تاریخ انتشار آنها به فیلد جستجوی سایت IMDB ارسال میشود و در صورت عدم موفقیت در یافتن هر فیلم، اطلاعات مربوط به آن به صورت دستی از این سایت یا سایتWikiPedia استخراج میگردد.
4-4-2- وزندهی به اقلام
پس از جمع آوری اطلاعات مربوط به ژانرها، کارگردانان و بازیگران تمام فیلمهای موجود در پایگاه داده در مرحله قبل، اکنون نوبت به وزندهی آنها بر اساس روش محتوا محور میرسد. توجه شود اطلاعات مربوط به هر فیلم، نمایه آن فیلم را تشکیل میدهد. بنابراین وزن هر فیلم بر اساس میزان شباهت نمایه آن با نمایه فیلم هدف تعیین میگردد. این میزان شباهت توسط معیار کسینوس سنجیده میشود. این معیار در حالت کلی، دو بردار را به عنوان ورودی دریافت و میزان شباهت آنها را بر اساس زاویه بین آن دو اندازهگیری میکند. برای اندازهگیری میزان شباهت بین نمایه دو فیلم بر اساس این معیار، اطلاعات موجود در نمایه هر دو قلم باید در قالب بردارهایی با طول یکسان نشان داده شود. به این منظور برای هر ویژگی ژانر، کارگردان و بازیگر متعلق به نمایه هر کدام از دو فیلم مورد مقایسه، مولفهای در بردار در نظر گرفته میشود. سپس از مقادیر 0 و 1 برای مشخص کردن وجود و عدم وجود آن ویژگی در هر یک از فیلمها استفاده میگردد. فرض کنید Gi نشانگر ژانر i ام، Di نمایانگر کارگردانi ام و Ai مشخص کننده بازیگر i ام فیلم باشد. فیلم M و T را با مجموعه ویژگیهای زیر در نظر بگیرید:
M={G1, G2, D1, D2, A1, A2, A3}
T={G1, G2, G3, D3, A2, A3}
اجتماع مجموعه ویژگیهای این دو فیلم برابر است با:
M?T={G1, G2, G3, D1, D2, D3,A1, A2, A3}
بنابراین بردار ساخته شده برای هر فیلم به صورت زیر میباشد:
M=(1, 1, 0, 1, 1, 0, 1, 1, 1)
T=(1, 1, 1, 0, 0, 1, 0, 1, 1)
طبق آنچه که در مرحله پیش پردازش توضیح داده شد، تعداد بازیگران استخراج شده برای هر فیلم متفاوت میباشد. بنابراین در هنگام مقایسه هر فیلم با فیلم هدف، فقط بازیگران مشترک بین آنها در نظر گرفته میشود. بدین منظور در مثال بالا بازیگر A1 از بردار فیلمهای M و T حذف خواهد شد:
M?T={G1, G2, G3, D1, D2, D3, A2, A3}
M=(1, 1, 0, 1, 1, 0, 1, 1)
T=(1, 1, 1, 0, 0, 1, 1, 1)
اکنون که توانستیم نمایه هر فیلم را در قالب بردار نشان دهیم، از معیار کسینوس برای تعیین میزان شباهت دو بردارM و T به صورت زیر استفاده میکنیم:
w_(T,M)=cos??(?)?=?((T . M)/?T??M? )=?(( ?_(i=1)^n??T_i M_i ?)/(?(?(?_(i=1)^n??T_i?^2 )) ?(?(?_(i=1)^n??M_i?^2 )) )) (9)
M_i نشان دهنده مولفه i ام از بردار M وT_i نشان دهنده مولفه i ام از بردار T میباشد. توجه شود که حاصل این کسر عددی بین 0 و 1 است. عدد 1 به معنای تشابه کامل و عدد 0 به معنای عدم تشابه کامل است.
از آنجا که مولفههای دو بردار مورد مقایسه 0 و 1 میباشد، مقدار محاسبه شده در صورت کسر بالا، برابر با تعداد یکهای مشترک و به بیان دیگر برابر با تعداد ویژگیهای مشترک بین دو فیلم است. بنابراین برای اقلامی که هیچ ویژگی مشترکی با قلم هدف ندارند وزن صفر در نظر گرفته میشود. از سوی دیگر مبنای فیلترینگ اشتراکی محاسبه میزان شباهت بین کاربران میباشد که بعضی از این کاربران به تعداد محدودی از اقلام امتیاز دادهاند. بنابراین اقلامی وجود دارند که به اندازه کافی امتیازدهی نشدهاند. و این باعث مشکل پراکندن بودن ماتریس کابران- اقلام شده است. در این حالت اندازهگیری شباهت روی تعداد امتیازهای ابراز شده اندکی صورت میپذیرد که قابل اعتماد نمیباشد. حال با صفر در نظر گرفتن وزن اقلامی که ویژگی مشترک با قلم هدف ندارند، این مشکل تشدید میشود. برای جلوگیری از این مسئله، برای این اقلام وزنی کوچکتر از سایر اقلام در نظر گرفته شده است. بنابراین اعمال وزن به اقلام به صورت زیر انجام میشود:
w_(T,M)=?((1 + ?_(i=1)^n??T_i×M_i ?)/(?(?(?_(i=1)^n??T_i?^2 )) ×?(?(?_(i=1)^n??M_i?^2 )) )) if k?1 (10)
w_(T, M)=?(1/(?(?(?_(i=1)^n??T_i?^2 )) ×?(?(?_(i=1)^n???MV?_i?^2 )) )) otherwise
k مشخص کننده تعداد ویژگیهای مشترک بین دو قلم (تعداد یکهای مشترک بین دو بردار) است. MVنمایانگر فیلمی است که دارای بیشترین تعداد ویژگی (برداری با بیشترین تعداد یک) میباشد
4-4-3- انتخاب همسایگی
بر طبق آنچه توضیح داده شد، نتیجه حاصل شده از مرحله قبل، وزن مربوط به هر قلم بر اساس میزان شباهت آن با قلم هدف میباشد. برای پیشبینی یا ارائه پیشنهاد توسط روش فیلترینگ اشتراکی ابتدا میبایست شبیهترین کاربران به کاربر فعال را پیدا کرد و به عنوان مجموعه همسایگی او در نظر گرفت. کاربر فعال کاربری است که هدف پیشبینی امتیاز قلم هدف برای او میباشد. برای ایجاد مجموعه همسایگی، فقط کاربرانی که به قلم هدف رای دادهاند مورد بررسی قرار میگیرند. معیار همبستگی پیرسون پایه برای سنجیدن میزان وابستگی بین الگوی امتیازدهی کاربر فعال و سایر کاربران استفاده میگردد و به صورت زیر محاسبه میشود:
PC(a,u)=(?_i??(r_(a,i)-r ?_a).(r_(u,i)-r ?_u)?)/?(?_i???(r_(a,i)-r ?_a)?^2.?_i??(r_(u,i)-r ?_u)?^2 ?) (11)
r ?_a و r ?_u میانگین کل امتیازهایی هستند که به ترتیب کاربران aو uبه اقلام نسبت دادهاند. r_(a,i) و r_(u,i) امتیازهایی هستند که به ترتیب کاربران aو uبه قلم iام نسبت دادهاند.
در این مرحله، برای سنجیدن میزان وابستگی بین الگوی امتیازدهی کاربر فعال و سایر کاربران از معیار همبستگی پیرسون وزندار استفاده میشود. تنها تفاوت این معیار با معیار همبستگی پیرسون پایه این است که در زمان مقایسه نحوه امتیازدهی دو کاربر به هر قلم، وزن آن قلم نیز دخیل میشود. این وزن میزان اهمیت مشابه عمل کردن دو کاربر را در امتیازدهی به این قلم مشخص میکند. معیار همبستگی پیرسون وزندهی شده به صورت زیر میباشد:
WPC(a,u,j)=(?_i??(w_(j,i) (r_(a,i)-r ?_a)).(w_(j,i) (r_(u,i)-r ?_u)) ?)/?(?_i??(w_(j,i) (r_(a,i)-r ?_a))^2.?_i?(w_(j,i) (r_(u,i)-r ?_u))^2 ?) (12)
j نشان دهنده قلم هدف است که پیشبینی امتیاز آن مورد نظر میباشد. w_(j,i) نشان دهنده وزن قلم i ام و به عبارت دیگر میزان شباهت قلم i ام با قلم هدف است.
علاوه بر این، با ادغام یک وزن دهی مفید و کاهش دادن همبستگی بر اساس تعداد اقلامی که دو کاربر مشترکا به آنها امتیاز دادهاند، میتوان دقت پیشبینی را به شکل قابل توجهی افزایش داد.
با فرض اینکه x تعداد اقلامی است که کاربران a و u به طور مشترک به آنها رای دادهاند، در نهایت شباهت دو کاربر مذکور به صورت زیر به دست میآید:
sim(a,u)=WPC(a,u,j).CF (13)
CF=1 if x50
CF=?(x/50 Otherwise)
پس از اینکه شباهت تمامی کاربران با کاربر فعال سنجیده شد نوبت به انتخاب مجموعه همسایگی میرسد. برای این منظور کاربران بر اساس میزان شباهتشان به طور نزولی مرتب میشوند. سپس با انتخاب تعداد ثابتی از بهترین آنها، مجموعه همسایگی کاربر فعال تشکیل داده میشود.
همچنین میتوان برای انتخاب مجموعه همسایگی کاربر فعال از فرمول زیر استفاده نمود. به صورتی که مقدار w_(j,i) موجود در فرمول شماره 12 از فرمول شماره 9 به دست آمده و نهایتا TPC حاصل از این فرمول جایگزین WPC در فرمول شماره 13 میشود.
TPC=?.PC+?WPC (14)
که بهترین نتیجه با تنظیم ?=0.3 و ?=0.7 حاصل میشود.
4-4-4- پیش بینی
نتیجه به دست آمده از مرحله قبل مجموعه همسایگی کاربر فعال میباشد. در این مرحله با استفاده از امتیازهایی که توسط کاربران موجود در مجموعه همسایگی به قلم هدف تخصیص یافته، امتیاز مربوط به قلم هدف پیشبینی میشود. برای این منظور از فرمول شماره 15 که به طور معمول در فیلترینگ اشتراکی مبتنی بر کاربر به کار برده میشود[9] ، استفاده میگردد.
r ?_(a,t)=r ?_a+(?_(v?N_t(a) )??(r_(u,t)-r ?_u ).sim(A , U) ?)/(?_(v?N_t(a) )?sim(A , U) ) (15)
Nt(a)مجموعه همسایگی کاربر فعال میباشد. r ?_a و r ?_u میانگین کل امتیازهایی هستند که به ترتیب کاربران aو uبه اقلام نسبت دادهاند. r_(u,t) نمرهای است که کاربر u به قلم هدف اختصاص داده است.
فصل پنجم
آزمایشها و نتایج
5- آزمایشها و نتایج
5-1- پایگاه دادههای مورد استفاده
MovieLensو EachMovie دو پایگاه داده62 معروف و رایج هستند که هر دو مربوط به سایتهای پیشنهادگر فیلم میباشند .روش پیشنهادی روی هر دوی این پایگاه دادهها مورد آزمایش و بررسی قرار گرفته است.
5-2- نحوه اجرای روش پیشنهادی روی پایگاه داده MovieLens
MovieLens متشکل از 209,000,1 امتیاز میباشد که توسط 040,6 کاربر به 952,3 فیلم اختصاص یافته است. این پایگاه داده توسط پروژه پژوهشی GroupLens در دانشگاه Minnesota تهیه شده است.
برای آزمایش روش ارائه شده از روش اعتبار سنجی پنج قسمت برابر63 استفاده کردهایم. به این صورت که امتیازهای داده شده به هر فیلم را به 5 قسمت تقریبا مساوی تقسیم کرده سپس یک قسمت یعنی حدود %20 را برای تست64 و مابقی را برای آموزش65 جدا کردهایم. یعنی با استفاده از %80 امتیازها، %20 باقی مانده امتیازها را با این روش پیشبینی میکنیم. در کل مجموعه تست تقریبا شامل 710,192 امتیاز و مجموعه آموزش تقریبا شامل 499,807 امتیاز میباشد.
5-3- نحوه اجرای روش پیشنهادی روی پایگاه داده EachMovies
EeachMovie متشکل از 983,811,2 امتیاز میباشد این پایگاه داده شامل 916,72 کاربر میباشد که به 628,1 فیلم امتیاز دادهاند. برای آزمایش روش ارائه شده بر روی این پایگاه داده نیز از روش اعتبار سنجی پنج قسمت برابر استفاده کردهایم. در کل مجموعه تست تقریبا شامل 396,562 امتیاز و مجموعه آموزش تقریبا شامل 587,249,2 امتیاز میباشد.
5-4- معیارهای ارزیابی
معیارهای ارزیابی سیستمهای پیشنهادگر بر اساس وظیفهای که به عهده دارند انتخاب میشوند. در اینجا چون هدف ارزیابی توانایی سیستم پیشنهادگر در پیشبینی امتیاز اقلام دیده نشده میباشد، معیارهای زیر برای سنجش روش پیشنهادی به کار برده شدهاند.
5-4-1- میانگین خطای مطلق66 :
این معیار بر اساس دقت است و فاصله بین امتیازهای پیشبینی شده و امتیازهای واقعی را اندازه گیری

انجام میشود.
عکس العملی که کاربر در مقابل اقلام از خود نشان میدهد به دو صورت صریح و ضمنی میباشد. عکس العمل صریح به این صوت است که کاربر علاقه یا عدم علاقه خود نسبت به اقلام را توسط امتیازدهی یا توصیفی کوتاه نشان دهد. در عکس العمل ضمنی کاربر هیچ دخالتی ندارد و خود سیستم توسط کنترل و تحلیل رفتار و فعالیتهای کاربر، علائق او را استخراج میکند.
با توجه به اینکه سلیقه افراد در طول زمان تغییر میکند، نمایه ساخته شده از کابر نیز باید با توجه به این تغییرات به روز شود. برای این منظور ابراز علاقه و یا عدم علاقه کاربر به اقلامی که در لیست به او پیشنهاد شدهاند به عنوان باز خورد ذخیره و برای به روز کردن نمایه او استفاده میشود.
درست است که سایت پیشنهادگر آمازون بر اساس روش فیلترینگ اشتراکی است. ولی همانطور که در شکل شماره 12 قابل مشاهده است در این نمونه صفحه از سایت آمازون گزینهای به نام Youre Favoites وجود دارد که با استفاده از این گزینه قسمتی از نمایه کاربر میتواند بر اساس روش محتوا محور ساخته شود. همانگونه که در شکل شماره 13 قابل مشاهده است در این صفحه انواع کتابهایی که مطابق با علائق کاربر است نمایش داده شده است. انواعی که در این قسمت قابل مشاهده است یا به صورت ضمنی بر گرفته شده، مانند بررسی اقلامی که کاربر تا کنون خریداری کرده است، یا به صورت دستی توسط خود کاربر وارد شده است. این قسمت توسط کاربر قابل ویرایش و تطبیق پذیر با سلایق و علائق او میباشد.
شکل شماره 12 : نمونه صفحهای از سایت آمازون
شکل شماره 13 : استفاده از روش محتوا محور در سایت آمازون
3-2-3- جزء فیلترینگ (filtering component )
در این مرحله میزان شباهت پروفایل ساخته شده از کاربر با اطلاعات توصیفی سازماندهی شده اقلام مورد نظر سنجیده میشود. این کار میتواند توسط یکی از معیارهای اندازه گیری شباهت مانند معیار اندازه گیری کسینوس صورت گیرد. بر این اساس مشخص میشود که کدام یک از این اقلام مورد علاقه کاربر است. نتیجه حاصل شده از این مرحله یک لیست پیشنهادی از اقلام میباشد که بر اساس علائق کاربر مرتب شده است.
3-3- مزایای روش محتوا محور
متد محتوا محور در مقایسه با متد فیلترینگ اشتراکی دارای مزایایی به شرح زیر است:
3-3-1- استقلال کاربر
متد محتوا محور به امتیازهای کاربر فعال برای ساختن نمایه از او احتیاج دارد. در حالی که متد فیلترینگ اشتراکی به امتیازهای کاربران همسایه برای تشکیل مجموعه همسایگی کاربر فعال نیاز دارد.
3-3-2-شفافیت
به عنوان دلیل برای پیشنهاد یک قلم به کاربر در سیستمهای محتوا محور میتوان ویژگیهای آن قلم را ارائه داد. در حالی که متد فیلترینگ اشتراکی جعبه سیاه است و تنها دلیل برای پیشنهاد قلم به کاربر فعال این است که کاربرانی ناشناس که سلیقهشان مشابه با کاربر فعال بوده آن قلم را دوست داشتهاند.
3-3-3- قلم جدید
روش محتوا محور مشکل شروع سرد که در متد فیلترینگ اشتراکی موجود میباشد را ندارد. و میتواند قلمی را که تا کنون توسط هیچ کاربری امتیازدهی نشده است، به کاربر فعال پیشنهاد دهد.
3-4- معایب روش محتوا محور
متد محتوا محور دارای معایبی نیز میباشد که در ادامه شرح داده شدهاند:
3-4-1- کمبود محتوا
اگر اطلاعات توصیفی مربوط به اقلام کافی نباشد نمیتوان به درستی اقلام مورد علاقه کاربر را از اقلامی که به آنها علاقهای ندارد متمایز کرد. بنابراین نمیتوان توسط این متد پیشنهادات صحیح و مناسبی ارائه نمود
3-4-2- خصوصی سازی افزون
متد محتوا محور اقلامی که مطابق با نمایه ساخته شده از علاقهمندیهای کاربر است را به او پیشنهاد میدهد. اقلامی که پیشنهاد میشوند شبیه به اقلامی هستند که در گذشته کاربر به آنها امتیاز بالایی داده است. بنابراین در این سیستمها هیچ گاه تازگی وجود ندارد.
3-4-3- کاربر جدید
در متد محتوا محور کاربر باید به تعداد قابل ملاحظهای از اقلام امتیاز داده باشد تا نمایهای صحیح از علاقهمندیهای او ساخته شود. بنابراین پشنهاد ارائه شده به کاربر جدیدی که به تعداد کافی اقلام رای نداده است، قابل اطمینان نمیباشد.
فصل چهارم
روش پیشنهادی
4- روش پیشنهادی
4-1- پیشگفتار
مبنای کار این پایان نامه، روش فیلترینگ اشتراکی مبتنی بر کاربران میباشد. در این روش، روند کار به این صورت است که کاربران مشابه بر اساس نحوه امتیازدهیشان به اقلام شناسایی شده سپس امتیاز اقلامی که تا کنون دیده نشدهاند پیشبینی و در نهایت اقلامی که امتیاز بالا دارند به کاربر پیشنهاد میشود. در این روش، تمامی اقلام به طور یکسان در تعیین میزان شباهت بین کاربران تاثیر گذارند. ولی در واقعیت برای پیشبینی امتیاز قلم هدف، شباهت نحوه امتیازدهی کاربران به اقلام شبیه به قلم هدف، دارای اهمیت بیشتری نسبت به سایر اقلام میباشد. راهکارهای گوناگونی برای تعیین میزان تاثیر گذاری اقلام در فیلترینگ اشتراکی ارائه شده است که در ادامه به اختصار شرح داده شدهاند.
4-2- مروری بر کارهای انجام شده در این راستا
در [47] از معیار فرکانس معکوس سند54 که معیاری معروف در بازیابی اطلاعات میباشد، برای وزندهی به اقلام در سیستمهای فیلترینگ اشتراکی استفاده شده است. ایده اصلی این راهکار فرکانس معکوس کاربر نام دارد. یعنی اقلامی که در بین عموم کاربران دارای محبوبیت هستند نمیتوانند به درستی بیانگر علائق یک کاربر باشند. بنابراین باید به این اقلام وزن کمتری نسبت به سایر اقلام اختصاص داد.
در [48] نیز ایده مشابه با ایده قبل مطرح شده است. در این روش برای کاهش وزن اقلام محبوب از راهکار پراکندگی استفاده شده است. بدین صورت که به اقلامی که از لحاظ امتیاز، پراکندگی بیشتری دارند وزن بیشتر اختصاص مییابد.
در [49] راهکاری مبتنی بر تئوری اطلاعات ارائه شده است. در این راهکار با استفاده از معیار اطلاعات متقابل55 و آنتروپی56، میزان وابستگی بین قلم هدف و اقلام دیگر تعیین و بر این اساس به اقلام وزن تخصیص داده میشود.
در [50] یک روش وزندهی اتوماتیک ارائه شده است که از ایده مربوط به سیستمهای مبتنی بر مدل استفاده میکند. این روش توسط ماکزیمم کردن میانگین شباهت بین کاربران، به اقلام وزن میدهد. به گونهای که کاربر را به کسانی که با او سلیقه مشابه دارند شبیهتر و از کسانی که با او اختلاف سلیقه دارند متمایزتر میکند.
به دلیل متناقض بودن نتایج گزارش شده از انواع روشهای ارائه شده، در [51] مقایسهای بین انواع روشهای وزندهی به اقلام انجام شده است. همچنین سه روش برای فیلتر کردن اقلام بر اساس وزنهای تخصیص یافته به آنها معرفی شده است.
در [52]مشکل یکسان بودن وزن اقلام و پراکندگی سیستمهای فیلترینگ اشتراکی توسط شباهت محلی و سراسری کاربران حل شده است. بدین صورت که شباهت محلی بین کاربران با کاستن تاثیر اقلام محبوب در بین عموم محاسبه میشود. این کار با در نظر گرفتن امتیازهای هر قلم به عنوان یک متغیر تصادفی از توزیع لاپلاس انجام میشود.
در [53] راهکاری نوین برای وزندهی به اقلام و غلبه بر مشکل پراکندگی ارائه شده است. این راهکار بر اساس تجزیه و تحلیل معنایی نهفته57 و استفاده از روش تجزیه منحصر به فرد58 میباشد.
در [54] مشکل شروع سرد در خلال وزندهی به اقلام مورد بررسی قرار گرفته است. وزندهی به اقلام بر اساس کاهش تاثیر اقلام محبوب توسط دو روش فرکانس معکوس کاربر و وزندهی خطی انجام شده است.
4-3- مقدمهای بر روش پیشنهادی
اکثر روشهایی که تا کنون برای تخصیص وزن به اقلام ارائه شدهاند از اطلاعات آماری اقلام یعنی امتیازهای تخصیص داده شده به آنها استفاده کردهاند. در حالی که میتوان از محتوای مربوط به اقلام برای تعیین شباهت و وزندهی به آنها استفاده نمود. به دلیل اینکه پایگاه دادههای مورد استفاده در این پایان نامه MovieLens و EachMovie است و هر دو مربوط به فیلم میباشند، منظور از اقلام همان فیلمهای موجود در این پایگاه داده میباشد. در این پایان نامه به منظور استفاده از روش محتوا محور، ویژگی ژانرها، کارگردانان و بازیگران هر فیلم مورد بررسی قرار گرفته است. ژانر هر فیلم مشخص کننده دسته فیلم است. بعنوان مثال اگر ژانر فیلمی کمدی- درام باشد یعنی آن فیلم به دو دسته کمدی و درام تعلق دارد. در پایگاه دادههای مذکور، اطلاعات مربوط به ژانر هر فیلم موجود میباشد. بعنوان مثال در پایگاه داده MovieLens، 19 ژانر وجود دارد که هر فیلم حداقل 1 و حداکثر 3 ژانر دارد. علاوه بر ویژگی ژانر هر فیلم از دادههای دیگر نظیر ویژگیهای کارگردانان و بازیگران هر فیلم نیز استفاده شده است. این ویژگیها در پایگاه داده وجود ندارند و باید از پایگاه دادههای Linked Open Data(LOD)، نظیر DBpedia استخراج گردند. شایان ذکر است استفاده از دادههای تکمیلی به منظور وزندهی دقیقتر اقلام توسط روش محتوا محور و به دنبال آن بالا بردن دقت پیشبینی در سیستمهای فیلترینگ اشتراکی میباشد.
4-4- روش پیشنهادی
روش ارائه شده از 3 مرحله مجزا تشکیل شده است:
1- پیش پردازش
2- تخصیص وزن به اقلام بر اساس روش محتوا محور
3- استفاده از وزنهای تخصیص داده شده به اقلام در دو فاز انتخاب همسایگی و پیشبینی، در روش فیلترینگ اشتراکی
در ادامه شرح مراحل بالا به تفصیل توضیح داده شده است.
4-4-1- پیش پردازش
همانگونه که در قبل بیان شد برای استفاده از ویژگیهای بازیگران و کارگردانان مربوط به هر فیلم در روش محتوا محور ، نیازمند به استخراج آنها میباشیم. از آنجا که پایگاه دادههای مورد استفاده در این پایان نامه MovieLensو EachMovie میباشد، در ادامه نحوه استخراج اطلاعات مورد نیاز مربوط به فیلمهای موجود در هر یک از این دو پایگاه داده توضیح داده شده است.
4-4-1-1- پیش پردازش بر روی پایگاه داده MovieLens
DBPedia اطلاعات موجود در WikiPedia را به صورت سازماندهی شده استخراج کرده و در دسترس قرار داده است. به منظور استفاده از اطلاعات سازماندهی شده مربوط به فیلمها، یک درخواست براساس عنوان فیلم در زبان SPARQL طراحی و با استفاده از متد PostURL به سرور DBPedia59 ارسال میشود. نمونهای از درخواست طراحی شده در ادامه قابل مشاهده میباشد:
SELECT ?film_title ?star_name ?nameDirector {
{
SELECT DISTINCT ?movies ?film_title
WHERE {
?movies rdf:type
;
rdfs:label ?film_title.
}
}.
?movies dbpedia-owl:starring ?star;
dbpedia-owl:director ?director.
?director foaf:name ?nameDirector.
?star foaf:name ?star_name.
FILTER ( (str(?film_title) IN (“Film Name”))
&&(LANGMATCHES(LANG(?film_title),”en”)))
}
ORDER BY ?film_title
این سرور در جواب، اطلاعات مربوط به فیلم مورد نظر را در قالب XML ارسال میکند. این کار برای تمام فیلمهای موجود در پایگاه داده MovieLens انجام میشود. لازم به ذکر است که اطلاعات استخراج شده برای هر فیلم شامل نام همه کارگردانان و فقط نام بازیگران مهم آن میباشد. اطلاعات مربوط به فیلمهایی که در DBPedia موجود نمیباشد به صورت دستی از سایت WikiPedia60 و در صورت عدم وجود از سایتIMDB61 استخراج میشود. در مواردی که اطلاعات از سایت IMDB استخراج میشود، به طور ثابت نام مربوط به7 بازیگر برتر

ندارند.
PC(u,v)=(?_j??(r_(u,j)-r ?_u ).(r_(v,j)-r ?_v)?)/?(?_j????(r?_(u,j)-r ?_u)?^2.?_j???(r?_(v,j)-r ?_v)?^2 ?) (4)
از فرمول فوق برای اندازهگیری میزان شباهت دو کاربر u و v استفاده میشود. r_(u,j) نشان دهنده امتیازی که کاربر u به قلم j ام اختصاص داده میباشد. r ?_u میانگین کل امتیازهایی که کاربر u به اقلام نسبت داده است میباشد.
فرمول زیر با کمی تغییر شباهت بین دو قلم i و j را اندازهگیری میکند.
PC(i,j)=(?_u??(r_(u,i)-r ?_i ).(r_(u,j)-r ?_j)?)/?(?_j????(r?_(u,i)-r ?_i)?^2.?_j???(r?_(u,j)-r ?_j)?^2 ?) (5)
2-7-2- معیار اندازهگیری کسینوس
معیار شباهت کسینوسی در حوزه بازیابی اطلاعات بسیار رایج است و برای اندازه گیری شباهت بین دو سند به کار میرود [37]. این معیار میزان شباهت دو کاربر (دو قلم) را با استفاده از کسینوس زاویه بین بردارهای امتیازدهی آنها مشخص میکند (فرمول شماره 6). نتیجه حاصل عددی بین 1- و 1 میباشد. هر چه عدد حاصل شده بزرگتر باشد یعنی دو موجودیت مورد مقایسه بیشتر به هم شبیه هستند و هر چه این عدد کوچکتر باشد یعنی دو موجودیت کمتر به هم شبیه هستند.
Cos?(U,V)=(?_(i?r_u?r_v)??r_(u,i) r_(v,j) ?)/?(?_(i?r_u)??r_(u,i)^2 ?_(i?r_v)?r_(v,j)^2 ?) (6)
اگرچه این معیار در حوزه بازیابی اطلاعات به خوبی کار میکند [37,38]اما برای محاسبه شباهت در فیلترینگ اشتراکی کاربر مبنا به خوبی معیار همبستگی پیرسون عمل نمیکند [12].
در این پایان نامه با کمی تغییر از معیار همبستگی پیرسون برای اندازه گیری میزان شباهتها استفاده شده که در فصل 4 به تفصیل توضیح داده شده است.
2-8- انتخاب همسایه
وقتی میزان شباهت تمام کاربران با کاربر فعال به دست آمد هم از نظر صحت و هم از نظر کارایی بهتر است زیر مجموعهای از شبیهترین آنها را انتخاب و با استفاده از آنها امتیاز قلم دیده نشده را پیشبینی کرد [18,34]. برای این کار دو راه استفاده از حد آستانه و انتخاب تعداد ثابتی از همسایگان وجود دارد.
2-8-1- استفاده از حد آستانه
در این روش یک حد آستانه تعیین میشود. کاربرانی که میزان شباهتشان بیشتر یا مساوی با این حد آستانه باشد به عنوان بهترین همسایهها انتخاب میشوند .[9]تعیین این حد آستانه مقداری مشکل میباشد چون در یک مسئله با توجه به کاربران فعال مختلف این حد آستانه باید مدام تغییر کند.
2-8-2- انتخاب تعداد ثابتی از همسایگان
در این روش کاربران با توجه به میزان شباهتشان به کاربر فعال مرتب شده سپسN تا از شبیهترین آنها به عنوان بهترین همسایهها انتخاب میشوند [7] در [16] بیان شده است که انتخاب تعداد ثابتی از همسایگان (معمولا بین 20 تا 60) نسبت به استفاده از حد آستانه منجر به نتیجه بهتری خواهد شد.
در این پایان نامه فقط از روش دوم یعنی انتخاب تعداد ثابتی از همسایگان استفاده شده است.
2-9- پیشبینی و تخمین رتبه
پس از انتخاب همسایهها نوبت به پیشبینی امتیاز قلم دیده نشده میرسد. روشهای متفاوتی برای تخمین رتبه وجود دارد که در اینجا به اختصار به بررسی دو مورد از آنها میپردازیم.
2-9-1- استفاده از امتیازهای خام
r ?_(a,t)=?((?_(v?N_(t(a)))??sim(A , V)r_(v,t) ?)/(?_(v?N_(t(a)))??sim(A , V)?))(7)
با استفاده از فرمول بالا میانگین وزن دارk تا از نزدیکترین همسایهها به کاربر فعال را به دست میآید. وزن هر همسایه معادل با میزان شباهت به دست آمده با استفاده از معیار همبستگی پیرسون میباشد. در نهایت نتیجه به دست آمده امتیاز پیشبینی شده میباشد.
2-9-2- استفاده از امتیازهای نرمال شده
r ?_(a,t)=r ?_a+(?_(v?N_(t(a)))??(r_(v,t)-r ?_v ).sim(A , V)?)/(?_(v?N_(t(a)))??sim(A , V)?) (8)
توسط فرمول بالا این مسئله در نظر گرفته میشود که کاربران مختلف ممکن است بازههای امتیازدهی متفاوتی برای نشان دادن یک درجه اهمیت داشته باشند. در فیلترینگ اشتراکی مبتنی بر کاربر به طور استاندارد از این فرمول برای پیشبینی استفاده میشود .[7]
2-10- مشکلات فیلترینگ اشتراکی
فیلترینگ اشتراکی علاوه بر کاربرد وسیع آن و مزایایی که از آن برخوردار است شامل معایبی نیز میباشد که در ادامه به توضیح تعدادی از آنها میپردازیم.
2-10-1- پراکنده بودن داده50
وقتی ماتریس کاربران – اقلام پراکنده و سایز آن بزرگ باشد این مشکل به وجود میآید. کاربرانی هستند که به همه اقلام امتیاز ندادهاند و تنها به تعداد کمی از آنها امتیاز دادهاند. بنابراین اقلامی وجود دارند که به اندازه کافی امتیازدهی نشدهاند. در این حالت اندازهگیری شباهت روی تعداد امتیازهای ابراز شده اندکی صورت میپذیرد که قابل اعتماد نمیباشد. یکی از مشکلاتی که به دلیل پراکنده بودن داده به وجود میآید شروع سرد است. یعنی برای کاربری که به تازگی وارد سیستم شده و به اندازه کافی امتیازی به اقلام نداده است نمیتوان پیشنهاد قابل اعتمادی ارائه کرد. همچنین قلم جدیدی که وارد سیستم میشود نیز همین مشکل را دارد. اقلامی که به اندازه کافی امتیاز دریافت نکردهاند برای پیشنهاد قابل اعتماد نمیباشند. به عنوان مثال Movielens برای اجتناب از بروز چنین مشکلی برای کاربران جدید شرط امتیاز دهی به حداقل 15 قلم را در نظر گرفته است.
پژوهشهای زیادی برای رفع این مشکل انجام شده است. که بسیاری از آنها از روشهای موجود در مدل محتوا محور برای پر کردن خانههای بدون رتبه ماتریس امتیازدهی استفاده میکنند .[39,40,41,42,43]
2-10-2- مقیاس پذیری51
با زیاد شدن تعداد کاربران و اقلام منابع محاسباتی برای برطرف کردن درخواستهای جدید با کمبود مواجه میشود.
2-10-3- اقلام مشابه52
بعضی اقلام شبیه به هم هستند ولی به دلیل تفاوت در نامشان سیستم پیشنهادگر یکسان بودن آنها را نمیتواند تشخیص دهد. بنابراین با آنها به طور متفاوت برخورد میکند.
2-10-4- گری شیپ53
کاربرانی هستند که سلیقهشان موافق یا مخالف با هیچ گروه از کاربران نمیباشد. بنابراین سیستم پیشنهادگر فیلترینگ اشتراکی نمیتواند هیچ منفعتی به آنها برساند.
2-11- بررسی چگونگی کارکرد و تولید پیشنهاد سایت آمازون
سایت آمازون یکی از معروفترین سایتهای تجارت الکتونیک میباشد که در سال 1995 فعالیت خود را با فروش بر خط کتاب شروع کرد و اکنون در آن محصولاتی مانند ساعت، کتاب، سی دی، تلویزیون و… به فروش میرسد.
آمازون از متد فیلترینگ اشتراکی استفاده میکند و پیشنهادات را بر اساس اقلام تولید میکند. زیرا تعداد اقلام از تعداد کاربران به نسبت کمتر است. روند کار آمازون به این صورت است که لیست اقلام دیده شده توسط هر کاربر در یک ماتریس ذخیره میشود. سپس با استفاده از معیار شباهت کسینوس میزان شبیه بودن بردارهای اقلام در این ماتریس محاسبه میگردد. بعد از آن شبیهترین اقلام به اقلامی که کاربر تا کنون دیده است به او پیشنهاد میشود. نسخه سادهای از چگونگی تولید پیشنهاد در (شکل شماره 8) قابل مشاهده میباشد.
شکل شماره 8: روند تولید پیشنهاد در آمازون [44]
همانطور که مشاهده میکنید کاربر 3 اخیرا به سیستم وارد شده و قلمA را مشاهده کرده است. سیستم میزان شباهت بردار قلم َA را با سایر اقلام BوC و D با استفاده از معیار کسینوس به دست میآورد و شبیهترین اقلام که در اینجا B و C میباشند را به او پیشنهاد میکند.
در (شکل شماره 9) صفحهای از سایت آمازون قابل مشاهده است. در این صفحه کاربر میتواند با کلیک روی لینک Your Recommendation وارد صفحهای شود که میتواند پیشنهاداتی که به او ارائه میشود را توسط موضوع و خط تولید مورد دلخواهش فیلتر کند. همچنین میتواند محصولاتی که قبلا خریداری نموده یا به او پیشنهاد شده است را امتیازدهی کند[45] .
شکل شماره 9 : نمونه صفحهای از سایت آمازون[45]
(شکل شماره 10) ارائه پیشنهاد بر اساس کارت خرید مشتری را نشان میدهد. یعنی بر اساس محصولاتی که تا کنون خریداری نموده است برای او پیشنهاد تولید میشود [45].
شکل شماره 10: ارائه پیشنهاد بر اساس کارت خرید مشتری [45]
فصل سوم
روش محتوا محور
3- روش محتوا محور
3-1-پیشگفتار
در این پایان نامه از روش محتوا محور جهت ارتقاء روش فیلترینگ اشتراکی استفاده شده است. روش محتوا محور بر اساس ویژگیهای اقلام تعریف میشود. این روش بررسی میکند که اقلام مورد علاقه کاربر دارای چه خصوصیاتی بودهاند، سپس اقلام دارای خصوصیات مشابه را به او پیشنهاد میکند. محتوای اقلام بر حسب نوع آنها میتواند متفاوت باشد. مثلا ژانر فیلم، نوع کتاب و مختصات جغرافیایی رستوران را به ترتیب به عنوان محتوای اقلام فیلم، کتاب یا رستوران در نظر گرفت. به عنوان مثال اگر اکثر فیلمهایی که کاربر دیده است متعلق به ژانر مستند باشند بدین معناست که او به این گونه فیلمها علاقهمند است.
سیستمهای محتوا محور نیاز به تکنیکی جهت نمایش خصوصیات اقلام، ایجاد نمایه از کاربر بر اساس علاقهمندیهایش و یک استراتژی جهت مقایسه نمایه کاربر با خصوصیات اقلام میباشد.
3-2- روند کار روش محتوا محور
روند کار سیستمهای محتوا محور به این صورت است که ابتدا براساس نحوه امتیازدهی کاربر به اقلام مختلف، نمایهای از علائق او ساخته میشود. سپس بر اساس میزان تطابق خصوصیات اقلام با نمایه ساخته شده از کاربر، پیشنهادها به کاربر ارائه میشود.
ساختار سیستمهای پیشنهادگر محتوا محور در شکل زیر نشان داده شده است.
شکل شماره 11: روند کار روش محتوا محور [24]
همانگونه که در شکل بالا قابل مشاهده است روند کار در متد محتوا محور متشکل از سه مرحله به شرح زیر می باشد [24]:
3-2-1- تحلیلگر محتوا (Content Analyzer)
در این مرحله محتوای اقلام نشان داده میشود. بدین منظور معمولا از تکنیکهای بازیابی اطلاعات استفاده میشود. اطلاعات توصیفی سازماندهی نشده مربوط به اقلام از قسمت منبع اطلاعات (Information Source) استخراج شده و در این مرحله سازماندهی میشود. یعنی هر قلم توسط اطلاعات سازماندهی شده نمایش داده میشود. مثلا اگر سیستم پیشنهادگر مربوط به فیلم باشد هر فیلم میتواند توسط ویژگیهای مربوط به بازیگران، کارگردانان و…. نمایش داده شود. یا اگر سیستم پیشنهادگر مربوط به صفحه وب باشد هر صفحه وب میتواند توسط برداری از کلمات کلیدی نمایش داده شود. به این صورت که ریشه کلمات به عنوان خصوصیات و مقدار tf/idf مربوط به هر ریشه به عنوان مقدار آن در نظر گرفته شود.
نتیجه حاصل شده از این مرحله در قسمت اقلام نمایش داده شده
(Represented Items) ذخیره میشود.
3-2-2- یاد گیرنده نمایه (Profile Learner)
در این مرحله بر اساس عکس العملی که کاربر در برابر اقلام مختلف نشان داده و در قسمت بازخورد (Feedback) ذخیره شده است، نمایهای از علائق او ساخته میشود. این کار معمولا توسط تکنیکهای موجود در حوزه یادگیری ماشین

موجود در گروه موردنظر اشتراک گرفته میشود. حاصل یک مجموعه مشترک از همسایگان برای تمام کاربران موجود در گروه میباشد. سپس با استفاده از این همسایگان مشترک قلم یا اقلامی به گروه مذکور پیشنهاد میگردد.
در [18] یک معیار جدید برای اندازهگیری میزان شباهت کاربران در سیستمهای فیلترینگ اشتراکی ارائه شده است. در این روش مشکل اختلاف ابعاد بین بردارهای امتیازدهی کاربران حل شده است. به بیان دیگر میزان شباهت دو کاربر با توجه به تعداد اقلامی که هر دو به آنها رای دادهاند تعیین میگردد. در صورتی که واحدهای اندازهگیری مانند همبستگی پیرسون این اختلاف ابعاد را در نظر نمیگیرند.
در [19]راهکاری جدید برای فیلترینگ اشتراکی مبتنی بر حافظه ارائه شده است. در این روش پیشنهاد اقلام مستقل از بازه امتیازات کاربر و بر اساس احتمال38 پیشبینی است و بررسی شده است که چطور این احتمالات میتوانند برای جمع آوری انواع مختلف وابستگیها-ی بین امتیازها در راستای انتخاب نزدیکترین همسایهها مورد استفاده قرار گیرند. در این روش معیار انتخاب همسایگی به توانایی کاربر در پیشبینی امتیازهای گذشته بستگی دارد. فرضیه این بوده است که اگر کاربری در پیشبینی امتیازهای گذشته کاربر مورد نظرخوب بوده است در آینده هم برای پیشبینی امتیازهای او خوب خواهد بود.
در [20] یک راهکار مبتنی بر هسته ارائه شده است. ایده اصلی این راهکار یافتن یک نگاشت چند خطی بین دو فضای برداری است. این راهکار بر اساس کاربران و بر اساس اقلام و همچنین تلفیق این دو مورد ارائه شده است. همچنین نشان داده شده است که چگونه میتوان اطلاعات تکمیلی نظیر ژانر فیلمها را در این راهکار استفاده و چگونه پیشنهاداتی قابل اعتماد با وجود مشکلاتی مانند پراکندگی و شروع سرد به کاربران ارائه نمود.
2-3- مبانی فیلترینگ اشتراکی
فیلترینگ اشتراکی یکی از بهترین راهکارها در سیستمهای پیشنهادگر میباشد. این روش به خاطر استفادهاش در سایتهای تجارت الکترونیک مانند AMAZOONو NETFLIX به خوبی شناخته شده است. این متد کاربرانی که علائقشان شبیه به کاربر فعال میباشند را پیدا کرده و از این طریق پیشنهادات را به او ارائه میدهد. یعنی فرض بر این است که کاربرانی که در گذشته تمایلاتی شبیه به هم داشتهاند احتمالا در آینده هم تمایلات مشابه دارند و چون قبلا به اقلام به طور مشابه ابراز علاقه کردهاند به اقلامی که تا کنون ندیدهاند نیز به طور مشابه علاقه نشان خواهند داد. فیلترینگ اشتراکی معمولا به مشارکت داشتن کاربران فعال، راهی برای نشان دادن سلیقه کاربران به سیستم و الگوریتمی که کاربران با سلیقه مشابه را شناسایی کند نیازمند میباشد.
به طور کلی فضای اطلاعاتی در فیلترینگ اشتراکی مبتنی بر یک ماتریس M * N است که ماتریس کاربران – اقلام نام دارد. M نشان دهنده تعداد کاربران و N نشان دهنده تعداد اقلام میباشد. همانطور که در (شکل شماره 5) مشاهده میکنید rm,n نشان دهنده نمرهای میباشد که کاربر m ام به قلم n ام اختصاص داده است.
شکل شماره 5 : ماتریس امتیازدهی کاربران- اقلام
2-4- وظایف فیلترینگ اشتراکی
وظایف فیلترینگ اشتراکی به دو دسته ارائه پیشنهاد به کاربران و پیشبینی امتیاز اقلام دیده نشده تقسیم میشوند که در ادامه هر کدام را به تفکیک توضیح خواهیم داد.
2-4-1- پیشنهاد
در این حالت لیستی از اقلام به کاربران ارائه میشود که بر حسب میزان مفید بودنشان برای کاربر مرتب شدهاند. یعنیN مورد از بهترین پیشنهادات را به او ارائه میدهد. برای تولید پیشنهاد، اطلاعات مربوط به تمام اقلام نیاز نمیباشد.
2-4-2- پیشبینی
در این حالت پیشبینی میشود که کاربر به قلمی که تا کنون ندیده است چه امتیازی خواهد داد. برای پیشبینی اطلاعات مربوط به تمام اقلام حتی آنهایی که به ندرت امتیازدهی شدهاند مورد نیاز است. همچنین الگوریتمهایی که سیستم برای پیشبینی به کار میبرد به حافظه و زمان محاسباتی بیشتری نسبت به الگوریتمهای تولید پیشنهاد نیاز دارد.
2-5- دسته بندی متدهای فیلترینگ اشتراکی
متدهای فیلترینگ اشتراکی به دو گروه کلی فیلترینگ اشتراکی مبتنی بر همسایگی39 یا مبتنی بر حافظه40 و فیلترینگ اشتراکی مبتنی بر مدل41 تقسیم میشوند.[12]
الگوریتمهای موجود در گروه فیلترینگ اشتراکی مبتنی بر همسایگی یا مبتنی بر حافظه نسبت به الگوریتمهای موجود در فیلترینگ اشتراکی مبتنی بر مدل رایجتر میباشند اما قابل ذکر است که این الگوریتمها نیازمند حافظه بیشتری هستند. از نظر کارایی الگوریتمهای موجود در گروه مدل محور نتایج قابل توجهی را ارائه میدهند. اما از نظر دقت به جز تحقیقات اخیر[21] نتایج خوبی به دست نیاوردهاند. الگوریتمهای حافظه محور به طور عمده بر الگوریتم KNN استوار میباشند.
از تلفیق دو دسته مدل محور و حافظه محور مدل تلفیقی به وجود میآید که هدف آن تلفیق مزیت هر دو دسته است . [22]هم اکنون تحقیقات در راه پیشروی به سمت مدل تلفیقی میباشد .[23]
در راهکار مبتنی بر حافظه پیشبینی به دو صورت براساس کاربران و براساس اقلام انجام میپذیرد .[24]اختلاف نظرهایی در مورد اینکه پیشبینی بر اساس اقلام مبتنی بر حافظه و یا مبتنی بر مدل است وجود دارد ؛ در [25] اعلام شده است که الگوریتمهای بر اساس اقلام همیشه مبتنی بر حافظه هستند و در [26] این الگوریتمها بر اساس مدل کلاس بندی شدهاند.
2-5-1- فیلترینگ اشتراکی مبتنی بر حافظه
در فیلترینگ اشتراکی مبتنی بر همسایگی یا مبتنی بر حافظه سرتاسر ماتریس کاربران – اقلام بررسی میشود (شکل شماره 6). در این ماتریس که در حافظه ذخیره شده است امتیازهایی که کاربران به اقلام مختلف دادهاند وجود دارد. این ماتریس به صورت مستقیم برای پیشبینی نمره اقلامی که تا کنون هیچ امتیازی دریافت نکردهاند به کار میرود [19]. یعنی این محاسبات به صورت برون خط42 انجام نمیپذیرد و همه چیز به صورت بر خط انجام میشود و همواره کل دادهها مورد نیاز میباشد. مزیت این روش این است که در هر زمان کل اطلاعات در دسترس میباشد اما با بزرگ شدن ماتریس یعنی تعداد کاربران و اقلام، فضای جستجو، حافظه مورد نیاز و زمان محاسبه افزایش مییابد.
همانطور که گفته شد در راهکار مبتنی بر حافظه پیشبینی به دو صورت پیشبینی بر اساس کاربران43 و پیشبینی براساس اقلام44 انجام میشود.
2-5-1-1- فیلترینگ اشتراکی مبتنی بر حافظه با پیش بینی براساس کاربران
در سیستمهای مبتنی برکاربر پیشبینی بر اساس ارزیابی امتیازهایی که توسط کاربران مشابه با کاربر فعال به اقلام مورد نظر تخصیص یافته انجام میپذیرد [27]. کاربران شبیه آنهایی هستند که الگوی امتیازدهیشان شبیه به کاربر فعال باشد (شکل شماره 6(.
یکی از چالشهای اصلی در این مدل نحوه پیدا کردن میزان شباهت بین کاربران میباشد. زیرا با استفاده از معیار شباهت شبیهترین همسایگان به کاربر فعال انتخاب و در پیشبینی استفاده میشوند.
2-5-1-2- فیلترینگ اشتراکی مبتنی بر حافظه با پیش بینی براساس اقلام
سیستمهای مبتنی بر اقلام امتیاز یک قلم خاص را بر اساس امتیازهایی که کاربر به اقلام مشابه داده است پیشبینی میکنند [28] . دو قلم در صورتی به هم شبیه هستند که چند کاربر به طور مشابه به آنها رای داده باشند (شکل شماره 7).
شکل شماره 6: فیلترینگ اشتراکی مبتنی بر قلم شکل شماره 7 : فیلترینگ اشتراکی مبتنی بر کاربر
2-5-1- 3- تفاوت فیلترینگ اشتراکی بر اساس کاربران و بر اساس اقلام
فیلترینگ اشتراکی بر اساس اقلام زمانی به کار میرود که روند افزایش اقلام کندتر از روند افزایش کاربران باشد [28]. ولی در زمانی که روند افزایش اقلام سریعتر از روند افزایش کاربران باشد فیلترینگ اشتراکی بر اساس کاربران به کار می رود .[29] به عنوان مثال اگر اقلامی مانند اخبار، مورد پژوهش باشد استفاده از روش قلم مبنا نامناسب خواهد بود و در صورتی که از این روش به عنوان مدل محور استفاده گردد به علت افزایش بسیار سریع اقلام مشکل سربار زیاد محاسباتی برای به روز رسانی مدل به وجود خواهد آمد. بر عکس اگر اقلامی مانند فیلم یا کتاب مورد پژوهش باشد استفاده از این روش مناسب خواهد بود.
2-5-2- فیلترینگ اشتراکی مبتنی بر مدل
برخلاف سیستمهای مبتنی بر حافظه که امتیازهای ذخیره شده را به طور مستقیم درپیشبینی به کار میبرند، سیستمهای مبتنی بر مدل از این امتیازها برای یادگیری یک مدل پیشبینی استفاده میکنند. یعنی پارامترهای مدل به صورت برون خطی یاد گرفته میشوند و دیگر نیازی نیست که هر بار ماتریس امتیازدهی کاربران- اقلام بررسی شود. این مدل بر اساس دادههای موجود آموزش45 داده میشود و در آینده برای پیشبینی امتیازهایی که کاربران به اقلام جدید خواهند داد به صورت روی خط به کار میرود [4]. به همین دلیل نسبت به فیلترینگ اشتراکی مبتنی بر حافظه از سرعت بیشتری برخوردار است. این مدل میتواند یک الگوریتم یادگیری ماشین46 یا داده کاوی47 باشد [30]. در گذشته الگوریتمهای موجود در حوزه یادگیری ماشین مانند شبکههای بیز48 [8] و خوشه بندی49 [31,32] بسیار مورد توجه بودهاند .[28] اگر چه امروزه الگوریتمهای فاکتورسازی ماتریس بسیار مورد توجه واقع شدهاند اما همچنان الگوریتمهای خوشه بندی جایگاه خود را حفظ کردهاند.
2-6- نحوه تشخیص علائق کاربران
تشخیص میزان علائق کاربران نسبت به اقلام متفاوت یکی از مهمترین وظایف فیلترینگ اشتراکی میباشد. هر بار که کاربری در مورد قلمی خاص ابراز علاقه میکند مقدار جدیدی در نمایه او اضافه میشود. به دو صورت صریح و ضمنی میتوان علائق کاربر را استخراج نمود.
2-6-1- تشخیص علائق به صورت صریح
برای این منظور سیستمهای پیشنهادگر تمایلی که کاربر به صورت واضح و آشکار نسبت به محصولات نشان میدهد مثل نمرههایی که به اقلام نسبت داده است را در یک پایگاه داده جمع آوری میکند. کاربر میتواند علائق خود را به طور صریح در غالب تک بیتی باینری یک و صفر به معنای خوب و بد و یا به صورت بازهای از اعداد که نشان دهنده میزان تمایل کاربر به قلم است نشان دهد. .به عنوان مثال اگر بازه امتیازدهی، اعداد 1 تا 5 باشد نسبت دادن امتیاز 1 از سوی کاربر به معنای عدم علاقه و اختصاص دادن امتیاز 5 به معنای علاقه کاربر به قلمی خاص میباشد [7,9].
2-6-2- تشخیص علائق به صورت ضمنی
برای این منظور سیستم به صورت ضمنی بعضی رویدادها مثل حرکت اشارهگر به سمت محصولی خاص را در نظر میگیرد [24]. در این روش کاربر تمایلاتش را به طور صریح و در قالب امتیاز نشان نمیدهد بلکه از رفتارش علائقاو محاسبه میشود .[33,34,35,36]
این پایان نامه فقط بر استنباط علائق به طور صریح متمرکز شده است. یعنی تمایلات کاربران باید به صورت نسبت دادن امتیاز به اقلام مشخص شده باشد.
2-7- محاسبه شباهت
برای پیشبینی یا ارائه پیشنهاد توسط فیلترینگ اشتراکی میبایست شبیهترین کاربران به کاربر فعال را پیدا کرد و به عنوان مجموعه همسایگی کاربر فعال در نظر گرفت. برای اندازهگیری میزان شباهت بین دو کاربر راهکارهای متفاوتی ارائه شده است که در اینجا دو مورد از معیارهای شباهت رایج که در فیلترینگ اشتراکی استغاده میشوند را معرفی میکنیم.
2-7-1- معیار همبستگی پیرسون
این معیار میزان وابستگی بین الگوهای امتیازدهی دو کاربر (دو قلم) را میسنجد (فرمول شماره 4). نتیجه حاصل از این فرمول عددی بین 1 و 1- میباشد. عدد 1 نشان دهنده بیشترین شباهت، 1- نمایانگر کمترین شباهت میباشد و اگر نتیجه عدد 0 باشد یعنی دو موجودیت مورد مقایسه با هم هیچ ارتباطی

کاربر فعال پیشنهاد میکند. کاربر لیست پیشنهاد شده از سوی سیستم را مشاهده کرده و فیلمهای مورد علاقهاش را انتخاب میکند (شکل شماره 4).
شکل شماره 2 : نمونه صفحهای از سایت Movielens [5]
شکل شماره 3: نمونه صفحه درخواست امتیازدهی Movielens از کاربر [5]
شکل شماره 4 : نمونه صفحه فیلمهای پیشنهادی از سوی Movielens به کاربر [5]
1-5- اهداف پایان نامه
روشهای محتوا محور و فیلترینگ اشتراکی از راهکارهای موفق در سیستمهای پیشنهادگر میباشند. روش محتوا محور بر اساس ویژگیهای اقلام تعریف میشود. این روش بررسی میکند که اقلام مورد علاقه کاربر دارای چه ویژگیهایی بودهاند، سپس اقلام دارای ویژگیهای مشابه را به او پیشنهاد میکند. روش فیلترینگ اشتراکی بر اساس تعیین اقلام مشابه یا کاربران مشابه کار میکند که به ترتیب فیلترینگ اشتراکی مبتنی بر اقلام و مبتنی بر کاربران نامیده میشود.
روش پایه فیلترینگ اشتراکی مبتنی بر کاربر، به منظور پیشبینی امتیاز قلم هدف، هیچ تمایزی بین اقلام قائل نمیشود. به عبارت دیگر امتیازهای تمامی اقلام به طور یکسان در انتخاب همسایگی (کاربران مشابه) و پیشبینی تاثیر میگذارند. در این پایان نامه یک سیستم پیشنهادگر فیلترینگ اشتراکی مبتنی بر کاربر، مجهز به مکانیزم تخصیص پویای وزن به اقلام، ارائه شده است. مبنای این مکانیزم، تخصیص وزن به اقلام بر اساس میزان شباهت آنها با قلم هدف میباشد. میزان شباهت اقلام توسط یک روش محتوا محور سنجیده میشود. از آنجا که پایگاه داده مورد استفاده در این پایان نامه مربوط به فیلم است، برای بالا بردن کارایی این روش علاوه بر استفاده از ویژگی ژانرها، از ویژگیهای دیگری از جمله کارگردانان و بازیگران به عنوان دادههای مکمل استفاده شده است.
1-6- ساختار پایان نامه
از آنجا که اساس روش پیشنهادی در این پایان نامه فیلترینگ اشتراکی میباشد در فصل دوم به تفصیل به شرح این روش و تاریخچهای از کارهای انجام شده در این زمینه پرداخته میشود.
پس از آن به دلیل استفاده از روش محتوا محور به جهت ارتقا روش فیلترینگ اشتراکی، مبانی این روش در فصل سوم توضیح داده میشود.
در فصل چهارم روش پیشنهادی که تلفیقی از روشهای فیلترینگ اشتراکی و محتوا محور میباشد و کارهای انجام شده در این زمینه ارائه میشود.
در فصل پنجم آزمایشهای انجام شده بر روش پیشنهادی و نتایج حاصل از این آزمایشها ارائه میگردد.
در فصل ششم به جمعبندی مطالب، نتیجهگیری و ارائه پیشنهادهایی برای آینده پرداخته میشود.
فصل دوم
روش فیلترینگ اشتراکی
2- روش فیلترینگ اشتراکی
2-1- پیشگفتار
این پایان نامه بر فیلترینگ اشتراکی که نوعی از سیستمهای پیشنهادگر میباشد متمرکز شده است. این نوع از سیستم های پیشنهادگر نقش قابل توجهی را در پیدا کردن سلیقه و علائق کاربر ایفا میکند. انگیزه پیدایش فیلترینگ اشتراکی از اینجا به وجود آمد که مردم معمولا بهترین پیشنهادات را از کسانی میگیرند که سلیقهشان مشابه با خودشان است. این متد، کاربران با سلیقه شبیه به هم را پیدا میکند و بر این اساس پیشنهادات را ارائه میدهد.
2-2- مروری بر کارهای انجام شده در این راستا
در [6] اولین سیستم پیشنهادگر رسمی که tapestry نامیده میشود ارائه شد. این یک سیستم برای مدیریت ایمیل بود و تصدیق کرد که یک لیست ایمیل ساده نمیتواند به تمام کاربرانی که علاقهمند به محتوای یک ایمیل هستند اطمینان دریافت آن را بدهد. بنابراین به کاربران اجازه شرح پیام ایمیلها را داد تا دیگران با ساختن پرسش بتوانند آنها را فیلتر کنند. اندکی بعد محققان دریافتند که این لیست ایمیل و فیلترینگ بر اساس محتوا در رابطه با نیازهای اطلاعاتی پیچیده کاربر کافی نیست. بنابراین، این عقیده مطرح شدکه سیستم با به کاربردن عامل انسان ارتقاء خواهد یافت. عبارت فیلترینگ اشتراکی به منظور توصیف اینکه چطور کاربران میتوانند با تولید کردن بازخورد به فیلترینگ پیام ها کمک کنند به کار برده شد. این بازخورد شامل ارسال، دریافت پیام و … میباشد.
در [7]تحقیق در مورد فیلترینگ اشتراکی با استفاده از الگوریتم مبتنی بر همسایگی برای اخبارUsenet انجام شده است. قابل ذکر است که Usenet نوعی شبکه اینترنتی میباشد. این کار توسط سیستمی که GroupLensنامیده میشود انجام پذیرفت[8] . GroupLens که سیستمی پیشنهادگر بر اساس کاربر است به منظور ارزیابی و پیشنهاد دادن اقلام به کاربر از امتیازهای 1 تا 5 که دیگر کاربران به این اقلام نسبت دادهاند استفاده میکند. اکنون MovieLens که یک سیستم پیشنهادگر فیلم است راهاندازی شده است. سیستم Grouplens از معیار همبستگی پیرسون27 برای نشان دادن میزان شباهت کاربران به یکدیگر استفاده میکند (فرمول شماره 1).
p_(a,i)=¯r_a+?((?_(u=1)^n??[?(r?_(u,i) ?-r ??_u)*w_(a,u)]?)/(?_(u=1)^n?w_(a,u) )) (1)
? p?_(a,i) نشانگر امتیاز پیشبینی شده برای قلم i ام میباشد. n تعداد همسایهها را نشان میدهد، ? r?_(u,i)امتیاز کاربر uبه قلم iام و r ?_aمیانگین امتیازهای کاربر فعال میباشد. w_(a,u) میزان شباهت بین کاربر فعال و همسایه u را نشان میدهد که به صورت همبستگی پیرسون در فرمول شماره 2 تعریف شده است.
w_(a,u)=(?_(i=1)^m?[(r_(a,i)-r ?_a )(r_(u,i)-r ?_u )] )/?(?_(i=1)^m???(r_(a,i)-r ?_a)?^2 ?_(i=1)^m??(r_(u,i)-r ?_u)?^2 ?) (2)
در سال 1996 تکنولوژی GroupLens تحت NetPerceptionبه صورت تجاری درآورده شد. یکی از اولین کاربران تجاری GroupLens سرویس الکترونیکی خرده فروشی آمازون بود که به عنوان فروشگاه کتاب برخط راه اندازی شد.
در [9]سیستم پیشنهادگر موزیک 28Ringoبراساس الگوریتم اصلی Grouplens توسعه یافت. Ringo اقلام را بر اساس امتیازهایی که کاربران مشابه به آنها داده بودند فیلتر میکرد. زمانی که کاربر در سیستم ثبت نام مینمود یک لیست از 125 موسیقیدان محبوب که به طور تصادفی انتخاب شده بودند را در اختیار او قرار میداد و از کاربر میخواست که به اعضای این لیست امتیازهای بین 1 تا 7 بدهد. سپس ازکاربر یک نمایه میساخت. Ringo میزان شباهتها را با استفاده از همبستگی پیرسون محدود شده محاسبه کرد و برای تولید پیشنهاد میانگین تمامی کاربران موجود در همسایگی را به کار برد و مدعی کارایی بهتر شد. همانطور که در فرمول شماره 3 نشان داده شده است عدد 4 به این دلیل انتخاب شده که حد وسط بازه امتیازهای 1 تا 7 است. Ringo عضویت در همسایگی را فقط با انتخاب همسایگانی که همبستگی آنها بیشتر از یک حد آستانه ثابت است محدود کرد. با بزرگتر شدن حد آستانه دقت بیشتر میشود ولی تعداد اقلامی که سیستم پیشنهادگر قادر به پیشبینیشان است کاهش مییابد.
w_(a,u)=(?_(i=1)^m??[(? r_(a,i)-4)(r_(u,i)-4)])/?(?_(i=1)^m??(r_(a,i)-4)^2 ?_(i=1)^m??(?r_(u,i)-4)?^2 ??) (3)
به تدریج این سیستم به صورت تجاری در آورده شد و در سال 1995 نام آن به Firefly تغییر یافت. این سیستم حاوی یک رابط به صورت صفحه وب و فروشگاه دیسک فشرده29 رویخط بود و همچنین قادر بود برای انواع فیلم پیشتهاد تولید کند. این سیستم گسترش وسیعی کرد تا جایی که درسال 1998 توسطMicrosoft پذیرفته شد و به
Microsoft Passport تغییر یافت.
در [10]سیستم پیشنهادگر ویدیو 30Bellcoreنیز بر اساس الگوریتم اصلی Grouplens توسعه یافت. سیستم پیشنهادگر ویدیو Bellcore از همبستگی پیرسون برای وزندهی تعدادی از همسایهها که به طور تصادفی انتخاب شده بودند استفاده نمود. سپس بهترین همسایگان را انتخاب و برای پیشبینی یک رگرسیون31 کامل چندگانه روی آنها اعمال کرد.
مهمترین اتفاق اخیر در رابطه با سیستمهای پیشنهادگر اعلام جایزهی Netflix در اواخر سال 2006 بوده است.Netflix انجمن کرایه DVDاز آمریکا، پایگاه دادهای از امتیازهایی که کاربران به فیلمها اختصاص دادهاند منتشر کرد که به روز بود و همچنان به عنوان بزرگترین مجموعه امتیازدهی کاربران باقی مانده است. آنها اجتماع وسیعی را برای بهترکردن پیشبینی سیستمشان به میزان حداقل 10% به رقابت طلبیدند و جایزه یک میلیون دلاری برای آن درنظر گرفتند. بیشتر از 20000 تیم درطی 3 سال به این موضوع پرداختند و طی این رقابت مسائلی ازقبیل فاکتورگیری ماتریس32، متدهای جمعی33 و دینامیکهای موقتی34 یاد گرفته شد[11] .
در [12] یک تحلیل تجربی روی الگوریتمهای فیلترینگ اشتراکی مبتنی بر همسایگی انجام شد. برای تعیین میزان شباهت معیارهای همبستگی پیرسون و کسینوس35 با هم مقایسه شدند و دریافته شد که همبستگی پیرسون بهتر کار میکند. اگرچه پس از آن در [12] اظهار شد که این دو معیار ممکن است یکسان عمل کنند.
در [13] راهکار امید بخش تشخیص هویت36 برای سیستمهای فیلترینگ اشتراکی ارائه شده که مدل Bayesian و روشهای مبتنی بر همسایگی را ترکیب میکند. خصوصیت خوبی که این راهکار دارد این است که یک توزیع احتمالی از امتیاز به جای مقدار واقعی امتیاز تولید میکند. این توزیع میتواند برای مشخص کردن میزان اعتماد به پیشبینی استفاده شود. همچنین ادعا شده است که این راهکار برای دادههای فیلم که شبیه به دادههایی است که ما در پژوهشها استفاده میکنیم در انتخاب نزدیکترین همسایهها دقیقتر از همبستگی عمل میکند.
در [14] روشی ارائه شده که با استفاده از آن میتوان پارامترهای مربوط به فیلترینگ اشتراکی را برای هر کاربر شخصیسازی کرد. از جمله این پارامترها تعداد افرادی میباشد که در گروه همسایگی هر کاربر شرکت میکنند. این کار توسط شبیهسازی تکراری مجموعه دادههای آموزشی و درستی سنجی برای هر کاربر بهطور جداگانه صورت میگیرد.
در [15] روشی برای حل مشکل پراکندگی امتیازها در ماتریس کاربران- اقلام ارائه شده است. این مشکل زمانی به وجود میآید که تعداد اقلام بدون امتیاز بسیار بیشتر از تعداد اقلام امتیازدهی شده باشد. در این روش ابتدا مدلهایی از فیلترینگ اشتراکی به کار برده میشوند تا امتیازهای اقلام بدون امتیاز پیشبینی شوند. سپس با استفاده از نتایج حاصل شده امتیاز قلم مورد نظر با اطمینان بیشتر تعیین میگردد.
در [16]راه حلی برای مشکل شروع سرد37 در سیستمهای فیلترینگ اشتراکی ارائه شده است. مشکل شروع سرد زمانی به وجود میآید که سیستم بخواهد برای کاربری جدید که تا کنون امتیازی به اقلام نداده و یا قلمی جدید که تا کنون امتیازی از کاربران دریافت نکرده پیشبینی نماید. این روش به جای استفاده از بردار امتیازدهی به تنهایی، از ترکیب خطی یا آبشاری بردارهای شخصیت و بردارهای امتیازدهی برای تعیین میزان شباهت کاربران به یکدیگر استفاده میکند. بردار شخصیت، برداری دو قطبی است که هر مولفه آن تعیین کننده یک خصوصیت از شخصیت کاربر مورد نظر میباشد.
در [17] راهکاری ارائه شده که توسط آن میتوان به گروهی از کاربران گروهی از اقلام را پیشنهاد کرد. در سیستمهای فیلترینگ اشتراکی معمولی اقلامی که برای پیشنهاد به هر کاربر میتوانند مناسب باشند به طور جداگانه مشخص و سپس از نتایج حاصل شده اشتراک گرفته میشود. در روش پیشنهاد شده از نزدیکترین همسایگان تمامی کاربران

گستر1 موجب شده است که در رابطه با هر موضوع قابل تصور، حجم بسیار زیادی از اطلاعات وجود داشته باشد که کاربران2 بتوانند با استفاده از آن نیاز اطلاعاتی خود را برطرف سازند. افزایش روز افزون اطلاعات باعث شد که مشکل سربار اطلاعات3 به وجود آید و کاربران به تنهایی قادر به برطرف کردن نیازهای خود نباشند. . زیرا کاربران مجبور بودند به صورت بر خط4 تمامی صفحات را جستجو کنند تا بتوانند آن قسمتی را که مورد نیازشان است پیدا کنند. به همین دلیل موتورهای جستجوگر5 به وجود آمدند تا کاربران بتوانند با استفاده از آنها بدون نیاز به بررسی تعداد زیادی از صفحات به اطلاعات مورد نظرشان دسترسی پیدا کنند.
1-2- موتورهای جستجوگر
به عبارت دیگر یک موتور جستجوگر وب سایتی است که میتوان از آن برای پیدا کردن صفحات وب استفاده کرد. وقتی کاربر درخواست خود را در قالب کلمات کلیدی وارد موتور جستجوگر میکند موتور جستجوگر در بین بیلیونها صفحه وب جستجو کرده و به کاربر کمک میکند اطلاعاتی که به دنبال آن است را بیابد. با استفاده از این ابزار سرعت و دقت در جستجو بسیار افزایش یافت و کاربران توانستند به سادگی و در کمترین زمان به بهترین نتایج دست یابند.
انواع زیادی از موتورهای جستجوگر توسط کمپانیهای مختلف ساخته شده است که معروفترین آنها بینگ6، یاهو7 و گوگل8 میباشد (شکل شماره 1).
هر موتور جستجوگر راه و روش خود را برای سازماندهی اطلاعات دارد، پس نتیجه از یک موتور جستجوگر تا دیگری متفاوت خواهد بود.
موتورهای جستجوگر به دو دسته کلی تقسیم میشوند : موتورهای جستجوگر پیمایشی9 و فهرستهای تکمیل دستی10. موتورهای جستجوگر ترکیبی11 نیز حاصل ترکیب دو نوع بالا میباشند. گونهای جدید از موتورهای جستجوگر نیز تحت عنوان ابر جستجوگرها12 وجود دارد که در ادامه به طور خلاصه به توضیح هر کدام از این موارد خواهیم پرداخت.
1-2-1- موتورهای جستجوگر پیمایشی
این موتورهای جستجوگر، وب را پیمایش و اطلاعاتی را ذخیره میکنند. سپس کاربران از میان این اطلاعات آنچه را که میخواهند جستجو میکنند. اگر در صفحه وب تغییراتی اعمال شود موتورهای جستجوگر پیمایشی به طور خودکار آنها را مییابند و تغییرات مذکور را در فهرستها اعمال میکنند. نمونههایی ازموتورهای جستجوگر پیمایشی گوگل و یاهو میباشند.
1-2- 2- فهرستهای تکمیل دستی
فهرستهای تکمیل دستی وابسته به کاربرانی میباشد که آن را تکمیل میکنند. یا کاربر خودش صفحه مورد نظر را به همراه توضیحی کوتاه در فهرست ثبت میکند یا این کار توسط ویراستارهایی که برای آن فهرست در نظر گرفته شده صورت میپذیرد. در این حالت عمل جستجو تنها بر روی توضیحات ثبت شده انجام میگیرد و اگر تغییری روی صفحه وب به وجود آید در فهرست تغییر به وجود نخواهد آمد. نمونهای از فهرستهای تکمیل دستی
Open Directoryمیباشد13.
1-2-3- موتورهای جستجوگر ترکیبی
این موتورهای جستجوگر نتایج حاصل از جستجوی هر دو نوع بالا را با هم ترکیب میکنند و نشان میدهند. علاوه بر این میتوانند برای نتایج یک نوع، اولویت قائل شوند. مثلا موتور جستجوی MSN اولویت را روی نتایج حاصل از فهرستهای تکمیل دستی قرار میدهد. ولی برای درخواستهای پیچیده، نتایج حاصل از جستجوی پیمایشی را نیز بررسی میکند.
1-2-4- ابر جستجوگرها
این نوع جدید از موتورهای جستجوگر نتایج حاصل از چند موتور جستجوگر را ترکیب نموده و نشان میدهد. به عبارتی دیگر درخواست کاربر را در چندین موتور جستجوگر جستجو کرده، سپس نتایج یافته شده را با هم ترکیب نموده و یک نتیجه کلی در اختیار کاربر قرار میدهد. به عنوان مثال موتور جستجوگر dogpile14 نتایج حاصل از موتورهای جستجوگرGoogle ، Yahoo، MSN و ASK را با هم ترکیب میکند و به کاربر ارائه میدهد.
شکل شماره 1 : نمونههایی از موتورهای جستجوگر
1-3- سیستمهای پیشنهادگر
مطالعات اخیر نشان دادهاند که عمده موتورهای جستجوگر با نرخ پایین موفقیت مواجه هستند. این نرخ با میزان دریافت نتایج مرتبط، نسبت به میانگین کاربران جستجو کننده تعیین میشود. به عنوان مثال در یکی از مطالعات[1] بیش از 20000 درخواست جستجو بررسی شده و مشخص گردیده که به طور میانگین در 48% موارد، کاربر در نتایجی که به او ارائه شده حداقل یک مورد مرتبط با جستجویش که ارزش انتخاب داشته باشد پیدا میکند. به بیان دیگر در 52% موارد، کاربر هیچ کدام از مواردی را که به عنوان نتیجه جستجو به او بازگشت داده میشود انتخاب نمیکند. البته این مشکل همان قدر که به موتور جستجوگر بستگی دارد به میزان دانش کاربر جستجو کننده در چگونگی نحوه جستجو نیز بستگی دارد. زیرا درخواست جستجو ممکن است منجر به ابهام شود و به ندرت میتواند به روشنی نیاز کاربر جستجو کننده را بیان کند. در این مواقع کاربر با لیست نتیجهای که نمیتواند نیاز اطلاعاتی او را برطرف سازد روبرو میشود. او در این شرایط معمولا درخواست خود را تعویض یا اصلاح میکند تا نتیجه دلخواهش به او ارائه شود.
در [2] نشان داده است که 10% از درآمد کسانی که با اطلاعات کار میکنند به دلیل تلف شدن زمانشان در جستجو از بین میرود. همچنین در بدترین حالت درصد قابل توجهی از جستجو کنندهها ممکن است در پیدا کردن اطلاعاتی که مورد نیازشان است با شکست روبرو شوند. این مسائل نشان میدهد که جستجوی وب بسیار ناکارامدتر از آن است که انتظار می- رود. همچنین علاوه بر افزایش تعداد صفحات وب تعداد کاربران اینترنت نیز به شدت افزایش یافت. کاربران هم میخواستند نیاز اطلاعاتیشان را بر طرف کنند و هم مایل به تولید و اشتراک گذاری اطلاعات، علائق و نیازمندیهای خود بودند. بنابراین شبکههای اجتماعی مانند Facebook و Twitter تاسیس شدند. همچنین سایتهایی مانند YouTube راه اندازی شد که محلی برای اشتراک گذاری فیلمها و مشاهده فیلمهای به اشتراک گذاشته میباشد.
در این بین برای برطرف نمودن ناکارامدیهای موتورهای جستجوگر و نیازهای کاربران سیستمهای پیشنهادگر به وجود آمدند.
سیستمهای پیشنهادگر برای انتخاب و ارائه اطلاعات مورد نیاز کاربران نقش قابل توجهی را ایفا نمودهاند. این سیستمها میتوانند حتی بدون اینکه کاربر درخواست جستجو بدهد تعدادی از اقلام را به او پیشنهاد یا اطلاعات مورد نیازش را به او ارائه دهد. اقلام میتوانند فیلم، موزیک، صفحه وب و… باشند (جدول شماره 1). همچنین کاربر پیشنهاداتی را از طریق یک جستجوی هوشمندانه دریافت خواهد کرد. بنابراین تاثیر به سزایی در صرفه جویی زمان و دست یابی به هدف مورد نظر کاربر دارد. زیرا از این طریق میتواند از میان این حجم بالا آن قسمت که مورد نیازش است را در اختیار داشته باشد. بدین ترتیب از سردرگم شدن کاربر هنگام تصمیمگیری جلوگیری به عمل میآید.
جدول شماره 1 : نمونههایی از سیستمهای پیشنهادگر و اقلام پیشنهادی آنها
SYSTEM
Content
Amazon
Books, CDS, Others
Epinions
Books, CDS, Others
MovieLens
Movie
Netflix
DVD
Yahoo! Music
Music
Grundy
Books
Video Recommender
Video
Ringo
Music
PHOAKS
Textual Information
Jester
Jokes
Fab System
Web page
با افزایش روز افزون اطلاعات، نیاز به وجود این سیستمها بیشتر احساس شده است. این سیستمها پیشنهادات را با استفاده از انواع مختلف دانش و داده جمع آوری شده در مورد کاربران و اقلام و همچنین بررسی تراکنشهایی مانند بازخوردی15 که کاربران در گذشته ایجاد کردهاند تولید میکنند. در سادهترین فرم، این پیشنهادات به صورت یک لیستی که بر اساس علائق و نیازهای کاربر مرتب شده به او عرضه خواهد شد.
در [3] سیستمهای پیشنهادگر براساس فیلترینگ اشتراکی16، محتوا17، آمارگیری18، سود19، دانش20،و ترکیبی21 کلاسبندی شدهاند.
1-3-1- سیستم پیشنهادگر بر اساس فیلترینگ اشتراکی
فیلترینگ اشتراکی یکی از رایجترین راهکارها در سیستمهای پیشنهادگر است .[4] این راهکار اقلامی که کاربران مشابه با کاربر فعال در گذشته به آنها علاقه داشتهاند را به او پیشنهاد میکند. شباهت بین کاربران بر اساس نحوه امتیازدهیشان در گذشته محاسبه میشود.
این پایان نامه بر اساس این نوع از سیستمهای پیشنهادگر میباشد که در فصل دوم به تفصیل توضیح داده خواهد شد.
1-3-2- سیستم پیشنهادگر محتوا محور
یکی از پر کاربردترین راهکارها در سیستمهای پیشنهادگر روش محتوا محور میباشد. سیستمهای محتوا محور بر اساس ویژگیهای اقلام تعریف میشوند. آنها بررسی میکنند که کاربر در گذشته چه اقلامی مورد علاقهاش بوده، سپس اقلام مشابه را به او پیشنهاد میدهند. مثلا اگر کسی در گذشته به فیلمی از نوع کمدی امتیار مثبت داده است این سیستم در آینده فیلمهایی از این نوع را به او پیشنهاد میکند. از آنجا که روش پیشنهادی در این پایان نامه از روش محتوا محور استفاده می کند، در فصل پنجم به طور مفصل در مورد سیستم پیشنهادگر محتوا محور بحث خواهد شد.
1-3-3- سیستم پیشنهادگر بر اساس آمارگیری
تکنیک پیشنهاد براساس آمارگیری مبتنی بر اطلاعات آماری کاربران میباشد. دادههایی که در نمایه22 کاربر وجود دارد مانند جنسیت، سن، وضعیت خانوادگی و … نمونههایی از اطلاعات آماری کاربر میباشد. کاربران بر اساس خصوصیاتشان کلاس بندی میشوند و پیشنهادات بر اساس این کلاسها صورت میپذیرد.
1-3-4- سیستم پیشنهادگر بر اساس سود
سیستمهای بر اساس سود، تابع سود23 که توسط کاربر تولید میشود را به کار میبرند. به عنوان مثال درقالب پرسشنامه این کار صورت میپذیرد. سپس بر اساس اینکه هر قلم24 چه مقدار سود برای کاربر دارد پیشنهادات صورت میگیرد. این نوع از سیستمها تکنیکهای ارضای محدودیت25 را به کار میبرند تا بهترین قلم را پیشنهاد کنند.
1-3-5- سیستم پیشنهادگر بر اساس دانش
سیستمهای پیشنهادگر بر اساس دانش، از دانشی که از خصوصیات اقلام و کاربران استخراج میگردد بهره برداری میکنند. آنها بررسی میکنند که چطور یک قلم بهخصوص میتواند نیازهای کاربر را بر آورده سازد. در سادهترین فرم، دانش مذکور میتواند در فرم درخواست توسط کاربر تولید شود.
1-3-6- سیستم پیشنهادگر ترکیبی
سیستمهای پیشنهادگر ترکیبی دو یا چند تکنیک را ترکیب میکنند تا کارایی سیستم پیشنهادگر را افزایش دهند. مثلا دو تکنیک A وB را ترکیب میکنند که از مزایای تکنیک اول برای بر طرف سازی معایب تکنیک دوم استفاده کنند. مثلا متد فیلترینگ اشتراکی با مشکل قلم جدید و کاربر جدید مواجه میباشد. یعنی قلمی که تا کنون هیچ کس به آن امتیازی نداده است را نمیتواند پیشنهاد کند. در عین حال متد بر اساس محتوا به دلیل اینکه پیشنهادات بر اساس محتوا و ویژگیهای اقلام میباشد نه امتیازات داده شده به آنها، چنین مشکلی را ندارد. پس میتوان از ترکیب این دو متد در برطرف کردن نواقص یکدیگر استفاده نمود.
1-4- بررسی سایت Movielens
MovieLens یک سیستم پیشنهادگر فیلم است (شکل شماره 2). راهکار این سیستم به این صورت است که از کاربر میخواهد به فیلم هایی که تا کنون دیده است در بازه 1 تا 5 امتیازدهی کند (شکل شماره 3). پس از آن امتیازات داده شده از سوی کاربر را ذخیره کرده و از کاربر یک مدل میسازد. زمانی که کاربر درخواست میکند که سیستم فیلمهایی را به او پیشنهاد کند، سیستم مدل کاربر فعال26 و همچنن مدل کاربرانی که شبیه به او میباشند را استخراج کرده و امتیاز فیلمهایی که کاربر فعال تا کنون ندیده است را از روی مدل کاربران شبیه به او پیشبینی میکند. سپسفیلمهایی که برای آنها امتیاز بالایی پیشبینی شده است را به

– شفافیت……………………………………………………………………………………………………………………….42
3-3-3- قلم جدید…………………………………………………………………………………………………………………….43
3-4- معایب روش محتوا محور…………………………………………………………………………………………………43
3-4-1- کمبود محتوا……………………………………………………………………………………………………………….43
3-4-2- خصوصی سازی افزون…………………………………………………………………………………………………43
3-4-3- کاربر جدید………………………………………………………………………………………………………………….44
فصل 4 : روش پیشنهادی………………………………………………………………………………………………………….45
4-1- پیشگفتار………………………………………………………………………………………………………………………….46
4-2- مروری بر کارهای انجام شده در این راستا……………………………………………………………………..46
4-3- مقدمهای بر روش پیشنهادی…………………………………………………………………………………………..48
4-4- روش پیشنهادی………………………………………………………………………………………………………………48
4-4-1- پیش پردازش………………………………………………………………………………………………………………49
4-4-1-1- پیش پردازش بر روی پایگاه داده MovieLens………………………………………………..49
4-4-1-2- پیش پردازش بر روی پایگاه داده EachMovie………………………………………………..50
4-4-2- وزندهی به اقلام…………………………………………………………………………………………………………51
4-4-3- انتخابهمسایگی…………………………………………………………………………………………………………53
4-4-4- پیشبینی……………………………………………………………………………………………………………………54
فصل 5 : آزمایشها و نتایج……………………………………………………………………………………………………….56
5-1- پایگاه دادههای مورد استفاده…………………………………………………………………………………………..57
5-2- نحوه اجرای روش پیشنهادی روی پایگاه داده MovieLens……………………………………….57
5-3- نحوه اجرای روش پیشنهادی روی پایگاه داده ٍEachMovie……………………………………….58
5-4- معیارهایارزیابی………………………………………………………………………………………………………………58
5-4-1- میانگین خطای مطلق…………………………………………………………………………………………………58
5-4-2- دقت و فراخوانی………………………………………………………………………………………………………….59
5-4-3- معیار ارزیابیF1…………………………………………………………………………………………………………60
5-5- ارزیابی روش پیشنهادی توسط معیارهای معرفی شده…………………………………………………..61
فصل 6 : بحث و نتیجهگیری…………………………………………………………………………………………………….66
6-1- بحث…………………………………………………………………………………………………………………………………67
6-2- نتیجهگیری……………………………………………………………………………………………………………………..67
6-4- پیشنهادات……………………………………………………………………………………………………………………….68
مراجع………………………………………………………………………………………………………………………………………..69
فهرست جدول ها
عنوان و شماره صفحه
جدول شماره 1 : نمونههایی از سیستمهای پیشنهادگر و اقلام پیشنهادی آنها…………………………7
جدول شماره 2 : مقایسه میانگین خطای مطلق روش پایه و روش پیشنهادی، اعمال شده بر MovieLens……………………………………………………………………………………………………………………………61
جدول شماره 3 : مقایسه میانگین خطای مطلق روش پایه و روش پیشنهادی، اعمال شده بر EachMovie……………………………………………………………………………………………………………………………61
جدول شماره 4 : مقایسه معیار دقت روش پایه و روش پیشنهادی، اعمال شده بر
MovieLens……………………………………………………………………………………………………………………………61
جدول شماره 5 : مقایسه معیار دقت روش پایه و روش پیشنهادی، اعمال شده بر
EachMovie …………………………………………………………………………………………………………………………..62
جدول شماره 6 : مقایسه معیار فراخوانی روش پایه و روش پیشنهادی، اعمال شده بر MovieLens……………………………………………………………………………………………………………………………62
جدول شماره 7 : مقایسه معیار فراخوانی روش پایه و روش پیشنهادی، اعمال شده بر EachMovie……………………………………………………………………………………………………………………………62
جدول شماره 8 : مقایسه معیارF1 روش پایه و روش پیشنهادی، اعمال شده بر MovieLens……………………………………………………………………………………………………………………………62
جدول شماره 9 : مقایسه معیارF1 روش پایه و روش پیشنهادی، اعمال شده بر
EachMovie……………………………………………………………………………………………………………………………62
جدول شماره 10 : مقایسه میانگین خطای مطلق روش پیشنهادی با روشهای[19] و [20]…………………………………………………………………………………………………………………………………………..65
فهرست تصاویر
عنوان و شماره صفحه
شکل شماره 1: نمونههایی از موتورهای جستجوگر………………………………………………………………….5
شکل شماره 2 : نمونه صفحهای از سایت Movielens………………………………………………………….11
شکل شماره 3 : نمونه صفحه درخواست امتیازدهی Movielens از کاربر…………………………….12
شکل شماره 4 : نمونه صفحه فیلمهای پیشنهادی از سوی Movielens به کاربر………………13
شکل شماره 5 : نمونه ماتریس امتیازدهی کاربران – اقلام………………………………………………………22
شکل شماره 6: فیلترینگ اشتراکی مبتنی بر اقلام………………………………………………………………..25
شکل شماره 7 : فیلترینگ اشتراکی مبتنی بر کاربران…………………………………………………………….25
شکل شماره 8 : روند تولید پیشنهاد در آمازون……………………………………………………………………….34
شکل شماره 9 : نمونه صفحهای از سایت آمازون…………………………………………………………………….35
شکل شماره 10 : ارائه پیشنهاد بر اساس کارت خرید مشتری……………………………………………….35
شکل شماره 11 : روند کار روش محتوا محور………………………………………………………………………….38
شکل شماره 12 : نمونه صفحهای از سایت آمازون…………………………………………………………………40
شکل شماره 13 :استفاده از روش محتوا محور در سایت آمازون…………………………………………..41
شکل شماره 14 : نمایش مفاهیم دقت و فراخوانی در حوزه بازیابی اطلاعات………………………..59
شکل شماره 15: رابطه معیار فراخوانی با معیار دقت……………………………………………………………..60
شکل شماره 16: مقایسه میانگین خطای مطلق روش پایه و روش پیشنهادی، اعمال شده بر
MovieLens……………………………………………………………………………………………………………………………63شکل شماره 17: مقایسه میانگین خطای مطلق روش پایه و روش پیشنهادی، اعمال شده بر
EachMovie……………………………………………………………………………………………………………………………63
شکل شماره 18: مقایسه معیار دقت، فراخوانی و F روش پایه و روش پیشنهادی، اعمال شده بر EachMovie………………………………………………………………………………………………………………………64
شکل شماره 19: مقایسه معیار دقت، فراخوانی و F روش پایه و روش پیشنهادی، اعمال شده بر MovieLens………………………………………………………………………………………………………………………..64
فصل اول
مقدمه
1- مقدمه
1-1- پیشگفتار
پیدایش اینترنت و وب جهان

در رشته :
مهندسی کامپیوتر – هوش مصنوعی
از دانشگاه شیراز
شیراز
جمهوری اسلامی ایران
ارزیابی شده توسط کمیته پایان نامه با درجه :
دکتر منصور ذوالقدری، استاد بخش مهندسی و علوم کامپیوتر (رئیس کمیته)…………………
دکتر علی حمزه، استادیار بخش مهندسی و علوم کامپیوتر…………………………….
دکتر اقبال منصوری، استادیار بخش مهندسی و علوم کامپیوتر…………………………….
شهریور 1392
چکیده
استفاده ازکاربرانی با دقت پیشگویی بالا در سیستمهای فیلترینگ اشتراکی
به کوشش
نیلوفر راستین
سیستمهای پیشنهادگر ابزارهای نرم افزاری و تکنیکهایی هستند که اقلام را مطابق با نیاز کاربر به او معرفی میکنند. روشهای محتوا محور و فیلترینگ اشتراکی از راهکارهای موفق در سیستمهای پیشنهادگر میباشند. روش محتوا محور بر اساس ویژگیهای اقلام تعریف میشود. این روش بررسی میکند که اقلام مورد علاقه کاربر دارای چه ویژگیهایی بودهاند، سپس اقلام دارای ویژگیهای مشابه را به او پیشنهاد میکند. روش فیلترینگ اشتراکی بر اساس تعیین اقلام مشابه یا کاربران مشابه کار میکند که به ترتیب فیلترینگ اشتراکی مبتنی بر اقلام و مبتنی بر کاربران نامیده میشود. در این پایان نامه یک روش تلفیقی از روشهای فیلترینگ اشتراکی و محتوا محور ارائه شده است. این روش میتواند به عنوان روش فیلترینگ اشتراکی مبتنی بر کاربر در نظر گرفته شود. به این صورت که به منظور یافتن کاربرانی با سلیقه مشابه با کاربر فعال به عنوان کاربرانی با دقت پیشگویی بالا از ویژگیهای مربوط به محتوای اقلام برای افزایش تاثیر امتیازهایی که توسط کاربران به اقلام مشابه تخصیص داده شده است استفاده میکند. به بیان دیگر دو کاربر مشابه هستند در صورتی که امتیازهایی که به اقلامی که از نظر محتوا مشابه هستند نسبت دادهاند، همسان باشند. برای این منظور در هنگام سنجیدن شباهت دو کاربر، به امتیاز نسبت داده شده به هر قلم، با توجه به میزان شباهت آن به قلم هدف، وزن تخصیص مییابد.
فهرست مطالب
عنوان صفحه
فصل 1 : مقدمه……………………………………………………………………………………………………………………………1
1-1- پیشگفتار…………………………………………………………………………………………………………………………….2
1-2- موتورهای جستجوگر…………………………………………………………………………………………………………2
1-2-1- موتورهای جستجوگر پیمایشی……………………………………………………………………………………..3
1-2- 2- فهرستهای تکمیل دستی…………………………………………………………………………………………..3
1-2-3- موتورهای جستجوگر ترکیبی………………………………………………………………………………………..4
1-2-4- ابرجستجوگرها……………………………………………………………………………………………………………….4
1-3- سیستمهای پیشنهادگر……………………………………………………………………………………………………..5
1-3-1- سیستم پیشنهادگر بر اساس فیلترینگ اشتراکی…………………………………………………………7
1-3-2- سیستم پیشنهادگر بر اساس محتوا………………………………………………………………………………8
1-3-3- سیستم پیشنهادگر بر اساس آمار گیری……………………………………………………………………….8
1-3-4- سیستم پیشنهادگر بر اساس سود…………………………………………………………………………………9
1-3-5- سیستم پیشنهادگر بر اساس دانش………………………………………………………………………………9
1-3-6- سیستم پیشنهادگر ترکیبی…………………………………………………………………………………………..9
1-4- بررسی سایت MovieLens…………………………………………………………………………………………..10
1-5- اهداف پایان نامه……………………………………………………………………………………………………………..13
1-6- ساختار پایان نامه…………………………………………………………………………………………………………….14
فصل 2 : روش فیلترینگ اشتراکی……………………………………………………………………………………………15
2-1- پیشگفتار………………………………………………………………………………………………………………………….16
2-2- مروری بر کارهای انجام شده در این راستا……………………………………………………………………..16
2-3- مبانی فیلترینگ اشتراکی………………………………………………………………………………………………..21
2-4- وظایف فیلترینگ اشتراکی…………………………………………………………………………………………….22
2-4-1- پیشنهاد……………………………………………………………………………………………………………………….23
2-4-2- پیشبینی…………………………………………………………………………………………………………………….23
2-5- دسته بندی متدهای فیلترینگ اشتراکی……………………………………………………………………….23
2-5-1- فیلترینگ اشتراکی مبتنی بر حافظه…………………………………………………………………………24
2-5-1-1- فیلترینگ اشتراکی مبتنی بر حافظه با پیشبینی بر اساس کاربران…………………….25
2-5-1-2- فیلترینگ اشتراکی مبتنی بر حافظه با پیشبینی بر اساس اقلام…………………………25
2-5-1- 3- تفاوت فیلترینگ اشتراکی بر اساس کاربران و بر اساس اقلام……………………………..26
2-5-2- فیلترینگ اشتراکی مبتنی بر مدل……………………………………………………………………………..26
2-6- نحوه تشخیص علائق کاربران………………………………………………………………………………………….27
2-6-1- تشخیص علائق به صورت صریح…………………………………………………………………………………27
2-6-2- تشخیص علائق به صورت ضمنی……………………………………………………………………………….27
2-7- محاسبه شباهت……………………………………………………………………………………………………………….28
2-7-1- معیار همبستگی پیرسون……………………………………………………………………………………………28
2-7-2- معیار اندازهگیری کسینوس………………………………………………………………………………………..29
2-8- انتخاب همسایه……………………………………………………………………………………………………………….30
2-8-1- استفاده از حد آستانه………………………………………………………………………………………………….30
2-8-2- انتخاب تعداد ثابتی از همسایگان……………………………………………………………………………….30
2-9- پیشبینی و تخمین رتبه…………………………………………………………………………………………………31
2-9-1- استفاده از امتیازهای خام……………………………………………………………………………………………31
2-9-2- استفاده از امتیازهای نرمال شده………………………………………………………………………………..31
2-10- مشکلات فیلترینگ اشتراکی………………………………………………………………………………………..32
2-10-1- پراکنده بودن داده…………………………………………………………………………………………………….32
2-10-2- مقیاس پذیری………………………………………………………………………………………………………….32
2-10-3- اقلام مشابه……………………………………………………………………………………………………………….33
2-10-4- گریشیپ…………………………………………………………………………………………………………………33
2-11- بررسی چگونگی کارکرد سایت آمازون…………………………………………………………………………33
فصل 3 : روش محتوا محور………………………………………………………………………………………………………36
3-1- پیشگفتار………………………………………………………………………………………………………………………….37
3-2- روند کار روش محتوا محور……………………………………………………………………………………………..37
3-2-1- تحلیلگر محتوا…………………………………………………………………………………………………………..38
3-2-2- یادگیرنده نمایه …………………………………………………………………………………………………..39
3-2-3- جزء فیلترینگ…………………………………………………………………………………………………………….42
3-3- مزایای روش محتوا محور………………………………………………………………………………………………..42
3-3-1- استقلال کاربر……………………………………………………………………………………………………………..42
3-3-2-

ولتاژ یونیزاسیون دستگاه طیف سنجی جرمی 70 الکترون ولت بود. نوع و میزان هر یک از ترکیبات سازنده اسانس پس از تجزیه و تحلیل کروماتوگرام مشخص گردید.
3-7- روش تجزیه و تحلیل داده ها
اطلاعات بدست آمده از این مطالعه پس از ورود به رایانه بوسیله نرم افزار SPSS statistcs.19 و آزمون های آماری آنالیز واریانس یک طرفه و آزمون انالیز واریانس با تکرار مشاهدات مورد تجزیه و تحلیل قرار گرفت.
فصل چهارم
نتـایج