1. Trang chủ
  2. » Luận Văn - Báo Cáo

Khóa luận tốt nghiệp Mạng máy tính và truyền thông: Phát triển ứng dụng web có tính năng gợi ý cho rạp chiếu phim

116 0 0
Tài liệu đã được kiểm tra trùng lặp

Đang tải... (xem toàn văn)

Tài liệu hạn chế xem trước, để xem đầy đủ mời bạn chọn Tải xuống

THÔNG TIN TÀI LIỆU

Thông tin cơ bản

Tiêu đề Phát triển ứng dụng web có tính năng gợi ý cho rạp chiếu phim
Tác giả Nguyen Hong Vi
Người hướng dẫn PGS. TS. Le Trung Quan
Trường học Trường Đại học Công nghệ Thông tin
Chuyên ngành Mạng máy tính và truyền thông
Thể loại Khóa luận tốt nghiệp
Năm xuất bản 2023
Thành phố TP. Hồ Chí Minh
Định dạng
Số trang 116
Dung lượng 40,93 MB

Nội dung

Khóa luận này đi sâu vào bài toán: “Làm như thé nào dé gợi ý, đề xuất cho người dùng những thông tin mà họ yêu thích?” Hệ thống đề xuất là một hệ thống cung cấp đề xuất cho người dùng về

Trang 1

ĐẠI HỌC QUOC GIA TP HO CHÍ MINH TRUONG DAI HOC CONG NGHE THONG TIN KHOA MANG MAY TINH VA TRUYEN THONG

APPLICATION FOR THE CINEMA

KY SU NGANH MẠNG MAY TÍNH VA TRUYEN

THONG

GIANG VIEN HUONG DAN PGS TS LE TRUNG QUAN

sow TP HO CHÍ MINH, 2023 x»cs

Trang 2

LỜI CÁM ƠN

Tôi xin chân thành gửi lời cảm ơn đến những người đã đóng góp và hỗ trợ tôi trong quá trình nghiên cứu và hoàn thành khóa luận tốt nghiệp này.

Đầu tiên, tôi muốn tri ân sự hướng dẫn và định hướng từ giảng viên hướng dẫn

của tôi, thầy Lê Trung Quân Sự kiên nhẫn, kiến thức sâu rộng và những ý kiến xây dựng

của thầy đã đóng vai trò quan trọng trong việc định hình và phát triển nội dung nghiêncứu của tôi Tôi rất biết ơn vì sự tận tâm và hỗ trợ của thầy suốt quá trình này

Tôi không thể không nhắc đến sự giúp đỡ và cống hiến của bạn bè va gia đình trong suốt quá trình này Những lời khích lệ, sự động viên và tình yêu thương của các

bạn đã truyền động lực và đồng hành cùng tôi trong những khoảnh khắc khó khăn

Đồng thời tôi cũng gửi lời cảm ơn đến anh, chị, bạn bè cùng khóa hỗ trợ, góp ý

kiến, cung cấp thông tin và kiến thức hữu ích giúp cho tôi thực hiện báo cáo hoàn thiện

dé tai hơn

Cuối cùng, tôi muốn gửi lời cảm ơn đến tất cả những người đã đóng góp dữ liệu,

thông tin và sự hỗ trợ cho quá trình nghiên cứu của tôi Đóng góp của các bạn đã làm

cho khóa luận tốt nghiệp của tôi trở nên phong phú và có giá trị

Lời cảm ơn sâu sắc của tôi dành cho tất cả những người đã đồng hành và hỗ trợ tôi trong quá trình hoàn thành khóa luận tốt nghiệp này Sự giúp đỡ của các bạn đã góp

phần quan trọng vào thành công của tôi

Trang 3

DANH MỤC BANG

Bảng 1 Giá tiền Netflix trên thị trường hiện nay 20Bảng 2 So sánh giá tiền của các rạp chiếu phim hiện nay

Bảng 3 Sự khác biệt của mô hình MVT và MVC -++ 28

Bảng 4 Ví dụ về utility matrix với hệ thống gợi ý -+ 78

Bảng 5 Vi dụ về Utility matrix với hệ thống gợi ý bộ phim 79

Bang 6 Xây dựng feature vector cho mỗi item : -:5ccccscss2 80

Bảng 7 Ví dụ về ham mắt mát của user

Bảng 8 Ví dụ đầu vào là Utility matrix dựa trên số rating

Bảng 9 Kết quả tinh utility matrix -2222222+z2222vvvvecrrrrrrrres 85Bang 10 Kết quả sau khi được chuẩn hóa (normalized utility matrix) 85

Bang 11 Kết quả sau khi sử dung Cosine Similarity - 86Bang 12 Thực hiện tính toán Normalized rating matrix - 87 Bang 13 Dua ra du đoán của | user và 1 Ifem - ¿+ + s«ex++=x+ 87 Bang 14 Tinh giá trị trung bình cua rating theo item eee 88 Bang 15 Xây dung normalized utility ImatTIX 5s 5< 55+ 5ss+ex+xzx> 88

Bảng 16 Xây dựng Item similarity matriX - 2 5+5cc5++ccczeccxee 88

Bảng 17 Dua ra dự đoán còn thiếu .-¿-222+z+2t22vvvvzrrrrrrrrres 89Bang 18 Bang so sánh mục đích và dau vào của các phương pháp 90

Bang 19 Điểm mạnh và điểm yếu của các phương pháp hệ gợi ý 92Bảng 20 Đánh giá độ chính xác dự đoán thuật toán Matrix Factorization 115 Bảng 21 Đánh giá độ chính xác dự đoán theo RMSE của MF và CE 116

Trang 4

DANH MỤC HÌNH

Hình 1 Website Galaxy Cinema ¿- ¿2-5 Scrstztrkrkerrrrrrkreree 16 Hình 2 Website CGV Cinemas - ¿5-5-5552 S*2*etsrsrerrrereree 17

Hình 3 Website LOTTE Cinema VN - 5555 552<+c+csccerreree 17

Hình 4 Website CinesfaT- 5c St tr rưưn 18 Hình 5 Mô hình và dữ liệu của Netflix ¿555cc 5c2+ss+xcxsvse> 19 Hình 6 Framework ReactJS

Hình 7 Hình ảnh minh họa JSX trong ReactJS.

Hình 8 Render lại toàn bộ UI trong DOM ao

Hình 10 Fetch API - s5 tt ket tk 11111111 rrrre 26 Hình 11 Logo DjangO - - + vn ngư 27

Hình 12 Model DjangO 6 + 1k TH HH nrưn 28

Hình 13 Query DjangO ¿ - + + 2S 212 2 2 22121012110111111 1c 29

Hình 14 Chu trình thực hiện của Data ¿25252 S+ccx+xsezvxvxeerrseexs 35

Hình 15 Các phương pháp recommendation

Hình 16 Amazon Echo (loa thông minh có trợ lý giọng nói)

Hình 17 Google Nest Hub (màn hình thông minh có trợ lý giọng nói) 38

Hình 18 Ring Video Doorbell (chuông cửa thông minh có video giám sát) 38

Hình 19 Philips Hue (hệ thống chiếu sáng thông minh) - 39

Hình 20 Nest Learning Thermostat (máy điều nhiệt thông minh) 39

Hình 21 Fitbit Charge 4 (máy theo dõi sức khỏe) -++5-<-5< 39

Hình 22 Peloton Bike + (xe dap tập thé dục thông minh) - 39Hình 23 Withings Body + (cân thông minh phân tích thành phần cơ thẻ) 40Hình 24 Apple Watch Series 6 (đồng hồ thông minh)

Hình 25 Oura Ring (vòng thông minh theo dõi giấc ngủ và hoạt động) 40

Hình 26 Sony PlayStation 5 (máy chơi game thế hệ tiếp theo) 40Hình 27 Xbox Series X (máy chơi game thế hệ tiếp theo) - 4I

Hình 28 Nintendo Switch (máy chơi game lai) - 5 5+ces++++ses+ 41

