#LyX 2.4 created this file. For more info see https://www.lyx.org/ \lyxformat 606 \begin_document \begin_header \save_transient_properties true \origin unavailable \textclass bjfuthesis \begin_preamble \end_preamble \use_default_options false \maintain_unincluded_children no \language chinese-simplified \language_package none \inputencoding utf8 \fontencoding default \font_roman "default" "default" \font_sans "default" "default" \font_typewriter "default" "default" \font_math "auto" "auto" \font_default_family default \use_non_tex_fonts true \font_sc false \font_roman_osf false \font_sans_osf false \font_typewriter_osf false \font_sf_scale 100 100 \font_tt_scale 100 100 \use_microtype false \use_dash_ligatures true \graphics default \default_output_format default \output_sync 0 \bibtex_command default \index_command default \float_placement class \float_alignment class \paperfontsize default \spacing single \use_hyperref false \papersize default \use_geometry false \use_package amsmath 1 \use_package amssymb 0 \use_package cancel 0 \use_package esint 1 \use_package mathdots 0 \use_package mathtools 0 \use_package mhchem 0 \use_package stackrel 0 \use_package stmaryrd 0 \use_package undertilde 0 \cite_engine biblatex \cite_engine_type authoryear \biblio_style plain \biblatex_bibstyle gb7714-2015 \biblatex_citestyle gb7714-2015 \use_bibtopic false \use_indices false \paperorientation portrait \suppress_date false \justification true \use_refstyle 0 \use_minted 0 \use_lineno 0 \index Index \shortcut idx \color #008000 \end_index \secnumdepth 3 \tocdepth 3 \paragraph_separation indent \paragraph_indentation default \is_math_indent 0 \math_numbering_side default \quotes_style english \dynamic_quotes 0 \papercolumns 1 \papersides 1 \paperpagestyle default \tablestyle default \tracking_changes false \output_changes false \change_bars false \postpone_fragile_content false \html_math_output 0 \html_css_as_file 0 \html_be_strict false \docbook_table_output 0 \end_header \begin_body \begin_layout Standard \begin_inset External template PDFPages filename contents/cover.pdf extra LaTeX "pages=1" \end_inset \begin_inset Note Note status open \begin_layout Plain Layout \backslash newpage \backslash null \backslash thispagestyle{empty} \backslash newpage \end_layout \end_inset \begin_inset External template PDFPages filename contents/statement-of-originality.pdf \end_inset \begin_inset External template PDFPages filename contents/mission-statement.pdf \end_inset \begin_inset ERT status collapsed \begin_layout Plain Layout \backslash frontmatter \end_layout \end_inset \end_layout \begin_layout Chapter* æ‘˜è¦ \end_layout \begin_layout Standard \begin_inset ERT status collapsed \begin_layout Plain Layout \backslash begin{abstract} \end_layout \end_inset éšç€åœ¨çº¿ç”µå½±æ•°é‡ä¸æ–å¢žåŠ ï¼Œç”¨æˆ·é€‰æ‹©ç”µå½±çš„æ—¶é—´æˆæœ¬ä¸æ–上å‡ï¼Œå‡†ç¡®çš„æŽ¨è算法æˆä¸ºäº†å¿…ç„¶è¦æ±‚。为解决ååŒè¿‡æ»¤æŽ¨è算法ä¸çš„稀缺性问题与冷å¯åŠ¨é—®é¢˜ï¼Œç ”ç©¶äººå‘˜ç”¨å•†å“属性或 社交网络ç‰ä¿¡æ¯æ¥è¾…助推è算法。现有的将知识图谱作为辅助信æ¯çš„æŽ¨èç®—æ³•åŒ…æ‹¬åŸºäºŽåµŒå…¥çš„æ–¹æ³•å’ŒåŸºäºŽè·¯å¾„çš„æ–¹æ³•ï¼Œä½†è¿™ä¸¤ç§æ–¹æ³•å‡å˜åœ¨ä¸€äº›ç¼ºé™·ï¼Œæ²¡æœ‰å……åˆ†æœ‰æ•ˆåœ°åˆ©ç”¨çŸ¥è¯†å›¾è°±ä¸ çš„ç›¸å…³ä¿¡æ¯ï¼ŒæŽ¨è的准确度较低。 \end_layout \begin_layout Standard æœ¬æ–‡å®žçŽ°äº†åŸºäºŽçŸ¥è¯†å›¾è°±çš„â€œæ¶Ÿæ¼ªç½‘ç»œâ€æŽ¨è算法。“涟漪网络â€ç®—æ³•çš„æ ¸å¿ƒæ˜¯åˆ©ç”¨çŽ°å®žç”Ÿæ´»ä¸é›¨æ»´äº§ç”Ÿçš„æ¶Ÿæ¼ªåœ¨æ°´é¢ä¸Šä¸æ–扩散的æ€è·¯ï¼Œæ¥æ¨¡æ‹Ÿç”¨æˆ·å好的扩散。对于æ¯ä¸€ä¸ªç”¨æˆ·ï¼Œ 涟漪网络将其过往å好作为知识图谱ä¸çš„一个ç§åé›†ï¼Œç„¶åŽæ²¿çŸ¥è¯†å›¾è°±ä¸çš„å…³ç³»è·¯å¾„ä¸æ–地拓展用户å好,进而å‘现该用户对æŸä¸ªå€™é€‰ç‰©å“以ç‰çº§åˆ’分的潜在兴趣,其ä¸å¤šä¸ªâ€œæ¶Ÿæ¼ªâ€ é‡å å½¢æˆçŸ¥è¯†å›¾è°±ä¸çš„用户å好分布。该算法的实验结果和以往的CKEã€DKNã€PERç‰æ¨¡åž‹ç»“果相比,表现出更优的性能。利用该算法,本文设计并实现了一个基于知识图谱的 电影推è系统,该系统包括管ç†å‘˜ç”¨æˆ·å’Œæ™®é€šç”¨æˆ·ï¼Œç®¡ç†å‘˜èƒ½æ–°å¢žã€ç¼–è¾‘å’Œåˆ é™¤ç”µå½±ä¸Žç”¨æˆ·ï¼Œæ™®é€šç”¨æˆ·èƒ½æµè§ˆã€æ”¶è—与è´ä¹°ç”µå½±ã€‚该系统å¯ä»¥é«˜æ•ˆå‡†ç¡®åœ°ä¸ºç”¨æˆ·æŽ¨è电影,方便用户选 择满足自己å好的电影。 \begin_inset ERT status collapsed \begin_layout Plain Layout \backslash end{abstract} \end_layout \end_inset \begin_inset ERT status collapsed \begin_layout Plain Layout \backslash keywordscn \end_layout \end_inset \begin_inset ERT status collapsed \begin_layout Plain Layout { \end_layout \end_inset 知识图谱,推è系统,涟漪网络,用户å好,电影商店 \begin_inset ERT status collapsed \begin_layout Plain Layout } \end_layout \end_inset \end_layout \begin_layout Chapter* Abstract \end_layout \begin_layout Standard \begin_inset ERT status collapsed \begin_layout Plain Layout \backslash begin{abstract} \end_layout \end_inset As the number of online movies continues to increase and the time cost for users to choose movies continues to rise, accurate recommendation algorithm s have become an necessary requirement. In order to address the scarcity and cold start problem of collaborative filtering, researchers usually make use of side information, such as product attributes or social networks as side information to assist the recommendation. The existing recommendation algorithms that use knowledge graph as side information include embedding-based methods and path-based methods, but both methods have some shortcomings. They do not make full and effective use of the relevant information in the knowledge graph, and the accuracy of recommendation is relatively low. \end_layout \begin_layout Standard This paper implements a recommendation algorithm, \begin_inset Quotes eld \end_inset Ripple Network \begin_inset ERT status collapsed \begin_layout Plain Layout " \end_layout \end_inset , based on knowledge graph. The core of the Ripple Network algorithm is to use the idea that the ripples produced by raindrops in real life continue to spread on the water surface to stimulate the spread of user preferences. For each user, Ripple Network uses its past preference as a seed set in the knowledge graph, and then continuously expands the user's preferences along the relationship path in the knowledge graph, and then discovers his hierarchical potential interests concerning a certain candidate item. Multiple \begin_inset Quotes eld \end_inset ripples \begin_inset Quotes erd \end_inset overlap to form the user preference distribution in the knowledge graph. Compared with previous model results of CKE, DKN, PER, etc., the experimental results of this algorithm show better performance. Using this algorithm, this paper designs and implements a recommendation system based on the movie knowledge graph. The system includes administrator users and general users. The administrator can add, edit and delete movies and users, and general users can browse, collect and purchase films. The system can provide users with an efficient movie recommendation function, which is convenient for users to choose movies that match their preferences. \begin_inset ERT status collapsed \begin_layout Plain Layout \backslash end{abstract} \end_layout \end_inset \begin_inset ERT status collapsed \begin_layout Plain Layout \backslash keywordsen \end_layout \end_inset \begin_inset ERT status collapsed \begin_layout Plain Layout { \end_layout \end_inset knowledge graph, recommender system, ripple network, user preferences, movie store \begin_inset ERT status collapsed \begin_layout Plain Layout } \end_layout \end_inset \begin_inset CommandInset toc LatexCommand tableofcontents \end_inset \begin_inset ERT status collapsed \begin_layout Plain Layout \backslash mainmatter \end_layout \end_inset \end_layout \begin_layout Chapter 绪论 \end_layout \begin_layout Section ç ”ç©¶èƒŒæ™¯ä¸Žæ„义 \end_layout \begin_layout Standard 一直以æ¥ï¼Œç”µå½±æŽ¨è都是在线æµåª’ä½“æ’æ”¾å¹³å°å‘展ä¸çš„一个é‡è¦é—®é¢˜ï¼Œåšå¥½ç”µå½±æŽ¨èå¯ä»¥ä½¿ç”¨æˆ·èƒ½åœ¨æµ·é‡ç”µå½±ä¸é€‰æ‹©æ»¡è¶³å…¶å好的电影,æé«˜ç”¨æˆ·æ»¡æ„度,从而æé«˜åœ¨çº¿æµåª’ä½“æ’æ”¾å¹³ å°çš„æµé‡è½¬åŒ–率åŠè´ä¹°çŽ‡ï¼Œå¹¶æœ€ç»ˆæé«˜åœ¨çº¿æµåª’ä½“æ’æ”¾å¹³å°çš„ç»æµŽæ”¶ç›Šã€‚è¿‘å¹´æ¥ï¼Œéšç€ç”µå½±è¡Œä¸šåŠäº’è”ç½‘è¡Œä¸šçš„ä¸æ–å‘展,在线电影数é‡ä¸æ–å¢žåŠ ï¼Œç”¨æˆ·åœ¨æµ·é‡ç”µå½±ä¸é€‰æ‹©æ»¡è¶³å…¶å好 çš„ç”µå½±çš„éš¾åº¦ä¸æ–上å‡ï¼Œæ€§èƒ½ä¼˜å¼‚的推è算法æˆä¸ºäº†å¿…ç„¶è¦æ±‚。自从在线æµåª’ä½“æ’æ”¾å¹³å°å‡ºçް以æ¥ï¼Œäººä»¬ä¾¿å¼€å§‹å°è¯•利用推èç®—æ³•æ¥æé«˜å¹³å°æµé‡è½¬åŒ–率,出现了诸如ååŒè¿‡æ»¤çš„æŽ¨è 算法 \begin_inset CommandInset citation LatexCommand cite key "he2017neural" literal "false" \end_inset 。但这些算法未能解决数æ®ç¨€ç¼ºæ€§åŠå†·å¯åŠ¨é—®é¢˜ï¼Œå¹¶ä¸èƒ½ä¸ºåœ¨çº¿æµåª’ä½“æ’æ”¾å¹³å°æä¾›è‰¯å¥½çš„æŽ¨è性能。为æ¤ï¼Œäººä»¬å°è¯•将辅助信æ¯èžå…¥æŽ¨è算法ä¸ä»¥è§£å†³æ•°æ®ç¨€ç¼ºæ€§åŠå†·å¯åŠ¨é—®é¢˜ \begin_inset CommandInset citation LatexCommand cite key "sun2017collaborative" literal "false" \end_inset ,并æé«˜æŽ¨è性能。 \end_layout \begin_layout Standard 知识图谱是一ç§ç»“构化的è¯ä¹‰çŸ¥è¯†åº“,被用于迅速æä¾›å¯¹ç‰©ç†ä¸–界ä¸çš„æ¦‚念和相互关系的æè¿°ï¼Œä¸ºè§£å†³æŽ¨è问题æä¾›äº†æ–°çš„æ–¹æ³• \begin_inset CommandInset citation LatexCommand cite key "zou2020survey" literal "false" \end_inset ,近年æ¥å—åˆ°å›½å†…å¤–ç ”ç©¶äººå‘˜çš„å¹¿æ³›å…³æ³¨ï¼Œæˆä¸ºäº†å½“å‰çš„ç ”ç©¶çƒç‚¹ã€‚çŸ¥è¯†å›¾è°±é€šè¿‡å¯¹å¤æ‚的原始数æ®è¿›è¡ŒåŠ å·¥ã€å¤„ç†åŠæ•´åˆï¼Œè½¬åŒ–æˆç®€å•å¯é ã€æ¸…晰明了的“实体,关系,实体â€ä¸‰å…ƒ 组,汇èšäº†å¤§é‡çš„知识信æ¯ï¼Œä»Žè€Œèƒ½å®žçŽ°åŸºäºŽçŸ¥è¯†ä¿¡æ¯çš„å“应和推ç†ã€‚ \end_layout \begin_layout Standard çŸ¥è¯†å›¾è°±å¸¸è¢«ç”¨äºŽä½œä¸ºè¾…åŠ©ä¿¡æ¯æ·»åŠ è‡³æŽ¨è算法ä¸ä»¥æé«˜æŽ¨è的准确性,这已是当å‰çš„ç ”ç©¶ç„¦ç‚¹ã€‚ \end_layout \begin_layout Standard è¿‘å¹´æ¥ï¼Œéšç€åœ¨çº¿æµåª’ä½“æ’æ”¾å¹³å°çš„å‘展,电影推è系统应è¿è€Œç”Ÿï¼Œå®ƒä½œä¸ºçŽ°ä»£ä¿¡æ¯æŠ€æœ¯ä¸Žä¼ ç»Ÿç”µå½±äº§ä¸šç›¸ç»“åˆçš„产物,对æµåª’ä½“æ’æ”¾å¹³å°çš„用户体验起ç€è‡³å…³é‡è¦çš„作用,其å¯å¤§å¹… 度å‡å°‘用户寻找满足其å好电影的时间,并æé«˜ç”¨æˆ·ç‚¹å‡»çŽ‡ä¸Žè´ä¹°çŽ‡ï¼Œä»Žè€Œæé«˜æµåª’ä½“æ’æ”¾å¹³å°çš„ç»æµŽæ”¶ç›Šã€‚电影推è系统能为用户推è其感兴趣的电影,而å‡å°‘å¯¹ç”¨æˆ·ä¸æ„Ÿå…´è¶£å†…容 的显示,从而满足用户需求。但是,目å‰ç½‘络上ç»å¤§å¤šæ•°çš„电影推èç³»ç»Ÿéƒ½ä½¿ç”¨ä¼ ç»Ÿçš„åŸºäºŽååŒè¿‡æ»¤çš„æŽ¨è算法,未能有效利用知识图谱ç‰è¾…助信æ¯ï¼Œè¿”回给用户的推è结果ä¸åŒ…å«å¤§ é‡ç”¨æˆ·ä¸æ„Ÿå…´è¶£çš„电影,æ¤å¤–,还将一些本应推è给用户的ã€ç”¨æˆ·æ„Ÿå…´è¶£çš„ç”µå½±ä¸¢å¼ƒäº†ã€‚é€ æˆè¿™ä¸€é—®é¢˜çš„主è¦åŽŸå› æ˜¯æŽ¨èç®—æ³•ç¼ºå°‘æœ‰å…³æ–°åŠ å…¥çš„æ— ç”¨æˆ·è¯„åˆ†çš„ç”µå½±ä»¥åŠæ–°æ³¨å†Œçš„用户的 ä¿¡æ¯ã€‚ \end_layout \begin_layout Standard 对于海é‡çš„电影数æ®ï¼Œä¸ºäº†å®žçŽ°å‡†ç¡®åœ°æŽ¨è给用户其感兴趣的电影,基于ååŒè¿‡æ»¤çš„ä¼ ç»ŸæŽ¨è算法是满足了ä¸ç”¨æˆ·éœ€æ±‚的,特别是对新注册用户,推èçš„å‡†ç¡®åº¦æ— æ³•å¾—åˆ°ä¿è¯ã€‚所以, 本文旨在以知识图谱作为辅助信æ¯ï¼Œæž„建一个åˆé€‚的电影推è系统,并利用知识图谱ä¸åŒ…å«çš„丰富的辅助信æ¯ï¼Œæœ€ç»ˆå®žçŽ°ä¸€ä¸ªç”µå½±æŽ¨è系统,为用户æä¾›æœ‰æ•ˆçš„ã€å‡†ç¡®çš„电影推è,从 而æé«˜ç”¨æˆ·æ»¡æ„度,æé«˜å¹³å°æ”¶ç›Šã€‚ \end_layout \begin_layout Section å›½å†…å¤–ç ”ç©¶çŽ°çŠ¶ \end_layout \begin_layout Subsection 推èç³»ç»Ÿç ”ç©¶çŽ°çŠ¶ \end_layout \begin_layout Standard 推è系统由Jussi Karlgren于哥伦比亚大å¦åœ¨ä¸€ä»½æŠ€æœ¯æŠ¥å‘Šä¸ä»¥â€œæ•°å—书架â€çš„å称被首次æåŠï¼Œè€ŒåŽè‡ª1994年起被在SICSçš„Jussi Karlgrenã€ç”±Pattie Maes于MITé¢†å¯¼çš„ç ”ç©¶å›¢é˜Ÿã€ä½äºŽBellcoreçš„Will Hill以åŠåŒæ ·ä½äºŽMITçš„Paul Resnick大规模实 现并在技术性报告åŠå‡ºç‰ˆç‰©å¤§é‡å‡ºçŽ°ï¼Œä»¥ä¸Šäººå‘˜ä¸ŽGroupLens的工作被授予了2010å¹´ACM软件系统奖。 \end_layout \begin_layout Standard 自从在90年代䏿œŸé¦–批有关ååŒè¿‡æ»¤çš„è®ºæ–‡å‡ºçŽ°åŽæŽ¨è系统便æˆä¸ºäº†é‡è¦çš„ç ”ç©¶é¢†åŸŸã€‚å·¥ä¸šç•Œä¸Žå¦æœ¯ç•Œå‡ºçŽ°äº†ä¼—å¤šæœ‰å…³å»ºè®¾æ–°çš„æŽ¨è系统的工作。由于该领域包å«ä¼—å¤šçš„ç ”ç©¶é—®é¢˜åŠ å…¶èƒ½å¸®åŠ©ç”¨æˆ·è§£å†³åœ¨è¿‡å¤šä¿¡æ¯ä¸æä¾›ä¸ªæ€§åŒ–推èçš„å®žé™…åº”ç”¨ï¼Œå› æ¤ç ”ç©¶äººå‘˜å¯¹è¯¥é¢†åŸŸçš„å…´è¶£ä¾æ—§å¾ˆé«˜ã€‚ \end_layout \begin_layout Standard 当å‰ï¼ŒæŽ¨è列表在推è系统将其产生的过程ä¸çš„æ–¹å¼ä¸»è¦æœ‰ä¸¤ç§ï¼šåŸºäºŽå†…容推è与ååŒè¿‡æ»¤æŽ¨è \begin_inset CommandInset citation LatexCommand cite key "jafarkarimi2012naive" literal "false" \end_inset 。基于内容推è的算法使用一些有关物å“çš„ç¦»æ•£ç‰¹å¾æ¥æŽ¨è出拥有相似性的物å“。ååŒè¿‡æ»¤æ–¹æ³•æ ¹æ®ç”¨æˆ·çš„历å²è¡Œä¸ºï¼ˆè¯¸å¦‚其评价过的ã€ç‚¹å‡»è¿‡çš„ã€è´ä¹°è¿‡çš„商å“ç‰ï¼‰å¹¶ä¸Žå…¶ä»–用户的 相似决ç–ç»“åˆæ¥å»ºç«‹æ¨¡å½¢ï¼Œè¿™ç§ç®—法å¯ä»¥è¢«ç”¨äºŽé¢„测用户对物å“çš„åå¥½ç¨‹åº¦ã€‚è¿™ä¸¤ç§æ–¹æ³•å¸¸å¸¸è¢«åŒæ—¶ä½¿ç”¨ã€‚ \end_layout \begin_layout Standard æ¤å¤–ï¼Œè¿‘æ¥æœ‰è¶Šæ¥è¶Šå¤šçš„æŽ¨è算法被æå‡ºï¼šå¤šå‡†åˆ™æŽ¨è系统。多准则推è系统å¯ä»¥è¢«å®šä¹‰ä¸ºåŒ…å«å¤šæ ‡å‡†å好信æ¯çš„æŽ¨èç³»ç»Ÿï¼Œè€Œä¸æ˜¯æž„建基于å•䏀凿®çš„æŽ¨è系统。风险感知推è系统 ï¼ŒçŽ°å˜æŽ¨èç³»ç»Ÿçš„ä¸»è¦æ–¹æ³•èšç„¦äºŽåŸºäºŽä¸Šä¸‹æ–‡ä¿¡æ¯æŽ¨è最相关内容给用户,而没有将ä¸ç›¸å…³å†…容打扰用户的推èé£Žé™©è€ƒè™‘åœ¨å†…ã€‚è€ƒè™‘æŽ¨é€æŽ¨èå†…å®¹ç»™ç”¨æˆ·è€Œé€ æˆæ‰“扰用户的风险在æŸäº› 情况下是需è¦è€ƒè™‘的,比如,在一个工作会议上或是在凌晨或是在晚上。而æ¤ç±»æŽ¨è算法为该问题æä¾›äº†è§£å†³æ–¹æ¡ˆã€‚ \end_layout \begin_layout Standard 现实ä¸ï¼Œå¤§é‡ä½¿ç”¨çš„å¾€å¾€æ˜¯æ··åˆæŽ¨èç³»ç»Ÿã€‚å…¶åŒæ—¶ç»“åˆäº†ååŒè¿‡æ»¤ã€åŸºäºŽå†…容过滤以åŠå…¶ä»–æ–¹æ³•ï¼Œè¿™ç§æ··åˆå¼çš„æŽ¨è方法现在被大é‡ä½¿ç”¨ã€‚æ··åˆæŽ¨èå¯ä»¥åœ¨å¤šç§æ–¹å¼ä¸‹è¢«å®žçŽ°ï¼šå°†åŸºäºŽ 内容的和基于ååŒæ»¤çš„预测模型被分开实现å†å°†ä»–们结åˆèµ·æ¥ï¼Œäº¦æˆ–æ˜¯å°†ä¸¤ç§æ–¹æ³•统一到åŒä¸€æ¨¡åž‹ä¸å¹¶ä¸€åŒå®žçŽ°ã€‚ \end_layout \begin_layout Subsection çŸ¥è¯†å›¾è°±çš„ç ”ç©¶çŽ°çŠ¶ \end_layout \begin_layout Standard 在知识表示与知识推ç†ä¸ï¼ŒçŸ¥è¯†å›¾è°±æ˜¯ä¸€ä¸ªä½¿ç”¨å›¾ç»“æž„çš„æ•°æ®æ¨¡åž‹æˆ–拓扑结构的知识库。知识图谱常被用æ¥å˜å‚¨åŸºäºŽå†…连接的对实体的æè¿°â€”—对象ã€äº‹ä»¶ã€æƒ…形或抽象概念,并包括 自由形å¼çš„è¯ä¹‰ã€‚ \end_layout \begin_layout Standard è¯¥è¯æ±‡æœ€æ—©åœ¨1972年于一个有关构建模å—化指令系统的课程ä¸è¢«æå‡ºã€‚在80年代末,命å为知识图谱的项目主è¦èšç„¦äºŽè¯ä¹‰ç½‘络的设计。在2007年,DBpediaå’ŒFr eebase作为基于图的常识性知识库被创立。DBpedia致力于从Wikipedia䏿н喿•°æ®ï¼Œè€ŒFreebase也包å«ä¸€ç³»åˆ—公开的数æ®é›†ã€‚它们两者都未将自己称 为“知识图谱â€ï¼Œä½†å®žåˆ™æž„建并æè¿°äº†æœ‰å…³çŸ¥è¯†å›¾è°±çš„相关概念。 \end_layout \begin_layout Standard 在2012å¹´ï¼Œè°·æŒæ£å¼æå‡ºäº†çŸ¥è¯†å›¾è°±çš„æ¦‚念 \begin_inset CommandInset citation LatexCommand cite key "singhal2012introducing" literal "false" \end_inset ,并构建了基于DBpediaå’ŒFreebase以åŠå…¶ä»–æ•°æ®æºçš„è°·æŒçŸ¥è¯†å›¾è°±ã€‚ä»–ä»¬åŽæ¥å°†åŒ…括CIA World Factbook, Wikidataå’ŒWikipe dia的网站的RDFa, Microdata, JSON-LD内容从它们的索引网站上抽å–并纳入知识图谱。与知识图谱相关è”的实体与关系类型使用æ¥è‡ªscheme.or g的术è¯è¢«æ›´å¹¿æ³›åœ°ç»„织了起æ¥ã€‚ \end_layout \begin_layout Standard è°·æŒçŸ¥è¯†å›¾è°±ä¸éžå¸¸é‡è¦çš„一项是“自由库â€ï¼Œå®ƒæ˜¯ä¸€ä¸ªå¤§åž‹çš„ååŒå·¥ä½œçŸ¥è¯†åº“。“自由库â€ä½¿ç”¨å›¾ç»“构作为其数æ®ç»“构,å¯ä»¥å°†å…¶è§†ä½œä¸€ä¸ªæœ‰å‘图。谷æŒçŸ¥è¯†å›¾è°±æ¨¡åž‹ä¾¿æ˜¯è°·æŒå›¢é˜Ÿ 利用其在“自由库â€ä¹‹ä¸Šçš„æŠ€æœ¯ç§¯ç´¯å¼€å‘出æ¥çš„ \begin_inset CommandInset citation LatexCommand cite key "漆桂林2017çŸ¥è¯†å›¾è°±ç ”ç©¶è¿›å±•" literal "false" \end_inset 。 \end_layout \begin_layout Standard 自æ¤ï¼Œæ•°ä¸ªå¤§åž‹è·¨å›½å…¬å¸å¼€å§‹åˆ©ç”¨å®ƒä»¬çš„知识图谱,很快知识图谱æµè¡Œèµ·æ¥ï¼Œæœ‰å…费的知识图谱,如DBpediaå’ŒNELL,以åŠå•†ä¸šæ€§è´¨çš„知识图谱,如谷æŒçŸ¥è¯†å›¾è°±å’ŒMic rosoft Satori。这些知识图谱被æˆåŠŸåº”ç”¨äºŽé—®ç”系统ã€è¯å‘é‡åµŒå…¥ä¸Žæ–‡å—分类ç‰ã€‚在2019年,IEEE将其关于“大数æ®â€å’Œâ€œæ•°æ®æŒ–掘与智能计算â€çš„年度国际 会议èžå…¥æœ‰å…³çŸ¥è¯†å›¾è°±çš„国际会议。 \end_layout \begin_layout Standard 以上是知识图谱å‘展的主è¦è¿›ç¨‹ã€‚ \end_layout \begin_layout Standard 知识图谱一般表示为三元组的形å¼ï¼Œå³ \begin_inset Formula $G=(h,r,t)$ \end_inset ï¼Œå…¶ä¸ \begin_inset Formula $G$ \end_inset 为知识图谱, \begin_inset Formula $h$ \end_inset å’Œ \begin_inset Formula $t$ \end_inset 是知识库ä¸çš„实体集åˆï¼Œåˆ†åˆ«ä¸ºä¸‰å…ƒç»„的头结点与尾节点 \begin_inset CommandInset citation LatexCommand cite key "å¾å¢žæž—2016知识图谱技术综述" literal "false" \end_inset 。知识图谱也å¯ä»¥çœ‹ä½œæ˜¯ä¸€ç§ç»“点对应实体ã€è¾¹å¯¹åº”关系的有å‘异构图。 \end_layout \begin_layout Standard ç›®å‰çŸ¥è¯†å›¾è°±çš„æž„建过程ä¸ä¸»è¦ä½¿ç”¨äº†å®šä¹‰å±‚次å¦ä¹ åŠäº‹å®žå¦ä¹ 。 \end_layout \begin_layout Standard 定义层次å¦ä¹ 是通过使用机器å¦ä¹ ç‰æŠ€æœ¯ï¼Œä»Žæ–‡å—ã€å›¾ç‰‡ç‰ä¿¡æ¯ä¸æå–知识表达ä¸çš„定义,并确定其上下文信æ¯ã€‚而知识图谱本质上是属于一ç§ç²¾ç‚¼çš„异构信æ¯ç½‘ç»œã€‚åˆ©ç”¨å®šä¹‰å±‚æ¬¡å¦ ä¹ å¯ä»¥åœ¨ä¸€å®šç¨‹åº¦ä¸Šå®Œæˆå¯¹äºŽçŸ¥è¯†å›¾è°±çš„æž„建。 \end_layout \begin_layout Standard 事实å¦ä¹ 分为有监ç£çš„事实å¦ä¹ ã€åŠç›‘ç£çš„事实å¦ä¹ ä»¥åŠæ— 监ç£çš„事实å¦ä¹ 。有监ç£çš„事实å¦ä¹ é€šè¿‡äººä¸ºæ ‡æ³¨çš„è¯æ–™ä¿¡æ¯è¾“å…¥ä»¥åŠæ·±åº¦å¦ä¹ 方法æ¥å®ŒæˆçŸ¥è¯†å›¾è°±çš„æž„建,而åŠç›‘ç£çš„事 实å¦ä¹ 方法使用å¯å‘å¼åœ°è‡ªåŠ¨æ ‡æ³¨æ–‡æœ¬ï¼Œä½†ç¼ºé™·æ˜¯è®ç»ƒæ•°æ®é›†ä¸å¯èƒ½å«æœ‰å¤§é‡çš„噪声数æ®ã€‚è€Œæ— ç›‘ç£çš„å¦ä¹ 方法主è¦ä½¿ç”¨åŸºäºŽæ·±åº¦å¦ä¹ 模型的自然è¯è¨€å¤„ç†ï¼ˆNLPï¼‰çš„æ–¹æ³•ï¼Œæ— é¡»äºº 为干预,由è®ç»ƒæ¨¡åž‹è‡ªåŠ¨å®Œæˆä¿¡æ¯æŠ½å–ã€ä¿¡æ¯æ•´åˆã€‚éšç€æ·±åº¦å¦ä¹ 算法的å‘展,目å‰åŸºäºŽæ— 监ç£çš„事实å¦ä¹ 逿¸æˆä¸ºä¸»æµ \begin_inset CommandInset citation LatexCommand cite key "æŽæ¶“å2017çŸ¥è¯†å›¾è°±ç ”ç©¶ç»¼è¿°" literal "false" \end_inset 。 \end_layout \begin_layout Standard ç›®å‰å‡ºçŽ°äº†è¯¸å¤šä½¿ç”¨ä»¥ä¸Šç†è®ºæ–¹æ³•设计的知识图谱嵌入算法:基于翻译的TransE \begin_inset CommandInset citation LatexCommand cite key "bordes2013translating" literal "false" \end_inset ã€TransH \begin_inset CommandInset citation LatexCommand cite key "wang2014knowledge" literal "false" \end_inset ã€TransR \begin_inset CommandInset citation LatexCommand cite key "lin2017learning" literal "false" \end_inset 和基于è¯ä¹‰åˆ†æžçš„DistMult \begin_inset CommandInset citation LatexCommand cite key "yang2014embedding" literal "false" \end_inset ç‰ã€‚ \end_layout \begin_layout Standard ç›®å‰ï¼ŒçŸ¥è¯†å›¾è°±åœ¨ä¸šç•Œçš„应用已ç»å–得了巨大æˆåŠŸ \begin_inset CommandInset citation LatexCommand cite key "曹倩2015知识图谱的技术实现æµç¨‹åŠç›¸å…³åº”用" literal "false" \end_inset : \end_layout \begin_layout Standard (1)æœç´¢å¼•æ“ŽæŠ€æœ¯ã€‚å¦‚å‰æ‰€è¿°ï¼ŒçŸ¥è¯†å›¾è°±æœ€æ—©ä¾¿æ˜¯ç”±è°·æŒæå‡ºä»¥æ”¹å–„å…¶æœç´¢å¼•擎的。在将知识图谱应用于æœç´¢å¼•擎之åŽï¼Œæœç´¢å¼•擎能对一些常è§çš„æœç´¢å†…å®¹åŸºäºŽå…¶ä½¿ç”¨çš„çŸ¥è¯†å›¾è°±ä¿¡ æ¯å¿«é€Ÿç»™å‡ºæœç´¢ç»“æžœã€‚åŒæ—¶ï¼Œå¯¹äºŽä¸€äº›åè¯æ€§çš„æœç´¢å†…å®¹ï¼Œæœç´¢å¼•擎能使用知识图谱以知识å¡ç‰‡çš„å½¢å¼ç»™å‡ºå…¶ç›¸å…³ä¿¡æ¯ã€‚ç ”ç©¶è¡¨æ˜Žï¼Œåœ¨è°·æŒå°†çŸ¥è¯†å›¾è°±æŠ€æœ¯èžå…¥å…¶æœç´¢å¼•擎之åŽï¼Œç”¨æˆ· 点击进入维基百科的次数明显å‡å°‘,说明利用知识图谱技术的æœç´¢å¼•擎å¯ä»¥æ›´å¥½çš„直接给出用户需è¦çš„ä¿¡æ¯è€Œä¸éœ€è¦ç”¨æˆ·å†æµè§ˆå…¶ä»–网站。 \end_layout \begin_layout Standard (2)智能问ç”ã€‚ä¿¡æ¯æ£€ç´¢ç³»ç»Ÿä¸éžå¸¸å¸¸è§çš„一ç§ä¾¿æ˜¯é—®ç”系统。问ç”系统在用户输入问题åŽèƒ½è¿…速给出用户需è¦çš„ç”æ¡ˆã€‚而在将知识图谱技术应用于问ç”系统åŽï¼Œå…¶å›žç”的准确率有 éžå¸¸å¤§çš„æå‡ã€‚ç›®å‰è‹¹æžœçš„æ™ºèƒ½åŠ©ç†Siri以åŠè°·æŒçš„æ™ºèƒ½åŠ©ç†è°·æŒåŠ©ç†ï¼ˆGoogle Assistant)都使用了知识图谱技术。 \end_layout \begin_layout Standard æ¤å¤–,知识图谱还广泛应用于金èžã€åŒ»ç–—ç‰å¤šä¸ªé¢†åŸŸã€‚ \end_layout \begin_layout Subsection 基于知识图谱的推èç³»ç»Ÿç ”ç©¶çŽ°çŠ¶ \end_layout \begin_layout Standard ç”±äºŽä¼ ç»Ÿçš„æŽ¨èç³»ç»Ÿæ— æ³•è§£å†³ç¨€ç¼ºæ€§é—®é¢˜å’Œå†·å¯åŠ¨é—®é¢˜ï¼Œå› æ¤ç ”究人员ä¼å›¾å°†è¾…助信æ¯åŠ å…¥åˆ°æŽ¨è算法ä¸ä»¥æ”¹å–„æŽ¨èæ€§èƒ½ã€‚è€Œè¿™ç±»è¾…åŠ©ä¿¡æ¯æœ‰ç¤¾äº¤ç½‘络ã€ç”¨æˆ·/物å“属性ã€å›¾åƒä¸Žä¸Šä¸‹ æ–‡ç‰ã€‚ \end_layout \begin_layout Standard 在数ç§ç±»åž‹çš„辅助信æ¯ä¸ï¼ŒçŸ¥è¯†å›¾è°±é€šå¸¸åŒ…嫿œ‰æ›´ä¸°å¯Œçš„ä¿¡æ¯ä»¥åŠç‰©å“é—´çš„è”系。图 \begin_inset CommandInset ref LatexCommand ref reference "fig:enhanced-recommendation" plural "false" caps "false" noprefix "false" \end_inset ä¸è¯´æ˜Žäº†çŸ¥è¯†å›¾è°±æä¾›ä¸°å¯Œçš„ä¿¡æ¯ä¸Žç‰©å“间的连接,有利于æé«˜æŽ¨è结果的准确性ã€å¤šæ ·æ€§å’Œå¯è§£é‡Šæ€§ã€‚知识图谱å¯ä»¥ä»Žä»¥ä¸‹ä¸‰ä¸ªæ–¹é¢æé«˜æŽ¨è性能: \begin_inset Float figure placement document alignment document wide false sideways false status open \begin_layout Plain Layout \begin_inset Graphics filename figures/enhanced-recommendation.png width 100text% \end_inset \begin_inset ERT status collapsed \begin_layout Plain Layout \backslash bicaption \end_layout \end_inset \begin_inset ERT status collapsed \begin_layout Plain Layout { \end_layout \end_inset 基于知识图谱的电影推è系统 \begin_inset ERT status collapsed \begin_layout Plain Layout } \end_layout \end_inset \begin_inset ERT status collapsed \begin_layout Plain Layout { \end_layout \end_inset Knowledge graph enhanced movie recommendation system \begin_inset ERT status collapsed \begin_layout Plain Layout } \end_layout \end_inset \begin_inset CommandInset label LatexCommand label name "fig:enhanced-recommendation" \end_inset \end_layout \end_inset \end_layout \begin_layout Standard (1)知识图谱引入了实体è¯ä¹‰ç›¸å…³æ€§ï¼Œè¿™å¯ä»¥å¸®åŠ©æ‰¾åˆ°å®žä½“é—´æ½œåœ¨çš„è”系并æé«˜æŽ¨è物å“的准确性。 \end_layout \begin_layout Standard (2)知识图谱由å„ç§ç±»åž‹çš„关系构æˆï¼Œè¿™å¯¹åˆç†åœ°æ‰©å±•ç”¨æˆ·å…´è¶£å¹¶å¢žåŠ æŽ¨è商å“çš„å¤šæ ·æ€§æ˜¯æœ‰ç›Šçš„ã€‚ \end_layout \begin_layout Standard (3)知识图谱连接用户的历å²è®°å½•åŠæŽ¨è的商å“ï¼Œå› æ¤æé«˜äº†æŽ¨è系统的å¯è§£é‡Šæ€§ã€‚ \end_layout \begin_layout Standard 将知识图谱作为辅助信æ¯åŠ å…¥è‡³æŽ¨èç³»ç»Ÿä¸æ˜¯å½“å‰çš„çƒç‚¹é—®é¢˜ï¼Œç›®å‰åŸºäºŽçŸ¥è¯†å›¾è°±æž„建推èç³»ç»Ÿçš„æ–¹æ³•ä¸»è¦æœ‰ä»¥ä¸‹å‡ 类: \end_layout \begin_layout Standard (1)基于嵌入的方法。基于嵌入的方法通过知识图谱嵌入计算算法将知识图谱ä¸çš„实体信æ¯ä¸Žå…³ç³»ä¿¡æ¯æ˜ 射为低维å‘é‡ç©ºé—´ä¸çš„å‘é‡è¡¨ç¤ºï¼ˆåµŒå…¥è¡¨ç¤ºï¼‰ã€‚è€ŒåŽæŽ¨è算法利用该嵌入表 示æ¥å®Œæˆç›¸åº”的计算,并给出推è结果。目å‰å°†çŸ¥è¯†å›¾è°±ä¸åµŒå…¥è¡¨ç¤ºä¿¡æ¯ä½œä¸ºè¾…助信æ¯çš„æŽ¨è模型有CKE \begin_inset CommandInset citation LatexCommand cite key "zhang2016collaborative" literal "false" \end_inset ã€DKN \begin_inset CommandInset citation LatexCommand cite key "wang2018dkn" literal "false" \end_inset 以åŠSHINE \begin_inset CommandInset citation LatexCommand cite key "wang2018shine" literal "false" \end_inset ç‰ã€‚CKE是微软在 KDD2016 å¹´å‘表的,其模型结构在原有系统过滤得到 \begin_inset Formula $U$ \end_inset , \begin_inset Formula $V$ \end_inset å‘é‡çš„基础上,将物å“的嵌入与其他æè¿°ä¿¡æ¯ç›¸ç»“åˆï¼Œè¿™äº›ä¿¡æ¯ä¸»è¦æœ‰: 采用 TransR 算法嵌入得到的知识图谱,图谱内æ¯ä¸ªå®žä½“嵌入表示被æå–为物å“的结构化å‘é‡ä¿¡æ¯ 。 采用SDAEæ¨¡åž‹å¾—åˆ°ç‰©å“æè¿°æ€§æ–‡æœ¬çš„æ–‡æœ¬åµŒå…¥è¡¨ç¤ºã€‚ 采用SCAE模型得到物å“相关图åƒçš„视觉嵌入表示。DKN是之å‰åŒæ ·ç”±å¾®è½¯å›¢é˜Ÿåœ¨WWW2018会议上å‘表的。 它是一个主è¦é’ˆå¯¹æ–°é—»æŽ¨è任务æå‡ºçš„æ¡†æž¶ï¼ŒçŸ¥è¯†å›¾è°±ç”¨äºŽè¾…åŠ©è®¡ç®—æ–°é—»æ ‡é¢˜çš„åµŒå…¥è¡¨ç¤ºã€‚DKNæå‡ºå¯¹æ–°é—»æ ‡é¢˜å†…æ¯ä¸€ä¸ªå…³é”®å®žä½“,在知识图谱内找到其实体嵌入和上下文嵌入。 SHINE设计深度自编ç 器æ¥åµŒå…¥è¯ä¹‰ç½‘络,社交网络并进行推è。其为用户-物å“的交互使用自动编ç 器并计算用户感兴趣的概率。æ¤å¤–,嵌入表示å¯ä»¥åŒ…å«å®žä½“的独çƒç¼–ç \begin_inset CommandInset citation LatexCommand cite key "koren2008factorization" literal "false" \end_inset ã€è¯æ±‡é›† \begin_inset CommandInset citation LatexCommand cite key "wang2018dkn" literal "false" \end_inset ã€ä¸Šä¸‹æ–‡ä¿¡æ¯ \begin_inset CommandInset citation LatexCommand cite key "sun2017collaborative" literal "false" \end_inset 或属性 \begin_inset CommandInset citation LatexCommand cite key "wang2018shine" literal "false" \end_inset ,而选择哪一ç§åµŒå…¥å‘é‡çš„计算方å¼å–决于其应用场åˆã€‚ \end_layout \begin_layout Standard (2)基于路径的方法。基于路径的方法将知识图谱作为异构信æ¯ç½‘ç»œï¼Œä¸»è¦æ˜¯é€šè¿‡çŸ¥è¯†å›¾è°±ä¸çš„è·¯å¾„å…³ç³»ä¿¡æ¯æ¥è¾…助推èç®—æ³•å®ŒæˆæŽ¨è相关的计算工作。目å‰åŸºäºŽçŸ¥è¯†å›¾è°±ä¸è·¯å¾„ä¿¡ æ¯çš„æŽ¨è模型有HIN \begin_inset CommandInset citation LatexCommand cite key "zhao2017meta" literal "false" \end_inset ã€RKGE \begin_inset CommandInset citation LatexCommand cite key "sun2018recurrent" literal "false" \end_inset ç‰ã€‚HIN是2017年在KDD上æå‡ºçš„,与PER \begin_inset CommandInset citation LatexCommand cite key "yu2014personalized" literal "false" \end_inset 类似,都将知识图谱作为异构信æ¯ç½‘络。它针对Yelpå’ŒAmazonæ•°æ®é›†åˆ†åˆ«è®¾è®¡äº†å…ƒè·¯å¾„,并得到了L个评估函数。并在建模时使用FM模型,使用FMæŸå¤±å‡½æ•°ç»„进行梯度 下é™ï¼Œå¹¶æœ€ç»ˆå¾—到推è结果。RKGE模型使用了基于循环神ç»ç½‘络的方法。在人为定义元路径并抽å–出所有路径之åŽï¼Œå¯¹æ¯ç§å…ƒè·¯å¾„都使用循环神ç»ç½‘ç»œæ¨¡åž‹æ¥æŠ½å–并推ç†å…¶è·¯å¾„ä¸ æ‰€åŒ…å«çš„ä¿¡æ¯ã€‚ \end_layout \begin_layout Standard (3)混åˆå¼æ–¹æ³•。基于嵌入的方法未能充分利用实体间的关系模å¼ä¿¡æ¯ï¼Œè€ŒåŸºäºŽè·¯å¾„的方法仅考虑了实体间的è¯ä¹‰è¿žé€šä¿¡æ¯ï¼Œæœªèƒ½æœ‰æ•ˆä½¿ç”¨ç”¨æˆ·/ç‰©å“æœ¬èº«çš„è¯ä¹‰ä¿¡æ¯ã€‚å› æ¤ï¼Œç›®å‰ 出现了混åˆå¼æ–¹æ³•,å³åŒæ—¶ç»“åˆäº†åŸºäºŽåµŒå…¥çš„æ–¹æ³•与基于路径的方法的优点。混åˆå¼æ–¹æ³•是当å‰çš„ç ”ç©¶çƒç‚¹ä¸Žç„¦ç‚¹ï¼Œä½¿ç”¨è¯¥æ–¹æ³•的典型模型有AKUPM \begin_inset CommandInset citation LatexCommand cite key "tang2019akupm" literal "false" \end_inset å’ŒRCoLM \begin_inset CommandInset citation LatexCommand cite key "cao2019unifying" literal "false" \end_inset ç‰ã€‚AKUPM是通过注æ„åŠ›æœºåˆ¶å¢žå¼ºçš„æŽ¨èæ¨¡åž‹ï¼ŒRCoLM则是基于è”åˆå¦ä¹ 并以任务为导å‘的推è算法。本文实现的电影推è系统基于文献 \begin_inset ERT status collapsed \begin_layout Plain Layout \backslash parencite \end_layout \end_inset \begin_inset ERT status collapsed \begin_layout Plain Layout { \end_layout \end_inset wang2018ripplenet \begin_inset ERT status collapsed \begin_layout Plain Layout } \end_layout \end_inset ,其所使用的算法模型是也属于混åˆå¼æ–¹æ³•。 \end_layout \begin_layout Section 本文的主è¦ç ”究内容 \end_layout \begin_layout Standard 本文在推è算法ã€çŸ¥è¯†å›¾è°±å’ŒåŸºäºŽçŸ¥è¯†å›¾è°±çš„æŽ¨èç®—æ³•çš„ç›¸å…³ç ”ç©¶åŸºç¡€ä¸Šï¼Œåšäº†ä»¥ä¸‹ä¸‰æ–¹é¢çš„ç ”ç©¶ï¼š \end_layout \begin_layout Standard (1)对推è系统所需的数æ®è¿›è¡Œé‡‡é›†å’Œå¤„ç†ï¼Œä½¿ç”¨â€œMovieLens 1M Datasetâ€ä½œä¸ºæ•°æ®é›†ï¼Œæ¤å¤–还从IMDbåŠè±†ç“£ç½‘爬å–了相关电影数æ®å¹¶è¿›è¡Œå¤„ç†ï¼Œä½œä¸º æœ¬æ–‡çš„ç ”ç©¶å¯¹è±¡ã€‚ \end_layout \begin_layout Standard (2ï¼‰æ ¹æ®æ–‡çŒ® \begin_inset ERT status collapsed \begin_layout Plain Layout \backslash parencite \end_layout \end_inset \begin_inset ERT status collapsed \begin_layout Plain Layout { \end_layout \end_inset wang2018ripplenet \begin_inset ERT status collapsed \begin_layout Plain Layout } \end_layout \end_inset æå‡ºçš„算法,实现了基于知识图谱的涟漪网络推è算法,æ¤ç®—æ³•èƒ½æ ¹æ®ç”¨æˆ·çš„历å²è¡Œä¸ºä¸ºç”¨æˆ·è¿›è¡Œç”µå½±æŽ¨è。ä¸åŒäºŽæ–‡çŒ® \begin_inset ERT status collapsed \begin_layout Plain Layout \backslash parencite \end_layout \end_inset \begin_inset ERT status collapsed \begin_layout Plain Layout { \end_layout \end_inset wang2018ripplenet \begin_inset ERT status collapsed \begin_layout Plain Layout } \end_layout \end_inset ä¸ä»…使用用户评分计算用户å好,本文在用户å好的计算过程ä¸è¿˜ç»“åˆäº†ç”¨æˆ·æ”¶è—,这在一定程度上缓解了冷å¯åŠ¨é—®é¢˜å¹¶æ”¹è¿›äº†æŽ¨èæ€§èƒ½ã€‚æ¤å¤–,将涟漪网络算法与其他基于知识图谱 的推è算法(DKN \begin_inset CommandInset citation LatexCommand cite key "wang2018dkn" literal "false" \end_inset ã€CKE \begin_inset CommandInset citation LatexCommand cite key "zhang2016collaborative" literal "false" \end_inset ã€PER \begin_inset CommandInset citation LatexCommand cite key "yu2014personalized" literal "false" \end_inset ã€SHINE \begin_inset CommandInset citation LatexCommand cite key "wang2018shine" literal "false" \end_inset ã€LibFM \begin_inset CommandInset citation LatexCommand cite key "rendle2012factorization" literal "false" \end_inset å’ŒWide&Deep \begin_inset CommandInset citation LatexCommand cite key "cheng2016wide" literal "false" \end_inset ç‰ï¼‰è¿›è¡Œäº†æ€§èƒ½æ¯”较。 \end_layout \begin_layout Standard (3)实现了一个基于知识图谱的电影推èç³»ç»Ÿï¼Œè¯¥ç³»ç»Ÿèƒ½å¤Ÿæ ¹æ®ç”¨æˆ·çš„历å²è¡Œä¸ºï¼ˆè¯„åˆ†ã€æ”¶è—ç‰ï¼‰æ¥ä¸ºç”¨æˆ·è¿›è¡Œç”µå½±æŽ¨è。该系统分为管ç†å‘˜ã€æœªç™»å½•ç”¨æˆ·ã€æ™®é€šç™»å½•用户。管ç†å‘˜ èƒ½å¢žåŠ ã€ä¿®æ”¹å’Œåˆ é™¤ç”µå½±å’Œæ™®é€šç”¨æˆ·ï¼›æœªç™»å½•ç”¨æˆ·èƒ½æ ¹æ®ç”µå½±åˆ†ç±»æŸ¥çœ‹ç”µå½±åˆ—è¡¨ä»¥åŠæŸ¥çœ‹ç”µå½±è¯¦æƒ…;普通登录用户除了能进行未登录用户的所有æ“作外,还能è´ä¹°ã€æ”¶è—åŠä¸ºç”µå½±è¯„分 。 \end_layout \begin_layout Section 论文结构 \end_layout \begin_layout Standard æœ¬è®ºæ–‡ä¸€å…±åˆ†ä¸ºäº”ä¸ªç« èŠ‚ã€‚ \end_layout \begin_layout Standard 第1ç« æ˜¯ç»ªè®ºã€‚ç®€æ˜Žä»‹ç»çŸ¥è¯†å›¾è°±ä½œä¸ºè¾…助信æ¯åœ¨æŽ¨è算法ä¸çš„ä½œç”¨ä»¥åŠæŽ¨è算法对在线æµåª’ä½“æ’æ”¾å¹³å°çš„ä½œç”¨ï¼ŒåŒæ—¶ä»‹ç»äº†æŽ¨è系统ã€çŸ¥è¯†å›¾è°±å’ŒåŸºäºŽçŸ¥è¯†å›¾è°±çš„æŽ¨è系统的å‘展和 应用,并说明了本文的主è¦å·¥ä½œã€‚ \end_layout \begin_layout Standard 第2ç« æ˜¯ç›¸å…³ç†è®ºå’ŒæŠ€æœ¯ã€‚介ç»äº†ç›®å‰çŸ¥è¯†å›¾è°±å’ŒæŽ¨èç³»ç»Ÿçš„ç ”ç©¶çŽ°çŠ¶ï¼Œå¹¶å¯¹ä¼ ç»Ÿçš„æŽ¨èç®—æ³•ä¸ŽåŠ å…¥è¾…åŠ©ä¿¡æ¯çš„æŽ¨è算法作了较为细致的分类与é˜è¿°ã€‚åŒæ—¶è¿˜ä»‹ç»äº†æœ¬æ–‡å®žçŽ°çš„ç”µå½±æŽ¨ èç³»ç»Ÿæ‰€ä½¿ç”¨çš„æŠ€æœ¯æ ˆï¼Œè¯¸å¦‚æ•°æ®åº“ã€å‰ç«¯æž¶æž„ã€åŽç«¯æž¶æž„ç‰ã€‚ \end_layout \begin_layout Standard 第3ç« æ˜¯æ¶Ÿæ¼ªç½‘ç»œã€‚ä»‹ç»äº†æ¶Ÿæ¼ªç½‘络算法,以åŠè®¡ç®—相关实体嵌入的过程ä¸ä½¿ç”¨çš„æ·±åº¦å¦ä¹ 算法,并对以上算法进行了讨论。最åŽï¼Œè¿˜å¯¹æ¶Ÿæ¼ªç½‘络推è算法的准确度进行了测试。 \end_layout \begin_layout Standard 第4ç« æ˜¯ç”µå½±æŽ¨è系统。介ç»äº†ä»¥æ¶Ÿæ¼ªç½‘络算法为基础构建的电影推è系统:介ç»äº†ç³»ç»Ÿæž¶æž„ã€ç³»ç»ŸåŠŸèƒ½ã€ç”µå½±æŽ¨èæµç¨‹ä»¥åŠå¦‚何ä¿è¯è¯¥ç³»ç»Ÿçš„安全性。 \end_layout \begin_layout Standard 第5ç« æ˜¯ç ”ç©¶ç»“è®ºå’Œå±•æœ›ã€‚æ€»ç»“äº†æ¶Ÿæ¼ªç½‘ç»œç®—æ³•çš„è®¾è®¡ä¸Žå®žçŽ°ã€ç”µå½±æŽ¨è系统的功能,并指出了其ä¸å¯ä»¥æ”¹è¿›çš„地方。 \end_layout \begin_layout Chapter 相关ç†è®ºå’ŒæŠ€æœ¯ \end_layout \begin_layout Section 知识图谱 \end_layout \begin_layout Subsection 知识图谱的概念åŠå‘展进程 \end_layout \begin_layout Standard 知识图谱,是一ç§çŸ¥è¯†å¯è§†åŒ–æˆ–çŸ¥è¯†é¢†åŸŸæ˜ å°„åœ°å›¾ï¼Œæ˜¯æ˜¾ç¤ºçŸ¥è¯†å‘展进程与结构关系的一系列三元组(实体,关系,实体),用å¯è§†åŒ–技术æè¿°çŸ¥è¯†ä¿¡æ¯åŠå…¶è½½ä½“,挖掘ã€åˆ†æžã€å»ºç«‹ ã€ç»˜åˆ¶å’Œå¯è§†åŒ–知识以åŠå®žä½“之间的相互关系。 \end_layout \begin_layout Standard 知识图谱是谷æŒäºŽ2012å¹´æå‡ºçš„,目的是为了增强其æœç´¢å¼•擎。而åŽå¾®è½¯äºŽ2013å¹´7月å‘布了Microsoft SatoriçŸ¥è¯†å›¾è°±ã€‚é™¤ä¼ ç»Ÿæœç´¢æœåŠ¡æä¾›å•†ä¹‹å¤–,包 括Apple,Facebook,IBMç‰äº’è”网ä¼ä¸šä¹Ÿåœ¨æŽ¢ç´¢è¯¥é¢†åŸŸã€‚æ¤å¤–,业界也出现了社区构建的开æºçŸ¥è¯†å›¾è°±ï¼Œå¦‚DBpedia,NELLå’ŒWikidataç‰ã€‚以F reebaseã€WordNetå’ŒGeneOntologyç‰ä¸ºä¾‹çš„知识图谱已æˆä¸ºæ”¯æŒäººå·¥æ™ºèƒ½ç›¸å…³åº”用的éžå¸¸é‡è¦çš„资æºã€‚ \end_layout \begin_layout Subsection 知识图谱的构建方法 \end_layout \begin_layout Standard 知识图谱是由多实体结点和ä¸åŒå…³ç³»è¾¹æž„æˆçš„多关系图,一个边是一个事实三元组(头结点,关系,尾结点),记为 \begin_inset Formula $(h,r,t)$ \end_inset ã€‚è€ŒçŸ¥è¯†å›¾è°±çš„æž„å»ºä¾¿æ˜¯å¯»æ‰¾è¿™æ ·çš„ä¸‰å…ƒç»„ã€‚ \end_layout \begin_layout Standard 在过去å年间,出现了诸多构建大型知识图谱的方法,然而,还没有清晰准确的构建知识图谱的范å¼ã€‚ä¸»è¦æœ‰ä¸¤ä¸ªå›°éš¾ï¼šï¼ˆ1)知识图谱是符å·åŒ–的逻辑系统而知识图谱的应用常常包 å«åœ¨è¿žç»ç©ºé—´ä¸çš„计算;(2ï¼‰åœ¨ä¸€å¼ çŸ¥è¯†å›¾è°±ä¸Šè¿›è¡ŒçŸ¥è¯†èšåˆæ˜¯å›°éš¾çš„。 \end_layout \begin_layout Standard ç›®å‰ï¼ŒçŸ¥è¯†å›¾è°±ä¸»è¦é€šè¿‡ä»¥ä¸‹3个æ¥éª¤æ¥å®Œæˆæž„建: \end_layout \begin_layout Standard (1ï¼‰ä¿¡æ¯æŠ½å–。å³ä»Žå„ç±»åž‹çš„æºæ•°æ®ä¸æŠ½å–出实体(概念)ã€å®žä½“间的关系,并在æ¤åŸºç¡€ä¹‹ä¸Šå½¢æˆç¡®åˆ‡çš„知识表达。 \end_layout \begin_layout Standard (2)知识èžåˆã€‚对新获得的知识进行整åˆï¼Œä»¥å®Œæˆæ¶ˆæ§ä¹‰ã€‚ \end_layout \begin_layout Standard (3ï¼‰çŸ¥è¯†åŠ å·¥ã€‚ç»è¿‡è´¨é‡æ ¸æŸ¥åŽå°†èžåˆåŽçš„æ–°çŸ¥è¯†çš„æ£ç¡®çš„éƒ¨åˆ†åŠ å…¥è‡³çŸ¥è¯†å›¾è°±ä¸ã€‚ \end_layout \begin_layout Subsection 知识图谱的应用 \end_layout \begin_layout Standard 知识图谱以更接近人类认知的方å¼ä¸ºäº’è”网的信æ¯è¡¨è¾¾æä¾›äº†ä¸€ç§æ–°çš„æ–¹å¼ï¼Œè€Œä¸”æä¾›äº†ä¸€ç§æ›´ç›ŠäºŽç»„ç»‡ä¸Žåˆ©ç”¨æµ·é‡æ•°æ®çš„æ–¹å¼ã€‚当å‰çŸ¥è¯†å›¾è°±ä¸»è¦ç”¨äºŽæŽ¨èç³»ç»Ÿã€æœç´¢å¼•擎ã€ä¸ªäººåŠ© ç†ä»¥åŠé—®ç”系统。 \end_layout \begin_layout Section 推è系统 \end_layout \begin_layout Standard 推è系统是内容过滤系统的一个å集,被广泛使用于多个领域,它å‘ç”¨æˆ·æŽ¨èæ»¡è¶³å…¶å好的物å“ï¼Œå¹¶é€šå¸¸å…·æœ‰ä¸ºè§†é¢‘æˆ–éŸ³ä¹æœåŠ¡ç”ŸæˆæŽ¨èæ¸…å•的表现形å¼ã€‚ \end_layout \begin_layout Subsection ä¼ ç»Ÿçš„æŽ¨è系统 \end_layout \begin_layout Standard ä¼ ç»Ÿçš„æŽ¨è系统主è¦åˆ†ä¸ºåŸºäºŽå†…容的推è系统ã€åŸºäºŽååŒè¿‡æ»¤çš„æŽ¨èç³»ç»Ÿå’Œæ··åˆæŽ¨è系统 \begin_inset CommandInset citation LatexCommand cite key "黄立å¨2018基于深度å¦ä¹ 的推èç³»ç»Ÿç ”ç©¶ç»¼è¿°" literal "false" \end_inset 。基于内容的推è系统主è¦ç”¨äºŽæ–‡æœ¬ç›¸å…³çš„é¡¹ç›®ï¼Œå› ä¸ºå†…å®¹å¸¸å¸¸æ˜¯ä½¿ç”¨å…³é”®å—æ¥æè¿°çš„。该算法通过计算相关物å“的离散特å¾ï¼Œç„¶å޿ލè具有与用户历å²å好物å“类似特å¾çš„æœ‰å…³ç‰©å“ 。基于ååŒè¿‡æ»¤çš„æŽ¨è系统主è¦é€šè¿‡å°†å…·æœ‰ä¸Žç›®æ ‡ç”¨æˆ·ç›¸ä¼¼ç‰¹å¾çš„ç”¨æˆ·æ‰€äº¤äº’è¿‡çš„ç‰©å“æŽ¨èç»™ç›®æ ‡ç”¨æˆ·ã€‚ \end_layout \begin_layout Standard 基于内容的推è与基于ååŒè¿‡æ»¤çš„æŽ¨è的有关区别å¯ä»¥é€šè¿‡æ¯”较两个æµè¡ŒéŸ³ä¹æŽ¨è系统的实现方å¼çœ‹å‡ºã€‚(1)潘多拉音ä¹ä½¿ç”¨ä¸€ä¸ªåŸºäºŽå†…容推è的推èç®—æ³•ã€‚å®ƒæ ¹æ®è‰ºäººæˆ–æŒæ›²çš„属 性æ¥ç”Ÿæˆä¸€ä¸ªåŒ…å«ç›¸ä¼¼é£Žæ ¼æŒæ›²çš„电å°ï¼Œå¹¶ä¸”该电å°çš„å†…å®¹ä¼šæ ¹æ®æ”¶å¬ç”¨æˆ·çš„åé¦ˆè¿›è¡Œè°ƒæ•´ã€‚å½“ç”¨æˆ·å¯¹ä¸€é¦–æŒæ›²â€œä¸æ„Ÿå…´è¶£â€æ—¶è¯¥ç®—æ³•å°†å¼±åŒ–è¯¥æŒæ›²çš„ä¸€äº›å±žæ€§ï¼›è€Œå½“ç”¨æˆ·å–œæ¬¢ä¸€é¦–æŒ æ›²æ—¶ï¼Œå°†å¼ºåŒ–ä¸€äº›å±žæ€§ã€‚å¹¶ä¸”è¯¥ç®—æ³•ä¼šæ ¹æ®è¯¥å±žæ€§è°ƒæ•´æŒæ›²çš„顺åºï¼Œè‹¥å±žæ€§çš„值越过一个阀值时推è算法便将æŸä¸€æŒæ›²ä»Žåˆ—表ä¸åˆ 除。(2)“终级fmâ€ä½¿ç”¨ååŒè¿‡æ»¤çš„æŽ¨è算法。 它记录用户ç»å¸¸æ”¶å¬çš„ä¹é˜Ÿå’ŒæŒæ‰‹ï¼Œç„¶åŽä¸Žå…¶å®ƒç”¨æˆ·çš„æœ‰å…³è¡Œä¸ºè¿›è¡Œæ¯”较,建立一个电å°ï¼Œå¹¶ä»¥æ¤æŽ¨èæŒæ›²ã€‚“终级fmâ€ä¼šç»™ç”¨æˆ·æŽ¨è其他具有相似特å¾ç”¨æˆ·çš„æ’æ”¾åˆ—è¡¨ï¼ˆå¹¶ä¿è¯ç›® æ ‡ç”¨æˆ·æœªæ”¶å¬è¿‡ï¼‰ã€‚ \end_layout \begin_layout Standard 基于内容的推è与基于ååŒè¿‡æ»¤çš„æŽ¨è儿œ‰ä¼˜ç¼ºç‚¹ã€‚æ½˜å¤šæ‹‰éŸ³ä¹æ‰€ä½¿ç”¨çš„基于内容推è的推èç®—æ³•æ˜¯æ ¹æ®ç‰©å“本身的性质æ¥è¿›è¡ŒæŽ¨èçš„ï¼Œå› æ¤ä¸éœ€è¦ç”¨æˆ·ä¿¡æ¯å°±å¯ä»¥æœ‰è¾ƒå¥½çš„准确度。 但该算法严é‡ä¾èµ–ç‰©å“æœ¬èº«çš„ç‰¹æ€§ï¼Œå› æ¤å±€é™æ€§è¾ƒå¤§ï¼ŒæŽ¨è的内容都是与ç§å集相关的,推èç»“æžœçš„å¤šæ ·æ€§è¾ƒä½Žã€‚è€Œâ€œç»ˆçº§fmâ€ä½¿ç”¨çš„ååŒè¿‡æ»¤ç®—æ³•éœ€è¦æ ¹æ®ç”¨æˆ·ä¸Žç‰©å“的交互æ¥ç”Ÿ æˆæŽ¨èç»“æžœï¼Œå› æ¤éœ€è¦å¤§é‡çš„用户数æ®ï¼Œå˜åœ¨æ•°æ®ç¨€ç¼ºæ€§é—®é¢˜ä¸Žå†·å¯åŠ¨é—®é¢˜ã€‚ \end_layout \begin_layout Subsection 基于知识图谱的推è系统 \end_layout \begin_layout Standard 基于内容推è与ååŒè¿‡æ»¤æŽ¨è两者å‡å˜åœ¨ä¸€äº›å±€é™æ€§ï¼Œä¸ºäº†æé«˜æŽ¨èçš„å‡†ç¡®æ€§ï¼Œè§£å†³ä¼ ç»ŸæŽ¨è算法的数æ®ç¨€ç¼ºæ€§ä¸Žå†·å¯åŠ¨é—®é¢˜ï¼Œç ”ç©¶è€…å°†ä¸€äº›è¾…åŠ©ä¿¡æ¯åŠ å…¥è‡³æŽ¨è算法ä¸ï¼Œé€šå¸¸è¿™äº›è¾… 助信æ¯åŒ…括上下文信æ¯ã€ç”¨æˆ·æˆ–物å“的属性ã€å›¾ç‰‡å’Œç¤¾äº¤ç½‘络 \begin_inset CommandInset citation LatexCommand cite key "常亮2019知识图谱的推è系统综述,秦å·2020基于知识图谱的推èç³»ç»Ÿç ”ç©¶ç»¼è¿°" literal "false" \end_inset 。 \end_layout \begin_layout Standard 而éšç€çŸ¥è¯†å›¾è°±çš„å‘å±•ï¼Œå°†çŸ¥è¯†å›¾è°±ä½œä¸ºè¾…åŠ©ä¿¡æ¯æ¥æé«˜æŽ¨èç³»ç»Ÿçš„æ€§èƒ½å·²ç»æˆä¸ºäº†çƒé—¨çš„ç ”ç©¶æ–¹å‘。将知识图谱作为辅助信æ¯åŠ å…¥æŽ¨è算法的优点有: \end_layout \begin_layout Standard (1)æé«˜æŽ¨è系统的准确性。知识图谱å¯ä»¥è¡¨ç¤ºä¸åŒå®žä½“间的关系,å¯ä»¥å°†ç‰©å“åŠå…¶ç›¸å…³å±žæ€§å¯¹åº”于知识图谱之ä¸ï¼Œä»Žè€ŒæŽ¨è算法å¯ä»¥ç†è§£ç‰©å“之间的关系。æ¤å¤–,用户与用户间的 关系信æ¯ä¹Ÿå¯ä»¥æ˜ 射至知识图谱之ä¸ï¼Œä»Žè€ŒæŽ¨è算法å¯ä»¥æ›´å‡†ç¡®åœ°åˆ†æžç‰©å“与物å“间的关系ã€ç”¨æˆ·ä¸Žç‰©å“之间的关系。 \end_layout \begin_layout Standard (2)æé«˜æŽ¨è系统的å¯è§£é‡Šæ€§ã€‚由于推è结果ä¾ç…§çŸ¥è¯†å›¾è°±ä¸çš„关系信æ¯ï¼Œå› æ¤å¯ä»¥ç”±çŸ¥è¯†å›¾è°±ä¸çš„关系路径得到推è系统给出推èç»“æžœçš„åŽŸå› ã€‚ \end_layout \begin_layout Standard ç›®å‰ä¸»è¦çš„基于知识图谱的推è算法有基于嵌入的方法ã€åŸºäºŽè·¯å¾„çš„æ–¹æ³•ä»¥åŠæ··åˆå¼æ–¹æ³•: \end_layout \begin_layout Standard (1ï¼‰åŸºäºŽåµŒå…¥çš„æ–¹æ³•ã€‚åŸºäºŽåµŒå…¥çš„æ–¹æ³•ä½¿ç”¨çŸ¥è¯†å›¾è°±çš„ä¿¡æ¯æ¥å®Œå–„实体的嵌入表示。为了将知识图谱ä¸çš„ä¿¡æ¯æ·»åŠ è‡³æŽ¨èç®—æ³•ä¸æ¥è¾…助推è,需è¦ä½¿ç”¨çŸ¥è¯†å›¾è°±åµŒå…¥è¡¨ç¤ºç®—法(Kn owledge Graph Embedding, KGE)表计算实体嵌入(实体嵌入指由知识图谱ä¸çš„ä¿¡æ¯å¾—到的在低维å‘é‡ç©ºé—´ä¸çš„å‘é‡è¡¨ç¤ºï¼‰ã€‚KGE算法有Trans E \begin_inset CommandInset citation LatexCommand cite key "bordes2013translating" literal "false" \end_inset ã€TransH \begin_inset CommandInset citation LatexCommand cite key "wang2014knowledge" literal "false" \end_inset ã€TransR \begin_inset CommandInset citation LatexCommand cite key "lin2017learning" literal "false" \end_inset å’ŒDistMult \begin_inset CommandInset citation LatexCommand cite key "yang2014embedding" literal "false" \end_inset ç‰ã€‚而推è算法利用该嵌入表示æ¥è¿›è¡Œç›¸å…³è®¡ç®—ï¼Œä»Žè€Œå¯¹ç”¨æˆ·è¿›è¡Œç‰©å“æŽ¨è。 \end_layout \begin_layout Standard (2)基于路径的方法 \begin_inset CommandInset citation LatexCommand cite key "lin2015modeling,guu2015traversing,toutanova2016compositional" literal "false" \end_inset 。基于路径的方法将知识图谱视为异构信æ¯ç½‘络。而推è系统利用该异构信æ¯ç½‘ç»œå¯»æ‰¾å®žä½“é—´çš„å…³ç³»ï¼Œä»Žè€Œå®ŒæˆæŽ¨è。 \end_layout \begin_layout Standard (3)混åˆå¼æ–¹æ³•。基于嵌入的方法未能充分利用实体间的关系模å¼ä¿¡æ¯ï¼Œè€ŒåŸºäºŽè·¯å¾„的方法仅考虑了实体间的è¯ä¹‰è¿žé€šä¿¡æ¯ï¼Œæœªèƒ½æœ‰æ•ˆåˆ©ç”¨ç”¨æˆ·/ç‰©å“æœ¬èº«çš„è¯ä¹‰ä¿¡æ¯ã€‚æ··åˆå¼æ–¹æ³• 结åˆäº†åŸºäºŽåµŒå…¥çš„æ–¹æ³•与基于路径的方法的优点,该方法是当å‰çš„ç ”ç©¶çƒç‚¹ä¸Žç„¦ç‚¹ï¼Œä½¿ç”¨è¯¥æ–¹æ³•的典型模型有AKUPM \begin_inset CommandInset citation LatexCommand cite key "tang2019akupm" literal "false" \end_inset å’ŒRCoLM \begin_inset CommandInset citation LatexCommand cite key "cao2019unifying" literal "false" \end_inset ç‰ã€‚æœ¬æ–‡å®žçŽ°çš„ç®—æ³•å±žäºŽæ··åˆæ–¹æ³•。 \end_layout \begin_layout Section ç³»ç»Ÿå¼€å‘æŠ€æœ¯ \end_layout \begin_layout Standard \begin_inset CommandInset label LatexCommand label name "sec:tech-stack" \end_inset \end_layout \begin_layout Subsection æ•°æ®é‡‡é›†æŠ€æœ¯ \end_layout \begin_layout Standard 电影推èç³»ç»Ÿä½¿ç”¨çš„æ•°æ®æ¥è‡ªâ€œMovieLens 1M Dataset†\begin_inset Foot status collapsed \begin_layout Plain Layout https://grouplens.org/datasets/movielens/1m/ \end_layout \end_inset æ•°æ®é›†ï¼Œæ¤å¤–还从IMDb \begin_inset Foot status collapsed \begin_layout Plain Layout https://www.imdb.com/ \end_layout \end_inset åŠè±†ç“£ç½‘ \begin_inset Foot status collapsed \begin_layout Plain Layout https://www.douban.com/ \end_layout \end_inset 爬å–了相关电影数æ®å¹¶è¿›è¡Œå¤„ç†ä½œä¸ºæœ¬æ–‡çš„ç ”ç©¶å¯¹è±¡ã€‚ \end_layout \begin_layout Standard 在数æ®é‡‡é›†çš„过程ä¸ï¼Œä½¿ç”¨Scrapy框架进行了数æ®çˆ¬å–,爬å–的数æ®åŒ…括电影åç§°ã€ç”µå½±å°é¢ã€é¢„告片图片ã€ç”µæ™¯æƒ…节介ç»ã€å¯¼æ¼”ã€æ¼”员以åŠå‰§ä½œå®¶ã€‚ \end_layout \begin_layout Standard 最终,总计爬å–了3684部电影的数æ®ã€‚å…¶ä¸ï¼Œä»ŽIMDb爬å–了3494æ¡ç”µå½±æ•°æ®ï¼Œä»Žè±†ç“£çˆ¬å–了190æ¡ç”µå½±æ•°æ®ï¼ˆç”±äºŽè±†ç“£ç½‘é™åˆ¶äº†æ¯IPè®¿é—®é‡æ•…爬å–的数æ®è¾ƒå°‘)。 \end_layout \begin_layout Subsection æ•°æ®å˜å‚¨æŠ€æœ¯ \end_layout \begin_layout Standard 本系统使用MongoDB与Neo4jå˜å‚¨æ•°æ®ã€‚ \end_layout \begin_layout Standard \noindent (1)MongoDB \end_layout \begin_layout Standard MongoDB是一个新兴的éžå…³ç³»åž‹å˜å‚¨çš„分布å¼å˜å‚¨æ•°æ®çš„æ•°æ®åº“,属于NoSQL,与MySQLç‰ä¼ 统的关系型数æ®åº“相比,它æä¾›æ›´å¥½çš„é«˜å¹¶å‘æ”¯æŒï¼Œå…·æœ‰é«˜å¯é 性的优点 。与æ¤åŒæ—¶ï¼Œå¾—益于其基于文档储å˜çš„ç‰¹ç‚¹ï¼Œç›¸æ¯”è¾ƒä¼ ç»Ÿçš„å…³ç³»åž‹æ•°æ®åº“,它的å˜å‚¨ç»“æž„æ›´çµæ´»ã€‚ \end_layout \begin_layout Standard 在本系统ä¸ï¼ŒMongoDBå˜å‚¨æ™®é€šç”¨æˆ·æ•°æ®ã€ç®¡ç†å‘˜æ•°æ®ã€ç”µå½±æ•°æ®ç‰ã€‚ \end_layout \begin_layout Standard \noindent (2)Neo4j \end_layout \begin_layout Standard Neo4j是一个具有高性能的图数æ®åº“,它将结构化的数æ®ä¿¡æ¯å‚¨å˜åœ¨ç½‘ç»œä¸Šè€Œä¸æ˜¯å˜å‚¨åœ¨è¡¨ä¸ã€‚它具有å¥å£®å’Œæˆç†Ÿçš„æ•°æ®åº“的所有特点。虽然Neo4j是一个新兴的数æ®åº“,但 它已在具有超过1亿节点ã€å…³ç³»å’Œå±žæ€§çš„产å“ä¸å¾—到了应用,充分体现了其高性能ã€é«˜å¯é 性的特点。 \end_layout \begin_layout Standard 在本系统ä¸ï¼Œæœ€ç»ˆéœ€å˜å‚¨çš„图结点有182011个,需å˜å‚¨çš„边有1241995æ¡ã€‚如果将它们å˜å‚¨åœ¨ä¼ 统的关系型数æ®åº“ä¸ï¼Œä¼šå› 大é‡çš„连接查询导致æžå¤§çš„æ€§èƒ½å¼€é”€ï¼Œè¡¨çŽ°ä¸º 查询耗时久。Neo4j对图数æ®å¤„ç†åšäº†ä¼˜åŒ–ï¼Œå› æ¤æŸ¥è¯¢ç‰æ“作å¯ä»¥åœ¨è¾ƒçŸçš„æ—¶é—´å†…完æˆï¼Œæ•…本系统将知识图谱数æ®å˜å‚¨åœ¨Neo4jä¸è€Œä¸æ˜¯å…³ç³»åž‹æ•°æ®åº“ä¸ã€‚ \end_layout \begin_layout Subsection åŽç«¯æŠ€æœ¯ \end_layout \begin_layout Standard 本系统使用Flask框架作为网站åŽç«¯æ¡†æž¶ã€‚Flask是一个Python编写的轻é‡çº§å¾®æ¡†æž¶ã€‚它具有轻é‡ã€ä¾¿æ·ã€å¯æ‰©å±•ç‰ç‰¹ç‚¹ã€‚系统使用Flaskæ¡†æž¶å……åˆ†åˆ©ç”¨äº†å…¶ä¾¿æ· ã€å¯æ‰©å±•以åŠå¼€å‘便æ·çš„ç‰¹ç‚¹ï¼Œä¸Žæœ¬ç³»ç»Ÿè¦æ±‚相符。 \end_layout \begin_layout Standard 系统使用表现层状æ€è½¬æ¢ï¼ˆRESTï¼‰é£Žæ ¼çš„åº”ç”¨ç¨‹åºæŽ¥å£ï¼ˆAPI)作为å‰åŽç«¯çš„交互接å£ã€‚表现层状æ€è½¬æ¢ï¼ˆRepresentational State Transfer,REST)是一ç§åŸºäºŽHTTPåè®®çš„è½¯ä»¶äº¤äº’ä½“ç³»ç»“æž„æ ·å¼ï¼Œè¯¥å议是由Roy Thomas Fieldingåšå£«åœ¨2000å¹´çš„åšå£«è®ºæ–‡ä¸å¼•用的 \begin_inset CommandInset citation LatexCommand cite key "fielding2000architectural" literal "false" \end_inset ,目的是促进ä¸åŒçš„软件/程åºçš„å¼€å‘ã€‚åœ¨ç½‘ç»œä¸Šäº’ç›¸ä¼ è¾“æ•°æ®ã€‚表示层状æ€è½¬æ¢åŸºäºŽè¶…æ–‡æœ¬ä¼ è¾“â€‹â€‹å议(HTTP)的一组约æŸï¼Œè¯¥åè®®æ˜¯ä¸€ç§æ—¨åœ¨æä¾›ä¸‡ç»´ç½‘æœåŠ¡çš„è½¯ä»¶æž„é€ æ · å¼ã€‚ç¬¦åˆæˆ–兼容æ¤ä½“ç³»ç»“æž„æ ·å¼ï¼ˆç®€ç§°ä¸ºREST或RESTful)的网络æœåŠ¡å…许客户端å‘å‡ºä½¿ç”¨ç»Ÿä¸€èµ„æºæ ‡è¯†ç¬¦è®¿é—®å’Œæ“作网络资æºçš„请求,这些资æºä¸Žä¸€ç»„预定义的æ“作一致 ã€‚å› æ¤ï¼Œè¡¨ç¤ºå±‚状æ€è½¬æ¢æä¾›äº†Internet上计算机系统之间相互使用资æºçš„互æ“作性。与其他类型的网络æœåŠ¡ï¼ˆä¾‹å¦‚SOAPæœåŠ¡ï¼‰ç›¸æ¯”ï¼Œå®ƒä»¬ä½¿ç”¨è‡ªå·±å®šä¹‰çš„ä¸€ç»„æ“作æ¥è®¿ 问网络资æºã€‚ \end_layout \begin_layout Standard 得益于本系统使用了RESTé£Žæ ¼çš„APIï¼Œæœ¬ç³»ç»Ÿèƒ½æ›´æœ‰æ•ˆåœ°ä½¿ç”¨ç¼“å˜æ¥æå‡å“åº”é€Ÿåº¦ï¼ŒåŒæ—¶å‰åŽç«¯é—´çš„é€šè®¯çš„æ— çŠ¶æ€æ€§å¯ä»¥è®©ä¸åŒçš„æœåŠ¡å™¨å¤„ç†ä¸€è¿žä¸²è¯·æ±‚ä¸ä¸åŒçš„请求,æé«˜äº† æœ¬ç³»ç»Ÿçš„å¯æ‰©å±•性。与æ¤åŒæ—¶ï¼Œå¾—益于RESTé£Žæ ¼è¯ä¹‰åŒ–的接å£ï¼Œä½¿å‰åŽç«¯äº¤äº’æŽ¥å£æ›´æ¸…晰明了,使接å£çš„使用者能更高效便æ·åœ°è¿›è¡Œç›¸å…³çš„å¼€å‘工作。 \end_layout \begin_layout Subsection å‰ç«¯æŠ€æœ¯ \end_layout \begin_layout Standard 本系统å‰ç«¯ä½¿ç”¨Angular框架。Angular(通常指“Angular 2+â€æˆ–“Angular v2åŠä»¥ä¸Šâ€ï¼‰æ˜¯ä¸€ä¸ªåŸºäºŽTypeScript的开æºç½‘络应用框 架,它的开å‘ç”±Googleçš„Angularå›¢é˜Ÿé¢†å¯¼åŒæ—¶ä¹Ÿæœ‰ä¸ªäººåŠå…¶ä»–å…¬å¸ç»´æŠ¤ã€‚Angular完全从相åŒå›¢é˜Ÿå¼€å‘çš„AngularJS釿–°ç¼–写而æ¥ã€‚Angular常 常作为MEANæŠ€æœ¯æ ˆçš„ä¸€éƒ¨åˆ†ã€‚MEANæŠ€æœ¯æ ˆæŒ‡MongoDBæ•°æ®åº“ã€Express.js网络æœåŠ¡å™¨æ¡†æž¶ã€Angular/AngularJS以åŠNode.jsæœåŠ¡å™¨è¿ è¡Œæ—¶ã€‚ä¸åŒäºŽMEANæŠ€æœ¯æ ˆï¼Œæœ¬ç³»ç»Ÿå°†å…¶ä¸çš„“Eâ€ï¼ˆæŒ‡Express.js网络æœåŠ¡å™¨æ¡†æž¶ï¼‰æ›¿æ¢ä¸ºäº†Flask网络æœåŠ¡å™¨æ¡†æž¶ã€‚ \end_layout \begin_layout Standard 通过使用Angularæ¡†æž¶ï¼Œæœ¬ç³»ç»Ÿå…·æœ‰ä¸€ä¸ªçŽ°ä»£åŒ–ã€æ¨¡å—化ã€å“应å¼çš„ç½‘é¡µæž¶æž„ã€‚åŒæ—¶å€ŸåŠ©äºŽAngular Material Componentså®˜æ–¹ç»„ä»¶åº“ï¼Œæœ¬ç³»ç»Ÿå‰ ç«¯UIç¬¦åˆææ–™è®¾è®¡ï¼ˆMaterial Design)。 \end_layout \begin_layout Chapter 基于涟漪网络知识图谱的推è算法 \end_layout \begin_layout Standard \begin_inset CommandInset label LatexCommand label name "ch:offline-recommendation" \end_inset \end_layout \begin_layout Section 涟漪网络 \end_layout \begin_layout Standard 本算法基于文献 \begin_inset ERT status collapsed \begin_layout Plain Layout \backslash parencite \end_layout \end_inset \begin_inset ERT status collapsed \begin_layout Plain Layout { \end_layout \end_inset wang2018ripplenet \begin_inset ERT status collapsed \begin_layout Plain Layout } \end_layout \end_inset 实现,并在其基础上进行了一定的改进:文献 \begin_inset ERT status collapsed \begin_layout Plain Layout \backslash parencite \end_layout \end_inset \begin_inset ERT status collapsed \begin_layout Plain Layout { \end_layout \end_inset wang2018ripplenet \begin_inset ERT status collapsed \begin_layout Plain Layout } \end_layout \end_inset ä¸è®¡ç®—用户å好时并未考虑用户收è—,本文在计算用户å好时,将用户收è—考虑在内,这在一定程度上缓解了数æ®ç¨€ç¼ºæ€§é—®é¢˜å’Œå†·å¯åŠ¨é—®é¢˜å¹¶æ”¹è¿›äº†æŽ¨èæ€§èƒ½ã€‚ \end_layout \begin_layout Subsection æž¶æž„ \end_layout \begin_layout Standard 涟漪网络的总体架构如图 \begin_inset CommandInset ref LatexCommand ref reference "fig:ripplenet-framework" plural "false" caps "false" noprefix "false" \end_inset 所示,图上方的知识图谱ä¸å±•示了由用户交互产生的涟漪。涟漪网络以一个用户 \begin_inset Formula $u$ \end_inset 和一个电影 \begin_inset Formula $v$ \end_inset 作为输入,并输出用户 \begin_inset Formula $u$ \end_inset 与电影 \begin_inset Formula $v$ \end_inset 之间产生交互的概率。对输入用户 \begin_inset Formula $u$ \end_inset 而言,其历å²äº¤äº’记录 \begin_inset Formula $V_{u}$ \end_inset 是知识图谱ä¸çš„ç§åé›†ï¼Œè€ŒåŽæ²¿ç€çŸ¥è¯†å›¾è°±ä¸çš„关系边形æˆå¤šä¸ªæ¶Ÿæ¼ªé›† \begin_inset Formula $S_{u}^{k}\ (k=1,2,\dots,H)$ \end_inset 。第 \begin_inset Formula $k$ \end_inset 个涟漪集是ç§å集 \begin_inset Formula $V_{u}$ \end_inset ç»è¿‡ \begin_inset Formula $k$ \end_inset 跳得到的知识三元组。然åŽè¿ä»£åœ°åˆ©ç”¨è¿™äº›æ¶Ÿæ¼ªé›†ä¸Žç”µå½± \begin_inset Formula $v$ \end_inset 的嵌入表示(黄色的å—)计算出用户 \begin_inset Formula $u$ \end_inset 对电影 \begin_inset Formula $v$ \end_inset 的的å“应(绿色的å—),最åŽç»“åˆå¾—到用户的最终嵌入表示(ç°è‰²çš„å—)。最终,利用用户 \begin_inset Formula $u$ \end_inset 与电影 \begin_inset Formula $v$ \end_inset 的嵌入表示计算出用户 \begin_inset Formula $u$ \end_inset 对电影 \begin_inset Formula $v$ \end_inset 感兴趣的预测概率 \begin_inset Formula $y_{uv}$ \end_inset 。 \begin_inset Float figure placement document alignment document wide false sideways false status open \begin_layout Plain Layout \begin_inset Graphics filename figures/ripplenet-framework.png width 100text% \end_inset \begin_inset ERT status collapsed \begin_layout Plain Layout \backslash bicaption \end_layout \end_inset \begin_inset ERT status collapsed \begin_layout Plain Layout { \end_layout \end_inset 涟漪网络的总体架构 \begin_inset ERT status collapsed \begin_layout Plain Layout } \end_layout \end_inset \begin_inset ERT status collapsed \begin_layout Plain Layout { \end_layout \end_inset The overall framework of the Ripple Network \begin_inset ERT status collapsed \begin_layout Plain Layout } \end_layout \end_inset \begin_inset CommandInset label LatexCommand label name "fig:ripplenet-framework" \end_inset \end_layout \end_inset \end_layout \begin_layout Subsection 涟漪集 \end_layout \begin_layout Standard \begin_inset Float figure placement document alignment document wide false sideways false status open \begin_layout Plain Layout \begin_inset Graphics filename figures/illustration-of-ripple-sets.png width 100text% \end_inset \begin_inset ERT status collapsed \begin_layout Plain Layout \backslash bicaption \end_layout \end_inset \begin_inset ERT status collapsed \begin_layout Plain Layout { \end_layout \end_inset 电影知识图谱ä¸ç”±â€œé˜¿ç”˜æ£ä¼ â€æ¿€å‘的涟漪集 \begin_inset ERT status collapsed \begin_layout Plain Layout } \end_layout \end_inset \begin_inset ERT status collapsed \begin_layout Plain Layout { \end_layout \end_inset Sets of ripples of “Forest Gump†in Knowledge Graph of movies \begin_inset ERT status collapsed \begin_layout Plain Layout } \end_layout \end_inset \begin_inset CommandInset label LatexCommand label name "fig:illustration-of-ripple-sets" \end_inset \end_layout \end_inset \end_layout \begin_layout Standard çŸ¥è¯†å›¾è°±å¸¸å¸¸å«æœ‰ä¸°å¯Œçš„事实信æ¯ä¸Žå®žä½“é—´çš„è”系。比如,图 \begin_inset CommandInset ref LatexCommand ref reference "fig:illustration-of-ripple-sets" plural "false" caps "false" noprefix "false" \end_inset (图ä¸ä¸åŒé¢œè‰²çš„圆圈表示ä¸åŒè·³æ•°çš„æ¶Ÿæ¼ªé›†ï¼Œè¶Šæµ…çš„è“色代表ç§å集与该区域内实体的关è”程度越低)ä¸ç”µå½±â€œé˜¿ç”˜æ£ä¼ â€ä¸Žâ€œç½—ä¼¯ç‰¹Â·æ³½ç±³å‰æ–¯â€ç›¸è¿žï¼Œå®ƒä»¬ä¹‹é—´çš„è”系为“罗伯 ç‰¹Â·æ³½ç±³å‰æ–¯â€æ˜¯ç”µå½±â€œé˜¿ç”˜æ£ä¼ â€çš„导演。而“回到未æ¥â€ä¹Ÿä¸Žâ€œç½—ä¼¯ç‰¹Â·æ³½ç±³å‰æ–¯â€ç›¸è¿žã€‚å› æ¤ï¼Œå¦‚果一个用户与电影“阿甘æ£ä¼ â€äº¤äº’过,则他很有å¯èƒ½ä¹Ÿå¯¹â€œå›žåˆ°æœªæ¥â€æ„Ÿå…´ 趣。为了æè¿°ç”¨æˆ·åœ¨çŸ¥è¯†å›¾è°±ä¸åˆ†å±‚次的潜在å好集,递归定义用户 \begin_inset Formula $u$ \end_inset çš„ \begin_inset Formula $k$ \end_inset 跳相关实体如下: \end_layout \begin_layout Standard \series bold 定义1(相关实体集) \series default 给定交互矩阵 \begin_inset Formula $\Upsilon$ \end_inset 与知识图谱 \begin_inset Formula $G$ \end_inset ,则用户 \begin_inset Formula $u$ \end_inset çš„ \begin_inset Formula $k$ \end_inset è·³ç›¸å…³å®žä½“é›†çš„å®šä¹‰ä¸ºå¼ \begin_inset CommandInset ref LatexCommand eqref reference "eq:relevant-entities" plural "false" caps "false" noprefix "false" \end_inset 。 \end_layout \begin_layout Standard \begin_inset Formula \begin{equation} E_{u}^{k}=\{t|(h,r,t)\in G\text{且}h\in E_{u}^{k-1}\},k=1,2,\dots,H\label{eq:relevant-entities} \end{equation} \end_inset \end_layout \begin_layout Standard å¼ \begin_inset CommandInset ref LatexCommand eqref reference "eq:relevant-entities" plural "false" caps "false" noprefix "false" \end_inset ä¸ï¼Œ \begin_inset Formula $E_{u}^{0}=V_{u}=\{v|y_{uv}=1\}$ \end_inset 是用户的历å²å好集(历å²å好集是指用户在最高为5的评分ä¸ç»™å‡ºçš„评分 \begin_inset Formula $\geqslant$ \end_inset 4的物å“以åŠç”¨æˆ·å·²åŠ å…¥æ”¶è—的物å“),å¯ä»¥çœ‹ä½œæ˜¯ç”¨æˆ· \begin_inset Formula $u$ \end_inset 在知识图谱ä¸çš„ç§å集。 \end_layout \begin_layout Standard 相关实体集å¯ä»¥çœ‹ä½œæ˜¯ç”¨æˆ·çš„历å²å好集在知识图谱ä¸çš„自然扩展。给定相关实体集的定义,以下定义用户 \begin_inset Formula $u$ \end_inset çš„ \begin_inset Formula $k$ \end_inset 跳涟漪集: \end_layout \begin_layout Standard \series bold 定义2(涟漪集) \series default 用户 \begin_inset Formula $u$ \end_inset çš„ \begin_inset Formula $k$ \end_inset 跳涟漪集å¯ä»¥çœ‹ä½œæ˜¯çŸ¥è¯†å›¾è°±ä¸ä»¥ \begin_inset Formula $E_{u}^{k-1}$ \end_inset ä¸ºèµ·ç‚¹çš„çŸ¥è¯†ä¸‰å…ƒç»„ï¼Œå®šä¹‰å¦‚å¼ \begin_inset CommandInset ref LatexCommand eqref reference "eq:ripple-set" plural "false" caps "false" noprefix "false" \end_inset 所示。 \end_layout \begin_layout Standard \begin_inset Formula \begin{equation} S_{u}^{k}=\{(h,r,t)|(h,r,t)\in G\text{且}h\in E_{u}^{k-1}\},k=1,2,\dots,H\label{eq:ripple-set} \end{equation} \end_inset \end_layout \begin_layout Standard “涟漪â€è¿™ä¸ªè¯æœ‰ä¸¤é‡æ„æ€ï¼šï¼ˆ1)对由多个雨点产生的真实涟漪的模拟,用户对电影的潜在兴趣集在知识图谱ä¸ç”±è¿‘åŠè¿œåœ°ä¼ 递。这一过程如图 \begin_inset CommandInset ref LatexCommand ref reference "fig:illustration-of-ripple-sets" plural "false" caps "false" noprefix "false" \end_inset 所示。(2)用户的潜在兴趣éšç€çŸ¥è¯†å›¾è°±ä¸ä¼ 递的跳数 \begin_inset Formula $k$ \end_inset çš„å¢žå¤§é€æ¸é€’å‡ã€‚图 \begin_inset CommandInset ref LatexCommand ref reference "fig:illustration-of-ripple-sets" plural "false" caps "false" noprefix "false" \end_inset ä¸è“è‰²çš„å˜æµ…显示了潜在兴趣递å‡çš„过程。 \end_layout \begin_layout Standard 一个å¯èƒ½å‡ºçŽ°çš„é—®é¢˜æ˜¯åœ¨è·³æ•° \begin_inset Formula $k$ \end_inset å¢žåŠ çš„è¿‡ç¨‹ä¸æ¶Ÿæ¼ªé›†çš„大å°å¯èƒ½è¿‡å¤§ã€‚为了解决这个问题,注æ„到: \end_layout \begin_layout Standard (1)在真实使用的知识图谱ä¸å¤§é‡çš„å®žä½“æ˜¯æ²‰æ²¡å®žä½“ï¼Œæ„æ€æ˜¯å®ƒä»¬åªæœ‰ä¼ å…¥é“¾è·¯è€Œæ²¡æœ‰ä¼ å‡ºé“¾è·¯ã€‚ \end_layout \begin_layout Standard (2)在电影推è的具体情境下,关系å¯ä»¥é™åˆ¶åœ¨æƒ…境相关的分类ä¸ä»¥å‡å°‘涟漪集的数é‡å¹¶æé«˜å®žä½“间的相关度。 \end_layout \begin_layout Standard (3)最大跳数 \begin_inset Formula $H$ \end_inset 通常在实际应用ä¸ä¸ä¼šè¿‡å¤§ï¼Œå› 为离用户历å²åå¥½é›†è¾ƒè¿œçš„å®žä½“ä¼šå¸¦æ¥æ›´å¤šçš„错误推èè€Œä¸æ˜¯æ›´ä¸°å¯Œçš„æŽ¨è结果。 \end_layout \begin_layout Standard (4)在涟漪网络ä¸ï¼Œæˆ‘们å¯ä»¥å¯¹ä¸€ä¸ªå›ºå®šå¤§å°çš„é‚»é›†è€Œä¸æ˜¯å¯¹å®Œæ•´çš„æ¶Ÿæ¼ªé›†é‡‡æ ·ä»Žè€Œæ›´è¿›ä¸€æ¥åœ°å‡å°è®¡ç®—工作é‡ã€‚è®¾è®¡è¿™æ ·çš„é‡‡æ ·å™¨æ˜¯ä¸€ä¸ªé‡è¦çš„工作,尤其是éžç»Ÿä¸€çš„é‡‡æ ·å™¨èƒ½æ›´ 好地æ•获用户的分ç‰çº§çš„æ½œåœ¨å…´è¶£ã€‚ \end_layout \begin_layout Subsection å好扩散 \end_layout \begin_layout Standard \begin_inset CommandInset label LatexCommand label name "sec:osum" \end_inset ä¼ ç»Ÿçš„ååŒè¿‡æ»¤ç®—法是通过å¦ä¹ 用户与物å“间的潜在è”ç³»æ¥å®ŒæˆæŽ¨è,而在涟漪网络算法ä¸ï¼Œè¿™ä¸€è¿‡ç¨‹æ˜¯é€šè¿‡å好扩散完æˆçš„:对æ¯ä¸ªç”¨æˆ·ï¼Œæ¶Ÿæ¼ªç½‘络将他的过往兴趣视为知识图谱 ä¸çš„ç§åé›†ï¼Œç„¶åŽæ²¿çŸ¥è¯†å›¾è°±ä¸çš„è·¯å¾„ä¸æ–地拓展用户的潜在兴趣集,进而得到按ç‰çº§åˆ’分的关于候选物å“的潜在兴趣集。我们利用现实生活ä¸çš„由雨滴产生的涟漪在水é¢ä¸Šæ‰©æ•£æ¥æ¨¡ 拟å好扩散的过程,其ä¸å¤šä¸ªâ€œæ¶Ÿæ¼ªâ€é‡å å½¢æˆåŸºäºŽçŸ¥è¯†å›¾è°±çš„用户å好分布。 \end_layout \begin_layout Standard 如图 \begin_inset CommandInset ref LatexCommand ref reference "fig:ripplenet-framework" plural "false" caps "false" noprefix "false" \end_inset ,æ¯éƒ¨ç”µå½±éƒ½æœ‰ä¸€ä¸ªåµŒå…¥è¡¨ç¤º \begin_inset Formula $v$ \end_inset , \begin_inset Formula $v\in\mathbb{R}^{d}$ \end_inset ï¼Œå…¶ä¸ \begin_inset Formula $\mathbb{R}$ \end_inset 是实数集, \begin_inset Formula $d$ \end_inset 是嵌入表示å‘é‡çš„维数。给定电影的嵌入表示 \begin_inset Formula $v$ \end_inset 以åŠç”¨æˆ· \begin_inset Formula $1$ \end_inset 跳涟漪集 \begin_inset Formula $S_{u}^{1}$ \end_inset ,å¯ä»¥åˆ©ç”¨ç”µå½± \begin_inset Formula $v$ \end_inset 〠\begin_inset Formula $S_{u}^{1}$ \end_inset ä¸çš„三元组ä¸å¤´èŠ‚ç‚¹ \begin_inset Formula $head_{i}$ \end_inset 以åŠè¯¥ä¸‰å…ƒç»„ä¸çš„关系 \begin_inset Formula $r_{i}$ \end_inset æ¥è®¡ç®—出电影 \begin_inset Formula $v$ \end_inset 和实体 \begin_inset Formula $head_{i}$ \end_inset ä¹‹é—´çš„ç›¸å…³åº¦ï¼Œå¦‚å¼ \begin_inset CommandInset ref LatexCommand eqref reference "eq:item-entity-relevance" plural "false" caps "false" noprefix "false" \end_inset 所示。 \end_layout \begin_layout Standard \begin_inset Formula \begin{equation} p_{i}=softmax(v^{T}R_{i}h_{i})=\frac{exp(v^{T}R_{i}h_{i})}{\sum_{(h,r,t)\in S_{u}^{1}}exp(v^{T}Rh)}\label{eq:item-entity-relevance} \end{equation} \end_inset \end_layout \begin_layout Standard å¼ \begin_inset CommandInset ref LatexCommand eqref reference "eq:item-entity-relevance" plural "false" caps "false" noprefix "false" \end_inset ä¸ï¼Œ \begin_inset Formula $R_{i}\in\mathbb{R}^{d\times d}$ \end_inset 与 \begin_inset Formula $h_{i}\in\mathbb{R}^{d}$ \end_inset 分别是关系 \begin_inset Formula $r_{i}$ \end_inset 和头节点 \begin_inset Formula $h_{i}$ \end_inset 的嵌入表示。相关度 \begin_inset Formula $p_{i}$ \end_inset 为å‘é‡ç©ºé—´ \begin_inset Formula $R_{i}$ \end_inset ä¸çš„电影 \begin_inset Formula $v$ \end_inset 与实体 \begin_inset Formula $h_{i}$ \end_inset ä¹‹é—´çš„ç›¸ä¼¼åº¦ã€‚åŒæ—¶è¿˜è€ƒè™‘了关系信æ¯çš„嵌入表示矩阵在计算电影 \begin_inset Formula $v$ \end_inset 与实体 \begin_inset Formula $h_{i}$ \end_inset ä¹‹é—´çš„ç›¸ä¼¼åº¦ï¼Œå› ä¸ºä¸åŒç”µå½±-实体对之间的相似度在ä¸åŒå…³ç³»çš„场景下å¯èƒ½æœ‰æ‰€ä¸åŒã€‚比如,“阿甘æ£ä¼ â€ä¸Žâ€œå›žåˆ°æœªæ¥â€åœ¨å¯¼æ¼”æ–¹é¢æœ‰å¾ˆé«˜çš„ç›¸ä¼¼åº¦ï¼Œä½†å®ƒä»¬åœ¨ä½“è£æˆ–å‰§ä½œå®¶æ–¹é¢ å¯èƒ½æ²¡æœ‰è”系。 \end_layout \begin_layout Standard 在完æˆç›¸ä¼¼åº¦è®¡ç®—之åŽï¼Œå°† \begin_inset Formula $S_{u}^{1}$ \end_inset ä¸ä¸‰å…ƒç»„çš„å°¾èŠ‚ç‚¹æ ¹æ®è®¡ç®—å¾—åˆ°çš„ç›¸ä¼¼åº¦è¿›è¡ŒåŠ æƒæ±‚和,得到å‘é‡ \begin_inset Formula $o_{u}^{1}$ \end_inset ï¼Œå¦‚å¼ \begin_inset CommandInset ref LatexCommand eqref reference "eq:o1" plural "false" caps "false" noprefix "false" \end_inset 所示。 \end_layout \begin_layout Standard \begin_inset Formula \begin{equation} o_{u}^{1}=\sum_{(h_{i},r_{i},t_{i})\in S_{u}^{1}}p_{i}t_{i}\label{eq:o1} \end{equation} \end_inset \end_layout \begin_layout Standard å¼ \begin_inset CommandInset ref LatexCommand eqref reference "eq:o1" plural "false" caps "false" noprefix "false" \end_inset ä¸ï¼Œ \begin_inset Formula $t_{i}\in\mathbb{R}^{d}$ \end_inset , \begin_inset Formula $t_{i}$ \end_inset 是事实三元组ä¸çš„尾节点。å‘é‡ \begin_inset Formula $o_{u}^{1}$ \end_inset å¯ä»¥è§†ä¸ºç”¨æˆ·å好集 \begin_inset Formula $V_{u}$ \end_inset 关于电影 \begin_inset Formula $v$ \end_inset çš„ \begin_inset Formula $1$ \end_inset 次å“应。与ååŒè¿‡æ»¤ç®—æ³•ç±»ä¼¼çš„æ˜¯ï¼Œå®ƒæ ¹æ®ç”¨æˆ·äº¤äº’è¿‡çš„ç‰©å“æ¥è¡¨ç¤ºç”¨æˆ·åµŒå…¥è€Œä¸æ˜¯ä½¿ç”¨å•ç‹¬çš„å‚æ•°æ¥è¡¨ç¤ºç”¨æˆ·ï¼Œä»Žè€Œå‡å°‘äº†å‚æ•°æ•°é‡ã€‚é€šè¿‡å¼ \begin_inset CommandInset ref LatexCommand eqref reference "eq:item-entity-relevance" plural "false" caps "false" noprefix "false" \end_inset ä¸Žå¼ \begin_inset CommandInset ref LatexCommand eqref reference "eq:o1" plural "false" caps "false" noprefix "false" \end_inset ,用户的å好从其交互过的电影(å³ç§å集)æˆåŠŸåœ¨çŸ¥è¯†å›¾è°±ä¸è¿›è¡Œäº†ä¸€æ¬¡æ‰©æ•£ï¼Œè¿™ç§°ä¸ºæ¶Ÿæ¼ªç½‘络ä¸çš„å好扩散。 \end_layout \begin_layout Standard å¯ä»¥å°†å¼ \begin_inset CommandInset ref LatexCommand eqref reference "eq:item-entity-relevance" plural "false" caps "false" noprefix "false" \end_inset ä¸çš„ \begin_inset Formula $v$ \end_inset 替æ¢ä¸º \begin_inset Formula $o_{u}^{1}$ \end_inset ,我们å¯ä»¥å†æ¬¡è¿›è¡Œå好扩散以得到用户的2次å“应 \begin_inset Formula $o_{u}^{2}$ \end_inset 。以æ¤ç±»æŽ¨ï¼Œæœ€ç»ˆæˆ‘们å¯ä»¥å°†è¯¥ç”¨æˆ·çš„å好集扩散至 \begin_inset Formula $H$ \end_inset 跳,得到用户的涟漪集 \begin_inset Formula $S_{u}^{i},i=1,\dots,H$ \end_inset 。从ä¸å¯ä»¥å¾—到用户的多次å“应 \begin_inset Formula $o_{u}^{1},o_{u}^{2},o_{u}^{H}$ \end_inset 。用户 \begin_inset Formula $u$ \end_inset 关于电影 \begin_inset Formula $v$ \end_inset çš„åµŒå…¥è¡¨ç¤ºæ˜¯é€šè¿‡ç»“åˆæ‰€æœ‰çš„ä¸åŒå“åº”å¹¶è®¡ç®—å¾—åˆ°çš„ï¼Œå¦‚å¼ \begin_inset CommandInset ref LatexCommand eqref reference "eq:osum" plural "false" caps "false" noprefix "false" \end_inset 所示。 \begin_inset Formula \begin{equation} u=o_{u}^{1}+o_{u}^{2}+\dots+o_{u}^{H}\label{eq:osum} \end{equation} \end_inset \end_layout \begin_layout Standard 尽管最åŽä¸€è·³çš„用户å“应ä¸ç†è®ºä¸ŠåŒ…å«äº†æ‰€æœ‰ä¹‹å‰å¾—到的信æ¯ï¼Œä½†æ˜¯å¯¹ \begin_inset Formula $o_{u}^{k}$ \end_inset 进行求和ä»ç„¶æ˜¯æœ‰å¿…è¦çš„ï¼Œå› ä¸ºä¹‹å‰å¾—到的用户å“应å¯èƒ½åœ¨åå¥½ä¼ é€’çš„è¿‡ç¨‹ä¸ç¨€é‡Šäº†ï¼Œå› æ¤ä»…使用最åŽä¸€è·³çš„å“应ä¸èƒ½å¾ˆå¥½åœ°è¡¨ç¤ºç”¨æˆ·åµŒå…¥ã€‚最终,利用用户嵌入与电影嵌入,计算出 ç”¨æˆ·å¯¹ç”µå½±æ„Ÿå…´è¶£çš„æ¦‚çŽ‡ï¼Œå¦‚å¼ \begin_inset CommandInset ref LatexCommand eqref reference "eq:predicted-possibility" plural "false" caps "false" noprefix "false" \end_inset 所示。 \begin_inset Formula \begin{equation} y_{uv}=\zeta(u^{T}v)\label{eq:predicted-possibility} \end{equation} \end_inset \end_layout \begin_layout Standard å…¶ä¸ï¼Œ \begin_inset Formula $\zeta(x)=\frac{1}{1+exp(-x)}$ \end_inset 是sigmoid函数。 \end_layout \begin_layout Section å¦ä¹ 算法 \end_layout \begin_layout Standard 在涟漪网络算法ä¸ï¼Œæˆ‘ä»¬çš„ç›®æ ‡æ˜¯é€šè¿‡å¼ \begin_inset CommandInset ref LatexCommand eqref reference "eq:predicted-possibility" plural "false" caps "false" noprefix "false" \end_inset æ±‚å‡ºç”¨æˆ·å¯¹ç”µå½±æ„Ÿå…´è¶£çš„æ¦‚çŽ‡ã€‚ä½†æ˜¯ï¼Œä¸ºäº†å°†å…¶è®¡ç®—å‡ºæ¥æˆ‘们需è¦å…ˆæ±‚出所有物å“ã€ç”¨æˆ·ä»¥åŠå…³ç³»çš„嵌入表示,如第 \begin_inset CommandInset ref LatexCommand ref reference "sec:osum" plural "false" caps "false" noprefix "false" \end_inset èŠ‚ä¸æ‰€è¿°ï¼Œç”¨æˆ·çš„嵌入表示å¯ä»¥é€šè¿‡å…¶æ¶Ÿæ¼ªé›†æ¥ä»£æ›¿ï¼Œä»¥æ¤æ¶ˆå…ƒã€‚但物å“åŠå…³ç³»çš„åµŒå…¥è¡¨ç¤ºå´æ˜¯éœ€è¦æ±‚出æ¥çš„。 \end_layout \begin_layout Standard 为了求出物å“åŠå…³ç³»çš„嵌入表示,这里使用最大åŽéªŒæ¦‚率估计的方法。 \end_layout \begin_layout Standard æˆ‘ä»¬çš„ç›®æ ‡æ˜¯åœ¨å·²ç»å¾—到知识图谱 \begin_inset Formula $G$ \end_inset 以åŠç”¨æˆ·ä¸Žç”µå½±çš„交互矩阵 \begin_inset Formula $\Upsilon$ \end_inset çš„æƒ…å†µä¸‹æœ€å¤§åŒ–æ¨¡åž‹å‚æ•° \begin_inset Formula $\Gamma$ \end_inset ï¼Œå¦‚å¼ \begin_inset CommandInset ref LatexCommand eqref reference "eq:max" plural "false" caps "false" noprefix "false" \end_inset 所示。 \begin_inset Formula \begin{equation} max\ p(\Gamma|G,\Upsilon)\label{eq:max} \end{equation} \end_inset \end_layout \begin_layout Standard å¼ \begin_inset CommandInset ref LatexCommand eqref reference "eq:max" plural "false" caps "false" noprefix "false" \end_inset ä¸ï¼Œå‚æ•° \begin_inset Formula $\Gamma$ \end_inset 包å«äº†å…¨éƒ¨çš„实体ã€å…³ç³»å’Œç”µå½±çš„嵌入表示。å¯ä»¥å°†å¼ \begin_inset CommandInset ref LatexCommand eqref reference "eq:max" plural "false" caps "false" noprefix "false" \end_inset ç‰ä»·äºŽæœ€å¤§åŒ–å¼ \begin_inset CommandInset ref LatexCommand eqref reference "eq:equal-max" plural "false" caps "false" noprefix "false" \end_inset 。 \end_layout \begin_layout Standard \begin_inset Formula \begin{equation} p(\Gamma|G,\Upsilon)=\frac{p(\Gamma,G,\Upsilon)}{p(G,\Upsilon)}\varpropto p(\Gamma)\centerdot p(G|\Gamma)\centerdot p(\Upsilon|\Gamma,G)\label{eq:equal-max} \end{equation} \end_inset \end_layout \begin_layout Standard æ ¹æ®è´å¶æ–¯å…¬å¼ï¼Œåœ¨å¼ \begin_inset CommandInset ref LatexCommand eqref reference "eq:equal-max" plural "false" caps "false" noprefix "false" \end_inset ä¸ï¼Œç¬¬ä¸€é¡¹ \begin_inset Formula $p(\Gamma)$ \end_inset ä»£è¡¨æ¨¡åž‹å‚æ•°çš„先验概率。设 \begin_inset Formula $p(\Gamma)$ \end_inset 为å‡å€¼ä¸º0ï¼Œæ–¹å·®ä¸ºå¯¹è§’åæ–¹å·®çŸ©é˜µçš„æ£æ€åˆ†å¸ƒï¼Œå¦‚å¼ \begin_inset CommandInset ref LatexCommand eqref reference "eq:normal-distribution" plural "false" caps "false" noprefix "false" \end_inset 所示。 \end_layout \begin_layout Standard \begin_inset Formula \begin{equation} p(\Gamma)=N(0,\lambda_{1}^{-1}I)\label{eq:normal-distribution} \end{equation} \end_inset \end_layout \begin_layout Standard å¼ \begin_inset CommandInset ref LatexCommand eqref reference "eq:equal-max" plural "false" caps "false" noprefix "false" \end_inset ä¸ï¼Œ \begin_inset Formula $p(G|\Gamma)$ \end_inset 是给定 \begin_inset Formula $\Gamma$ \end_inset çš„çŸ¥è¯†å›¾è°±çš„æœ€å¤§ä¼¼ç„¶å‡½æ•°ã€‚æœ€è¿‘ï¼Œæœ‰ç ”ç©¶è€…æå‡ºäº†å¤šç§è®¡ç®—知识图谱嵌入的方法,包括基于è·ç¦»çš„æ–¹æ³•和基于è¯ä¹‰åŒ¹é…的方法。在本算法ä¸ï¼Œä½¿ç”¨ä¸‰è·¯å¼ é‡åˆ†è§£çš„æ–¹æ³•æ¥å»ºç«‹çŸ¥è¯†å›¾ è°±åµŒå…¥çš„æœ€å¤§ä¼¼ç„¶å‡½æ•°ï¼Œå¦‚å¼ \begin_inset CommandInset ref LatexCommand eqref reference "eq:term2" plural "false" caps "false" noprefix "false" \end_inset 。 \end_layout \begin_layout Standard \begin_inset Formula \begin{equation} p(G|\Gamma)=\prod_{(h,r,t)\in E\times R\times E}p((h,r,t)|\Gamma)=\prod_{(h,r,t)\in E\times R\times E}N(I_{h,r,t}-h^{T}Rt,\lambda_{2}^{-1})\label{eq:term2} \end{equation} \end_inset \end_layout \begin_layout Standard å¼ \begin_inset CommandInset ref LatexCommand eqref reference "eq:term2" plural "false" caps "false" noprefix "false" \end_inset ä¸ï¼Œè‹¥ \begin_inset Formula $I_{h,r,t}\in G$ \end_inset åˆ™æ ‡å¿— \begin_inset Formula $I_{h,r,t}$ \end_inset ç‰äºŽ1,å¦åˆ™ä¸º0ã€‚å¼ \begin_inset CommandInset ref LatexCommand eqref reference "eq:equal-max" plural "false" caps "false" noprefix "false" \end_inset ä¸çš„第三项是给定 \begin_inset Formula $\Gamma$ \end_inset 与知识图谱的似然函数,å¯ä»¥çœ‹ä½œä¼¯åŠªåˆ©åˆ†å¸ƒçš„ç´¯ä¹˜ï¼Œå¦‚å¼ \begin_inset CommandInset ref LatexCommand eqref reference "eq:bernoulli" plural "false" caps "false" noprefix "false" \end_inset 。 \end_layout \begin_layout Standard \begin_inset Formula \begin{equation} p(\Upsilon|\Gamma,G)=\prod_{(u,v)\in\Upsilon}\zeta(u^{T}v)^{y_{uv}}\centerdot(1-\zeta(u^{T}v))^{1-y_{uv}}\label{eq:bernoulli} \end{equation} \end_inset \end_layout \begin_layout Standard å¯¹å¼ \begin_inset CommandInset ref LatexCommand eqref reference "eq:equal-max" plural "false" caps "false" noprefix "false" \end_inset å–è´Ÿå¯¹æ•°ï¼Œæœ‰å¦‚å¼ \begin_inset CommandInset ref LatexCommand eqref reference "eq:term3" plural "false" caps "false" noprefix "false" \end_inset 所示的æŸå¤±å‡½æ•°ï¼š \begin_inset Formula \begin{multline} min\ L=-log(p(\Upsilon|\Gamma,G)\centerdot p(G|\Gamma)\centerdot p(\Gamma))\\ =\sum_{(u,v)\in\Upsilon}-(y_{uv}log\ \zeta(u^{T}v)+(1-y_{uv}log(1-\zeta(u^{T}v))))\\ +\frac{\lambda_{2}}{2}\sum_{r\in R}\|I_{r}-E^{T}RE\|_{2}^{2}+\frac{\lambda_{1}}{2}(\|V\|_{2}^{2}+\|E\|_{2}^{2}+\sum_{r\in R}\|R\|_{2}^{2})\label{eq:term3} \end{multline} \end_inset \end_layout \begin_layout Standard å¼ \begin_inset CommandInset ref LatexCommand eqref reference "eq:term3" plural "false" caps "false" noprefix "false" \end_inset ä¸ï¼Œ \begin_inset Formula $V$ \end_inset å’Œ \begin_inset Formula $E$ \end_inset 是所有电影与实体的嵌入表示, \begin_inset Formula $I_{r}$ \end_inset 是在知识图谱ä¸å¯¹å…³ç³» \begin_inset Formula $r$ \end_inset çš„æ ‡å¿—å‘é‡ \begin_inset Formula $I$ \end_inset 的分å‘é‡ã€‚åœ¨å¼ \begin_inset CommandInset ref LatexCommand eqref reference "eq:term3" plural "false" caps "false" noprefix "false" \end_inset ä¸ï¼Œç¬¬ä¸€é¡¹æ˜¯äº¤äº’矩阵 \begin_inset Formula $\Upsilon$ \end_inset 与涟漪网络的估测值之间的交å‰ç†µï¼Œç¬¬äºŒé¡¹æ˜¯çœŸå®žçš„知识图谱分å‘é‡ \begin_inset Formula $I_{r}$ \end_inset 以åŠäººä¸ºæž„建的指示矩阵 \begin_inset Formula $E^{T}RE$ \end_inset ä¹‹é—´çš„å‡æ–¹è¯¯å·®ï¼Œæœ€åŽä¸€é¡¹æ˜¯ä¸ºé˜²æ¢è¿‡æ‹ŸåˆåŠ å…¥çš„æ£åˆ™é¡¹ã€‚ \end_layout \begin_layout Standard ç›´æŽ¥æ±‚è§£ä¸Šå¼æ¥å¾—åˆ°å‚æ•° \begin_inset Formula $\Gamma$ \end_inset 是ä¸å¯èƒ½çš„ï¼Œå› æ¤å¯ä»¥ä½¿ç”¨éšæœºæ¢¯åº¦ä¸‹é™ç®—法递归地优化æŸå¤±å‡½æ•°æ¥æ±‚è§£æ¨¡åž‹å‚æ•°ï¼Œè€ŒåŽå†è®¡ç®—傿•° \begin_inset Formula $\Gamma$ \end_inset çš„æŸå¤±å‡½æ•°çš„æ¢¯åº¦ï¼Œå¹¶æ ¹æ®é‡‡æ ·å¾—åˆ°çš„ä¸€å°æ‰¹æ•°æ®åå‘ä¼ é€’ï¼Œç„¶åŽæ›´æ–°å‚æ•°å¹¶æœ€ç»ˆå¾—åˆ°å‚æ•° \begin_inset Formula $\Gamma$ \end_inset 。 \end_layout \begin_layout Section åˆ†æž \end_layout \begin_layout Subsection å¯è§£é‡Šæ€§ \end_layout \begin_layout Standard å¯è§£é‡Šçš„æŽ¨è系统旨在é˜é‡Šä¸ºä»€ä¹ˆç”¨æˆ·ä¼šå¯¹ä¸€ä»¶ç‰©å“感兴趣,这帮助æå‡ç”¨æˆ·å¯¹æŽ¨è结果的满æ„度以åŠå¯¹æŽ¨è系统的信任。对推èç»“æžœçš„è§£é‡Šé€šå¸¸åŸºäºŽæ ‡ç¾ã€è¯ä¹‰åˆ†æžç‰ã€‚å› ä¸ºæ¶Ÿæ¼ªç½‘ ç»œæŽ¢ç´¢ç”¨æˆ·åŸºäºŽçŸ¥è¯†å›¾è°±çš„å…´è¶£ï¼Œå› æ¤å®ƒæä¾›äº†ä¸€ç§åŸºäºŽçŸ¥è¯†å›¾è°±ä¸çš„关系路径æ¥é˜è¿°æŽ¨è结果的全新方å¼ã€‚比如,在图 \begin_inset CommandInset ref LatexCommand ref reference "fig:illustration-of-ripple-sets" plural "false" caps "false" noprefix "false" \end_inset ä¸ï¼Œå½“用户对“幸ç¦ç»ˆç‚¹ç«™â€æ„Ÿå…´è¶£ï¼Œåˆ™è¯¥ç”¨æˆ·ä¹Ÿå¯èƒ½å¯¹â€œè’å²›ä½™ç”Ÿâ€æ„Ÿå…´è¶£ã€‚å› ä¸ºåœ¨çŸ¥è¯†å›¾è°±ä¸ï¼Œâ€œæ±¤å§†Â·æ±‰å…‹æ–¯â€ä¸Žâ€œå¹¸ç¦ç»ˆç‚¹ç«™â€ç›¸è¿žï¼Œå…³ç³»æ˜¯æ¼”员,而“汤姆·汉克斯â€ä¸Žâ€œ è’岛余生â€ä¹Ÿç›¸è¿žï¼Œå…³ç³»ä¹Ÿæ˜¯æ¼”员,æ¢å¥è¯è¯´ï¼Œâ€œè’岛余生â€ä¸Žâ€œå¹¸ç¦ç»ˆç‚¹ç«™â€æœ‰ç›¸åŒçš„æ¼”员。这便解释了用户对“幸ç¦ç»ˆç‚¹ç«™â€å’Œâ€œè’岛余生â€åŒæ—¶æ„Ÿå…´è¶£çš„åŽŸå› ã€‚æ¶Ÿæ¼ªç½‘ç»œç®—æ³•é€š 过在知识图谱ä¸å¯»æ‰¾ä¸Žç”¨æˆ·äº¤äº’过的电影(ç§å集)相连的物å“ï¼Œå¹¶ä¸æ–æ‰©æ•£ï¼Œæœ€ç»ˆç¡®ä¿æŽ¨è结果具有较高的准确性。 \end_layout \begin_layout Subsection 涟漪é‡å \end_layout \begin_layout Standard 在涟漪网络ä¸ï¼Œä¸€ä¸ªå¯èƒ½çš„问题是涟漪集ä¸çš„电影éžå¸¸å¤šï¼Œä»Žè€Œåœ¨åå¥½ä¼ é€’çš„è¿‡ç¨‹ä¸ä¸å¯é¿å…地导致用户的真实潜在å好信æ¯è¢«ç¨€é‡Šã€‚然而,用户点击记录ä¸ä¸åŒçš„电影常常高度é‡å (从ç§å集出å‘åˆ°è¾¾ä¸€éƒ¨ç”µå½±å¸¸å¸¸æœ‰ä¸æ¢ä¸€æ¡è·¯å¾„),这在很大程度上é¿å…了真实潜在å好信æ¯è¢«ç¨€é‡Šçš„问题。比如,在图 \begin_inset CommandInset ref LatexCommand ref reference "fig:illustration-of-ripple-sets" plural "false" caps "false" noprefix "false" \end_inset ä¸ï¼Œå¦‚果一个用户喜欢“阿甘æ£ä¼ â€ï¼Œåˆ™ä»–也å¯èƒ½å–œæ¬¢â€œè’岛余生â€ã€‚在该知识图谱ä¸ï¼Œä»Žâ€œé˜¿ç”˜æ£ä¼ â€åˆ°â€œè’å²›ä½™ç”Ÿâ€æœ‰ä¸¤æ¡è·¯å¾„:“阿甘æ£ä¼ -U.S.-è’岛余生â€ä¸Žâ€œé˜¿ç”˜æ£ä¼ - 汤姆·汉克斯-è’岛余生â€ï¼Œè¿™æ£æ˜¯æ¶Ÿæ¼ªé‡å 的表现。 \end_layout \begin_layout Section 测试 \end_layout \begin_layout Subsection æ•°æ®é›† \end_layout \begin_layout Standard 本测试使用“MovieLens 1M Datasetâ€æ•°æ®é›†ã€‚该数æ®é›†ç”±ç”µå½±ä¿¡æ¯ã€ç”¨æˆ·ä¿¡æ¯ä»¥åŠç”¨æˆ·å¯¹ç”µå½±çš„评价三部分组æˆã€‚å…¶ä¸ï¼Œå«æœ‰ç”µå½±æ•°æ®3883æ¡ã€ç”¨æˆ·æ•°æ® 6040æ¡ä»¥åŠ1000209æ¡ç”¨æˆ·å¯¹ç”µå½±çš„评价数æ®ã€‚å› è¯¥æ•°æ®é›†æ•°æ®é‡é€‚ä¸ï¼Œæ•°æ®å‡†ç¡®å¯é ï¼Œå› æ¤åœ¨æŽ¨è系统的性能测试ä¸è¢«å¹¿æ³›ä½¿ç”¨ã€‚ \end_layout \begin_layout Standard 本测试使用的知识图谱æ¥è‡ªMicrosoft Satoriï¼Œæ˜¯ä¾æ®â€œMovieLens 1M Datasetâ€ä¸çš„电影å称从Microsoft Satoriä¸æå– ç›¸å…³çš„èŠ‚ç‚¹çš„ä¸Žå…³ç³»æ•°æ®å¾—到的。 \end_layout \begin_layout Subsection 基线 \end_layout \begin_layout Standard 本测试ä¸ï¼Œä¼šå°†æœ¬ç®—法的测试结果与以下算法的相比较: \end_layout \begin_layout Standard DKN \begin_inset CommandInset citation LatexCommand cite key "wang2018dkn" literal "false" \end_inset 是由微软团队在WWW2018会议上å‘表的。它是一个主è¦é’ˆå¯¹æ–°é—»ä»»åŠ¡æå‡ºçš„æ¡†æž¶ï¼ŒçŸ¥è¯†å›¾è°±ç”¨äºŽè¾…åŠ©è®¡ç®—æ–°é—»æ ‡é¢˜çš„åµŒå…¥è¡¨ç¤ºã€‚DKNæå‡ºå¯¹æ–°é—»æ ‡é¢˜å†…æ¯ä¸€ä¸ªå…³é”®å®žä½“,在知 识图谱内找到其实体嵌入和上下文嵌入。 \end_layout \begin_layout Standard CKE \begin_inset CommandInset citation LatexCommand cite key "zhang2016collaborative" literal "false" \end_inset 是微软在KDD2016å¹´å‘表的,其模型结构在原有系统过滤得到 \begin_inset Formula $U$ \end_inset , \begin_inset Formula $V$ \end_inset å‘é‡çš„基础上,将物å“的嵌入与其他æè¿°ä¿¡æ¯ç›¸ç»“åˆï¼Œè¿™äº›ä¿¡æ¯ä¸»è¦æœ‰: 采用TransR算法计算知识图谱嵌入表示,知识图谱内æ¯ä¸ªå®žä½“嵌入表示被æå–为物å“的结构化å‘é‡ä¿¡ æ¯ã€‚ 采用SDAEæ¨¡åž‹å¾—åˆ°ç‰©å“æè¿°æ€§æ–‡æœ¬çš„æ–‡æœ¬æ€§åµŒå…¥è¡¨ç¤ºã€‚ 采用SCAE模型得到物å“相关图åƒçš„视觉嵌入表示。 \end_layout \begin_layout Standard SHINE \begin_inset CommandInset citation LatexCommand cite key "wang2018shine" literal "false" \end_inset 设计深度自编ç 器并嵌入è¯ä¹‰ç½‘络以åŠç¤¾äº¤ç½‘络æ¥è¿›è¡ŒæŽ¨è。其为用户-物å“的交互使用自动编ç 器并刻画用户感兴趣的概率。 \end_layout \begin_layout Standard PER \begin_inset CommandInset citation LatexCommand cite key "yu2014personalized" literal "false" \end_inset 是以基于路径的方法æ¥å°†çŸ¥è¯†å›¾è°±ä½œä¸ºè¾…助信æ¯ä¸çš„æ¯”较ç»å…¸çš„算法。其æå‡ºçš„元路径å¯ä»¥ä¸ºæŽ¨è系统æä¾›å¯é 的方å‘,但是需è¦ä½¿ç”¨è€…了解领域内知识,进行人为路径设计。 \end_layout \begin_layout Standard LibFM \begin_inset CommandInset citation LatexCommand cite key "rendle2012factorization" literal "false" \end_inset 是一个广泛使用的在CTR场景ä¸çš„åˆ†è§£æŽ¨èæ¨¡åž‹ã€‚ \end_layout \begin_layout Standard Wide&Deep \begin_inset CommandInset citation LatexCommand cite key "cheng2016wide" literal "false" \end_inset 是一个结åˆçº¿æ€§è·¯å¾„çš„æŽ¨èæ¨¡åž‹ã€‚类似于LibFM,我们将用户ã€ç‰©å“åŠå®žä½“的嵌入表示作为其输入。 \end_layout \begin_layout Subsection 测试æ¥éª¤ \end_layout \begin_layout Standard 在涟漪网络ä¸ï¼Œè®¾ç½®è·³æ•° \begin_inset Formula $H=2$ \end_inset ã€‚æ ¹æ®å®žéªŒç»“æžœï¼Œè¾ƒå¤§çš„è·³æ•°å‡ ä¹Žæ— æ³•æé«˜æ€§èƒ½å´ä¼šé€ æˆè¾ƒå¤§çš„计算开销。我们将数æ®åˆ’分为è®ç»ƒé›†ã€è¯„估集与测试集,按照6:2:2的比例进行分é…。实验进行5次,计算准确度 以åŠAUCç„¶åŽå–å¹³å‡å€¼ã€‚ \end_layout \begin_layout Subsection 结果 \end_layout \begin_layout Standard 测试结果如表 \begin_inset CommandInset ref LatexCommand ref reference "tab:acc-auc" plural "false" caps "false" noprefix "false" \end_inset 䏿‰€ç¤ºï¼Œæ€»ä½“上涟漪网络算法的性能最佳,其次是Wide&Deep算法,说明他们å¯ä»¥å……分利用知识图谱ä¸çš„æœ‰æ•ˆä¿¡æ¯æ¥è¾…助推è算法。而表现最差的是PER算法,这å¯èƒ½æ˜¯å› ä¸ºæ‰‹å·¥å®šä¹‰çš„å…ƒè·¯å¾„åœ¨ç”µå½±æŽ¨èæ–¹é¢æ•ˆæžœè¾ƒå·®ã€‚ \begin_inset Float table placement document alignment document wide false sideways false status open \begin_layout Plain Layout \begin_inset ERT status collapsed \begin_layout Plain Layout \backslash bicaption \end_layout \end_inset \begin_inset ERT status collapsed \begin_layout Plain Layout { \end_layout \end_inset 在兴趣预测计算ä¸çš„AUC和准确度 \begin_inset ERT status collapsed \begin_layout Plain Layout } \end_layout \end_inset \begin_inset ERT status collapsed \begin_layout Plain Layout { \end_layout \end_inset AUC and ACC in interest prediction \begin_inset ERT status collapsed \begin_layout Plain Layout } \end_layout \end_inset \begin_inset CommandInset label LatexCommand label name "tab:acc-auc" \end_inset \begin_inset Tabular <lyxtabular version="3" rows="7" columns="3"> <features booktabs="true" tabularvalignment="middle"> <column alignment="center" valignment="top"> <column alignment="center" valignment="top"> <column alignment="center" valignment="top"> <row> <cell alignment="center" valignment="top" topline="true" usebox="none"> \begin_inset Text \begin_layout Plain Layout 算法 \end_layout \end_inset </cell> <cell alignment="center" valignment="top" topline="true" usebox="none"> \begin_inset Text \begin_layout Plain Layout AUC \end_layout \end_inset </cell> <cell alignment="center" valignment="top" topline="true" usebox="none"> \begin_inset Text \begin_layout Plain Layout 准确度 \end_layout \end_inset </cell> </row> <row> <cell alignment="center" valignment="top" topline="true" usebox="none"> \begin_inset Text \begin_layout Plain Layout 涟漪网络 \end_layout \end_inset </cell> <cell alignment="center" valignment="top" topline="true" usebox="none"> \begin_inset Text \begin_layout Plain Layout 0.899 \end_layout \end_inset </cell> <cell alignment="center" valignment="top" topline="true" usebox="none"> \begin_inset Text \begin_layout Plain Layout 0.835 \end_layout \end_inset </cell> </row> <row> <cell alignment="center" valignment="top" usebox="none"> \begin_inset Text \begin_layout Plain Layout DKN \end_layout \end_inset </cell> <cell alignment="center" valignment="top" usebox="none"> \begin_inset Text \begin_layout Plain Layout 0.655 \end_layout \end_inset </cell> <cell alignment="center" valignment="top" usebox="none"> \begin_inset Text \begin_layout Plain Layout 0.589 \end_layout \end_inset </cell> </row> <row> <cell alignment="center" valignment="top" usebox="none"> \begin_inset Text \begin_layout Plain Layout CKE \end_layout \end_inset </cell> <cell alignment="center" valignment="top" usebox="none"> \begin_inset Text \begin_layout Plain Layout 0.796 \end_layout \end_inset </cell> <cell alignment="center" valignment="top" usebox="none"> \begin_inset Text \begin_layout Plain Layout 0.739 \end_layout \end_inset </cell> </row> <row> <cell alignment="center" valignment="top" usebox="none"> \begin_inset Text \begin_layout Plain Layout SHINE \end_layout \end_inset </cell> <cell alignment="center" valignment="top" usebox="none"> \begin_inset Text \begin_layout Plain Layout 0.778 \end_layout \end_inset </cell> <cell alignment="center" valignment="top" usebox="none"> \begin_inset Text \begin_layout Plain Layout 0.732 \end_layout \end_inset </cell> </row> <row> <cell alignment="center" valignment="top" usebox="none"> \begin_inset Text \begin_layout Plain Layout LibFM \end_layout \end_inset </cell> <cell alignment="center" valignment="top" usebox="none"> \begin_inset Text \begin_layout Plain Layout 0.892 \end_layout \end_inset </cell> <cell alignment="center" valignment="top" usebox="none"> \begin_inset Text \begin_layout Plain Layout 0.812 \end_layout \end_inset </cell> </row> <row> <cell alignment="center" valignment="top" bottomline="true" usebox="none"> \begin_inset Text \begin_layout Plain Layout Wide&Deep \end_layout \end_inset </cell> <cell alignment="center" valignment="top" bottomline="true" usebox="none"> \begin_inset Text \begin_layout Plain Layout 0.903 \end_layout \end_inset </cell> <cell alignment="center" valignment="top" bottomline="true" usebox="none"> \begin_inset Text \begin_layout Plain Layout 0.822 \end_layout \end_inset </cell> </row> </lyxtabular> \end_inset \end_layout \end_inset \end_layout \begin_layout Chapter 基于知识图谱的电影推è系统 \end_layout \begin_layout Section 系统整体设计 \end_layout \begin_layout Standard 如第 \begin_inset CommandInset ref LatexCommand ref reference "sec:tech-stack" plural "false" caps "false" noprefix "false" \end_inset èŠ‚ä¸æ‰€è¿°ï¼Œæœ¬ç³»ç»Ÿä½¿ç”¨çš„æ•°æ®æ¥è‡ªâ€œMovieLens 1M Datasetâ€ã€IMDb和豆瓣网。其ä¸IMDbå’Œè±†ç“£ç½‘çš„æ•°æ®æ˜¯ä½¿ç”¨çˆ¬è™«çˆ¬å–得到的。最åŽå†ä½¿ç”¨Pyth on脚本对这些数æ®è¿›è¡Œå¤„ç†åŠ å·¥ï¼Œå¹¶å¯¼å…¥MongoDBæ•°æ®åº“å’ŒNeo4jæ•°æ®åº“。 \end_layout \begin_layout Standard 本系统使用MongoDBå’ŒNeo4jå˜å‚¨æ•°æ®ã€‚å…¶ä¸ï¼ŒMongoDB作为éžå…³ç³»åž‹çš„æ–°å…´NoSQLæ•°æ®åº“ï¼Œä»¥çµæ´»çš„éžç»“构化的方å¼å˜å‚¨æ™®é€šç”¨æˆ·æ•°æ®ã€ç®¡ç†å‘˜æ•°æ®ã€ç”µå½±æ•° æ®ç‰ï¼Œå¹¶æä¾›é«˜å¹¶å‘的性能支æŒä¸Žå¯åˆ†å¸ƒå¼å˜å‚¨çš„æ‰©å±•性。而在以高性能著称的图数æ®åº“Neo4jä¸ï¼Œå˜å‚¨ç”¨äºŽæŽ¨è算法使用的电影知识图谱。 \end_layout \begin_layout Standard 本系统åŽç«¯ä½¿ç”¨Python编写的Flask框架,Flask框架是轻é‡çº§çš„å¾®æ¡†æž¶ï¼Œä»¥é«˜å¯æ‰©å±•性著称,为本系统的åŽç«¯ç½‘页应用æœåС噍æä¾›æ”¯æŒã€‚在Flaskä¸ï¼ŒåŸºäºŽRE STé£Žæ ¼æž„å»ºAPI以供å‰ç«¯ä½¿ç”¨ï¼ŒRESTé£Žæ ¼çš„è¯ä¹‰åŒ–API使åŽç«¯API的构建与å‰ç«¯APIçš„ä½¿ç”¨ç®€å•æ–¹ä¾¿ã€‚ \end_layout \begin_layout Standard 本系统å‰ç«¯ä½¿ç”¨Angular作为å‰ç«¯ç½‘页框架。Angular是基于TypeScript的网页框架,以模å—化åŠå¯é‡ç”¨çš„组件设计著称。Angular为本系统æä¾›äº†æ¨¡ å—化的网页设计,使本系统å‰ç«¯é€»è¾‘清晰,易于维护。æ¤å¤–,本系统使用了Angularææ–™ç»„件库(Angular Material Components),得益于æ¤ï¼Œ 本系统éµå¾ªææ–™è®¾è®¡ï¼ˆMaterial Design)è¯è¨€ï¼Œä½¿è§†è§‰ä¼ è¾¾é£Žæ ¼ç®€æ´ç¾Žè§‚,具有å“应å¼åŠ¨åŒ–ä¸Žè¿‡æ¸¡æ•ˆè¿‡ã€å…‰çº¿ä¸Žé˜´å½±ç‰ã€‚ \end_layout \begin_layout Section æ•°æ®åº“设计 \end_layout \begin_layout Standard 如剿‰€è¿°ï¼Œæœ¬ç³»ç»Ÿçš„MongoDBæ•°æ®åº“用于å˜å‚¨æ™®é€šç”¨æˆ·æ•°æ®ã€ç®¡ç†å‘˜æ•°æ®ã€ç”µå½±æ•°æ®ç‰ï¼Œè€ŒNeo4j作为高性能的图数æ®åº“,用于å˜å‚¨çŸ¥è¯†å›¾è°±ã€‚以下é€ä¸€è¯´æ˜ŽMongoD Bæ•°æ®åº“与Neo4jæ•°æ®åº“çš„å˜å‚¨ç»“构。 \end_layout \begin_layout Standard ä¸åŒäºŽMySQLç‰å…³ç³»åž‹æ•°æ®åº“,MongoDBæ•°æ®åº“作为éžç»“构化å˜å‚¨çš„NoSQLæ•°æ®åº“,没有表ã€åˆ—ä¸Žè¡Œçš„æ¦‚å¿µï¼Œè€Œåªæœ‰é›†åˆä¸Žæ–‡æ¡£çš„æ¦‚念,å³åœ¨æ•°æ®åº“ä¸å˜å‚¨é›†åˆï¼ˆä¸€å®š 程度上对应于关系型数æ®åº“的表),在集åˆä¸å˜å‚¨æ–‡æ¡£ï¼ˆä¸€å®šç¨‹åº¦ä¸Šå¯¹åº”于关系型数æ®åº“的行),而关系型数æ®åº“ä¸çš„列则对应于MongoDBæ•°æ®åº“䏿–‡æ¡£çš„属性。 \end_layout \begin_layout Standard 本系统在MongoDBæ•°æ®åº“ä¸å»ºç«‹4个集åˆï¼Œåˆ†åˆ«ç”¨äºŽå˜å‚¨ç”¨æˆ·ã€ç®¡ç†å‘˜ã€ä½“è£ä¸Žç”µå½±æ•°æ®ã€‚å› å…¶ä¸çš„æ•°æ®ä¸ºéžç»“构化数æ®ï¼Œå› æ¤æ— æ³•ç”¨è¡¨æ ¼çš„å½¢å¼ç»™å‡ºï¼Œç›®å‰ä¹ 惯上以JSON å½¢å¼ç»™å‡ºæ•°æ®çš„逻辑结构,以下以JSON形弿¥è¡¨ç¤ºå˜å‚¨ç»“构: \end_layout \begin_layout Standard 以下为普通用户集åˆçš„æ•°æ®ç»“构,用户集åˆä¸çš„æ–‡æ¡£å˜å‚¨ç”¨æˆ·IDã€å“ˆå¸Œå¤„ç†åŽçš„密ç ã€å…¶è¿›è¡Œè¿‡è¯„分的电影(包括电影IDã€è¯„åˆ†åŠæ—¶é—´ï¼‰ä»¥åŠç”±æŽ¨è算法æœåŠ¡å™¨å†™å…¥çš„æŽ¨è列表〠已è´ä¹°ç”µå½±åŠå¿ƒæ„¿å•: \end_layout \begin_layout Verbatim { \end_layout \begin_layout Verbatim _id: Integer, \end_layout \begin_layout Verbatim password: String, \end_layout \begin_layout Verbatim rating: Array([ \end_layout \begin_layout Verbatim { \end_layout \begin_layout Verbatim movieId: Integer, \end_layout \begin_layout Verbatim rating: Integer, \end_layout \begin_layout Verbatim timestamp: Integer \end_layout \begin_layout Verbatim }, \end_layout \begin_layout Verbatim ... \end_layout \begin_layout Verbatim ]), \end_layout \begin_layout Verbatim recommendation: Array([Interger, ...]), \end_layout \begin_layout Verbatim bought: Array([Interger, ...]), \end_layout \begin_layout Verbatim wishlist: Array([Interger, ...]) \end_layout \begin_layout Verbatim } \end_layout \begin_layout Standard 以下为管ç†å‘˜é›†åˆçš„æ•°æ®ç»“构,其å˜å‚¨ç»“构较简å•,管ç†å‘˜é›†åˆä¸çš„æ–‡æ¡£å˜å‚¨ç®¡ç†å‘˜IDã€å“ˆå¸Œå¤„ç†åŽçš„密ç : \end_layout \begin_layout Verbatim { \end_layout \begin_layout Verbatim _id: String, \end_layout \begin_layout Verbatim password: String \end_layout \begin_layout Verbatim } \end_layout \begin_layout Standard 以下为体è£é›†åˆçš„æ•°æ®ç»“构,其å˜å‚¨ç»“构较简å•,体è£é›†åˆä¸çš„æ–‡æ¡£å˜å‚¨ä½“è£å称: \end_layout \begin_layout Verbatim { \end_layout \begin_layout Verbatim _id: String \end_layout \begin_layout Verbatim } \end_layout \begin_layout Standard 以下为电影集åˆçš„æ•°æ®ç»“构,电影集åˆä¸çš„æ–‡æ¡£å˜å‚¨ç”µå½±IDã€ç”µå½±å°é¢ã€ä½“è£ã€ä»·æ ¼ã€è¯„åˆ†ç´¯åŠ å’Œã€è¯„分总数é‡ã€é¢„告片图片ã€å‰§æƒ…介ç»ã€å¯¼æ¼”ã€å‰§æœ¬ä½œå®¶åŠæ¼”员。需è¦è¯´æ˜Žçš„æ˜¯è¯„ åˆ†ç´¯åŠ å’Œä»¥åŠè¯„分总数é‡å¯¹åº”于用户集åˆä¸çš„评分,但åªèµ·ç¼“å˜ä½œç”¨ï¼Œå®šæœŸè®¡ç®—ã€‚ï¼ˆç»æµ‹è¯•è¡¨æ˜Žï¼Œæ¯æ¬¡ç”¨æˆ·è®¿é—®æ—¶è®¡ç®—的开销较大,用户得到å“应的时间过长): \end_layout \begin_layout Verbatim { \end_layout \begin_layout Verbatim _id: Integer, \end_layout \begin_layout Verbatim title: String, \end_layout \begin_layout Verbatim cover: String, \end_layout \begin_layout Verbatim genres: Array([String, ...]), \end_layout \begin_layout Verbatim price: Float, \end_layout \begin_layout Verbatim ratingSum: Integer, \end_layout \begin_layout Verbatim ratingCount: Integer, \end_layout \begin_layout Verbatim trailer_image_url: String, \end_layout \begin_layout Verbatim storyline: Array([String, ...]), \end_layout \begin_layout Verbatim directors: Array([String, ...]), \end_layout \begin_layout Verbatim writers: Array([String, ...]), \end_layout \begin_layout Verbatim actors: Array([String, ...]), \end_layout \begin_layout Verbatim } \end_layout \begin_layout Standard Neo4jæ•°æ®åº“用于å˜å‚¨æŽ¨èç®—æ³•ä½¿ç”¨çš„çŸ¥è¯†å›¾è°±ï¼Œå«æœ‰182011个结点ã€1241995æ¡è¾¹ï¼Œå…¶æ•°æ®ç»“æž„å¯è¡¨ç¤ºä¸ºï¼š \end_layout \begin_layout Verbatim node: actor | country | director | film | genre | language \end_layout \begin_layout Verbatim | person_or_entity_appearing_in_film | rating | star \end_layout \begin_layout Verbatim | writer \end_layout \begin_layout Verbatim relationship: actor.film | director.film | film.country \end_layout \begin_layout Verbatim | film.director | film.genre | film.language | film.rating \end_layout \begin_layout Verbatim | film.star | film.writer | genre.film \end_layout \begin_layout Verbatim | person_or_entity_appearing_in_film.film | writer.film \end_layout \begin_layout Verbatim edge = (node) - [relationship] -> (node) \end_layout \begin_layout Section 系统功能说明 \end_layout \begin_layout Standard \begin_inset Float figure placement document alignment document wide false sideways false status open \begin_layout Plain Layout \begin_inset Graphics filename figures/use-case.pdf \end_inset \begin_inset ERT status collapsed \begin_layout Plain Layout \backslash bicaption \end_layout \end_inset \begin_inset ERT status collapsed \begin_layout Plain Layout { \end_layout \end_inset 系统功能用例图 \begin_inset ERT status collapsed \begin_layout Plain Layout } \end_layout \end_inset \begin_inset ERT status collapsed \begin_layout Plain Layout { \end_layout \end_inset Use case diagram for the system \begin_inset ERT status collapsed \begin_layout Plain Layout } \end_layout \end_inset \begin_inset CommandInset label LatexCommand label name "fig:use-case" \end_inset \end_layout \end_inset \end_layout \begin_layout Standard æœ¬ç³»ç»Ÿç”¨æˆ·è§’è‰²åˆ†ä¸ºæœªç™»å½•ç”¨æˆ·ã€æ™®é€šç”¨æˆ·ä¸Žç®¡ç†å‘˜ç”¨æˆ·ï¼Œå…¶ç”¨ä¾‹è¯´æ˜Žå¦‚图 \begin_inset CommandInset ref LatexCommand ref reference "fig:use-case" plural "false" caps "false" noprefix "false" \end_inset 。 \end_layout \begin_layout Subsection 系统导航 \end_layout \begin_layout Standard 本系统使用浮动侧边æ 作为导航方å¼ï¼Œå¦‚图 \begin_inset CommandInset ref LatexCommand ref reference "fig:admin-navigation" plural "false" caps "false" noprefix "false" \end_inset 。点击侧导航æ å³ä¸‹è§’的固定的按钮å¯ä»¥å°†æµ®åŠ¨ä¾§è¾¹æ è®¾ä¸ºå›ºå®šï¼Œå†æ¬¡ç‚¹å‡»åŽå°†å–消固定。 \begin_inset Float figure placement document alignment document wide false sideways false status open \begin_layout Plain Layout \begin_inset Box Boxed position "c" hor_pos "l" has_inner_box 0 inner_pos "c" use_parbox 0 use_makebox 0 width "" special "none" height "1in" height_special "totalheight" thickness "0.4pt" separation "3pt" shadowsize "4pt" framecolor "black" backgroundcolor "none" status open \begin_layout Plain Layout \begin_inset Graphics filename figures/admin-navigation.png width 94text% \end_inset \end_layout \end_inset \begin_inset ERT status collapsed \begin_layout Plain Layout \backslash bicaption \end_layout \end_inset \begin_inset ERT status collapsed \begin_layout Plain Layout { \end_layout \end_inset 系统侧导航æ (管ç†å‘˜ï¼‰ \begin_inset ERT status collapsed \begin_layout Plain Layout } \end_layout \end_inset \begin_inset ERT status collapsed \begin_layout Plain Layout { \end_layout \end_inset Side navigation panel of the system (for administrators) \begin_inset ERT status collapsed \begin_layout Plain Layout } \end_layout \end_inset \begin_inset CommandInset label LatexCommand label name "fig:admin-navigation" \end_inset \end_layout \end_inset \end_layout \begin_layout Subsection 未登录用户 \end_layout \begin_layout Standard 未登录用户能进行以下æ“作: \end_layout \begin_layout Standard \noindent (1ï¼‰æŽ¥æ”¶éšæœºçš„电影推è \end_layout \begin_layout Standard æœªç™»å½•ç”¨æˆ·é¦–é¡µéšæœºæ˜¾ç¤º50部电影,如图 \begin_inset CommandInset ref LatexCommand ref reference "fig:anonymous-index" plural "false" caps "false" noprefix "false" \end_inset 。 \begin_inset Float figure placement document alignment document wide false sideways false status open \begin_layout Plain Layout \begin_inset Box Boxed position "c" hor_pos "l" has_inner_box 0 inner_pos "c" use_parbox 0 use_makebox 0 width "" special "none" height "1in" height_special "totalheight" thickness "0.4pt" separation "3pt" shadowsize "4pt" framecolor "black" backgroundcolor "none" status open \begin_layout Plain Layout \begin_inset Graphics filename figures/anonymous-index.png width 94text% \end_inset \end_layout \end_inset \begin_inset ERT status collapsed \begin_layout Plain Layout \backslash bicaption \end_layout \end_inset \begin_inset ERT status collapsed \begin_layout Plain Layout { \end_layout \end_inset 未登录用户首页 \begin_inset ERT status collapsed \begin_layout Plain Layout } \end_layout \end_inset \begin_inset ERT status collapsed \begin_layout Plain Layout { \end_layout \end_inset Index page for anonymous users \begin_inset ERT status collapsed \begin_layout Plain Layout } \end_layout \end_inset \begin_inset CommandInset label LatexCommand label name "fig:anonymous-index" \end_inset \end_layout \end_inset \end_layout \begin_layout Standard \noindent (2)按分类查看电影 \end_layout \begin_layout Standard 未登录用户å¯ä»¥æ ¹æ®ç”µå½±çš„åˆ†ç±»æ¥æŸ¥çœ‹ç”µå½±ï¼Œå¦‚图 \begin_inset CommandInset ref LatexCommand ref reference "fig:anonymous-category" plural "false" caps "false" noprefix "false" \end_inset 。 \begin_inset Float figure placement document alignment document wide false sideways false status open \begin_layout Plain Layout \begin_inset Box Boxed position "c" hor_pos "l" has_inner_box 0 inner_pos "c" use_parbox 0 use_makebox 0 width "" special "none" height "1in" height_special "totalheight" thickness "0.4pt" separation "3pt" shadowsize "4pt" framecolor "black" backgroundcolor "none" status open \begin_layout Plain Layout \begin_inset Graphics filename figures/anonymous-category.png width 94text% \end_inset \end_layout \end_inset \begin_inset ERT status collapsed \begin_layout Plain Layout \backslash bicaption \end_layout \end_inset \begin_inset ERT status collapsed \begin_layout Plain Layout { \end_layout \end_inset æœªç™»å½•ç”¨æˆ·åˆ†ç±»é¡µé¢ \begin_inset ERT status collapsed \begin_layout Plain Layout } \end_layout \end_inset \begin_inset ERT status collapsed \begin_layout Plain Layout { \end_layout \end_inset Category page for anonymous users \begin_inset ERT status collapsed \begin_layout Plain Layout } \end_layout \end_inset \begin_inset CommandInset label LatexCommand label name "fig:anonymous-category" \end_inset \end_layout \end_inset \end_layout \begin_layout Standard \noindent (3)查看电影详情 \end_layout \begin_layout Standard 未登录用户å¯ä»¥æŸ¥çœ‹ç”µå½±è¯¦æƒ…,如图 \begin_inset CommandInset ref LatexCommand ref reference "fig:anonymous-details" plural "false" caps "false" noprefix "false" \end_inset 。点击页é¢ä¸Šçš„â€œæ·»åŠ è‡³å¿ƒæ„¿å•â€å’Œâ€œè´ä¹°â€ä¼šè·³è½¬è‡³ç™»å½•界é¢ã€‚ \begin_inset Float figure placement document alignment document wide false sideways false status open \begin_layout Plain Layout \begin_inset Box Boxed position "c" hor_pos "l" has_inner_box 0 inner_pos "c" use_parbox 0 use_makebox 0 width "" special "none" height "1in" height_special "totalheight" thickness "0.4pt" separation "3pt" shadowsize "4pt" framecolor "black" backgroundcolor "none" status open \begin_layout Plain Layout \begin_inset Graphics filename figures/anonymous-details.png special height=0.7\textheight \end_inset \end_layout \end_inset \begin_inset ERT status collapsed \begin_layout Plain Layout \backslash bicaption \end_layout \end_inset \begin_inset ERT status collapsed \begin_layout Plain Layout { \end_layout \end_inset æœªç™»å½•ç”¨æˆ·ç”µå½±è¯¦æƒ…é¡µé¢ \begin_inset ERT status collapsed \begin_layout Plain Layout } \end_layout \end_inset \begin_inset ERT status collapsed \begin_layout Plain Layout { \end_layout \end_inset Movie details page for anonymous users \begin_inset ERT status collapsed \begin_layout Plain Layout } \end_layout \end_inset \begin_inset CommandInset label LatexCommand label name "fig:anonymous-details" \end_inset \end_layout \end_inset \end_layout \begin_layout Standard \noindent (4)æœç´¢ç”µå½± \end_layout \begin_layout Standard 未登录用户å¯ä»¥ä½¿ç”¨åº”用æ å³ä¾§çš„æœç´¢æ¡†æœç´¢ç”µå½±ï¼Œå¦‚图 \begin_inset CommandInset ref LatexCommand ref reference "fig:anonymous-search" plural "false" caps "false" noprefix "false" \end_inset ã€‚æœ¬ç³»ç»Ÿæ”¯æŒæ¨¡ç³Šæœç´¢ï¼Œä¸Žæ¤åŒæ—¶ï¼Œéšç€ç”¨æˆ·æœç´¢å†…å®¹çš„ä¸æ–输入,系统会在æœç´¢æ¡†ä¸‹æ–¹æ˜¾ç¤ºå€™é€‰çš„匹é…è¯æ¡ï¼Œæ–¹ä¾¿ç”¨æˆ·ç›´æŽ¥ç‚¹å‡»æŸ¥çœ‹ï¼Œæ¤å¤–,用户也能通过回车跳转至完整的æœç´¢ç»“ 果页é¢ã€‚ \begin_inset Float figure placement document alignment document wide false sideways false status open \begin_layout Plain Layout \begin_inset Box Boxed position "c" hor_pos "l" has_inner_box 0 inner_pos "c" use_parbox 0 use_makebox 0 width "" special "none" height "1in" height_special "totalheight" thickness "0.4pt" separation "3pt" shadowsize "4pt" framecolor "black" backgroundcolor "none" status open \begin_layout Plain Layout \begin_inset Graphics filename figures/anonymous-search.png width 94text% \end_inset \end_layout \end_inset \begin_inset ERT status collapsed \begin_layout Plain Layout \backslash bicaption \end_layout \end_inset \begin_inset ERT status collapsed \begin_layout Plain Layout { \end_layout \end_inset 未登录用户电影æœç´¢ç•Œé¢ï¼ˆä¾§å¯¼èˆªæ 已固定) \begin_inset ERT status collapsed \begin_layout Plain Layout } \end_layout \end_inset \begin_inset ERT status collapsed \begin_layout Plain Layout { \end_layout \end_inset Movie search page for anonymous users (side navigation panel pinned) \begin_inset ERT status collapsed \begin_layout Plain Layout } \end_layout \end_inset \begin_inset CommandInset label LatexCommand label name "fig:anonymous-search" \end_inset \end_layout \end_inset \end_layout \begin_layout Subsection 注册与登录 \end_layout \begin_layout Standard \noindent (1)注册 \end_layout \begin_layout Standard 本系统对普通用户开放注册功能,并能æä¾›ç”¨æˆ·å是å¦å«ä¸åˆæ³•å—ç¬¦ã€æ˜¯å¦ä¸Žå·²æ³¨å†Œç”¨æˆ·å冲çªã€å¯†ç 是å¦ç¬¦åˆå¤æ‚åº¦è¦æ±‚ç‰çš„æ£€æµ‹ã€‚ \end_layout \begin_layout Standard \noindent (2)登录 \end_layout \begin_layout Standard 本系统æä¾›ç™»å½•åŠŸèƒ½ï¼Œå¹¶èƒ½æ ¹æ®ä¸åŒçš„登录错误类型相应地作出å“应。 \end_layout \begin_layout Subsection 普通用户 \end_layout \begin_layout Standard 普通用户具备未登录用户的所有功能。æ¤å¤–,还具备以下功能: \end_layout \begin_layout Standard \noindent (1ï¼‰æ·»åŠ å¿ƒæ„¿å• \end_layout \begin_layout Standard å·²ç™»å½•ç”¨æˆ·èƒ½åœ¨ç”µå½±è¯¦æƒ…é¡µé¢æ·»åŠ ç”µå½±è‡³å¿ƒæ„¿å•。 \end_layout \begin_layout Standard \noindent (2)è´ä¹° \end_layout \begin_layout Standard 已登录用户能在电影详情页é¢è´ä¹°ç”µå½±ã€‚ \end_layout \begin_layout Standard \noindent (3)评分 \end_layout \begin_layout Standard 已登录用户能在电影详情页é¢ç»™ç”µå½±è¯„分。电影评分功能ä½äºŽç”µå½±è¯¦æƒ…页é¢ï¼Œå¦‚图 \begin_inset CommandInset ref LatexCommand ref reference "fig:general-details" plural "false" caps "false" noprefix "false" \end_inset 所示。 \end_layout \begin_layout Standard \begin_inset Float figure placement document alignment document wide false sideways false status open \begin_layout Plain Layout \begin_inset Box Boxed position "c" hor_pos "l" has_inner_box 0 inner_pos "c" use_parbox 0 use_makebox 0 width "" special "none" height "1in" height_special "totalheight" thickness "0.4pt" separation "3pt" shadowsize "4pt" framecolor "black" backgroundcolor "none" status open \begin_layout Plain Layout \begin_inset Graphics filename figures/general-details.png width 94text% \end_inset \end_layout \end_inset \begin_inset ERT status collapsed \begin_layout Plain Layout \backslash bicaption \end_layout \end_inset \begin_inset ERT status collapsed \begin_layout Plain Layout { \end_layout \end_inset ç”µå½±è¯„åˆ†é¡µé¢ \begin_inset ERT status collapsed \begin_layout Plain Layout } \end_layout \end_inset \begin_inset ERT status collapsed \begin_layout Plain Layout { \end_layout \end_inset Rating page for movies \begin_inset ERT status collapsed \begin_layout Plain Layout } \end_layout \end_inset \begin_inset CommandInset label LatexCommand label name "fig:general-details" \end_inset \end_layout \end_inset \end_layout \begin_layout Standard \noindent (4)查看已è´ä¹°çš„电影 \end_layout \begin_layout Standard 已登录用户能通过侧导航æ 跳转至查看已è´ä¹°çš„电影的页é¢ã€‚ \end_layout \begin_layout Standard \noindent (5ï¼‰æŸ¥çœ‹å·²æ·»åŠ å¿ƒæ„¿å•的电影 \end_layout \begin_layout Standard 已登录用户能通过侧导航æ è·³è½¬è‡³æŸ¥çœ‹å·²æ·»åŠ å¿ƒæ„¿å•的电影的页é¢ã€‚ \end_layout \begin_layout Subsection 管ç†å‘˜ç”¨æˆ· \end_layout \begin_layout Standard \noindent (1)管ç†ç”µå½±ä¿¡æ¯ \end_layout \begin_layout Standard 管ç†å‘˜èƒ½å¢žåŠ ç”µå½±ã€åˆ 除电影与修改电影信æ¯ï¼Œå¦‚图 \begin_inset CommandInset ref LatexCommand ref reference "fig:admin-movie" plural "false" caps "false" noprefix "false" \end_inset 所示。 \begin_inset Float figure placement document alignment document wide false sideways false status open \begin_layout Plain Layout \begin_inset Box Boxed position "c" hor_pos "l" has_inner_box 0 inner_pos "c" use_parbox 0 use_makebox 0 width "" special "none" height "1in" height_special "totalheight" thickness "0.4pt" separation "3pt" shadowsize "4pt" framecolor "black" backgroundcolor "none" status open \begin_layout Plain Layout \begin_inset Graphics filename figures/admin-movie.png width 94text% \end_inset \end_layout \end_inset \begin_inset ERT status collapsed \begin_layout Plain Layout \backslash bicaption \end_layout \end_inset \begin_inset ERT status collapsed \begin_layout Plain Layout { \end_layout \end_inset 管ç†ç”µå½±é¡µé¢ \begin_inset ERT status collapsed \begin_layout Plain Layout } \end_layout \end_inset \begin_inset ERT status collapsed \begin_layout Plain Layout { \end_layout \end_inset Movie administration page \begin_inset ERT status collapsed \begin_layout Plain Layout } \end_layout \end_inset \begin_inset CommandInset label LatexCommand label name "fig:admin-movie" \end_inset \end_layout \end_inset \end_layout \begin_layout Standard \noindent (2)管ç†ç”¨æˆ·ä¿¡æ¯ \end_layout \begin_layout Standard 管ç†å‘˜èƒ½å¢žåŠ ç”¨æˆ·ã€åˆ 除用户与修改用户密ç 。 \end_layout \begin_layout Standard \noindent (3)管ç†çŸ¥è¯†å›¾è°± \end_layout \begin_layout Standard 管ç†å‘˜èƒ½å¢žåŠ ã€åˆ 除ã€ä¿®æ”¹ä»¥åŠæŸ¥æ‰¾çŸ¥è¯†å›¾è°±ä¸çš„结点与关系,如图 \begin_inset CommandInset ref LatexCommand ref reference "fig:admin-knowledge-graph" plural "false" caps "false" noprefix "false" \end_inset 所示。该界é¢ä¸çš„结点åŠå…³ç³»å¯ä»¥ä»¥åЍæ€çš„æ–¹å¼å‘ˆçŽ°ï¼ŒåŒæ—¶æ”¯æŒä»¥å¡«å†™é€‰é¡¹çš„æ–¹å¼ä»¥åŠä½¿ç”¨Cypherè¯å¥çš„æ–¹å¼æ¥å¢žåŠ ã€åˆ 除ã€ä¿®æ”¹ä»¥åŠæŸ¥æ‰¾çŸ¥è¯†å›¾è°±ä¸çš„ç»“ç‚¹ä¸Žå…³ç³»ã€‚å½“é¼ æ ‡æ‚¬ 浮于æŸä¸€èŠ‚ç‚¹æˆ–å…³ç³»ä¹‹ä¸Šæ—¶ï¼Œå°†æ˜¾ç¤ºæœ‰å…³è¿™ä¸€èŠ‚ç‚¹æˆ–å…³ç³»çš„æœ‰å…³ä¿¡æ¯ã€‚ \begin_inset Float figure placement document alignment document wide false sideways false status open \begin_layout Plain Layout \begin_inset Box Boxed position "c" hor_pos "l" has_inner_box 0 inner_pos "c" use_parbox 0 use_makebox 0 width "" special "none" height "1in" height_special "totalheight" thickness "0.4pt" separation "3pt" shadowsize "4pt" framecolor "black" backgroundcolor "none" status open \begin_layout Plain Layout \begin_inset Graphics filename figures/admin-knowledge-graph.png width 94text% \end_inset \end_layout \end_inset \begin_inset ERT status collapsed \begin_layout Plain Layout \backslash bicaption \end_layout \end_inset \begin_inset ERT status collapsed \begin_layout Plain Layout { \end_layout \end_inset 管ç†çŸ¥è¯†å›¾è°±é¡µé¢ \begin_inset ERT status collapsed \begin_layout Plain Layout } \end_layout \end_inset \begin_inset ERT status collapsed \begin_layout Plain Layout { \end_layout \end_inset Knowledge graph administration page \begin_inset ERT status collapsed \begin_layout Plain Layout } \end_layout \end_inset \begin_inset CommandInset label LatexCommand label name "fig:admin-knowledge-graph" \end_inset \end_layout \end_inset \end_layout \begin_layout Section ç”µå½±æŽ¨èæµç¨‹ \end_layout \begin_layout Standard æœ¬ç³»ç»Ÿçš„æŽ¨èæµç¨‹åˆ†ä¸ºç¦»çº¿æŽ¨è与实时推è,如图 \begin_inset CommandInset ref LatexCommand ref reference "fig:recommendation-procedure" plural "false" caps "false" noprefix "false" \end_inset 所示。 \end_layout \begin_layout Standard \begin_inset Float figure placement document alignment document wide false sideways false status open \begin_layout Plain Layout \begin_inset Graphics filename figures/recommendation-procedure.pdf \end_inset \begin_inset ERT status collapsed \begin_layout Plain Layout \backslash bicaption \end_layout \end_inset \begin_inset ERT status collapsed \begin_layout Plain Layout { \end_layout \end_inset ç”µå½±æŽ¨èæµç¨‹ \begin_inset ERT status collapsed \begin_layout Plain Layout } \end_layout \end_inset \begin_inset ERT status collapsed \begin_layout Plain Layout { \end_layout \end_inset Movie recommendation procedure \begin_inset ERT status collapsed \begin_layout Plain Layout } \end_layout \end_inset \begin_inset CommandInset label LatexCommand label name "fig:recommendation-procedure" \end_inset \end_layout \end_inset \end_layout \begin_layout Standard å…¶ä¸ï¼Œç¦»çº¿æŽ¨è使用第 \begin_inset CommandInset ref LatexCommand ref reference "ch:offline-recommendation" plural "false" caps "false" noprefix "false" \end_inset ç« æ‰€è¿°çš„æ¶Ÿæ¼ªç½‘ç»œç®—æ³•ï¼Œæ¤ç®—法是基于文献 \begin_inset ERT status collapsed \begin_layout Plain Layout \backslash parencite \end_layout \end_inset \begin_inset ERT status collapsed \begin_layout Plain Layout { \end_layout \end_inset wang2018ripplenet \begin_inset ERT status collapsed \begin_layout Plain Layout } \end_layout \end_inset 实现的。ä¸åŒäºŽæ–‡çŒ® \begin_inset ERT status collapsed \begin_layout Plain Layout \backslash parencite \end_layout \end_inset \begin_inset ERT status collapsed \begin_layout Plain Layout { \end_layout \end_inset wang2018ripplenet \begin_inset ERT status collapsed \begin_layout Plain Layout } \end_layout \end_inset ä¸ä»…使用用户评分计算用户å好,本推è系统在用户å好的计算过程ä¸è¿˜ç»“åˆäº†ç”¨æˆ·æ”¶è—,这在一定程度上缓解了冷å¯åŠ¨é—®é¢˜å¹¶æ”¹è¿›äº†æŽ¨èæ€§èƒ½ã€‚ æ¤å¤–,本推è系统还结åˆäº†å®žæ—¶æŽ¨ èæœºåˆ¶ä½œä¸ºè¡¥å……,æè¿°å¦‚下: \end_layout \begin_layout Standard (1ï¼‰ç¦»çº¿æŽ¨èæœåŠ¡å™¨å®šæœŸè¿è¡Œæ¶Ÿæ¼ªç½‘ç»œç®—æ³•ã€‚ç¦»çº¿æŽ¨èæœåŠ¡å™¨ä»ŽMongoDBæ•°æ®åº“æœåŠ¡å™¨èŽ·å–用户信æ¯ä¸Žç”µå½±è¯„分ã€ç”µå½±æ˜¯å¦åŠ å…¥å¿ƒæ„¿å•ç‰æ•°æ®ä»¥åŠä»ŽNeo4jæ•°æ®åº“æœåС噍 获å–知识图谱数æ®ä¿¡æ¯ã€‚ç„¶åŽæ‰§è¡Œæ¶Ÿæ¼ªç½‘络算法。最åŽç¦»çº¿æŽ¨èæœåŠ¡å™¨å°†è®¡ç®—å¾—åˆ°çš„å„用户推è列表å˜å…¥MongoDBæ•°æ®åº“ä¸ï¼Œç‰å¾…用户访问时将该结果推è给用户。 \end_layout \begin_layout Standard (2)当用户访问时,网页åŽç«¯æœåŠ¡å™¨æŸ¥è¯¢æŽ¨è列表ä¸çš„ç”µå½±æ•°æ®æ˜¯å¦è¾¾åˆ°é˜€å€¼ï¼Œå¦‚果推è列表ä¸çš„æ•°é‡è¿‡å°‘ï¼Œåˆ™æ ¹æ®ç”¨æˆ·äº¤äº’éšæœºå°†åŒä½“è£ç”µå½±åŠ å…¥æŽ¨è列表的末端作为补充并最终 显示给用户。 \end_layout \begin_layout Standard 上述æ¥éª¤ä¸ï¼Œï¼ˆ1)ä¸çš„离线推è准确度高,但算法è¿ç®—æ—¶é—´é•¿ï¼Œæ— æ³•åšåˆ°å³æ—¶å“应用户请求。(2)ä¸çš„å®žæ—¶æŽ¨èæ–¹æ³•准确度低,但算法è¿ç®—快,å¯ä»¥åšåˆ°å®žæ—¶å“åº”è¯·æ±‚å¹¶å³æ—¶å‘出 å“应。两者相互补充组æˆäº†æœ¬ç³»ç»Ÿçš„电影推è算法。 \end_layout \begin_layout Section 系统安全性 \end_layout \begin_layout Standard 本系统对已登录普通用户与管ç†å‘˜åœ¨å‰åŽç«¯äº¤äº’过程ä¸ä½¿ç”¨JSON网络令牌(JSON Web Token, JWT)实现授æƒä¸Žè®¤è¯ï¼ˆAuthorization and Authentication),以æ¤ä¿è¯ç³»ç»Ÿçš„安全性,本系统的总体安全性设计如图 \begin_inset CommandInset ref LatexCommand ref reference "fig:jwt" plural "false" caps "false" noprefix "false" \end_inset 所示。 \end_layout \begin_layout Standard \begin_inset Float figure placement document alignment document wide false sideways false status open \begin_layout Plain Layout \begin_inset Graphics filename figures/jwt.pdf \end_inset \begin_inset ERT status collapsed \begin_layout Plain Layout \backslash bicaption \end_layout \end_inset \begin_inset ERT status collapsed \begin_layout Plain Layout { \end_layout \end_inset 系统总体安全性设计 \begin_inset ERT status collapsed \begin_layout Plain Layout } \end_layout \end_inset \begin_inset ERT status collapsed \begin_layout Plain Layout { \end_layout \end_inset Overall security design for the system \begin_inset ERT status collapsed \begin_layout Plain Layout } \end_layout \end_inset \begin_inset CommandInset label LatexCommand label name "fig:jwt" \end_inset \end_layout \end_inset \end_layout \begin_layout Standard 在用户登录时,FlaskåŽç«¯ç½‘页æœåŠ¡å™¨ä¼šç”Ÿæˆä¸€ä¸ªé•¿æœŸJSON网络令牌和一个临时JSON网络令牌,令牌ä¸å˜å‚¨æœ‰ç”¨æˆ·id以åŠè¿‡æœŸæ—¶é—´ï¼Œå¹¶ä¸”该令牌使用éžå¯¹ç§°åŠ å¯†ç®—æ³•åŠ å¯†ï¼Œå…¶ä¸å«æœ‰ç”±FlaskåŽç«¯ç½‘页æœåС噍é¢å‘çš„ç¾åä¿¡æ¯ï¼Œè¿™ç¡®ä¿äº†JSON网络令牌ä¸ä¼šè¢«ä¼ªé€ 。 \end_layout \begin_layout Standard å‰ç«¯ç½‘页æœåŠ¡å™¨åœ¨æŽ¥æ”¶åˆ°ä»¤ç‰ŒåŽä¼šå°†ä»¤ç‰Œå˜å‚¨åœ¨æµè§ˆå™¨çš„localStorageä¸ï¼Œå¹¶åœ¨æ¯ä¸€ä¸ªæŽ¥ä¸‹æ¥çš„请求头ä¸é™„上该令牌,而åŽç«¯æœåŠ¡å™¨åªæœ‰åœ¨è¯¥ä»¤ç‰Œæœ‰æ•ˆï¼ˆæŒ‡ç¡®å®žä¸ºåŽç«¯ç½‘ 页æœåС噍é¢å‘且该å¦ä»¤ç‰Œå°šæœªè¿‡æœŸï¼‰çš„æƒ…况下æ‰ä¼šç»§ç»æ‰§è¡Œæœ‰å…³è¯·æ±‚。与æ¤åŒæ—¶ï¼Œè‹¥è¯¥è¯·æ±‚是用户内容相关的,则åŽç«¯æœåŠ¡å™¨è¿˜ä¼šæ£€æµ‹ä»¤ç‰Œä¸çš„id是å¦ä¸Žè¯·æ±‚ä¸ä½¿ç”¨çš„id相åŒã€‚è‹¥ 䏿»¡è¶³ä»¥ä¸Šä»»æ„一项,则åŽç«¯ç½‘页æœåŠ¡å™¨è¿”å›žæœªæŽˆæƒé”™è¯¯ã€‚ \end_layout \begin_layout Standard å…¶ä¸ï¼Œè‹¥åŽç«¯ç½‘页æœåС噍å‘现令牌过期,则会将该信æ¯å‘é€ç»™å‰ç«¯ç½‘页æœåŠ¡å™¨ï¼Œå‰ç«¯ç½‘页æœåŠ¡å™¨å°†ä¼šå°†é•¿æœŸä»¤ç‰Œå‘é€ç»™åŽç«¯æœåŠ¡å™¨ä»¥åˆ·æ–°ï¼ˆrenew)临时令牌。 \end_layout \begin_layout Standard æ¤å¤–,本系统还使用了哈希算法对密ç 进行哈希处ç†ï¼Œæ•°æ®åº“ä¸çš„密ç 全部为哈希处ç†åŽçš„密ç ã€‚åŒæ—¶ï¼Œç”¨æˆ·ç™»å½•过程是åŽç«¯ç½‘页æœåŠ¡å™¨ä½¿ç”¨åŽŸå¯†ç 与哈希处ç†åŽçš„密ç 进行比较,而 没有开放哈希处ç†åŽçš„密ç 与哈希处ç†åŽçš„密ç 进行比较的接å£ï¼Œè¿™ä¿éšœäº†æœ¬ç³»ç»Ÿçš„å®‰å…¨æ€§ã€‚è¿™åœ¨åŒæ—¶ä»¤ç½‘站仅å…许HTTPS(HTTPS-only)网络连接的情况下å¯ä»¥å……分 ä¿è¯æœ¬ç³»ç»Ÿçš„安全性。 \end_layout \begin_layout Standard éœ€è¦æŒ‡å‡ºçš„æ˜¯ï¼Œè™½ç„¶æœ¬ç³»ç»Ÿåœ¨ç”¨æˆ·ç™»å½•与注册时密ç 在å‰ç«¯æ²¡æœ‰è¿›è¡Œå“ˆå¸Œå¤„ç†ï¼Œä½†æ˜¯æœ¬ç³»ç»Ÿåœ¨éƒ¨ç½²æ—¶ä½¿ç”¨HTTPS-onlyçš„è¿žæŽ¥ï¼Œåœ¨è¿™ç§æƒ…况下,所有的数æ®ä¼ è¾“éƒ½å¤„äºŽåŠ å¯†çŠ¶ æ€ï¼Œé¿å…了ä¸é—´äººæ”»å‡»çš„å¯èƒ½ï¼Œå› æ¤æ˜Žæ–‡ä¼ 输密ç 而ä¸ä½¿ç”¨å“ˆå¸Œå¤„ç†æ˜¯å®‰å…¨çš„,在实际使用的过程ä¸å¯è¡Œã€‚而本系统的åŽç«¯ç½‘页æœåС噍坹å‰ç«¯ç½‘页æœåŠ¡å™¨ä¼ å…¥çš„æ˜Žæ–‡å¯†ç è¿›è¡Œå“ˆå¸Œå¤„ç† çš„ç›®çš„æ˜¯é¿å…æ•°æ®åº“ä¸å˜å…¥æ˜Žæ–‡çš„密ç 。如果数æ®åº“ä¸å˜å…¥æ˜Žæ–‡çš„密ç ,则当数æ®åº“ä¸ç”¨æˆ·å¯†ç 泄露时攻击者å¯ä»¥è½»æ˜“使用泄露的密ç 登录本系统。而如上所述,本系统åŽç«¯åªå¼€æ”¾äº† 接收明文密ç 的接å£ï¼Œå³åªå°†æ•°æ®åº“ä¸å“ˆå¸Œå¤„ç†åŽçš„密ç 与用户请求ä¸çš„æ˜Žæ–‡å¯†ç 进行对比,å³ä½¿æ”»å‡»è€…获å–了用户哈希åŽçš„密ç ,è¦è®¡ç®—其对应的明文密ç 也是困难的,甚至在明文 密ç è¶³å¤Ÿå¤æ‚的情况下是ä¸å¯èƒ½çš„ã€‚å› æ¤ï¼Œä»¥ä¸ŠæŽªæ–½ä¿è¯äº†æœ¬ç³»ç»Ÿçš„安全性。 \end_layout \begin_layout Chapter ç ”ç©¶ç»“è®ºå’Œå±•æœ› \end_layout \begin_layout Section 工作总结 \end_layout \begin_layout Standard éšç€äº’è”网的å‘展,用户å¯é€‰æ‹©çš„电影数é‡ä¸æ–å¢žåŠ ï¼Œä¸ºäº†è®©ç”¨æˆ·å¿«é€Ÿæ‰¾åˆ°æ„Ÿå…´è¶£çš„ç”µå½±ï¼Œå„ç§æŽ¨è算法应è¿è€Œç”Ÿã€‚这些算法å˜åœ¨æŽ¨èå‡†ç¡®æ€§è¾ƒä½Žã€æ•°æ®ç¨€ç¼ºæ€§ä»¥åŠå†·å¯åŠ¨é—®é¢˜ã€‚æœ¬æ–‡ 针对æ¤çŽ°çŠ¶ï¼Œä»¥ç”µå½±æŽ¨èä¸ºç ”ç©¶å¯¹è±¡ï¼Œä½¿ç”¨çŸ¥è¯†å›¾è°±ä½œä¸ºè¾…åŠ©ä¿¡æ¯ï¼Œåˆ©ç”¨æ¶Ÿæ¼ªç½‘络算法实现了电影推è系统。具体地说,主è¦çš„ç ”ç©¶å·¥ä½œå¦‚ä¸‹ï¼š \end_layout \begin_layout Standard (1)使用基于Scrapy框架的爬虫从IMDb和豆瓣网上爬å–了3684æ¡ç”µå½±æ•°æ®ã€‚å…¶ä¸ï¼Œä»ŽIMDb爬å–了3494æ¡ç”µå½±æ•°æ®ï¼Œä»Žè±†ç“£ç½‘爬å–了190æ¡ç”µå½±æ•°æ®ï¼ˆç”±äºŽ 豆瓣网é™åˆ¶äº†æ¯IPè®¿é—®é‡æ•…爬å–的数æ®è¾ƒå°‘)。这些电影数æ®åŒ…括电影å°é¢å›¾ç‰‡ã€ç”µå½±æƒ…节介ç»ã€ç”µå½±é¢„告片图片ã€ç”µå½±æ¼”员列表ã€å¯¼æ¼”以åŠå‰§æœ¬ä½œå®¶ç‰ä¿¡æ¯ã€‚ \end_layout \begin_layout Standard (2ï¼‰æ ¹æ®æ–‡çŒ® \begin_inset ERT status collapsed \begin_layout Plain Layout \backslash parencite \end_layout \end_inset \begin_inset ERT status collapsed \begin_layout Plain Layout { \end_layout \end_inset wang2018ripplenet \begin_inset ERT status collapsed \begin_layout Plain Layout } \end_layout \end_inset 实现了基于知识图谱的涟漪网络推è算法,通过使用“MovieLens 1M Datasetâ€æ•°æ®é›†ä»¥åŠä»ŽIMDb和豆瓣网上爬å–的电影数æ®ï¼Œå®žçŽ°äº†åŸºäºŽç”¨æˆ·å¿ƒæ„¿å•和用 户评分并以知识图谱为辅助信æ¯çš„æŽ¨è算法。ä¸åŒäºŽæ–‡çŒ® \begin_inset ERT status collapsed \begin_layout Plain Layout \backslash parencite \end_layout \end_inset \begin_inset ERT status collapsed \begin_layout Plain Layout { \end_layout \end_inset wang2018ripplenet \begin_inset ERT status collapsed \begin_layout Plain Layout } \end_layout \end_inset ä¸ä»…使用用户评分计算用户å好,本文在用户å好的计算过程ä¸è¿˜ç»“åˆäº†ç”¨æˆ·æ”¶è—,这在一定程度上缓解了冷å¯åŠ¨é—®é¢˜å¹¶æ”¹è¿›äº†æŽ¨èæ€§èƒ½ã€‚并对实现的推è算法进行了实验,计算了其 AUCå’Œå‡†ç¡®åº¦ä¸¤ä¸ªå…³é”®çš„æ€§èƒ½æŒ‡æ ‡ï¼Œå°†è¯¥æŒ‡æ ‡ä¸ŽDKN \begin_inset CommandInset citation LatexCommand cite key "wang2018dkn" literal "false" \end_inset ã€CKE \begin_inset CommandInset citation LatexCommand cite key "zhang2016collaborative" literal "false" \end_inset ã€PER \begin_inset CommandInset citation LatexCommand cite key "yu2014personalized" literal "false" \end_inset ã€SHINE \begin_inset CommandInset citation LatexCommand cite key "wang2018shine" literal "false" \end_inset ã€LibFM \begin_inset CommandInset citation LatexCommand cite key "rendle2012factorization" literal "false" \end_inset 以åŠWide&Deep \begin_inset CommandInset citation LatexCommand cite key "cheng2016wide" literal "false" \end_inset 算法的进行了对比。并以æ¤å‘现,涟漪网络算法的性能最优。 \end_layout \begin_layout Standard (3)基于涟漪网络算法实现了基于知识图谱的电影推è系统。该系统为未登录用户æä¾›æŒ‰åˆ†ç±»æŸ¥çœ‹ç”µå½±ã€æŸ¥çœ‹ç”µå½±è¯¦æƒ…的功能;为普通用户æä¾›ç”µå½±æŽ¨èã€æŒ‰åˆ†ç±»æŸ¥çœ‹ç”µå½±ã€æŸ¥çœ‹ç”µ 影详情ã€ç”µå½±è¯„分ã€å°†ç”µå½±åŠ å…¥å¿ƒæ„¿å•以åŠè´ä¹°ç”µå½±åŠŸèƒ½ï¼›ä¸ºç®¡ç†å‘˜æä¾›å¢žåŠ ã€åˆ 除ã€ä¿®æ”¹ã€æŸ¥æ‰¾ç”µå½±åŠç”¨æˆ·çš„åŠŸèƒ½ã€‚åŒæ—¶ä½¿ç”¨JSON网络令牌ã€HTTPS以åŠå“ˆå¸ŒåŒ–密ç ç‰æ‰‹æ®µ ä¿éšœç³»ç»Ÿçš„安全性。 \end_layout \begin_layout Section 工作展望 \end_layout \begin_layout Standard 为了给用户æä¾›å‡†ç¡®çš„æŽ¨è电影,需è¦ä¸æ–优化并改进推è过程。推è系统的基础是用户历å²å好集ã€çŸ¥è¯†å›¾è°±ä¿¡æ¯ä»¥åпލèç®—æ³•æœ¬èº«ã€‚å› æ¤æœ‰æ•ˆåœ°è®°å½•用户历å²å好集,完善知识图 谱信æ¯å¹¶æ”¹è¿›æŽ¨è算法本身是æé«˜æŽ¨è结果的é‡è¦å› ç´ ã€‚æœ¬æ–‡è™½ç„¶å¯¹åŸºäºŽçŸ¥è¯†å›¾è°±çš„æŽ¨èç®—æ³•æœ‰äº†ä¸€å®šçš„ç ”ç©¶ï¼Œå¹¶ä¸”å°†å…¶åº”ç”¨äºŽç”µå½±æŽ¨è系统ä¸ï¼Œä½†æ˜¯ç”±äºŽæ—¶é—´å’Œèƒ½åŠ›æ‰€é™ï¼Œè¯¥ç³»ç»Ÿä» å˜åœ¨ç€ä¸è¶³çš„地方,主è¦ä½“现在以下两个方é¢ï¼š \end_layout \begin_layout Standard \noindent (1)需è¦å®Œå–„çŸ¥è¯†å›¾è°±çš„ä¿¡æ¯ \end_layout \begin_layout Standard 知识图谱是本文使用的涟漪网络算法的基础,但本文所使用的知识图谱的信æ¯è¿˜ä¸å¤Ÿå®Œå–„ï¼Œå› æ¤åœ¨ä¸€å®šç¨‹åº¦ä¸Šå½±å“了涟漪网络算法的性能。 \end_layout \begin_layout Standard \noindent (2ï¼‰æ¶Ÿæ¼ªç½‘ç»œç®—æ³•æœ‰å¾…è¿›ä¸€æ¥æ”¹è¿› \end_layout \begin_layout Standard å°½ç®¡æ¶Ÿæ¼ªç½‘ç»œç®—æ³•ç›¸æ¯”äºŽä¼ ç»Ÿçš„æŽ¨è算法在准确度上有所æå‡ï¼Œä½†æ¶Ÿæ¼ªç½‘络算法目å‰ä»…适用于离线推èï¼Œè€Œæ— æ³•ç”¨äºŽå®žæ—¶æŽ¨è,这使它的适用场景å—到了é™åˆ¶ã€‚未æ¥å¯è€ƒè™‘æ”¹é€ è¯¥ç®—æ³• ,使其能满足实时推è的需求。 \end_layout \begin_layout Standard 对于以上æåŠçš„问题,未æ¥è¿˜éœ€è¦æ›´æ·±å…¥åœ°å¦ä¹ æœ‰å…³çŸ¥è¯†å›¾è°±ã€æŽ¨èç®—æ³•ã€æ·±åº¦å¦ä¹ 的有关知识,对系统进行改进,从而使其更完善。 \begin_inset ERT status collapsed \begin_layout Plain Layout \backslash backmatter \end_layout \end_inset \begin_inset CommandInset bibtex LatexCommand bibtex bibfiles "bibliography" \end_inset \end_layout \begin_layout Chapter 致谢 \end_layout \begin_layout Standard è®ºæ–‡çš„æ’°å†™å·¥ä½œå·²ç»æŽ¥è¿‘å°¾å£°ï¼Œåœ¨æœ¬æ–‡çš„æ’°å†™è¿‡ç¨‹ä¸æˆ‘è¦ç‰¹åˆ«æ„Ÿè°¢æŽå†¬æ¢…è€å¸ˆçš„æŒ‡å¯¼ã€‚åœ¨æ¯•ä¸šè®ºæ–‡å®ŒæˆæœŸé—´ï¼ŒæŽå†¬æ¢…è€å¸ˆå¤šæ¬¡å¯¹æˆ‘的毕业论文æå‡ºæ„è§ä¸Žå»ºè®®ã€‚åŒæ—¶ï¼Œå¥¹å¤šæ¬¡è¯¢é—®è®ºæ–‡ 的撰写进度,更是体现了她对å¦ç”Ÿæ— å¾®ä¸è‡³çš„å…³æ€€ã€‚æ¯æ¯å½“我在论文编写ä¸é‡åˆ°è‰°æ·±æ™¦æ¶©ä¹‹å¤„时,她都能ä¸å¤±æ—¶æœºè€Œæ°åˆ°å¥½å¤„地给予我最有用的æç¤ºä¸Žå»ºè®®ï¼Œä½¿æˆ‘的毕业论文得以顺利 完æˆã€‚ \end_layout \begin_layout Standard å…¶æ¬¡ï¼Œæˆ‘è¦æ„Ÿè°¢æˆ‘本科期间曾ç»ä¸ºæˆ‘上课的所有è€å¸ˆã€‚比如,由我的概率论è€å¸ˆä¸ºæˆ‘打下的数å¦åŸºç¡€æ‰ä½¿æˆ‘得以用最大åŽéªŒæ¦‚率估计法完æˆåµŒå…¥è¡¨ç¤ºçš„å¦ä¹ ç®—æ³•ï¼Œè“æµ·æ´‹è€å¸ˆä»»æ•™çš„网 站设计课程是我完æˆç”µå½±æŽ¨èç³»ç»Ÿçš„åŸºçŸ³ã€‚æ€»ä¹‹ï¼Œæˆ‘è¦æ„Ÿè°¢å¤§å¦å››å¹´æ¥æ‰€æœ‰è€å¸ˆåœåœä¸å€¦çš„è°†è°†æ•™è¯²ä¸Žå¤œä»¥ç»§æ—¥çš„æ— ç§å¥‰çŒ®ã€‚ \end_layout \begin_layout Standard 接ç€ï¼Œæˆ‘è¿˜è¦æ„Ÿè°¢æˆ‘çš„åŒå¦ï¼Œæ˜¯ä»–们æ€ç»´çš„ç«èŠ±æ¿€èµ·äº†è®ºæ–‡å†™ä½œä¸çš„çµæ„Ÿã€‚与他们的交æµä½¿æˆ‘å—益匪浅。 \end_layout \begin_layout Standard 最åŽï¼Œæˆ‘è¿˜è¦æ„Ÿè°¢æˆ‘的父æ¯ï¼Œä»–们一直以æ¥å¯¹æˆ‘生活上与å¦ä¹ 上的鼓励与引导是我得益完æˆè®ºæ–‡çš„关键è¦ç´ 。 \end_layout \begin_layout Standard 感谢所有在论文撰写工作ä¸ä¸ºæˆ‘æä¾›è¿‡å¸®åŠ©çš„äººã€‚ \end_layout \end_body \end_document