KİŞİSEL FİLM ÖNERME SİSTEMİ (ÖZET)



Benzer belgeler
Yüz Tanımaya Dayalı Uygulamalar. (Özet)

Virtualmin'e Yeni Web Sitesi Host Etmek - Domain Eklemek

WEEK 11 CME323 NUMERIC ANALYSIS. Lect. Yasin ORTAKCI.

First Stage of an Automated Content-Based Citation Analysis Study: Detection of Citation Sentences

AB surecinde Turkiyede Ozel Guvenlik Hizmetleri Yapisi ve Uyum Sorunlari (Turkish Edition)

Grade 8 / SBS PRACTICE TEST Test Number 9 SBS PRACTICE TEST 9

A LANGUAGE TEACHER'S PERSONAL OPINION

Unlike analytical solutions, numerical methods have an error range. In addition to this

THE DESIGN AND USE OF CONTINUOUS GNSS REFERENCE NETWORKS. by Özgür Avcı B.S., Istanbul Technical University, 2003

( ) ARASI KONUSUNU TÜRK TARİHİNDEN ALAN TİYATROLAR

CmpE 320 Spring 2008 Project #2 Evaluation Criteria

Argumentative Essay Nasıl Yazılır?

Islington da Pratisyen Hekimliğinizi ziyaret ettiğinizde bir tercüman istemek. Getting an interpreter when you visit your GP practice in Islington

ALANYA HALK EĞİTİMİ MERKEZİ BAĞIMSIZ YAŞAM İÇİN YENİ YAKLAŞIMLAR ADLI GRUNDTVIG PROJEMİZ İN DÖNEM SONU BİLGİLENDİRME TOPLANTISI

Student (Trainee) Evaluation [To be filled by the Supervisor] Öğrencinin (Stajyerin) Değerlendirilmesi [Stajyer Amiri tarafından doldurulacaktır]

İSTANBUL TEKNİK ÜNİVERSİTESİ ELEKTRİK-ELEKTRONİK FAKÜLTESİ ÖZET FONKSİYON TABANLI GÜVENLİ BİR RFID PROTOKOLÜNÜN FPGA ÜZERİNDE GERÇEKLENMESİ

ingilizce.com-müşterilerle En çok kullanılan Kelime ve Deyimler-Top words and phrases to use with customers

Dairesel grafik (veya dilimli pie chart circle graph diyagram, sektor grafiği) (İngilizce:"pie chart"), istatistik

HEARTS PROJESİ YAYGINLAŞTIRMA RAPORU

8. SINIF KAZANIM TESTLERİ 1.SAYI. Ar-Ge Birimi Çalışmasıdır ŞANLIURFA İL MİLLİ EĞİTİM MÜDÜRLÜĞÜ DİZGİ & TASARIM İBRAHİM CANBEK MEHMET BOZKURT

T.C. AKÇAKOCA SCHOOL OF TOURISM AND HOTEL MANAGEMENT DUZCE UNIVERSITY TRAINING FILE

IDENTITY MANAGEMENT FOR EXTERNAL USERS

Teknoloji Servisleri; (Technology Services)

EĞİTİM ÖĞRETİM YILI GÖRELE ANADOLU LİSESİ 9. SINIFLAR İNGİLİZCE DERSİ 1. DÖNEM PERFORMANS ÖDEV KONULARI

g Na2HPO4.12H2O alınır, 500mL lik balonjojede hacim tamamlanır.

WEEK 4 BLM323 NUMERIC ANALYSIS. Okt. Yasin ORTAKCI.

İngilizce de selamlaşma maksatlı kullanılabilecek pek çok yapı vardır. Bunlar Türkçeleri ile beraber aşağıda verilmektedir:

Exercise 2 Dialogue(Diyalog)

Yaz okulunda (2014 3) açılacak olan (Calculus of Fun. of Sev. Var.) dersine kayıtlar aşağıdaki kurallara göre yapılacaktır:

Do not open the exam until you are told that you may begin.