Hình 29 Oculus Quest 2 (tai nghe thực 7100 41

Hình 30 Razer BlackWidow Elite (bàn phím chơi game) 4I

Hình 31 Apple MacBook Pro (máy tính xách tay)

Trang 5

Hình 33.

Hình 34.

Hình 35.

Hình 36.

Hình 37.

Hình 38.

Hình 39.

Hình 40.

Hình 41.

Hình 42.

Hình 43.

Hình 44.

Hình 45.

Hình 46.

Hình 47.

Hình 48.

Hình 49.

Hình 50.

Hình 51.

Hình 52.

Hình 53.

Hình 54.

Hình 55.

Hình 56.

Hình 57.

Hình 58.

Hình 59.

Hình 60.

Hình 61.

Hình 62.

Hình 63.

Wacom Intuos Pro (máy tính bảng) - 555cc 42

Evernote (ứng dụng sắp xếp và ghi chú) -+ 42

LG OLED C1 Series (TV OLED cao cấp) -: -+ 43

Sonos Arc (âm thanh cao cấp với Dolby Atmos) 43

Apple TV 4K (trinh phat da phuong tién truc tuyén) Roku Streaming Stick(thiết bị phát trực tuyến giá cả phải chăng) 43 Bose QuietComfort 35 II (tai nghe khử tiếng ồn không day) 44

Hình anh thư viện Apache Mahout - - 5 + +©++<+<+x+c++ 44 Hình ảnh LensKet - - 6 S11 HH iưếc 44 Hình ảnh thư viện SUTpTISG - - <5 S+*ketererrrkekerrree 45 Hình anh Amazon Personalize -5-cs5s+cc+ccccserecr+ 45 Hình ảnh Google Cloud Recommendations AI 46

Hình ảnh Smart Ticketing and Access Control - 48

Hình ảnh kiểm soát môi trường và ánh sáng thông minh 49

Hình ảnh bảng hiệu và quảng cáo kỹ thuật só .- 49

Hình ảnh giám sát chỗ ngồi thông minh - 50

Hình anh quản lý tòa nhà thông minh ‹ 5-5 + 51

Hình ảnh frameworl Hình anh framework Spring Boot Hinh anh framework ExpressJS Hinh anh backend framework ASP.NET Core Hình anh framework Node.JS .54

Hnh ảnh framework Flask Hình ảnh framework Angular - 5-5-5 +c+c+sx+xsxexeree 55 Hình anh framework Ruby on Rails -5- 5555 5<+csc+ 55 Hình anh framework Laravel - ¿+ 5 +xexsrererrkekereree 55 Hình ảnh framework ReactJS ¿-¿-5- cccccsrerrkekereree 56 Hình anh framework VueJS - «5+ sxsxcxexererrrexekerrree 56 Kiến trúc phần mềm của IoT gateway - cc22sccc+ 58 Mô hình thúc đây hệ thống tư van cho IOT - 60 (a) Hệ thống lọc cộng tác dựa trên user-based, (b) Lọc cộng tác dựa

Trang 6

Hình 64 Hệ thống gợi ý dựa trên nội dung - -ccccccc+ccccvxee 62Hình 65 Ví dụ về hệ sinh thái IoT 2 ¿©¿+2+£+2£+zv22xzvzzxzesrsee 66Hình 66 Hình anh thư viện Apache Spark MLIib - 67 Hình 67.Hình anh thư viện Scikit-learn - «5+5 sx+xeersrerereeree 68 Hình 68 Mô hình ML với Azure Machine Learning -¿-+-+ 68

Hình 69 Hình ảnh Google Cloud Machine Learning - 68Hình 70 Sơ đồ chỉ tiết kiến trúc hệ thống .-.-:- ¿2+2 70Hình 71 So đồ fetch API của một website -:ccccce 70Hình 72 Mô hình thiết kế hệ thống -: +¿z+22+z++tczvcceee 72Hình 73 Sơ đồ thiết kế user case cho người dùng -: 72Hình 74 Sơ đồ thiết kế user case cho admin - ¿¿5cz-+ 73

Hình 75 Mô hình cơ sở dữ liệu ¿+ +55 ‡s‡EsEvrrkekekerrrrkrkerrke 73Hình 76 Sơ đồ các nhóm chính của hệ thống đề xuắt 74Hình 77 Ví dụ về hệ thông dé xuất phim cho người dùng 75Hình 78 Tổng quan về cách tiếp cận -222c:z++22vvvvvrrerrrrrrrer 76Hình 79 Tiến trình gợi ý trong hệ thống - ¿¿-+©5sz£+ 76Hình 80 Tiến trình lọc cộng tác -¿¿-++222++++222+++tttrxxererrrxeerrr 82

Hình 81 Lọc cộng tac dựa trên User-based va Item-based

Hình 82 Ví dụ về mô hình Kernel-Mapping Recommender

Hình 83 Mô hình gợi ý kết hop

Hình 84 Khởi tao class MF

Hình 85 Chuan hóa dữ liệu trong class MF

Hình 86 Tinh giá tri ham mat mát

Hình 87 Xác định các items, users và các rating - - «+ +-s+xece 94

Hình 88 Cập nhật X, W - + t1 Hư 95Hình 89 Hình 99 Phần thuật toán chính 2 2¿2+++2z+e+czxesrr+ 95

Hình 90.

Hình 91 Đánh giá kết quả bằng cách đo Root Mean Square Error

Hình 92 Hình 102 Load dit liệu - ¿+52 S++t+t+£exexekstsexerexexee 96 Hình 93 Tach tập thành dữ tập training va †esf -. +-5s«cc+c+csc+e 96Hình 94 Chuẩn hoá dựa trên user - 2+©++z+222++++22vv+zrztrrxeeerr 97

Trang 7

Hình 96 Khởi tạo class CF ¿- set r grrrrưên 97 Hình 97 Cập nhập ma trận khi có dữ liệu mới ¿-¿-«-«-«<+c++ 97 Hình 98 Tính toán normalized utility matrix và Similarity matrix 98

Hình 99 Cập nhập dữ liệu khi có dữ liệu mới - - s +=++x+se+ 98

Hình 100 Dự đoán kết qua o cssseeesscscssssstseessccessniesssccesssnnnsseceesnnneseeseessnntees 99Hình 101 Tìm tất cả các items ccccrrrrrrrrrrrrrrrrrrrirrirrrrrrree 99Hình 102 In kết quả recommendation -:¿+£222cvvvccrsrervreeeree 99Hình 103 Kết quả User-user CF ¿©2+++22+++tztvvvrrsrrvsrrrrrs 00

Hình 113 Giao diện chọn loại vé khi đặt vé xem phim 10Hình 114 Giao diện màn hình các ghế của bộ phim 10Hình 115 Giao diện chọn thức ăn khi có nhu cầu mua 11

Hinh 116 Giao dién thanh toan 12Hình 117 Chuan hoá dựa trên user

Hình 118 Chuẩn hoá dựa trên item - 22 52+x2Ex2EE2ExetEkerrxerxee 13

Hình 119 User-user CF ¿+ + SE k xiên 14

Hình 120 Item-item CTE - - +6 S4 St 121 1 1S 11121 1 g1 x1 rrêc 14

Hình 121 Kết quả với User-user CF ::- :c+2v+z++2cvvvrrrrrsecee 15Hình 122 Kết quả với Item-item CF 22c++22222vvvvccrzrrrrr 15

DANH MUC HiNH

Trang 8

DANH MỤC CHỮ VIET TAT

7 JSX Javascript Extensible Markup Language

8 HTML Hyper Text Markup Language

9 DOM Document Object Model

10 MVCC Multi-version concurrency control

11 UUID Universally Unique IDentifier

12 API Application Programming Interface

13 Al Artificial Intelligence

14 RSS Really Simple Syndication

15 MVC Model View Control

16 MVT Model-View-Template

17 uuCF User-User Collaborative Filtering

18 iiCF Item-Item Collaborative Filtering

19 SEO Search Engine Optimization

20 MIT Massachusetts Institute of Technology

21 ML Machine learning

22 LSTM Long Short Term Memory

23 SVM Support Vector Machine

24 PCA Permanent Court of Arbitration

25 DQN Deep Q-Networks

26 ORM Object Relational Mapping

Trang 9

5 Phương pháp nghiên cứu

IV Phạm vi và giới hạn s1 Ex vs ng rey 32

V Cấu trúc €z⁄⁄⁄2 À Â - Lee 33

CHƯƠNG 2 CÁC NGHIÊN CỨU, CÔNG NGHE

I Recommender System (RS) ¿+5 + SSsxsesEsrereeeererrreerre 34

1 Giới thiểếi HP ( 34

2 Giải thuật

3 Công nghệ

4 Giải pháp liên quan ¿+ + + 9S*SE2EEkk E111 1111k 44

II Web application cinema sySt€Tm ¿óc St stsrerrkererrkeree 47

IILỨng dụng của IOT trong hệ thống rap chiéu phim ‹ 48

IV Những công nghệ develop liên quan Net, Django, C++, ReactJS 52

Mi — 57

VỊ Virtualization

VỊI.IoTs apps dev frame€WOTKS óc St kg rrreree 67

Trang 10

CHƯƠNG 3 THIET KE KIEN TRÚC VÀ CHỨC NANG HE

¡”:0) ca 70

I Thiết kế kiến trúc -22+++222EE2222++tt2EEEEY+vrrttrrrrrrrrrrrrrrrrrrree 70

II Giải thuật, hướng tiếp 6.017 : 1 74

II.Hiện thực giải thuật - c5 Set 92

CHƯƠNG 4 THỰC NGHIỆM VÀ ĐÁNH GIÁ 102

I Phương pháp thực nghiệm ¿ ¿5555 S+Ssttetererererrrerree 102

II Phân tích kết quả và đánh giá ccvccce2222cvvveccrrrrrxes 104

CHƯƠNG 5 KET LUẬN VÀ HƯỚNG PHÁT TRIEN

TÀI LIEU THAM KHẢO -cccssssscseeerssrrrrre 118

Trang 11

TÓM TẮT

Trong bối cảnh hiện nay, khi mà các phương tiện xã hội (social media) phát

triển nhanh chóng (chẳng han, Facebook, Zalo, Tiltok, Twitter, ) thì các thông tin

đặc trưng từ phương tiện xã hội trở nên ngày càng hữu ích cho hoạt động tư vấn ngườidùng Theo Jiliang Tang và cộng sự, 2014, tư vấn xã hội được hình thành và phát

triển nhanh chóng dựa trên việc khai thác các thông tin đặc trưng bồ sung từ mạng xã

hội cho tư van người dùng Hệ tư van truyền thống hướng tới tư vấn cá nhân hóa, tức

là tư vẫn các mục mà một người dùng cá nhân có thể ưa thích Đặc trưng cộng đồng(community) trong mạng xã hội cho phép phát triển các chức năng tư vấn nhóm (cộngđộng) mà đối tượng cần tư van là các nhóm người dùng Theo Ludovico Boratto,

2011, tư vấn nhóm hướng tới tư vấn các mục mà một nhóm có thé ưa thích, bằng cách

kết hợp các sở thích của các cá nhân trong nhóm

Khóa luận này đi sâu vào bài toán: “Làm như thé nào dé gợi ý, đề xuất cho

người dùng những thông tin mà họ yêu thích?”

Hệ thống đề xuất là một hệ thống cung cấp đề xuất cho người dùng về một sốtài nguyên nhất định như sách, phim, bài hát, v.v., dựa trên một số tập dữ liệu Hệthống đề xuất phim thường dự đoán người dùng sẽ thích phim gì dựa trên các thuộctính có trong phim đã thích trước đó Hệ thống khuyến nghị như vậy có lợi cho các

tổ chức thu thập dữ liệu từ một lượng lớn khách hàng và mong muốn cung cấp hiệu

qua các đề xuất tốt nhất có thé Rất nhiều yếu tố có thé được xem xét trong khi thiết

kế hệ thống giới thiệu phim như thể loại phim, diễn viên có mặt trong đó hoặc thậm

chí là đạo diễn của phim Hệ thống có thé dé xuất phim dựa trên một hoặc sự kết hợp

của hai hoặc nhiều thuộc tính Trong bài báo này, hệ thống đề xuất đã được xây dựng

dựa trên loại thể loại mà người dùng có thể thích xem hơn Phương pháp được áp

dụng để làm như vậy là lọc dựa trên nội dung bằng cách sử dụng tương quan thể loại.Tập dữ liệu được sử dụng cho hệ thống là tập dữ liệu Movielens

Trang 12

CHƯƠNG 1 GIỚI THIỆU

I Tổng quan

Web đã trở thành một phần hiển nhiên của toàn cau; và sự xuất hiện của nónhư một bộ máy quan trọng đề phá vỡ các rào cản đa dạng giữa các biến thể vật lý và

ranh giới toàn cầu Việc đưa web vào các hoạt động đời sống hàng ngày của chúng

ta trong thời kỳ đương đại này đã trở nên gần như không thê tránh khỏi và khá nhiều

người dan dựa vào web cho nhiều mục đích khác nhau, từ đặt trên quan điểm của họ

và đọc xem của người khác trong khi cũng bình luận về những quan điểm đó,

e-learning , ngân hàng điện tử, thư viện điện tử và thương mại điện tử, v.v Số lượng

tài liệu có sẵn trên web đủ để cải thiện các cách thức giáo dục và nhu cầu nghiên cứu

đa dạng của công chúng bây giờ và sau đó Con đường học tập trên web chỉ cần biết

cách tốt nhất dé khám phá và tiễn bộ hơn là phát minh lại bánh xe cho khía cạnh kiến

thức đã được nghiên cứu trước đó.

Trong tương lai của internet, mà các đường viền của nó dần trở nên rõ ràng,hai sự phát triển này - Dữ liệu lớn và IoT - gắn bó chặt chẽ với nhau trong một hệ

sinh thái rộng lớn và phức tạp Trong hệ thống này, dữ liệu được thu thập trên cơ sở

các trang web đã truy cập của chúng tôi, các hoạt động của chúng tôi trên mạng xã

hội, điện thoại thông minh và thông qua nhiều cảm biến của thế giới vật lý Chínhdòng chảy này là nền tảng của Dữ liệu lớn Một luồng dữ liệu (hoặc luồng các luồng

khác nhau) về cơ bản, không cần diễn giải, có ít giá trị hơn, nhưng dựa trên phân tích

tạo ra thông tin mà chúng ta có thể sử dụng, do đó dữ liệu trở nên có giá trị Kết quả

của phân tích - chăng hạn như chiếc xe của Google cũng có thể được chuyên đồi trựctiếp trong hành động mà không cần sự can thiệp của con người: rẽ phải hoặc giảm tốc

độ để vượt qua người đi xe đạp (Vanderbilt, 2012) Internet nay là một cỗ máy chuyển

động liên tục của đầu vào và đầu ra mà dữ liệu là nguyên liệu thô

Khi ngày càng nhiều sản phẩm và dịch vụ có đữ liệu là một thành phần quantrọng, tác động của hệ thống này trở nên lớn hơn và thâm nhập vào các mao mạch

của xã hội chúng ta Không phải là không có gì, chính phủ Hoa Kỳ gần đây đã công

bố khoảng 200 triệu đô la để đầu tư vào nghiên cứu về Dữ liệu lớn (Kalil, 2012) Do

đó, điều quan trọng là phải hiểu rõ hơn về cách thức hoạt động của hệ thống này, vai

Trang 13

Cách thức mà hệ thống này được phát triển cũng đặt ra những câu hỏi quantrọng liên quan đến sức mạnh sáng tạo của internet trong tương lai Như được mô tảbởi Wheeler (2012) trong bài thuyết trình của mình, sự đổi mới web cho thấy sự pháttriển của Internet đã trải qua nhiều giai đoạn như thé nào.

Il Dat vấn đề

Trong thời dai 4.0, số lượng giao dịch dữ liệu xảy ra mỗi phút đã tăng lên theocấp số nhân Lượng dữ liệu khổng lồ đã tăng lên đáng kể cùng với số lượng người dùng

trên Internet Tuy nhiên, không phải tất cả dữ liệu có sẵn trên Internet đều được sử dụng

hoặc cung cấp kết quả thỏa đáng cho người dùng Dữ liệu với khối lượng khổng lồ nhưvậy thường không nhất quán và nếu không xử lý thông tin nay đúng cách, nó sẽ bị lãngphí Trong những trường hợp như vậy, người dùng phải chạy tìm kiếm nhiều lần trước

khi cuối cùng họ có được những gì họ đang tìm kiếm ban đầu.

Hiện nay, trên thị trường đã xuất hiện những website đặt vé xem phim đang

được ưa chuộng như:

“ Galaxy Cinema: Galaxy Cinema là một chuỗi rạp chiếu phim phô biến tại Việt

Nam Trang web của Galaxy Cinema cho phép người dùng tìm kiếm thông tin về

các phim đang chiếu, lịch chiếu và đặt vé trực tuyến.

UNG DUNG GALAXY CHON SUAT CHIEU

Ke TOAN MỚI —

‘Mua vé online nhanh chồng,

“Thư viện điện ảnh phong phú, đa dang Giao điện thành viên thông minh, đa dụng

“ CGV Cinemas: CGV là một trong những chuỗi rạp chiếu phim lớn nhất tại

Việt Nam Trang web CGV.vn cho phép người dùng tìm kiếm lịch chiếu, đặt

vé và chọn chỗ ngồi dễ dàng CGV cũng cung cấp các dịch vụ khác như đặt

Trang 14

Hình 2 Website CGV Cinemas

“ LOTTE Cinema VN: Lotte Cinema là một chuỗi rap chiéu phim có mặt tại

nhiều thành phố lớn ở Việt Nam Trang web Lotte Cinema cho phép người dùng

tìm kiếm lịch chiếu, đặt vé và cập nhật thông tin về các phim đang chiếu

s* Cinestar: Các phim va suất chiếu sẽ được cập nhật liên tục Cả thông tin khuyé

mặt trên web.

Trang 15

Hình 4 Website Cinestar

Điểm nổi bật của các web xem phim:

Đặt vé trực tuyến: Trang web đặt vé xem phim cho phép người dùng

đặt vé một cách đễ dàng và thuận tiện ngay từ nhà Người dùng có thể

chọn suất chiếu, chỗ ngồi, và số lượng vé một cách linh hoạt và tiện lợi.

Lịch chiếu linh hoạt: Trang web đặt vé cung cấp thông tin chỉ tiết vềlịch chiếu của các rạp và phim trong thời gian gần nhất Người dùng cóthé dé dang tìm hiểu về các suất chiếu, thời gian chiếu, và phòng chiếutương ứng.

Da dang phim và thé loại: Trang web đặt vé xem phim thường cung cấpmột danh sách phim đa dạng với nhiều thê loại khác nhau Người dùng

có thé dé dàng tìm kiếm và chọn phim theo sở thích cá nhân, từ phim

hành động, hài hước, tâm lý, viễn tưởng đến phim hoạt hình và gia đình

Thông tin phim chỉ tiết: Trang web đặt vé cung cấp thông tin chỉ tiết vềcác bộ phim, bao gồm diễn viên, đạo diễn, thời lượng và nội dung tóm

tắt Điều này giúp người dùng có cái nhìn tổng quan về phim trước khiquyết định xem

Hệ thống thanh toán an toàn: Các trang web đặt vé xem phim thường

cung cấp các phương thức thanh toán an toàn và tiện lợi như thẻ tíndụng, ví điện tử và Internet Banking Người dùng có thể hoàn tat thanh

toán một cách an toàn và nhanh chóng trực tuyến

Trang 16

© Ưu đãi và khuyến mãi: Trang web đặt vé thường cung cấp các ưu đãi

và khuyến mãi đặc biệt cho người dùng Điều này có thể bao gồm giảmgiá vé, combo ăn uống, hoặc qua tặng khác Người dùng có thé theo doicác chương trình khuyến mãi và tận hưởng những ưu đãi này

e Tinh năng đánh giá và nhận xét: Một số trang web đặt vé cho phép

người dùng đánh giá và viết nhận xét về các bộ phim sau khi xem Điềunày giúp người dùng có cái nhìn khách quan hơn về chất lượng phim

và đồng thời chia sẻ ý kiến của mình với cộng đồng

Ngoài ra, hiện nay trên thị tường còn xuất hiện một website xem phim trực tiếp trên ứng dụng, đó là Netflix Netflix đã thiết kế một hệ thống xếp hạng toàn diện theo

cách cá nhân hóa nhất có thé cho từng người đăng ky Netflix đã đưa ra mô hình xếphạng, dựa trên xếp hạng hiện có của người dung và mức độ phổ biến của phim

Netflix có thé du đoán xếp hang trong tương lai của người dùng đó va đưa ra các

đề xuất phù hợp.

learning approaches.

eFC C)) Audio & subtitles

Hình 5 Mô hình và dữ liệu của Netflix

Basic Standard Premium

Gia tiền 180.0008/tháng | 220.000‘/ thang | 260.000 / tháng

Độ phân giải HD Không Có Có

Trang 17

Độ phân giải 4K | Không | Không Có

Xem trên nhiều thiết bị Có | Có Có

Số máy được xem 1 2 4

cùng lúc

Bang 1 Giá tiên Netflix trên thị trường hiện nay.

Ngày chiều Suất chiếu

Trước 17h

Rạp chiếuGiá vé 2D của các rạp chiêu phim ở Thành phố Hồ Chí Minh

Bang 2 So sánh giá tiên của các rạp chiêu phim hiện nay.

Bên cạnh những điểm nỗi bật của các rạp chiếu phim thì cũng có những nhượcđiểm như giá cả của các rạp cao so với sinh viên, chưa đề xuất cho người dùng những

bộ phim nao phù hợp với người dùng,

Vi dụ về bài toán khuyến nghị (Recommender System - RS):

® Input:

© Cho tập người dùng U, mỗi người dùng +; thuộc U có các đặc điểm I =

{i, lala I n}

Trang 18

© Một tập các sản phẩm, dịch vụ P, mỗi sản phẩm p; có các đặc điểm đặc