Mart Ayı Değerler Eğitimi. Samimiyet

Gezici Tanıtım & Fuar Araçları Mobile Showroom & Fair Vehicles

Arýza Giderme. Troubleshooting

BBM Discrete Structures: Final Exam Date: , Time: 15:00-17:00

1 I S L U Y G U L A M A L I İ K T İ S A T _ U Y G U L A M A ( 5 ) _ 3 0 K a s ı m

CALUM SAILS AWAY. Written and illustrated by Sarah Sweeney

HIGH SCHOOL BASKETBALL

Y KUŞAĞI ARAŞTIRMASI. TÜRKİYE BULGULARI: 17 Ocak 2014

4. HAFTA BLM323 SAYISAL ANALİZ. Okt. Yasin ORTAKCI.

PROFESSIONAL DEVELOPMENT POLICY OPTIONS

TÜRKİYE DE BİREYLERİN AVRUPA BİRLİĞİ ÜYELİĞİNE BAKIŞI Attitudes of Individuals towards European Union Membership in Turkey

HOW TO MAKE A SNAPSHOT Snapshot Nasil Yapilir. JEFF GOERTZEN / Art director, USA TODAY

What Is Team Leadership?

Proceedings/Bildiriler Kitabı I. G G. kurumlardan ve devletten hizmet beklentileri de September /Eylül 2013 Ankara / TURKEY

K12NET ÖĞRENCİ-VELİ PORTALI KULLANIMI USE OF K12NET STUDENT-PARENT PORTAL

a, ı ı o, u u e, i i ö, ü ü

BİR BASKI GRUBU OLARAK TÜSİADTN TÜRKİYE'NİN AVRUPA BİRLİĞl'NE TAM ÜYELİK SÜRECİNDEKİ ROLÜNÜN YAZILI BASINDA SUNUMU

ÖĞRENCĠLER ĠÇĠN AKILLI ZAMAN PLANLAYICI

TEST RESULTS UFED, XRY and SIMCON

Welcome. Hos Geldiniz. Summer Schools Presentation. Yaz Okulları Sunumu. Sandi Engler Overseas College Counselor Yurtdışı Üniversiteler Danışmanı

Delta Pulse 3 Montaj ve Çalıstırma Kılavuzu.

D-Link DSL 500G için ayarları

T.C. Hitit Üniversitesi. Sosyal Bilimler Enstitüsü. İşletme Anabilim Dalı

KIRGIZ CUMHURİYETİ JEOLOJİ VE MADENCİLİK DEVLET AJANSI NIN ALMALYK LİNYİT KÖMÜR HAVZALARINA İŞLETME LİSANSININ VERİLMESİ İHALESİ HK BİLGİ NOTU

Darbeli Kırıcılar Impact Crushers

TR2009/ /409 Benim için İnsan Hakları «Human Rights for Me» Body of Knowledge for AC/HR Education

12. HAFTA BLM323 SAYISAL ANALİZ. Okt. Yasin ORTAKCI.

Turkish Vessel Monitoring System. Turkish VMS


Yarışma Sınavı A ) 60 B ) 80 C ) 90 D ) 110 E ) 120. A ) 4(x + 2) B ) 2(x + 4) C ) 2 + ( x + 4) D ) 2 x + 4 E ) x + 4

Hukuk ve Hukukçular için İngilizce/ English for Law and Lawyers

İŞLETMELERDE KURUMSAL İMAJ VE OLUŞUMUNDAKİ ANA ETKENLER

BAYAN DİN GÖREVLİSİNİN İMAJI VE MESLEĞİNİ TEMSİL GÜCÜ -Çorum Örneği-

Multiplication/division

5İ Ortak Dersler. İNGİLİZCE II Okutman Aydan ERMİŞ

Clear omegle ban on puffin

ÖRNEKTİR - SAMPLE. RCSummer Ön Kayıt Formu Örneği - Sample Pre-Registration Form

HAZIRLAYANLAR: K. ALBAYRAK, E. CİĞEROĞLU, M. İ. GÖKLER