trưng J = {j1, j2.j3 ]m}

o Một ma trận P = (rj) với i = 1, n; j=l, , thé hiện mối quan hệ giữa

tập người dùng U và tap sản phẩm P Trong đó, rj là đánh giá của ngườidùng u¡ cho sản phẩm pj vam lần lượt là số người dùng và số san phẩm

© Output:

© Danh sách các sản phẩm p; thuộc P có độ phù hợp với người dùng u;

thuộc U nhất

Để giải quyết ví dụ trên, các nhà nghiên cứu đã đưa ra các hệ thống đề xuất

Hệ thống đề xuất cung cấp thông tin liên quan cho người dùng bằng cách tính đến

các sở thích trước đây của họ Dữ liệu được lọc và tùy chỉnh cá nhân theo yêu cầu

của người dùng Với ngày càng nhiều dữ liệu có sẵn trên Internet, các hệ thống đềxuất đã trở nên thực sự phô biến, do tính hiệu quả của chúng trong việc cung cấpthông tin trong một khoảng thời gian ngắn

Dé giải bài toán trên, chúng ta cần xây dựng hàm F( ui, p;) dé đo độ phù hợp

sản phẩm pj đối với người dùng ui, từ đó sẽ lấy ra được danh sách các sản pham/dich

vụ phù hợp (có khả năng người dùng chọn) cao nhất

Input:

© _ Thông tin người dùng: Day bao gồm thông tin cá nhân của người ding

như tuổi, giới tính, vị tri địa lý, sở thích, lịch sử mua hàng, hoặc bat kỳthông tin nào có liên quan đến sở thích và hành vi tiêu dùng của người

dùng.

¢ Di liệu sản phẩm: Dữ liệu về các sản phẩm, bao gồm thông tin như tên

sản phẩm, mô tả, danh mục, giá cả, đánh giá của khách hàng, v.v

Output:

¢ Khuyến nghị sản phẩm: Dựa trên thông tin người ding và dữ liệu sản

phẩm, hệ thống sẽ dé xuất đanh sách các sản phẩm phù hợp với ngườidùng Các khuyến nghị này có thé dựa trên sở thích trước đây của ngườidùng, các sản phẩm tương tự đã mua hoặc được đánh giá cao bởi người

dùng khác có sở thích tương tự.

Trang 19

Ví dụ:

Xếp hạng khuyến nghị: Đối với mỗi sản phẩm được khuyến nghị, hệthống có thé cung cấp một xếp hạng dựa trên sự phù hợp với ngườidùng Xếp hang này có thể được tính dựa trên các yếu tố như sự tương

đồng với sở thích trước đây của người dùng, độ tin cậy của đánh giá

sản phẩm, độ phổ biến của sản phẩm trong cộng đồng người dùng, v.v.Lời giải thích: Để giúp người dùng hiểu lý do vì sao sản phẩm đượckhuyến nghị, hệ thống có thé cung cấp lời giải thích ngắn gọn Lời giảithích này có thê dựa trên sự tương đồng của sản phẩm với sở thích trướcđây của người dùng, các đặc điểm chung với các sản pham đã mua trước

đó, hoặc các đánh giá tích cực từ người dùng khác.

Khuyến nghị sản phẩm: "The Shawshank Redemption" (phim),

"Inception" (phim), "Dark Side of the Moon" (album nhạc).

Xép hang khuyén nghi: The Shawshank Redemption 4/5, Inception

-4.5/5, Dark Side of the Moon - 4.8/5.

Loi giai thich: "The Shawshank Redemption" va "Inception" duge

khuyến nghị vi sự tương đồng với sở thích trước đây của người dùng

trong lĩnh vực phim ảnh "Dark Side of the Moon" được khuyến nghị

vì nó là một album nhạc kinh điển và được đánh giá cao bởi nhiều người

dùng.

toán ví dụ trên, cho ta thấy Netflix đang là một web xem phim rất được ưa

chuộng và nổi tiếng hiện nay Nhung Netflix là một web xem phim online tại nhà với vi

mô nhỏ Vì vậy tôi áp dụng ý tưởng của Netflix vào rạp chiếu phim, bên cạnh đó cũng

sẽ giúp cho giá cả hợp lý hơn cho các bạn sinh viên muốn đi xem phim với bạn bè ở rạphoặc rat tiện với các bạn it xem phim nhưng lâu lâu muốn đi xem một lần Thì đề tài web

xem phim này của tôi sẽ giúp ích và phát triển một web xem phim cho người dùng với

một giá cả hợp lý và một ứng dụng tìm xem vé xem phim một cách hợp lý nhất

Trang 20

Trong thương mại, hệ thống gợi ý mang lại nhiều lợi ích cho người dùng và sử

dung dịch vụ (lonos, 2017) Hầu hết các công ty thương mại lớn như: Amazon, CDNOW, eBay, Alibaba, MovieFinder, Youtube, Facebook., đều sử dụng kỹ thuật gợi ý trong

website của họ để nâng cao trải nghiệm của khách hàng, nâng cao chất lượng dịch vụ vàtăng doanh thu bán hàng Tuy nhiên, ở Việt Nam lại có số lượng website thương mại tíchhợp hệ thống gợi ý không nhiều Ví du, các website đặt vé xem phim như Cinestar, CJ

CGV, Lotte Cinema,

Website bán vé xem phim trực tuyến có hỗ trợ tính năng dé xuất gợi ý phim chongười dùng của tôi ra đời với phương châm mang đến sự tiện lợi và hiện đại cho ngudi

tiêu dùng Việt Nam Website của tôi hướng tới một phân khúc thi trường vừa va nhỏ với

đối tượng khách hàng là giới trẻ, những bộ phim được yêu thích sẽ được cập nhật thường

xuyên, đón đầu xu hướng nhằm thu hút được giới trẻ Ngoài ra, tôi muốn đưa đến kháchhàng những chức năng hấp dẫn như đề xuất cho khách hàng những bộ phim đang nỗi

hoặc những bộ phim yêu thích dựa trên lượt xem của người dùng với giá cả hợp lý, đáp

ứng thị trường trong nước, đặt biệt áp dụng ưu đãi cho các bạn sinh viên, học sinh.

Ill Giải pháp

1 Framework ReactJS

ReactJS là một thư viện JavaScript phổ biến và mạnh mẽ được phát triển bởi

Facebook Nó được sử dụng đề xây dựng giao diện người dùng (UI) đáp ứng và tương

tác trong các ứng dụng web đơn trang (Single-Page Applications) và các ứng dụng di động.

Hơn nữa, để tăng tốc quá trình phát triển và giảm thiểu những rủi ro có thể xảy ra trong khi coding, React còn cung cấp cho chúng ta khả năng Reusable Code (tái sử dụng

code) bằng cách đưa ra 2 khái niệm quan trọng bao gồm:

Trang 21

JSX (JavaScript XML): là một dạng cú pháp dạng XML/HTML được React sử

dụng Các bộ tiền xử lý Babel dé chuyển đổi text dạng HTML có trong các fileJavaScript thành các đối tượng JavaScript tiêu chuẩn

JavaScript HTML ReactJS

Hình 7 Hình ảnh minh họa JSX trong ReactJS.

“ Virtual DOM: là một node dạng cây liệt kê các thành phan, thuộc tinh và nội dung

của chúng dưới dạng Object và đặc tính Chức năng render của React tạo ra mộtnode cây ngoài các thành phần React Sau đó, nó cập nhật mô hình cây này đểphản hồi lại các thay đổi trong mô hình dữ liệu gây ra bởi các hành động khác

nhau do dùng hoặc hệ thống thực hiện.

Browser Virtual DOM

K

Hình 8 Render lại toàn bộ UI trong DOM ao

1.1 Components:

Trong React, chúng ta xây dựng trang web sử dụng những thành phần

(component) nhỏ Có thể tái sử dụng một component ở nhiều nơi, với các trạng thái hoặccác thuộc tính khác nhau, trong một component lại có thé chứa thành phan khác Giúp

bảo trì mã code khi làm việc với các dự án lớn Một React component đơn giản chỉ cần

một method render Có rất nhiều methods khả dụng khác, nhưng render là method chủ

Trang 22

1.2 Prop và State:

Props: là một cách đề truyền dữ liệu từ component cha (parent component) xuống

component con (child component) Prop là một giá trị không thay đổi (immutable) vàchi đọc được từ component con Đề truyền prop vào một component con, bạn chi cần

gán giá trị cho thuộc tính của component con trong JSX của component cha.

Trong ReactJS, một component cũng có thé có "state" (trang thái) State là một

đối tượng trong ReactJS chứa các giá trị có thể thay đổi trong quá trình thực thi củacomponent Khi state của một component thay đồi, ReactJS sẽ tự động render lạicomponent đó dé cập nhật giao diện.lưu trữ thông tin về component nhưng là lưu trữ

đữ liệu động của một component.

2 PostgreSQL 2.1 Giới thiệu:

e PostgreSQL là một hệ quản trị cơ sở dữ liệu quan hệ (Relational Database

Management System - RDBMS) mã nguồn mở Nó được phát triển từ dự

án POSTGRES vào những năm 1980 tại Đại học California, Berkeley.

PostgreSQL là một công cụ mạnh mẽ và đáng tin cậy cho việc quản lý cơ