Dr. Aysın Yeltekin. EST Enerji

Konforun Üç Bilinmeyenli Denklemi 2016

İSTANBUL KEMERBURGAZ ÜNİVERSİTESİ

empati adam fawer 94CA80D2E9C0D7A06FE68F357BDFD9E4 Empati Adam Fawer

Sample IELTS Task 2 scoring band 6

İSTANBUL TEKNİK ÜNİVERSİTESİ BİLGİSAYAR VE BİLİŞİM FAKÜLTESİ. Akıllı Yemek Önerme Sistemi

BAŞVURU ŞİFRE EDİNME EKRANI/APPLICATION PASSWORD ACQUISITION SCREEN

BMH-405 YAZILIM MÜHENDİSLİĞİ

Mantik (Dergah Yayinlari) (Turkish Edition)

REFLECTIONS. 8.Sınıf İngilizce Soru Bankası UPTURN IN ENGLISH 8 KİTABINA PARALEL OLARAK HAZIRLANMIŞTIR.

Kamuran Özlem Sarnıç (Sanatta Yeterlik Tezi)

%100 Zeytinyağı ÜRÜN KATALOĞU / PRODUCT CATALOGUE.

Software R&D Center. Generate future softwares

Virtual Worlds are Useful for Children

Ali Kablan 1. UFRS nin Ülkemizdeki Muhasebe Uygulamaları

BİLİŞİM TEKNOLOJİLERİ ALANI THE INFORMATION TECHNOLOGIES DEPARTMENT

Tanrının Varlığının Ontolojik Kanıtı a

SCHOOL OF FOREIGN LANGUAGES NEVSEHIR HACI BEKTAS VELI UNIVERSITY ERASMUS EXAM THIRD SECTION

LEARNING GOALS Human Rights Lessons

KALEIDOSCOPES N.1. Solo Piano. Mehmet Okonşar

STATE OF THE ART. Be Goıng To Functıons (İşlevleri) 1. Planned future actions (Planlanmış gelecek zaman etkinlikleri)

A UNIFIED APPROACH IN GPS ACCURACY DETERMINATION STUDIES

ERASMUS GÜZ TOPLANTISI

Cases in the Turkish Language

Chapter 5 Sistem Modelleme. Lecture 1. Chapter 5 System modeling

TÜM ÖĞRENCİ DEĞİŞİM PROGRAMLARI (ERASMUS-MEVLANA-FARABİ) BAŞVURU AŞAMALARI AYNI SÜRECİ TAKİP ETMEKTEDİR.

Present continous tense

64 Romantic Baby 01 Romantic Büyüyen Bebek Karyolası (Ebeveyn Karyolalı) / Convertible Baby Bed (With Parent Bed) (80x180cm)

Mart 31, Google News Kaydı. by