sở dữ liệu quan hệ và cung cấp nhiều tính năng tiên tiến

PostgreSQL

Hinh 9 Hé quan tri co so dit ligu PostgreSQL

2.2 Tinh năng:

© Quan hệ cơ sở dữ liệu: PostgreSQL cho phép lưu trữ và truy van dữ liệu

trong cấu trúc quan hệ, sử dụng các bảng, hàng và cột

¢ - Ngôn ngữ truy van SQL: PostgreSQL tuân thủ chuân SQL và hỗ trợ cú

pháp và lệnh SQL phong phú Nó cung cấp một loạt các toán tử, hàm

và câu lệnh dé thao tác với dit liệu

Trang 23

© Đồng thời: PostgreSQL hỗ trợ xử lý đồng thời, cho phép nhiều kết nói

cùng truy cập và thao tác trên cơ sở dữ liệu cùng một lúc mà không xảy

ra xung đột.

© Giao dịch: PostgreSQL tuân theo các nguyên tắc ACID (Atomicity,

Consistency, Isolation, Durability) dé đảm bảo tính nhất quán và an

toàn trong quá trình thực hiện các giao dịch.

¢ Tính toàn vẹn dữ liệu: PostgreSQL hỗ trợ các ràng buộc dé đảm bao

tính toàn vẹn dữ liệu, bao gồm ràng buộc khóa ngoại, ràng buộc duynhất và ràng buộc kiểm tra

e Kha năng mở rộng: PostgreSQL có khả năng mở rộng linh hoạt, cho

phép mở rộng dọc (scale-up) bằng cách tăng cường phần cứng hoặc mởrộng ngang (scale-out) bằng cách phân chia dữ liệu và sử dụng các node

cơ sở dữ liệu phan tán.

© Mã nguồn mở: PostgreSQL là một dự án mã nguồn mở, điều này có

nghĩa là mã nguồn của nó được công khai, cho phép cộng đồng phát

triên và cải tiên.

Hinh 90 Fetch API.

Fetch API là một giao diện trong JavaScript, cung cấp một cách tiếp cận mới dégửi và nhận dữ liệu qua mạng Nó được sử dụng đề thực hiện các yêu cầu HTTPbất đồng bộ từ máy khách đến máy chủ và xử lý phản hồi trả về

4 Django

Trang 24

Python là một ngôn ngữ rat mạnh trong lĩnh vực AI (Artificial Intelligence) cũng như các ứng dụng liên quan Python cũng có một vài framework hỗ trợ trong việc phát

triển web như là: Django, Flask, Pyramid,

Django là một Framework Web Python bậc cao, khuyến khích phát triển nhanh chóng và thiết kế thực dụng, gọn gàng.

Django được phát triển dựa trên các nguyên tắc chính:

$% Mô hình MTV(Model-Template-View): sử dụng mô hình MTV để tổ chức code

va quản lý logic của ứng dụng web Mô hình này tách biệt phần xử ly dữ liệu(Model), phần hiển thị giao diện (Template) và phần xử lý yêu cầu và phản hồi(View) Điều này giúp tách rời các thành phan và làm cho việc phát triển và bảo

trì đễ dàng hơn.

> ORM (Object-Relational Mapping): Django cung cấp một ORM mạnh mẽ

cho phép nha phát triển tương tác với cơ sở dữ liệu quan hệ bang cách sử

dụng các đối tượng Python thay vì viết truy vấn SQL trực tiếp Điều này

giúp đơn giản hóa việc làm việc với cơ sở dữ liệu và tăng tính di động của

ứng dụng.

Hỗ trợ giao diện quản trị (Admin interface): Django đi kèm với một giao

diện quản trị tích hợp sẵn, cho phép người phát triển dễ dàng quản lý dữ

liệu và tương tác với các mô hình trong ứng dụng Giao diện quản trị có

thể tùy chỉnh và mở rộng đề đáp ứng các yêu cầu cụ thể của ứng dụng.

Bảo mật: Django cung cấp các công cụ và cơ chế bảo mật tích hợp, bao

gồm xác thực người dùng, quản lý phiên làm việc, xử lý mã hóa và phòng

ngửa các cuộc tân công pho biên.

Trang 25

> Cộng đồng phát triển lớn: Django có một cộng đồng phát triển mạnh mẽ

và nhiều tài liệu hướng dẫn, góp phần vào việc hỗ trợ và cải thiệnframework Bạn có thé tìm thấy nhiều gói mở rộng (packages) và thư việncủa bên thứ ba đề giúp tăng tính linh hoạt và mở rộng của Django

4.2 Tìm hiểu về MVT model của Django

Template Model

Logical data structure Presentation Layer

data to display

input by user

View

Data Formating

Hinh 112 Model Django

Mô hình MVT View-Template) là biến thé của mô hình MVC

(Model-View-Controller) Về bản chất MVT va MVC đều giống nhau, đều chia ứng dụng ra

Mô hình MVC Mô hình MVT Chức năng

Làm việc với cơ sở dữ

Model Model l

liệu

View Template Hiền thị giao diện

Controller View Xử lý logic

Bảng 3 Sự khác biệt của mô hình MVT và MVC

Django có di theo mô hình MVC (Model View Control) tách rời phan logic của ứng dụng thành ba thành phan chính: Model, View và Template:

Trang 26

© Model: Model đại diện cho dữ liệu và quản lý truy cập và tương tác với

cơ sở dit liệu Trong Django, Model được định nghĩa bằng các lớp Python

trong file models.py Mỗi lớp Model tương ứng với một bảng trong cơ sở

đữ liệu Model định nghĩa các trường (fields) và quan hệ giữa các bảng.

© View: View là thành phan xử lý logic của ứng dụng Nó nhận yêu cầu từ

người dùng, tương tác với Model dé lay đữ liệu va xử lý nghiệp vu, sau đó

trả về phản hồi (response) cho người dùng Trong Django, View thường

là các hàm hoặc phương thức của lớp trong file views.py View xử lý cácyêu cầu HTTP như GET, POST và thực hiện các thao tác CRUD (Create,

Read, Update, Delete) trên dữ liệu.

© Template: Template đại diện cho giao diện người dùng (UI) của ứng dụng.

Nó chứa HTML và các đoạn mã template (template tags) để hiển thị dữ

liệu được lay từ Model và xử lý bởi View Template cung cấp cú pháp và

lược đồ đề hiền thị dữ liệu theo cách mong muốn Trong Django, Template

thường là các file HTML với phần mở rộng html Django sử dụng hệ thống template engine dé kết hợp các dữ liệu động vào template va tạo ra giao diện cuối cùng đề trình bày cho người dùng.

HTTP URLS

Request (urls.py)

Forward request to

appropriate view

Model readiwrite View HTTP Response