$5$ù7,50$ (%(/ø. gö5(1&ø/(5ø1ø1 *g5(9 7$1,0/$5, 9( <(7(5/ø/ø. $/$1/$5,1$ *g5(.(1'ø/(5ø1ø '(ö(5/(1'ø50(/(5ø g]hq (VUD.$5$0$1 + O\D 2.

«Soru Sormak ve Bir Şey İstemek»

AİLE İRŞAT VE REHBERLİK BÜROLARINDA YAPILAN DİNİ DANIŞMANLIK - ÇORUM ÖRNEĞİ -

Transkript:

KİŞİSEL FİLM ÖNERME SİSTEMİ (ÖZET) Günümüz modern dünyasında, sinema, bir endüstri haline gelmiştir. Milyar dolarlık bu endüstride, her hafta yeni filmler vizyona girmekte, ve bir o kadar daha film vizyonlardan kalkarak arşivlerdeki yerini almaktadır. Bugüne kadar çekilmiş filmler, birgün izlenmek üzere arşivlerdeki yerlerini alırken, kişiler, izleyecekleri filmleri seçmek için, hangi filmin kendilerine daha uygun olduğunu belirleyip, o doğrultuda bir seçim yapma yoluna gitmektedirler. Kişiler sevdikleri türde, sevdikleri konularda film izlemek, içerisinde sevdikleri aktörler bulunan, sevdikleri yönetmen tarafından çekilmiş, sevdikleri yapımcı tarafından imal edilmiş, hatta bazen spesifik bir ödülü kazanmış filmler aramaktadır. Bunu da arkadaşlarına Hangi filmi tavsiye edersiniz? gibi sorular sorarak, etrafından fikirler alarak, internet sitelerinde filmler hakkında yapılan yorumlara, verilen puanlara bakarak, gazete ve dergilerdeki film eleştirilerini okuyarak, bazen tek tek filmlerde oynayan aktörlere, türlere ve konulara bakarak yapmaya çalışmaktadır. Bu yöntemlerin sağlıklı sonuç verme olasılığı yüksek ise de, zahmetli bir iştir ve kişisellik öğesi tam anlamıyla sağlanamamıştır. Bu problemden hareketle, projemiz, kişinin sevdiği ve sevmediği aktörleri, konuları, dönemleri dikkate alarak optimize yorumlar yapmayı, böylece kişinin izleyeceği filmden alacağı hazzı maksimize etmeyi amaçlamaktadır. Kişisel Film Önerme Sistemi, bu amaçla, kişilere ve gruplara en uygun filmi önerecek web tabanlı bir sistemi kapsamaktadır. Projemizin amacı, yukarıda da belirtildiği gibi, kişiye, kendisine has özellikleri ve tercihleri baz alarak, film önerecek bir web sitesidir. Aynı zamanda, birden fazla kişinin bulunduğu ortamlarda, kişilerin ortak beğenilerine dayalı filmler getirilmesi amaçlanmaktadır. Topluca izlenecek filmlerde, topluluğun mutluluğunu maksimuma çıkartmak amaçlanmaktadır. Yukarıda bahsedilen projenin gerçeklenmesi için aşağıdaki modüller geliştirilmiştir. Kişi bazında film seçme algoritması.(çekirdek Modül) Grup bazında film seçme algoritması(çekirdek Modül) Veri Tabanı Kayıt, Geri bildirim Modülü Web Sitesi Raporun birinci bölümünde, problemin genel tanımı, Kişisel Film Önerme Sistemi nin sahip olduğu genel özellikleri, fonksiyonları, avantajları ve dezavantajları hakkında bilgi verilmiştir. İkinci bölümde, projenin tanımı, iş planı, modüllerin tanıtımı, projenin takvim planlaması, projenin analizi, modellemesi, tasarımı hakkında bilgi verilmiştir. Üçüncü bölümde projenin yazılım gerçeklemesiyle ilgili ayrıntılar verilmiştir. Algoritmalar ve modüllerin iç yapısı hakkında detaylı açıklamalar yapılmıştır. Son bölümde ise, projenin sonuçlarına ve sonuçlar hakkındaki yorumlara yer verilmiştir. VIII

PERSONAL MOVIE SUGGESTION SYSTEM (SUMMARY) In today s modern world, cinema has become an industry whose volume reaches billion dollars. In this kind of big industry, various films start to run every week, and besides, same number of films have been ceasing running, and take place in the archieves. While the films which have been produced until today, taking place in the archieves, the individuals are being strained about which film to choose from this huge archieve. In this kind of situation, people usually try to find out the best fitting movie for themselves. People want to watch movies which includes the actors they like, which does not include the actors they dislike, whose genre, director, writer, productor is suitable for themselves. They sometimes search for the films which has won a specific type of award. While trying to achieve this problem, people usually search for internet by themselves, they manually look the actors, genres, directors, productors and elect the films whose components doesn t suit themselves. They look up the comments made for the movie in the internet, and sometimes have to read all the comments to build a personal opinion about the movie. In the challange of selecting the right and best fitting movie, people also ask their friends which film that they recommend, they take friends ideas. Despite this approach may result in positive sense, it is exhausting and it may lack personality. To take action against this problem, we have decided to build a web based system, which has the capability of suggesting the best fitting movie for individuals and groups by considering their choices and acclaims about a movie s components such as actors, genres, subjects, directors etc. As mentioned above, our project s purpose is to suggest movies for individuals and groups by taking user s unique properties and preferences into the account. Our project also aims to suggest most suitable movies for groups. It is intended maximize the group s satisfaction in the situations that two or more friends want to watch a film together. To realize the project that mentioned above, we have developed five modules. Movie Suggestion Algorithm for Individuals(Core) Movie Suggestion Algorithm for Groups(Core) Database Registration and FeedBack Module The Website The modules which form the system will be briefly explained below. The algorithm for individuals includes a series of calculations for detecting the most suitable film for a single person. The algorithm scans all the films in the database, and calculate points for each film.while calculating a single film s point, the algorithm scans the movie s all components, and calculate points for all components such as actors, genres, titles, writers. For IX

example, while calculating a movie s point, the algorithm first scans the film s all actors, and looks to the points given to those actors, from database. According to the points given to the actors by the user, the movie s actor points are calculated. All component s points are calculated by the same way. In the genres section, each genre has a percentage in the film, and the points are multiplied by those percentages. If a film has 3 genres, horror, thriller, and romantic, they all have a percentage in the film, example, horror 45%, thriller 40% and romantic 15%. The algorithm looks to the database and sees that the horror is scored as 8 over 10. Same way, thriller is scored as 6 and romantic is scored 7 over 10. So, the algorithm multiplies 0.45 * 8 + 0.40 * 6 + 0.15 * 7 and calculates the points for genre component of the film. After all the components points are calculated for a movie, the points are again multiplied by a coefficient. This coefficient stands for the vitality and importance of the component. If the actor in a film is very important for user, he gives 9 points for actor coefficient. If the productor component is not important for user, he gives 2 over 10 for productor coefficient. All components are scored between 0 and 10 by the user, according to their vitality for himself. After the film s component points are calculated, they are multiplied by these coefficients and the final score for movie is obtained. By using this approach, all the films scores are calculated, the movies are sorted by their points, and top 8 films are suggested to the user. The user can view pointing details of movies if he wishes. The algorithm for groups benefits the algorithm for individuals. This algorithm again calculates points for all movies in the database and suggest the best movies for group. In this process, the film points that are calculated for seperate people in the group are taken into the account. While calculating the seperate members points that are given to the movies, the algorithm above is used recurrently. Lets assume that our group consists of four people, Ali, Ahmet, Ayşe and Fatma. For a single film, the film s component points, and by the way, total point are calculated according to group members. By using the algorithm we have built for individuals, lets assume that, Ali gave 45 points over 100, Ahmet gave 56 points over 100, Ahmet gave 63, and Fatma gave 39 over 100 to a single film. The points given by the group members are, 45, 56, 63, 39. In group suggestion algorithm, these points are calculated for all the films in the database and after calculations, the critical process starts. First, the average of points given for films are calculated, for example, a films average is (45 + 56 + 63 + 39) /4 = 50.75. Of course, sorting the films according to their average points does not provide healty and accurate results for satisfaction of all the members in the group. For instance, if the points were, 95, 85, 20, 20, the average would be high but, two members of the group would be unhappy, and all the members in the group wouldn t be satisfied. For this reason, we thought to sort the films by the minimum point that they have taken. Example, film A: 45, 52, 63, 72; film B: 34, 43, 67, 71. So we sort the films according to their minimum points, 45 and 34. Thus, by this algorithm, film A should be suggested, but, again, sorting the films for the least happy may not give accurate results because other users may love the film, and gave very high points, however the least happy person may block them. So, the average point of the movie is as important as the least happy persons point. So, if we consider least happy persons point : 34 and the average point : 58, we multiply the least happy persons point by 6, and average 4 and divide the point by 10; by this way, the impact of the least happy person has X

become 60%, and the impact of the average has become 40%. On this wise, the total point for the movie is calculated and sorted according to this point and the top 8 movies are listed. The database module consists of the design and implementation of the database. First, we have designed our database to work efficiently and fast. We have 34 tables in our database, actor information, genre informations and their percentages, film subjects, writer informations, productor informations, director informations, quefficients for components, the points that are given for all actors, genres, subjects etc., member informations and the films are stored in the database. We have used the imdb(internet movie database) database, which is opened for public usage and development. The imdb database informations were very detailed, so that we had to simplify the information to have an efficiently working, flexible and useful database. Registration and FeedBack modules covers getting the user input. While registration, user enters his name, surname, and other required fields and submits the form. After submitting his personal information, the system brings a screen for entering the coefficients, and asks him, How important is actor, genre, subject, director etc. for you? The user scores between 0 and 10. These points stands for the importance of the components. After this form is submitted, the system brings another screen, and requires user to give points for each actor, director, subject etc. Of course, a person is unable to score thousands of actors, directors, subjects, so, he/she enters the components name, gives point for it, and submits. The components that are not scored are considered as 5, by default. FeedBack module includes the scoring the films, that the user have watched. When the user selects a film to watch, the film is stored in database, and when user opens the feedback module, that film is brought and the system requires user to score it. The user can score all the components of the film after he watched it. When the feedback is submited, the users choices are updated in the database. The Website module includes the visual structure of the website. Lists of the films, scoring details, most liked/disliked actors, subjects etc., and other workouts form the website module, for the purpose to build a simple, stylish and useful website. After the studies and workings, the modules above are implemented successfully and a correctly working system is obtained. XI

İçindekiler : KİŞİSEL FİLM ÖNERME SİSTEMİ... I Kısaltmalar :... IV Tablo Listesi :... V KİŞİSEL FİLM ÖNERME SİSTEMİ... VIII PERSONAL MOVIE SUGGESTION SYSTEM... IX 1 GİRİŞ... 1 1.1 Problemin Tanımı... 1 1.2 Daha Önce Bu Konuda Yapılan Çalışmalar... 1 1.3 Yapılan Çalışma ve Sonuçları Hakkında Genel Bilgi... 3 1.4 Projenin Avantajları ve Dezavantajları... 5 1.5 Raporda Hangi Konular Hangi Bölümlerde Açıklanacak... 6 2 PROJE TANIMI, İŞ PLANI, MODÜLLERİN TANITIMI, TAKVİM PLANLAMASI, ANALİZ, MODELLEME VE TASARIM... 7 2.1 Proje Tanımı... 7 2.2 Projenin Kapsamı... 7 2.3 Risk Yönetimi... 7 2.3.1 Risk Tahminleri:... 8 2.3.2 Değerlendirme :... 8 2.3.3 Risk Yönetimi :... 9 2.4 Zamanlama... 9 2.5 İnsan Kaynakları... 10 2.5.1 Donanım Kaynakları... 10 2.6 Kullanıcı Gereksinimleri... 11 2.7 UML Use Case Diyagramları... 11 2.7.1 Use Case: Login... 12 2.7.2 Use Case : Siteye Kayıt... 12 2.7.3 Use Case: Film Öner(Suggest Films)... 14 2.7.4 Use Case: Geribesleme gönder(send feedback)... 15 2.8 UML Class Diyagramı... 15 2.9 Eşleştirme Algoritması... 16 3 YAZILIM... 18 XII

3.1 Film Önerme Sistemi, Sınıfları ve İlişkileri... 18 3.1.1 Model Sınıflar ve Arasındaki İlişkiler... 18 3.1.2 Kontrol, View Sınıfları ve Arasındaki İlişkiler... 26 4 SONUÇLAR VE YORUMLAR... 38 4.1 Tekil Kişi İçin Film Seçmek... 38 4.2 Gruplar İçin Film Seçmek... 41 4.3 Geribeslemelerin Etkisi... 47 REFERANSLAR... 53 XIII