(models.py) [*—~ data | (viewspy) > (HTML)

Template

(<fiename>.html

Hình 123 Query Django

e@ Quy trình hoạt động của mô hình MVT trong Django như sau:

© Người dùng tương tác với ứng dụng web và gửi yêu cầu (request) lên máy

chủ Django.

Trang 27

© Django xác định URL tương ứng với yêu cầu và chuyền nó đến View

tương ứng.

© View tiếp nhận yêu cầu, thực hiện logic xử lý, truy cập dữ liệu từ Model

nếu cần, và chuân bị dữ liệu dé hiền thị trong giao diện.

© View chọn một Template phù hợp và truyền đữ liệu vào đó.

© Template sử dung dit liệu nhận được từ View và kết hợp nó với cú pháp

HTML để tạo ra giao diện người dùng cuối cùng (rendered template).

© Giao diện được trả về từ máy chủ Django dưới dạng phản hồi (response)

và được hiển thị trên trình duyệt của người dùng

4.5 Ung dụng của Django

® Phát triển ứng dụng web: Django được sử dụng rộng rãi dé xây dựng

các ứng dụng web đa chức năng như trang web thương mại điện tử,

mạng xã hội, hệ thông quản lý nội dung (CMS), các ứng dụng dựa trên

dữ liệu, blog, và nhiều hơn nữa

@ API Backend: Django cung cấp khả năng xây dựng các API

(Application Programming Interface) cho ứng dụng di động va ứng

dụng đa nền tảng Django REST Framework là một thư viện phổ biếnđược sử dụng cùng Django đề xây dựng các API RESTful

® Quan lý nội dung: Django có các tinh năng mạnh mẽ cho việc quản lý

nội dung, giúp tạo và quản lý nội dung trên các trang web và ứng dụng

CMS.

® Hệ thống đăng nhập và xác thực: Django sử dung tính năng tích hợp

của Django hoặc các thư viện b6 sung như Django Allauth, việc xây

dựng hệ thống đăng nhập và xác thực trở nên dé dàng và bảo mật

® Trang quản trị (Admin Site): trang quản trị Django, người phát triển có

thể dễ dàng tạo và quản lý các mô hình dữ liệu, thêm, sửa, xóa và tìmkiếm dữ liệu một cách thuận tiện

® Công cụ phân tích dữ liệu: Django sử dụng các thư viện như Django

ORM (Object-Relational Mapping), Django có thé tương tác với cơ sở

dữ liệu và thực hiện các truy vấn phức tạp để phân tích và hiển thi di

Trang 28

Phương pháp nghiên cứu

Đồ án sử dụng các phương pháp nghiên cứu hướng đến thực tiễn đềphát triển và hoàn thiện ứng dụng:

Nghiên cứu thị trường: Bat đầu bằng việc nghiên cứu thị trường dé hiểu

về nhu cầu và yêu cầu của khách hàng khi sử dụng một trang web đặt

vé xem phim Tham khảo các website đặt vé xem phim lớn nhưCinestar, CGV, tập trung vào các điểm chung giữa các website dé dựavào đó xây dựng và phát triển ý tưởng

Xác định yêu cầu và phân tích chức năng: Dựa trên thông tin thu thậpđược từ nghiên cứu thị trường, xác định các yêu cầu chức năng và phi

chức năng của trang web đặt vé xem phim Điều này có thể bao gồm

chức năng đặt vé, tìm kiếm phim, hiền thị lịch chiếu, quản lý tài khoản

người dùng, thanh toán trực tuyến và nhiều tính năng khác

Thiết kế giao điện người dùng: Sử dụng framework ReactJS đề tạo một

giao diện đẹp mắt Dựa trên yêu cầu và chức năng đã xác định, thiết kế

giao diện người dùng của trang web Đảm bảo giao diện đơn giản, dễ

sử dụng và hấp dẫn với các thành phần như menu điều hướng, trìnhchiếu phim, lựa chọn ghế ngồi và hình ảnh phim hap dẫn Nghiên cứuứng dụng các kỹ thuật, thư viện hỗ trợ thiết kế giao diện như Bootstrap,

Tailwind Css để phù hợp với xu hướng thiết kế hiện tại trên thị trường.Phát triển phần mềm: Sử dụng framework phát triển web như Django

sử dụng ngôn ngữ Python, xây dựng phần mềm cho trang web đặt vé

xem phim Phát triển các module chức năng như đăng nhập, đăng ký,

quản lý phim, quản lý lịch chiếu, đặt vé và thanh toán trực tuyến

Kiểm thử và tối ưu hóa: Tiến hành kiểm thử toàn diện dé đảm bảo tính

ồn định, bao mật và hiệu suất của trang web Sửa lỗi và tối ưu hóa hiệusuất dé đảm bảo trải nghiệm người dùng tốt nhất

Triển khai và vận hành: Đưa trang web vào hoạt động bằng cách triển

khai lên một máy chủ web thực tế Theo dõi và duy trì trang web đểđảm bảo hoạt động én định, cập nhật bao mật, quan ly cơ sở dữ liệu va

hỗ trợ người dùng.

Trang 29

e Phan tích và cải thiện: Theo dõi và phân tích hoạt động của trang web.

Sử dụng các công cụ phân tích web dé hiéu hành vi người dùng, đánhgiá hiệu suất và tìm cách cải thiện trang web dựa trên dữ liệu phân tích

IV Pham vi và giới han

Hệ thống đề xuất đã được phát triển trong nhiều lĩnh vực khác nhau như âm

nhạc, phim ảnh, tin tức và sản phẩm nói chung Trong thời đại ngày nay, phần lớncác tổ chức phân tích thực hiện các hệ thống khuyến nghị dé đáp ứng các yêu cầu củakhách hang LinkedIn, Amazon và Netflix chỉ là một vài cái tên LinkedIn dé xuất

các kết nói liên quan đến những người mà người dùng có thể biết trong số hàng triệu

người đã đăng ký trên cổng thông tin Bằng cách này, người dùng không phải chạycác tìm kiếm rộng rãi cho mọi người theo cách thủ công Hệ thống đề xuất của

Amazon hoạt động dé dé xuất các mặt hàng tương ứng mà khách hàng có thé mua

Nếu một khách hàng nhất định thích mua sách nhập từ cổng mua sắm, Amazon sẽcung cấp các đề xuất liên quan đến bat kỳ sách mới nao trong các danh mục được ưu

tiên trước đó Theo một cách tương tự, Netflix tính đến các loại chương trình mà

khách hàng xem và cung cấp các đề xuất tương tự như các chương trình đó

Trong bai viết này, tôi giới thiệu một giải pháp trong xây dựng Hệ thống gợi

ý phim dựa vào phan hồi tiềm ấn (implicit feedback) từ người dùng Đây là một dang

trong bài toán gợi ý mục tin (item recommendation) (Ricci et al., 2011) Mặc dù, có

khá nhiều phương pháp đã được sử dụng cho van đề gợi ý mục tin dựa vào phản hồi

tiềm ân Tuy nhiên, với hoản cảnh của một web xem phim đơn giản thì tôi đề xuất sửdụng phản hồi tiềm ẩn từ người dùng, sử dung pearson hoặc cosine hoặc Matrix

Factorization dé tính toán độ tương tự giữa những người dùng cùng sở thích hoặc cácmục tin được xếp hạng bởi cùng người dùng đề xây dựng “Hệ thống gợi ý phim” dogiải thuật này hoạt động tốt trên dữ liệu phản hồi tiềm an

e_ Về phía admin, xây dựng các chức năng:

© Quản lý tài khoản người dùng

© Thêm sửa xóa các phim đang chiếu, phim sắp chiếu

o Thém sửa sửa lịch chiếu của từng phim

© Quản lý thông tin hỗ trợ của khách hàng

© Về phía giao diện người dùng, xây dựng và thiết kế các giao diện:

Trang 30

o Xem danh sách các phim đang chiếu, phim sắp chiếu.

© Xem danh sách phim đang nồi của rạp.

o Xem danh sách phim được gợi ý dựa trên lịch sử người dùng.

o Xem danh sách lịch chiếu của từng phim

o Xem trailer phim.

© Xem nội dung chỉ tiết của từng phim.

o Phần đặt vé nhanh.

© Trang giới thiệu về rạp phim.

© Trang hỗ trợ với những câu hỏi thường gặp.

o Trang đặt vé, chon ghế, chọn thức ăn và thanh toán.

© Trang đăng nhập, đăng ký, quên mật khẩu.

V Cấu trúc

Chương 1: Tổng quan đề đề tài

Chương 2: Các nghiên cứu, kỹ thuật của các công nghệ đề xuất trong bối cảnh

ứng dụng IoT được phân tích.

Chương 3: Các phương pháp đề xuất và giải thích chúng

Chương 4: Thực nghiệm và đánh giá.

Chương 5: Kết luận và hướng phát triển

Trang 31

CHƯƠNG 2 CÁC NGHIÊN CỨU, CÔNG NGHỆ

I Recommender System (RS)

1 Giới thiệu

Recommender System là một hệ thống phân loại thông tin dựa trên dữliệu người dùng và các mục tiêu để đưa ra các gợi ý hoặc khuyến nghị

về các mục tiêu tương tự mà người dung có thé quan tâm

Mục tiêu: cung cấp cho người dùng các gợi ý cá nhân và phù hợp để

giúp họ khám phá, tìm kiếm và tiêu thụ thông tin, sản phẩm hoặc nộidung một cách dễ dàng và hiệu quả

Lợi ích:

Cải thiện trải nghiệm người dùng.

Tối ưu hóa doanh thu qua up-sale, cross-sale,

Tăng hiệu năng hoạt động, bằng tự động hóa

Biến khách hàng tiềm năng thành khách hàng thật

Giả thiết: mức độ phù hợp của mỗi người với mỗi sản phẩm có thể số

hóa và mô hình hóa.

Trang 32

Hình 134 Chu trình thực hiện của Data

Recommender System

e Content-Based Filtering (Lọc dựa trên nội dung): đưa ra các gợi ý dựa

trên sự tương đồng của nội dung của các mục tiêu Ví dụ, trong hệ thôngTecommendation phim, các phim tương tự được gợi ý dựa trên các thuộc

tính như thể loại, diễn viên, đạo diễn hoặc từ khóa

Trang 33

Collaborative Filtering (Lọc cộng tác): sử dụng thông tin về sự tươngtác hoặc sự ưu thích của người dùng và sự tương đồng giữa các ngườidùng dé đưa ra các gợi ý Có hai dang chính của collaborative filtering:

= User-Based Collaborative Filtering: Gợi ý dựa trên hành vi va

sở thích của người dùng tương tự Nếu một người dùng A vàngười dùng B có các sở thích giống nhau, hệ thống sẽ gợi ý cácmục tiêu đã được người dùng B đánh giá cao cho người dùng A.

= Item-Based Collaborative Filtering: Gợi ý dựa trên sự tương

đồng giữa các mục tiêu Nếu một mục tiêu A và mục tiêu B được

nhiều người dùng đánh giá cao, hệ thống sẽ gợi ý mục tiêu B cho

người dùng đang xem mục tiêu A.

Hybrid Recommender Systems (Hệ thống gợi ý kết hợp): Hệ thống này

ết hợp nhiều phương pháp dé cung cap gợi ý tốt hơn Ví dụ, có thé kết

ợp content-based filtering và collaborative filtering đề tận dụng lợi thế

của cả hai phương pháp.

Matrix Factorization: Phương pháp này sử dung ma trận hạng thấp débiểu diễn mối quan hệ giữa người dùng và mục tiêu Bằng cách phân rã

ma tran, phương pháp này tim ra các yếu t6 ân, như sở thích và sự tươngtác của người dùng, đề đưa ra các gợi ý

Demographic Filtering (Lọc dựa trên đặc điểm nhóm): Phương phápnày sử dụng thông tin về đặc điểm và thông tin cá nhân của người dùng,chẳng hạn như tuổi, giới tính, vị trí địa lý, để gợi ý các mục tiêu phù

hợp với nhóm người dùng tương ứng.

Knowledge-Based Filtering (Lọc dựa trên kiến thức): Phương pháp này

sử dụng kiến thức cụ thể về mục tiêu và sở thích của người dùng đề đưa

ra các gợi ý Ví dụ, trong lĩnh vực lọc sách, hệ thống có thể gợi ý cácsách dựa trên các thông tin cụ thể về tác giả, thể loại, hoặc nội dung

sách.

Ngoài ra, có nhiều những phương pháp khác được ứng dụng trong

Tecommendation mang lại hiệu quả cao đó là:

Trang 34

Factorization Machines: Phương pháp Factorization Machines (FM)

kết hợp giữa gợi ý dựa trên nội dung va collaborative filtering FM tao

ra một mô hình tương tác giữa các thuộc tính của người dùng và mục

tiêu dé dự đoán sự tương tác giữa chúng FM có khả năng xử lý các

tương tác không tuyến tính giữa các thuộc tính và cung cấp các dự đoángợi ý chính xác hơn.

Deep Learning: Deep learning, đặc biệt là các mạng nơ-ron hồi quy(Recurrent Neural Networks - RNN) và mạng nơ-ron hồi quy dài ngắn

(Long Short-Term Memory - LSTM), đã được áp dụng trong hệ thống

gợi ý với hiệu quả cao Deep learning có khả năng học các mẫu phức

tạp và tự động học các đặc trưng sâu của người dùng và mục tiêu, giúp

cải thiện chất lượng gợi ý

Học tăng cường (Reinforcement Learning): Reinforcement Learning(RL) có thể được sử dung trong hệ thống gợi ý dé tối ưu hoá quá trình

tương tác với người đùng RL có thể điều chỉnh các gợi ý dựa trên phảnhồi từ người dùng, học từ các tương tác trước đó và tôi ưu hoá mục tiêu

như tăng cường tương tác, tăng tỷ lệ chọn mục tiêu, hay tối thiểu hóa

lỗi gợi ý.

Học máy tăng cường đa mục tiêu (Multi-objective Reinforcement

Learning): Phương pháp này tối ưu hoá nhiều mục tiêu đồng thời trong

hệ thống gợi ý Thay vì chỉ tập trung vào mục tiêu đuy nhất như tối ưu

độ chính xác gợi ý, Multi-objective Reinforcement Learning giúp cân

đối giữa nhiều mục tiêu như độ chính xác, đa dạng, tính mới mẻ, và sự

tương tác với người dùng.

Gợi ý dựa trên đánh giá ngắn hạn (Session-based Recommendation):

Phương pháp này tập trung vào việc gợi ý dựa trên các phiên tương tác

ngắn hạn của người dùng Thay vì dựa vào lịch sử dài hạn,

session-based recommendation xem xét các hành vi gần đây để đề xuất nhữngmục tiêu tương tự hoặc phù hợp với ngữ cảnh hiện tại của người dùng Cong nghệ

e Công nghệ nha thông minh:

Trang 35

© 1

Hình 156 Amazon Echo (loa thông minh có trợ lý giọng nói)

Hình 167 Google Nest Hub (màn hình thông minh có trợ lý giọng nói)

Hình 178 Ring Video Doorbell (chuông cửa thông minh có video giám sát)

Trang 36

Hình 190 Nest Learning Thermostat (máy điều nhiệt thông minh)

© Công nghệ thé dục va sức khỏe:

AN

Hình 201 Fitbit Charge 4 (may theo dõi sức khỏe)

Hình 212 Peloton Bike + (xe dap tập thé dục thông minh)

Trang 37

Hình 223 Withings Body + (cân thông minh phân tích thành phần cơ thé)

Hình 245 Oura Ring (vòng thông minh theo dõi giấc ngủ và hoạt động)

e Công nghệ chơi game:

Hình 256 Sony PlayStation 5 (máy chơi game thế hệ tiếp theo)

Trang 38

Hình 267 Xbox Series X (máy chơi game thé hệ tiếp theo)

Hình 289 Oculus Quest 2 (tai nghe thực tế ảo)

Hình 290 Razer BlackWidow Elite (bàn phím chơi game)

© Nang suất và Sáng tạo Công nghệ:

Trang 39

Hình 301 Apple MacBook Pro (máy tính xách tay)

Hình 312 Microsoft Surface Pro 7 (thiết bị 2 trong 1 đa năng)

Hình 323 Wacom Intuos Pro (máy tính bảng)

Hình 334 Evernote (ứng dụng sắp xếp và ghi chú)

Trang 40

e Công nghệ giải trí tại nhà:

Hình 356 Sonos Arc (âm thanh cao cấp với Dolby Atmos)

3

Hình 367 Apple TV 4K (trình phát đa phương tiện trực tuyến)

Hình 378 Roku Streaming Stick(thiết bị phát trực tuyến giá cả phải chăng)

Ngày đăng: 02/10/2024, 03:35

TRÍCH ĐOẠN

TÀI LIỆU CÙNG NGƯỜI DÙNG

TÀI LIỆU LIÊN QUAN

w