[go: up one dir, main page]

WO2015129983A1 - 분산 퍼지 연관 규칙 마이닝에 기반한 영화 추천 장치 및 방법 - Google Patents

분산 퍼지 연관 규칙 마이닝에 기반한 영화 추천 장치 및 방법 Download PDF

Info

Publication number
WO2015129983A1
WO2015129983A1 PCT/KR2014/010252 KR2014010252W WO2015129983A1 WO 2015129983 A1 WO2015129983 A1 WO 2015129983A1 KR 2014010252 W KR2014010252 W KR 2014010252W WO 2015129983 A1 WO2015129983 A1 WO 2015129983A1
Authority
WO
WIPO (PCT)
Prior art keywords
movie
fuzzy
rating
list
association
Prior art date
Legal status (The legal status is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the status listed.)
Ceased
Application number
PCT/KR2014/010252
Other languages
English (en)
French (fr)
Inventor
김민성
Current Assignee (The listed assignees may be inaccurate. Google has not performed a legal analysis and makes no representation or warranty as to the accuracy of the list.)
SK Planet Co Ltd
Original Assignee
SK Planet Co Ltd
Priority date (The priority date is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the date listed.)
Filing date
Publication date
Application filed by SK Planet Co Ltd filed Critical SK Planet Co Ltd
Publication of WO2015129983A1 publication Critical patent/WO2015129983A1/ko
Anticipated expiration legal-status Critical
Ceased legal-status Critical Current

Links

Images

Classifications

    • GPHYSICS
    • G06COMPUTING OR CALCULATING; COUNTING
    • G06NCOMPUTING ARRANGEMENTS BASED ON SPECIFIC COMPUTATIONAL MODELS
    • G06N5/00Computing arrangements using knowledge-based models
    • G06N5/04Inference or reasoning models
    • G06N5/048Fuzzy inferencing

Definitions

  • the present invention relates to a movie recommendation apparatus and method based on distributed fuzzy association rule mining for recommending a movie through linguistic information by converting movie rating information of a user into linguistic information.
  • the present invention relates to a movie recommendation apparatus and method based on distributed fuzzy association rule mining that generates a list of related movies obtained by applying to fuzzy association rule mining and recommends a movie to a user who is recommended using the generated list.
  • Movie recommendation through the general movie recommendation algorithm is based on the user's purchase history of the movie and is recommended in the form of 'movie watched by people who saw this movie' through association rule mining. Or, it is possible to recommend by extracting a 'movie similar to this movie' by calculating the similarity between movies.
  • the user's rating information for the movie is converted into linguistic information, and the user obtains an association with the movie rating information of the user through distributed fuzzy association rule mining based on the linguistic information, and uses the obtained association relationship.
  • a film recommendation technique based on distributed fuzzy association rule mining that can recommend a suitable film for the user.
  • An object of the present invention is to recommend a movie suitable for the user's preference tendency by replacing the rating information that the user leaves with respect to the movie by linguistic evaluation information and recommending a movie related to the substituted evaluation information.
  • an object of the present invention is to provide a more reliable movie recommendation function to users by efficiently processing a large amount of movie rating information using a data processing method suitable for a distributed framework.
  • Movie recommendation apparatus for achieving the above object, the data acquisition unit for obtaining the first rating data including the rating for the movie, converts the obtained first rating data into second rating data, An association list generator for generating a related movie list by applying the second rating data to Fuzzy Association Rule Mining and a movie recommendation unit for recommending a movie using the related movie list to the recommendation target user.
  • the association list generation unit assigns a rating to one or more of the fuzzy membership functions including the triangular membership function, the trapezoidal membership function, and the Gaussian membership function, thereby fuzzy membership.
  • a value may be obtained, and the language label according to the acquired fuzzy affiliation value may be replaced with a rating to be converted into second rating data.
  • the association list generator may generate one or more of fuzzy reliability and fuzzy correlation using fuzzy association rule mining, and generate an associated movie list based on at least one of the generated fuzzy reliability and fuzzy correlation.
  • the association list generation unit generates the association combination unit for generating the association combination for each movie by combining the converted second rating data according to the fuzzy association rule, and generates a rating history for each movie by arranging the second rating data for each movie, It may include a fuzzy support calculator for calculating the fuzzy support for each movie by using the generated rating history for each movie.
  • the fuzzy support calculator may calculate the fuzzy support for each movie using a reference value obtained by normalizing the fuzzy belonging value.
  • the association list generation unit combines at least two or more of the fuzzy membership functions to calculate the association combination fuzzy support for the association combination for each movie, and the fuzzy reliability using one or more of the per-movie fuzzy support and the calculated association combination fuzzy support. Can be calculated.
  • the association list generator may calculate the fuzzy correlation using one or more of square values of the fuzzy support for each movie, the fuzzy reliability, and the fuzzy support for each movie.
  • the movie recommendation unit may determine the ranking of the related movie list generated according to a predetermined importance level, and recommend the movies in the order of the determined related movie list having the highest ranking.
  • the list of related movies may include one or more of the title, genre, director, country, production year and image of the movie.
  • the movie recommendation method comprises the steps of: obtaining input data including a rating for a movie; converting the obtained input data into second rating data; and applying the converted second rating data to fuzzy association rule mining. Generating a related movie list and recommending a movie using the related movie list generated to the recommendation target user.
  • the step of generating an associative movie list assigns a rating to at least one of fuzzy membership functions including a triangular membership function, a trapezoidal membership function, and a Gaussian membership function.
  • the method may include obtaining a fuzzy belonging value and converting the language label according to the acquired fuzzy belonging value into a second rating data by substituting the rating for the language label.
  • generating the related movie list may include generating one or more of fuzzy reliability and fuzzy correlation using association rule mining and generating the related movie list based on at least one of the generated fuzzy reliability and fuzzy correlation. It may include the step.
  • the generating of the related movie list may include generating one or more of fuzzy reliability and fuzzy correlation using fuzzy association rule mining and generating the related movie list based on one of the generated fuzzy reliability and fuzzy correlation. It may include the step.
  • the generating of the associative movie list may include combining at least two or more of the fuzzy membership functions to calculate the associative combination fuzzy support for the associative combination by film, and at least one of the associative fuzzy support and the calculated associative combination fuzzy support Computing the fuzzy reliability using may include.
  • the generating of the related movie list may include calculating a fuzzy correlation using at least one of square values of fuzzy support for each movie, fuzzy reliability, and fuzzy support for each movie.
  • the recommending of the movie may include determining a ranking of the related movie list generated according to a predetermined importance level, and recommending the movies in the order of the determined related movie list having the highest ranking.
  • the rating of the user to recommend the movie corresponds to the preference of the user to be recommended I can recommend a movie to say.
  • a list of various recommended movies may be generated and provided based on various directions between linguistic information.
  • FIG. 1 is a block diagram showing a movie recommendation apparatus according to an embodiment of the present invention.
  • FIG. 2 is a block diagram illustrating an association list generator of the movie recommendation apparatus of FIG. 1.
  • FIG. 3 is a flowchart illustrating a movie recommendation method according to an embodiment of the present invention.
  • FIG. 4 is a flowchart illustrating a process of generating a related movie list according to an embodiment of the present invention.
  • FIG. 5 is a diagram illustrating an example of first rating data of users of a movie.
  • 6A to 6C illustrate a fuzzy membership function for generating second rating data according to the present invention.
  • FIG. 7 is a diagram illustrating first rating data illustrated in FIG. 5 as fuzzy membership values and second rating data using the fuzzy membership function of FIG. 6A.
  • FIG. 1 is a block diagram showing a movie recommendation apparatus according to an embodiment of the present invention.
  • the movie recommendation apparatus 100 may include a data acquirer 110, an association list generator 120, and a movie recommender 130.
  • the data acquirer 110 may obtain first rating data including a user's rating for the movie.
  • the first rating data may include information that can be obtained from the input log, that is, a user ID for identifying a user and a movie ID for distinguishing a movie, and may include a rating in the form of a number.
  • the user ID, the movie ID, and the rating may be extracted from another type of input log, the first rating data may be obtained.
  • the first rating data may be represented in the form of 'User1 (m1, r_1_1), (m3, r_1_3), ..., (m100, r_1_100)'.
  • User1 may display a user ID, m1, m3, and m100 are movie IDs, and r_1_1, r_1_3, and r_1_100 may be ratings, and a rating given by the nth user to the mth movie may be displayed in the form of r_n_m.
  • association list generating unit 120 converts the obtained first rating data into second rating data and generates the related movie list by applying the converted second rating data to Fuzzy Association Rule Mining. can do.
  • fuzzy association rule mining is a technique that applies fuzzy theory to association rule mining, and can be expressed by representing the degree to which each object belongs to the group as a function of membership from binary logic that each object belongs to or does not belong to a certain set. . Therefore, the association between the products consumed based on the user's log, such as association rule mining, can be calculated to calculate the association between the products registered in the market or store.
  • Such a fuzzy association rule is mainly calculated using a single machine, and since a large amount of recommendation requires distributed processing of such logic, in the present invention, the fuzzy association rule mining is more effectively based on a distributed framework. You can use Hadoop's MapReduce to calculate.
  • MapReduce can be solved by defining ⁇ key, value> in each step of mapper and reducer.
  • ⁇ key, value> is a data pair that is the basic unit of data processing, and key and value can be defined as any structure or class to process complex data.
  • a fuzzy membership value is obtained by assigning a rating to at least one of fuzzy membership functions including a triangular membership function, a trapezoidal membership function, and a Gaussian membership function.
  • the language label according to the acquired fuzzy affiliation value may be converted into second rating data by substituting with a rating.
  • the fuzzy membership value can be obtained with a value between 0 and 1 with respect to the language label, and the value of the language label with a large fuzzy membership value is obtained.
  • each fuzzy membership function corresponds to a language label such as 'no', 'normal', or 'good', and the range of the fuzzy membership function and the number of fuzzy membership functions may be separately specified.
  • association list generator 120 may generate at least one of fuzzy reliability and fuzzy correlation using fuzzy association rule mining, and generate a related movie list based on at least one of the generated fuzzy reliability and fuzzy correlation. Can be.
  • association list generating unit 120 may generate the association combination for each movie by combining the converted second rating data according to the fuzzy association rule, and generates a rating history for each movie by arranging the second rating data for each movie.
  • the fuzzy support for each movie may be calculated using the generated rating history for each movie.
  • the association association for each movie may generate the combination with a length of a preset association rule according to the fuzzy association rule. For example, if the association rule has a length of 2, create a movie combination for the movies m1 and m3 with 'm1, m3, user1, r_1_1, r_1_3', and gather the rating information of each user's movie for that movie combination. Data such as 'm1, m3, (user1, r_1_1, r_1_3), (uesr7, r_7_1, r_7_3), ..., (userN, r_N_1, r_N_3)' may be collected. At this time, an expression such as r_n_m may be interpreted as a rating given by the nth user to the mth movie.
  • the rating history for each movie is, for example, by collecting the second rating data of the form of 'User1 (m1, r_1_1), (m3, r_1_3), ..., (m100, r_1_100) for each movie' m1, (user1, r_1_1), (user1, r_2_1), ..., (userN, r_N_1) '.
  • the fuzzy support degree for each movie may be calculated using a reference value obtained by normalizing the fuzzy belonging value.
  • each fuzzy belonging value may be normalized using Equation 1 below.
  • t i [a j ] can represent the i th record value in transaction DB
  • fuzzy support for each movie may be calculated using the reference value obtained by normalizing the fuzzy membership degree.
  • fuzzy support can be calculated using Equation 2 below.
  • Is the membership value of the value a j for the lth membership function Is the normalized default value, t i [a j ] may represent the fuzzy support calculated by substituting the i-th record value and FS ⁇ A, X> in the transaction DB
  • At least two or more of the fuzzy membership functions may be combined to calculate the associated combination fuzzy support for the associated association for each movie, and the fuzzy reliability may be calculated using one or more of the per-movie fuzzy support and the calculated associated combination fuzzy support.
  • the associated combination fuzzy support may be represented in the form of 'm1, m2, MF_1, MF_2, FS (m1, MF1, m2, MF_2)', where m is a film, MF is a fuzzy membership function, and FS is a fuzzy support Can be represented.
  • fuzzy reliability may be calculated using Equation 3 below.
  • the fuzzy correlation may be calculated using one or more of squared values of the fuzzy support for each movie, the fuzzy reliability, and the fuzzy support for each movie.
  • fuzzy correlation may be calculated using Equation 4 below.
  • Is the membership value of the value a j for the lth membership function Is the normalized default value, t i [a j ] is the i th record value in transaction DB
  • the movie recommendation unit 130 may recommend a movie to the recommendation user by using the related movie list. For example, it may be recommended to a user in the order of movies more appropriate to the user by showing to the target audience users in the order of highly related movies among the movies included in the related movie list.
  • the ranking of the created related movie list may be determined according to a predetermined importance level, and the movies may be recommended in the order of the determined highest related movie list.
  • the relation between the movies is 'good-> good' or 'no-> good'. While it can be used to attract more users, the relationship of 'like-> dislike' and 'dislike-> dislike' may be suitable for the purpose of inducing curiosity rather than direct purchase.
  • the relation that is connected to 'normal' may be difficult to be connected to a function on the direct recommendation service, which may be unnecessary information in terms of recommendation service. Therefore, the relationship between 'good-> good' or 'no--good' is determined by high priority, and the relationship between 'good-> dislike', 'no-> dislike' and 'normal' is relatively Low priority may be determined.
  • the duplicate movies in the lower list may be deleted based on the ranking of the related movie list. For example, if there is a movie B in the list of movies that says 'user who likes movie A is good' and a movie list that says 'the user who likes movie A does not like', By checking the rankings, you can remove Movie B from the list of movies that you're saying, "I hate Movie A.”
  • the user may recommend a movie that is related to the user's preference by recommending a movie related to the user through the rating information left for the movie.
  • FIG. 2 is a block diagram illustrating an association list generator of the movie recommendation apparatus of FIG. 1.
  • the association list generator 120 of the movie recommendation apparatus of FIG. 1 includes an association combination generator 210 and a fuzzy support calculator 220.
  • the association combination generation unit 210 may generate the association combination for each movie by combining the converted second rating data according to the fuzzy association rule.
  • the association association for each movie may generate the combination with a length of a preset association rule according to the fuzzy association rule. For example, if the association rule has a length of 2, create a movie combination for the movies m1 and m3 with 'm1, m3, user1, r_1_1, r_1_3', and gather the rating information of each user's movie for that movie combination. Data such as 'm1, m3, (user1, r_1_1, r_1_3), (uesr7, r_7_1, r_7_3), ..., (userN, r_N_1, r_N_3)' may be collected. At this time, an expression such as r_n_m may be interpreted as a rating given by the nth user to the mth movie.
  • the fuzzy support calculator 220 may generate a rating history for each movie by arranging the second rating data for each movie, and calculate the fuzzy support for each movie using the generated rating history for each movie.
  • the rating history for each movie may be, for example, collecting second rating data in the form of 'User1 (m1, r_1_1), (m3, r_1_3), ..., (m100, r_1_100)' for each movie and then 'm1'. , (user1, r_1_1), (user1, r_2_1), ..., (userN, r_N_1) '.
  • the fuzzy support degree for each movie may be calculated using a reference value obtained by normalizing the fuzzy belonging value.
  • each fuzzy belonging value may be normalized using Equation 1 described above.
  • fuzzy support for each movie may be calculated using the reference value obtained by normalizing the fuzzy membership degree.
  • fuzzy support may be calculated using Equation 2 described above.
  • FIG. 3 is a flowchart illustrating a movie recommendation method according to an embodiment of the present invention.
  • the movie recommendation method may obtain first rating data including a user's rating for a movie (S310).
  • the first rating data may include information that can be obtained from the input log, that is, a user ID for identifying a user and a movie ID for distinguishing a movie, and may include a rating in the form of a number.
  • the user ID, the movie ID, and the rating may be extracted from another type of input log, the first rating data may be obtained.
  • the first rating data may be represented in the form of 'User1 (m1, r_1_1), (m3, r_1_3), ..., (m100, r_1_100)'.
  • User1 may display a user ID, m1, m3, and m100 are movie IDs, and r_1_1, r_1_3, and r_1_100 may be ratings, and a rating given by the nth user to the mth movie may be displayed in the form of r_n_m.
  • the movie recommendation device converts the obtained first rating data into second rating data and applies the converted second rating data to Fuzzy Association Rule Mining for association.
  • a list of movies may be generated (S320).
  • fuzzy association rule mining is a technique that applies fuzzy theory to association rule mining, and can be expressed by representing the degree to which each object belongs to the group as a function of membership from binary logic that each object belongs to or does not belong to a certain set. . Therefore, the association between the products consumed based on the user's log, such as association rule mining, can be calculated to calculate the association between the products registered in the market or store.
  • Such a fuzzy association rule is mainly calculated using a single machine, and since a large amount of recommendation requires distributed processing of such logic, in the present invention, the fuzzy association rule mining is more effectively based on a distributed framework. You can use Hadoop's MapReduce to calculate.
  • MapReduce can be solved by defining ⁇ key, value> in each step of mapper and reducer.
  • ⁇ key, value> is a data pair that is the basic unit of data processing, and key and value can be defined as any structure or class to process complex data.
  • a fuzzy membership value is obtained by assigning a rating to at least one of fuzzy membership functions including a triangular membership function, a trapezoidal membership function, and a Gaussian membership function.
  • the language label according to the acquired fuzzy affiliation value may be converted into second rating data by substituting with a rating.
  • the fuzzy membership value can be obtained with a value between 0 and 1 with respect to the language label, and the value of the language label with a large fuzzy membership value is obtained.
  • each fuzzy membership function corresponds to a language label such as 'no', 'normal', or 'good', and the range of the fuzzy membership function and the number of fuzzy membership functions may be separately specified.
  • association list generator 120 may generate at least one of fuzzy reliability and fuzzy correlation using fuzzy association rule mining, and generate a related movie list based on at least one of the generated fuzzy reliability and fuzzy correlation. Can be.
  • association list generating unit 120 may generate the association combination for each movie by combining the converted second rating data according to the fuzzy association rule, and generates a rating history for each movie by arranging the second rating data for each movie.
  • the fuzzy support for each movie may be calculated using the generated rating history for each movie.
  • the association association for each movie may generate the combination with a length of a preset association rule according to the fuzzy association rule. For example, if the association rule has a length of 2, create a movie combination for the movies m1 and m3 with 'm1, m3, user1, r_1_1, r_1_3', and gather the rating information of each user's movie for that movie combination. Data such as 'm1, m3, (user1, r_1_1, r_1_3), (uesr7, r_7_1, r_7_3), ..., (userN, r_N_1, r_N_3)' may be collected. At this time, an expression such as r_n_m may be interpreted as a rating given by the nth user to the mth movie.
  • the rating history for each movie is, for example, by collecting the second rating data of the form of 'User1 (m1, r_1_1), (m3, r_1_3), ..., (m100, r_1_100) for each movie' m1, (user1, r_1_1), (user1, r_2_1), ..., (userN, r_N_1) '.
  • the fuzzy support degree for each movie may be calculated using a reference value obtained by normalizing the fuzzy belonging value.
  • each fuzzy belonging value may be normalized using Equation 1 described above.
  • fuzzy support for each movie may be calculated using the reference value obtained by normalizing the fuzzy membership degree.
  • fuzzy support may be calculated using Equation 2 described above.
  • At least two or more of the fuzzy membership functions may be combined to calculate the associated combination fuzzy support for the associated association for each movie, and the fuzzy reliability may be calculated using one or more of the per-movie fuzzy support and the calculated associated combination fuzzy support.
  • the associated combination fuzzy support may be expressed in the form of 'm1, m2, MF_1, MF_2, FS (m1, MF1, m2, MF_2)', where m is a film, MF is a fuzzy membership function, and FS is a fuzzy support Can be represented.
  • fuzzy reliability may be calculated using Equation 3 described above.
  • the fuzzy correlation may be calculated using one or more of squared values of the fuzzy support for each movie, the fuzzy reliability, and the fuzzy support for each movie.
  • fuzzy correlation may be calculated using Equation 4 described above.
  • the movie recommendation method may recommend a movie to the recommendation target user by using the related movie list (S330). For example, it may be recommended to a user in the order of movies more appropriate to the user by showing to the target audience users in the order of highly related movies among the movies included in the related movie list.
  • the ranking of the created related movie list may be determined according to a predetermined importance level, and the movies may be recommended in the order of the determined highest related movie list.
  • the relation between the movies is 'good-> good' or 'no-> good'. While it can be used as an opportunity to attract more users, the relationship of 'like-> dislike' and 'dislike-> dislike' may be suitable for inducing curiosity rather than direct purchase.
  • the relation that is connected to 'normal' is difficult to be connected to a function on the direct recommendation service, and thus may be unnecessary information in terms of service. Therefore, the relationship between 'good-> good' or 'no--good' is determined by high importance ranking, and the relationship between 'good-> dislike', 'no-> dislike' and 'normal' is relatively low. It can be determined by importance ranking.
  • the duplicate movies in the lower list may be deleted based on the ranking of the related movie list. For example, if there is a movie B in the list of movies that says 'user who likes movie A is good' and a movie list that says 'the user who likes movie A does not like', By checking the rankings, you can remove Movie B from the list of movies that you're saying, "I hate Movie A.”
  • a reliable movie recommendation service using a large user log can be provided to users using the movie recommendation service.
  • FIG. 4 is a flowchart illustrating a process of generating a related movie list according to an embodiment of the present invention.
  • second rating data may be obtained by replacing a rating included in the first rating data with a language label (S410).
  • a fuzzy membership value is obtained by assigning a rating to at least one of fuzzy membership functions including a triangular membership function, a trapezoidal membership function, and a Gaussian membership function.
  • the language label according to the acquired fuzzy affiliation value may be converted into second rating data by substituting with a rating.
  • the related second movie combination may be generated by combining the converted second rating data according to the fuzzy association rule (S420).
  • the process of generating a related movie list generates a rating history for each movie by arranging the second rating data for each movie (S430), fuzzy for each movie using the generated rating history for each movie Support can be calculated (S440).
  • the process of generating a list of related movies is based on the fuzzy membership function by using the associated associations and the fuzzy support for each movie generated and calculated in steps S420 and S440, respectively.
  • the association combination fuzzy support for the association association for each movie may be calculated by combining at least two (S450).
  • the process of generating a list of related movies may calculate the fuzzy reliability by using one or more of the fuzzy support for each movie and the calculated associated combination fuzzy support (S460).
  • the fuzzy correlation may be calculated using at least one of square values of fuzzy support for each movie, fuzzy reliability, and fuzzy support for each movie (S470).
  • the process of generating a related movie list may generate a related movie list based on one of the generated fuzzy reliability and fuzzy correlation (S480).
  • FIG. 5 is a diagram illustrating an example of first rating data of users of a movie.
  • 6A to 6C illustrate a fuzzy membership function for generating second rating data according to the present invention.
  • FIG. 7 is a diagram illustrating first rating data illustrated in FIG. 5 as fuzzy membership values and second rating data using the fuzzy membership function of FIG. 6A.
  • FIGS. 5, 6A, 6C, and 7 when the user assigns a rating to a movie as shown in FIG. 5, the fuzzy membership diagram is illustrated in FIG. 7 using the fuzzy membership functions shown in FIGS. 6A through 6C. Value and second rating data may be generated.
  • the user 1 has given a score of 8 to the movie 4.
  • the fuzzy affiliation value for the movie 4 of the user 1 is shown in FIG. 7 as hate: 0.0, normal: 0.33, and good: 0.67. Therefore, in this case, the language label 'good' may be converted into second rating data by substituting eight ratings of the first rating data.
  • the movie recommendation method according to the present invention may be implemented in the form of program instructions that can be executed by various computer means and recorded on a computer readable medium.
  • the computer readable medium may include program instructions, data files, data structures, etc. alone or in combination.
  • Program instructions recorded on the media may be those specially designed and constructed for the purposes of the present invention, or they may be of the kind well-known and available to those having skill in the computer software arts.
  • Examples of computer-readable recording media include magnetic media such as hard disks, floppy disks, and magnetic tape, optical media such as CD-ROMs, DVDs, and magnetic disks, such as floppy disks.
  • Magneto-optical media and any type of hardware device specifically configured to store and execute program instructions such as ROM, RAM, flash memory, and the like.
  • Examples of program instructions may include high-level language code that can be executed by a computer using an interpreter as well as machine code such as produced by a compiler.
  • Such hardware devices may be configured to operate as one or more software modules to perform the operations of the present invention, and vice versa.
  • the apparatus and method for recommending a movie based on distributed fuzzy association rule mining according to the present invention is not limited to the configuration and method of the embodiments described as described above, and the embodiments may be modified in various ways. All or part of each of the embodiments may be configured to be selectively combined to make it possible.
  • the first rating data including the rating for the movie is converted into second rating data
  • the converted second rating data is applied to fuzzy association rule mining to generate a related movie list
  • the generated related movie list By recommending a movie through the user, it is possible to effectively recommend a movie suitable for the preference of the target user.
  • the data processing method suitable for a distributed framework is used to apply such a recommendation function to a large amount of users, it can be applied to a large-scale rating log data, thereby providing a more reliable service.

Landscapes

  • Engineering & Computer Science (AREA)
  • Software Systems (AREA)
  • Theoretical Computer Science (AREA)
  • Data Mining & Analysis (AREA)
  • Artificial Intelligence (AREA)
  • Computational Linguistics (AREA)
  • Fuzzy Systems (AREA)
  • Evolutionary Computation (AREA)
  • Physics & Mathematics (AREA)
  • Computing Systems (AREA)
  • General Engineering & Computer Science (AREA)
  • General Physics & Mathematics (AREA)
  • Mathematical Physics (AREA)
  • Automation & Control Theory (AREA)
  • Information Retrieval, Db Structures And Fs Structures Therefor (AREA)

Abstract

분산 퍼지 연관 규칙 마이닝에 기반한 영화 추천 장치 및 방법이 개시된다. 영화에 대한 평점을 포함한 제1 평점 데이터를 획득하고, 획득한 제1 평점 데이터를 퍼지 소속 함수를 이용하여 제2 평점 데이터로 변환하여, 변환한 제2 평점 데이터를 퍼지 연관 규칙 마이닝에 적용해 연관 영화 목록을 생성할 수 있다. 생성한 연관 영화 목록을 이용하여 순위가 높은 연관 영화 목록의 순서대로 영화를 추천함에 따라, 추천 대상 사용자와 연관성 있는 영화를 추천하는 것이 가능하다.

Description

분산 퍼지 연관 규칙 마이닝에 기반한 영화 추천 장치 및 방법
본 발명은 사용자의 영화 평점 정보를 언어적 정보로 변환하여 언어적 정보의 연관 관계를 통해 영화를 추천하는 분산 퍼지 연관 규칙 마이닝에 기반한 영화 추천 장치 및 방법에 관한 것으로, 특히 영화 평점에 대한 데이터를 퍼지 연관 규칙 마이닝에 적용하여 획득한 연관 영화 목록을 생성하고, 생성한 목록을 이용하여 추천 대상 사용자에게 영화를 추천할 수 있는 분산 퍼지 연관 규칙 마이닝에 기반한 영화 추천 장치 및 방법에 관한 것이다.
본 발명은 2014년 02월 26일 출원된 한국특허출원 제10-2014-0022934호의 출원일의 이익을 주장하며, 그 내용 전부는 본 명세서에 포함된다.
일반적인 영화 추천 알고리즘을 통한 영화 추천은 사용자의 영화 구매 이력을 기반으로 연관 규칙 마이닝(Association Rule Mining)을 통해 '이 영화를 본 사람이 본 영화'의 형태로 추천한다. 또는, 영화 간의 유사도를 계산하여 '이 영화와 유사한 영화'를 추출하는 방식으로 추천이 가능하다.
그러나 영화에 대한 평점 로그가 대용량이고, 사용자의 수가 많은 경우에는 통상적인 방법을 이용하여 연관 규칙을 계산해내기 어렵기 때문에, 영화 추천이라는 도메인에 퍼지 연관 규칙 마이닝을 적용한 예를 찾아 보기 어려운 실정이다.
따라서, 영화에 대한 사용자의 평점 정보를 언어적인 정보로 변환하고, 언어적 정보에 기반한 분산 퍼지 연관 규칙 마이닝을 통해 사용자의 영화 평점 정보에 대한 연관 관계를 획득하고, 획득한 연관 관계를 이용하여 사용자에게 적합한 영화를 추천할 수 있는 분산 퍼지 연관 규칙 마이닝에 기반한 영화 추천 기술의 필요성이 절실하게 대두된다.
관련 선행기술로는, 한국 공개 특허 제10-2013-0009360A호, 2013년 7월 30일 공개 (명칭: 영화추천 서비스 제공방버 및 그 시스템)가 있다.
본 발명의 목적은, 사용자들이 영화에 대해 남기는 평점 정보를 언어적 평가 정보로 치환하여, 치환된 평가 정보와 연관성 있는 영화를 추천함으로써 사용자의 선호도 성향에 적합한 영화를 추천하는 것이다.
또한, 본 발명의 목적은 분산 프레임 워크에 적합한 데이터 처리 방식을 이용하여, 대용량의 영화 평점 정보를 효율적으로 처리하여 사용자들에게 보다 신뢰성 있는 영화 추천 기능을 제공하는 것이다.
상기한 목적을 달성하기 위한 본 발명에 따른 영화 추천 장치는, 영화에 대한 평점을 포함한 제1 평점 데이터를 획득하는 데이터 획득부, 획득한 제1 평점 데이터를 제2 평점 데이터로 변환하고, 변환한 제2 평점 데이터를 퍼지 연관 규칙 마이닝(Fuzzy Association Rule Mining)에 적용하여 연관 영화 목록을 생성하는 연관 목록 생성부 및 추천 대상 사용자에게 연관 영화 목록을 이용하여 영화를 추천하는 영화 추천부를 포함한다.
이 때, 연관 목록 생성부는 삼각형 소속 함수(Triangular membership function), 사다리꼴 소속 함수(Trapezoidal membership function) 및 가우시안 소속 함수(Gaussian membership function)를 포함하는 퍼지 소속 함수 중 하나 이상에 평점을 대입하여 퍼지 소속도 값을 획득하고, 획득한 퍼지 소속도 값에 따른 언어 레이블을 평점과 치환하여 제2 평점 데이터로 변환할 수 있다.
이 때, 연관 목록 생성부는 퍼지 연관 규칙 마이닝을 이용해서 퍼지 신뢰도 및 퍼지 상관도 중 하나 이상을 생성하고, 생성한 퍼지 신뢰도 및 퍼지 상관도 중 적어도 하나를 기준으로 연관 영화 목록을 생성할 수 있다.
이 때, 연관 목록 생성부는 변환한 제2 평점 데이터를 퍼지 연관 규칙에 따라 조합하여 영화별 연관 조합을 생성하는 연관 조합 생성부 및 제2 평점 데이터를 영화별로 정리한 영화별 평점 이력을 생성하고, 생성한 영화별 평점 이력을 이용하여 영화별 퍼지 지지도를 계산하는 퍼지 지지도 계산부를 포함할 수 있다.
이 때, 퍼지 지지도 계산부는 퍼지 소속도 값을 정규화하여 획득한 기준 값을 이용하여 영화별 퍼지 지지도를 계산할 수 있다.
이 때, 연관 목록 생성부는 퍼지 소속 함수 중 적어도 둘 이상을 조합하여 영화별 연관 조합에 대한 연관 조합 퍼지 지지도를 계산하고, 영화별 퍼지 지지도 및 계산한 연관 조합 퍼지 지지도 중 하나 이상을 이용하여 퍼지 신뢰도를 계산할 수 있다.
이 때, 연관 목록 생성부는 영화별 퍼지 지지도, 퍼지 신뢰도 및 영화별 퍼지 지지도의 제곱 값 중 하나 이상을 이용하여 퍼지 상관도를 계산할 수 있다.
이 때, 영화 추천부는 미리 설정된 중요도에 따라 생성한 연관 영화 목록의 순위를 결정하고, 결정한 순위가 높은 연관 영화 목록의 순서대로 영화를 추천할 수 있다.
이 때, 연관 영화 목록은 영화의 제목, 장르, 감독, 국가, 제작연도 및 이미지 중 하나 이상의 정보를 포함할 수 있다.
또한, 본 발명에 따른 영화 추천 방법은, 영화에 대한 평점을 포함한 입력 데이터를 획득하는 단계, 획득한 입력 데이터를 제2 평점 데이터로 변환하고, 변환한 제2 평점 데이터를 퍼지 연관 규칙 마이닝에 적용하여 연관 영화 목록을 생성하는 단계 및 추천 대상 사용자에게 생성한 연관 영화 목록을 이용하여 영화를 추천하는 단계를 포함한다.
이 때, 연관 영화 목록을 생성하는 단계는 삼각형 소속 함수(Triangular membership function), 사다리꼴 소속 함수(Trapezoidal membership function) 및 가우시안 소속 함수(Gaussian membership function)를 포함하는 퍼지 소속 함수 중 하나 이상에 평점을 대입하여 퍼지 소속도 값을 획득하는 단계를 포함하고, 획득한 퍼지 소속도 값에 따른 언어 레이블을 평점과 치환하여 제2 평점 데이터로 변환할 수 있다.
이 때, 연관 영화 목록을 생성하는 단계는 연관 규칙 마이닝을 이용하여 퍼지 신뢰도 및 퍼지 상관도 중 하나 이상을 생성하는 단계 및 생성한 퍼지 신뢰도 및 퍼지 상관도 중 적어도 하나를 기준으로 연관 영화 목록을 생성하는 단계를 포함할 수 있다.
이 때, 연관 영화 목록을 생성하는 단계는 퍼지 연관 규칙 마이닝을 이용하여 퍼지 신뢰도 및 퍼지 상관도 중 하나 이상을 생성하는 단계 및 생성한 퍼지 신뢰도 및 퍼지 상관도 중 하나를 기준으로 연관 영화 목록을 생성하는 단계를 포함할 수 있다.
이 때, 연관 영화 목록을 생성하는 단계는 퍼지 소속 함수 중 적어도 둘 이상을 조합하여 영화별 연관 조합에 대한 연관 조합 퍼지 지지도를 계산하는 단계 및 영화별 퍼지 지지도 및 계산한 연관 조합 퍼지 지지도 중 하나 이상을 이용하여 퍼지 신뢰도를 계산하는 단계를 포함할 수 있다.
이 때, 연관 영화 목록을 생성하는 단계는 영화별 퍼지 지지도, 퍼지 신뢰도 및 영화별 퍼지 지지도의 제곱 값 중 하나 이상을 이용하여 퍼지 상관도를 계산하는 단계를 포함할 수 있다.
이 때, 영화를 추천하는 단계는 미리 설정된 중요도에 따라 생성한 연관 영화 목록의 순위를 결정하는 단계를 포함하고, 결정한 순위가 높은 연관 영화 목록의 순서대로 영화를 추천할 수 있다.
본 발명에 따르면, 다수의 사용자로부터 영화에 대한 평점 정보를 획득하고, 획득한 평점 정보를 이용하여 연관성 있는 영화 목록을 추출함으로써, 영화를 추천할 사용자의 평점을 이용하여 추천 대상 사용자의 선호도에 상응하는 영화를 추천할 수 있다.
또한, 본 발명은 영화에 대한 평점을 언어적 정보를 치환하여 연관 관계를 도출함에 따라, 언어적 정보 간의 다양한 방향성에 기반하여 다양한 추천 영화 목록을 생성하여 제공할 수 있다.
도 1은 본 발명의 일실시예에 따른 영화 추천 장치를 나타낸 블록도이다.
도 2는 도 1의 영화 추천 장치 중 연관 목록 생성부를 나타낸 블록도이다.
도 3은 본 발명의 일실시예에 따른 영화 추천 방법을 나타낸 동작 흐름도이다.
도 4는 본 발명의 일실시예에 따른 연관 영화 목록을 생성하는 과정을 나타낸 동작 흐름도이다.
도 5는 영화의 대한 사용자들의 제1 평점 데이터의 일 예를 나타낸 도면이다.
도 6a 내지 도 6c는 본 발명에 따른 제2 평점 데이터를 생성하기 위한 퍼지 소속 함수를 나타낸 도면이다.
도 7은 도 5에 나타난 제1 평점 데이터를 도 6a의 퍼지 소속 함수를 이용하여 퍼지 소속도 값 및 제2 평점 데이터로 나타낸 도면이다.
이하 본 발명의 바람직한 실시예를 첨부한 도면을 참조하여 상세히 설명한다. 다만, 하기의 설명 및 첨부된 도면에서 본 발명의 요지를 흐릴 수 있는 공지 기능 또는 구성에 대한 상세한 설명은 생략한다. 또한, 도면 전체에 걸쳐 동일한 구성 요소들은 가능한 한 동일한 도면 부호로 나타내고 있음에 유의하여야 한다.
이하에서 설명되는 본 명세서 및 청구범위에 사용된 용어나 단어는 통상적이거나 사전적인 의미로 한정해서 해석되어서는 아니 되며, 발명자는 그 자신의 발명을 가장 최선의 방법으로 설명하기 위한 용어의 개념으로 적절하게 정의할 수 있다는 원칙에 입각하여 본 발명의 기술적 사상에 부합하는 의미와 개념으로 해석되어야만 한다. 따라서 본 명세서에 기재된 실시예와 도면에 도시된 구성은 본 발명의 가장 바람직한 일 실시예에 불과할 뿐이고, 본 발명의 기술적 사상을 모두 대변하는 것은 아니므로, 본 출원시점에 있어서 이들을 대체할 수 있는 다양한 균등물과 변형 예들이 있을 수 있음을 이해하여야 한다. 또한 제 1, 제 2 등의 용어는 다양한 구성요소들을 설명하기 위해 사용하는 것으로, 하나의 구성요소를 다른 구성요소로부터 구별하는 목적으로만 사용될 뿐, 상기 구성요소들을 한정하기 위해 사용되지 않는다.
도 1은 본 발명의 일실시예에 따른 영화 추천 장치를 나타낸 블록도이다.
도 1을 참조하면, 본 발명의 일실시예에 따른 영화 추천 장치(100)는 데이터 획득부(110), 연관 목록 생성부(120) 및 영화 추천부(130)를 포함할 수 있다.
데이터 획득부(110)는 영화에 대한 사용자의 평점을 포함하는 제1 평점 데이터를 획득할 수 있다.
이 때, 제1 평점 데이터에는 입력 로그로부터 획득할 수 있는 정보, 즉 사용자를 구분할 수 있는 사용자 아이디, 영화를 구분할 수 있는 영화 아이디를 포함할 수 있으며, 숫자 형태로 된 평점을 포함할 수 있다. 또한, 다른 형태의 입력 로그에서 사용자 아이디, 영화 아이디 및 평점을 추출할 수 있으면 제1 평점 데이터를 획득할 수 있다. 예를 들어, 제1 평점 데이터를 하나의 트랜잭션으로 처리하기 위해 'User1(m1, r_1_1), (m3, r_1_3), ... , (m100, r_1_100)'와 같은 형태로 나타낼 수 있다. 여기에서 User1은 사용자 아이디, m1, m3 및 m100은 영화 아이디 그리고 r_1_1, r_1_3 및 r_1_100 등은 평점으로 n번째 사용자가 m번째 영화에 대해 매긴 평점은 r_n_m의 형태로 표시할 수 있다.
또한, 연관 목록 생성부(120)는 획득한 제1 평점 데이터를 제2 평점 데이터로 변환하고, 변환한 제2 평점 데이터를 퍼지 연관 규칙 마이닝(Fuzzy Association Rule Mining)에 적용하여 연관 영화 목록을 생성할 수 있다.
이 때, 퍼지 연관 규칙 마이닝은 퍼지 이론을 연관 규칙 마이닝에 적용한 기법으로써, 각 대상이 어떤 집합에 속한다 또는 속하지 않는다는 이진법 논리로부터, 각 대상이 그 모임에 속하는 정도를 소속 함수로 나타냄으로써 표현할 수 있다. 따라서, 연관 규칙 마이닝과 같이 사용자의 로그를 기반으로 소비된 상품 간의 연관성을 계산하여, 마켓이나 스토어에 등록된 상품간의 연관성을 계산할 수 있다.
이와 같은 퍼지 연관 규칙은 주로 한 대의 기계 장치를 이용해서 계산되는데, 대용량의 추천을 위해서는 이러한 로직의 분산 처리가 필요하므로, 이 때, 본 발명에서는 퍼지 연관 규칙 마이닝을 분산 프레임 워크에 기반하여 더 효과적으로 계산하기 위해 하둡(Hadoop)의 맵리듀스(MapReduce)를 사용할 수 있다.
이 때, 맵리듀스에서는 mapper와 reducer의 단계별로 <key, value>를 정의하여 해결할 수 있다. <key, value>는 데이터가 처리되는 기본 단위인 데이터 페어(pair)이며, key와 value는 임의의 구조체나 클래스로 정의하여 복잡한 형태의 데이터를 처리할 수 있다.
이 때, 삼각형 소속 함수(Triangular membership function), 사다리꼴 소속 함수(Trapezoidal membership function) 및 가우시안 소속 함수(Gaussian membership function)를 포함하는 퍼지 소속 함수 중 하나 이상에 평점을 대입하여 퍼지 소속도 값을 획득하고, 획득한 퍼지 소속도 값에 따른 언어 레이블을 평점과 치환하여 제2 평점 데이터로 변환할 수 있다.
이 때, 제1 평점 데이터에 포함된 평점을 퍼지 소속 함수에 대입하면 언어 레이블과 관련하여 0과 1사이의 값으로 퍼지 소속도 값을 획득할 수 있고, 퍼지 소속도 값이 큰 언어 레이블의 값을 평점과 치환함으로써 제2 평점 데이터로 변환할 수 있다. 예를 들어, 제1 평점 데이터에 포함된 8점의 평점을 퍼지 소속 함수를 이용하여 퍼지 소속도 값으로 생성한 값이 '보통'의 언어 레이블과 관련하여 0.3의 퍼지 소속도 값을 획득하고, '좋다'의 언어 레이블과 관련하여 0.7의 퍼지 소속도 값을 획득하였다면, 제1 평점 데이터의 평점 8에 대한 정보를 '좋다'로 치환하여 제2 평점 데이터를 생성할 수 있다.
이 때, 각각의 퍼지 소속 함수는 '싫다', '보통', '좋다'와 같은 언어 레이블과 대응되게 되며, 퍼지 소속 함수의 범위와 퍼지 소속 함수의 개수는 따로 지정이 가능할 수 있다.
또한, 연관 목록 생성부(120)는 퍼지 연관 규칙 마이닝을 이용해서 퍼지 신뢰도 및 퍼지 상관도 중 하나 이상을 생성하고, 생성한 퍼지 신뢰도 및 퍼지 상관도 중 적어도 하나를 기준으로 연관 영화 목록을 생성할 수 있다.
또한, 연관 목록 생성부(120)는 변환한 제2 평점 데이터를 퍼지 연관 규칙에 따라 조합하여 영화별 연관 조합을 생성할 수 있고, 제2 평점 데이터를 영화별로 정리한 영화별 평점 이력을 생성하고, 생성한 영화별 평점 이력을 이용하여 영화별 퍼지 지지도를 계산할 수 있다.
이 때, 영화별 연관 조합은 퍼지 연관 규칙에 따라 미리 설정된 연관 규칙의 길이로 조합을 생성할 수 있다. 예를 들어, 연관 규칙의 길이가 2라고 할 경우 'm1, m3, user1, r_1_1, r_1_3'으로 영화 m1과 m3에 대한 영화 조합을 생성하고, 해당 영화 조합에 대한 사용자별 영화의 평점 정보를 모아서 'm1, m3,(user1, r_1_1, r_1_3), (uesr7, r_7_1, r_7_3), ... , (userN, r_N_1, r_N_3)'과 같은 데이터를 수집할 수 있다. 이 때, r_n_m과 같은 표현은 n번째 사용자가 m번째 영화에 대해 매긴 평점으로 해석할 수 있다.
또한, 영화별 평점 이력은 예를 들어, 'User1(m1, r_1_1), (m3, r_1_3), ... , (m100, r_1_100)'와 같은 형태의 제2 평점 데이터를 영화별로 모아서 'm1, (user1,r_1_1), (user1,r_2_1), ... , (userN, r_N_1)'과 같은 형태로 모을 수 있다.
이 때, 영화별 퍼지 지지도는 퍼지 소속도 값을 정규화하여 획득한 기준 값을 이용하여 계산할 수 있다. 예를 들어, 아래의 수학식 1을 이용하여 각각의 퍼지 소속도 값을 정규화할 수 있다. 이 때, 수학식 1에서
Figure PCTKR2014010252-appb-I000001
는 l번째 소속 함수에 대해 aj값이 가지는 소속도 값,
Figure PCTKR2014010252-appb-I000002
는 정규화된 기본값 및 ti[aj]는 트랜잭션 DB |T|에서 i번째 레코드 값을 나타낼 수 있다.
[수학식 1]
Figure PCTKR2014010252-appb-I000003
이와 같이 퍼지 소속도 값을 정규화하여 획득한 기준 값을 이용하여 아래의 수식과 같이 영화별 퍼지 지지도를 계산할 수 있다.
또한, 아래의 수학식 2를 이용하여 퍼지 지지도를 계산할 수 있다. 이 때, 수학식 2에서
Figure PCTKR2014010252-appb-I000004
는 l번째 소속 함수에 대해 aj값이 가지는 소속도 값,
Figure PCTKR2014010252-appb-I000005
는 정규화된 기본값, ti[aj]는 트랜잭션 DB |T|에서 i번째 레코드 값 및 FS<A,X>는 계산한 기준 값을 대입하여 계산한 퍼지 지지도를 나타낼 수 있다.
[수학식 2]
Figure PCTKR2014010252-appb-I000006
또한, 퍼지 소속 함수 중 적어도 둘 이상을 조합하여 영화별 연관 조합에 대한 연관 조합 퍼지 지지도를 계산하고, 영화별 퍼지 지지도 및 계산한 연관 조합 퍼지 지지도 중 하나 이상을 이용하여 퍼지 신뢰도를 계산할 수 있다.
이 때, 연관 조합 퍼지 지지도는 'm1, m2, MF_1, MF_2, FS(m1, MF1, m2, MF_2)'의 형태로 나타낼 수 있으며 이 때 m은 영화, MF는 퍼지 소속 함수, FS는 퍼지 지지도를 나타낼 수 있다. 예를 들어, 아래의 수학식 3을 이용하여 퍼지 신뢰도를 계산할 수 있다. 이 때, 수학식 3에서
Figure PCTKR2014010252-appb-I000007
는 l번째 소속 함수에 대해 aj값이 가지는 소속도 값,
Figure PCTKR2014010252-appb-I000008
는 정규화된 기본값, ti[aj]는 트랜잭션 DB |T|에서 i번째 레코드 값, FS<A,X>, FS<C,Z> 는 기준 값을 대입하여 계산한 퍼지 지지도 및 FC<<A,X>,<B,Y>>는 퍼지 신뢰도를 나타낼 수 있다.
[수학식 3]
Figure PCTKR2014010252-appb-I000009
또한, 영화별 퍼지 지지도, 퍼지 신뢰도 및 영화별 퍼지 지지도의 제곱 값 중 하나 이상을 이용하여 퍼지 상관도를 계산할 수 있다. 예를 들어, 아래의 수학식 4를 이용하여 퍼지 상관도를 계산할 수 있다. 이 때, 수학식 4에서
Figure PCTKR2014010252-appb-I000010
는 l번째 소속 함수에 대해 aj값이 가지는 소속도 값,
Figure PCTKR2014010252-appb-I000011
는 정규화된 기본값, ti[aj]는 트랜잭션 DB |T|에서 i번째 레코드 값, FS<A,X>, FS<C,Z> 는 기준 값을 대입하여 계산한 퍼지 지지도, FC<<A,X>,<B,Y>>는는 퍼지 신뢰도 및 CORR<<A,X>,<B,Y>>는 퍼지 상관도를 나타낼 수 있다.
[수학식 4]
Figure PCTKR2014010252-appb-I000012
여기서
Figure PCTKR2014010252-appb-I000013
영화 추천부(130)는 추천 대상 사용자에게 연관 영화 목록을 이용하여 영화를 추천할 수 있다. 예를 들어, 연관 영화 목록에 포함된 영화 중에서 연관성이 높은 영화의 순서대로 추천 대상 사용자에게 보여줌으로써 사용자에게 보다 적합한 영화 순으로 추천할 수 있다.
이 때, 미리 설정된 중요도에 따라 생성한 연관 영화 목록의 순위를 결정하고, 결정한 순위가 높은 연관 영화 목록의 순서대로 영화를 추천할 수 있다. 예를 들어, 제2 평점 데이터에 포함된 언어 레이블을 이용하여 영화간의 연관 관계가 '좋다 -> 좋다'의 관계나 '싫다 -> 좋다'의 관계는 추천 서비스를 통해 추천된 영화가 마음에 든 사용자를 더 유입하는 계기로 사용할 수 있는 반면, '좋다 -> 싫다', '싫다 -> 싫다'의 관계는 직접적인 구매 유도보다는 호기심 유도를 위한 용도에 적합할 수 있다. 또한, '보통'으로 연결되는 관계는 직접적인 추천 서비스 상 기능과 연결되기 어려워 추천 서비스 측면에서는 불필요한 정보가 될 수 있다. 따라서, '좋다 -> 좋다'의 관계나 '싫다 -> 좋다'의 관계는 중요도가 높은 순위로 결정하고 '좋다 -> 싫다', '싫다 -> 싫다' 및 '보통'으로 연결되는 관계는 비교적 중요도가 낮은 순위로 결정할 수 있다.
또한, 연관 영화 목록간의 중복된 영화가 존재하는 경우, 연관 영화 목록의 순위를 기준으로 하위 목록에 있는 중복 영화를 삭제할 수 있다. 예를 들어, '영화 A를 좋다고 한 사용자가 좋다'고 한 영화 목록에 영화 B가 존재하는데, '영화 A를 좋다고 한 사용자가 싫다'고 한 영화 목록에도 영화 B가 존재한다면, 연관 영화 목록의 순위를 확인하여 비교적 하위 목록인 '영화 A를 좋다고 한 사용자가 싫다'고 한 영화 목록에서 영화 B를 삭제할 수 있다.
이와 같은 영화 추천 장치를 이용하여 사용자들이 영화에 대해 남기는 평점 정보를 통해 사용자와 연관성 있는 영화를 추천함으로써 사용자의 선호 성향에 적합한 영화를 추천할 수 있다.
도 2는 도 1의 영화 추천 장치 중 연관 목록 생성부를 나타낸 블록도이다.
도 2를 참조하면, 도 1의 영화 추천 장치 중 연관 목록 생성부(120)는 연관 조합 생성부(210) 및 퍼지 지지도 계산부(220)를 포함한다.
연관 조합 생성부(210)는 변환한 제2 평점 데이터를 퍼지 연관 규칙에 따라 조합하여 영화별 연관 조합을 생성할 수 있다.
이 때, 영화별 연관 조합은 퍼지 연관 규칙에 따라 미리 설정된 연관 규칙의 길이로 조합을 생성할 수 있다. 예를 들어, 연관 규칙의 길이가 2라고 할 경우 'm1, m3, user1, r_1_1, r_1_3'으로 영화 m1과 m3에 대한 영화 조합을 생성하고, 해당 영화 조합에 대한 사용자별 영화의 평점 정보를 모아서 'm1, m3,(user1, r_1_1, r_1_3), (uesr7, r_7_1, r_7_3), ... , (userN, r_N_1, r_N_3)'과 같은 데이터를 수집할 수 있다. 이 때, r_n_m과 같은 표현은 n번째 사용자가 m번째 영화에 대해 매긴 평점으로 해석할 수 있다.
퍼지 지지도 계산부(220)는 제2 평점 데이터를 영화별로 정리한 영화별 평점 이력을 생성하고, 생성한 영화별 평점 이력을 이용하여 영화별 퍼지 지지도를 계산할 수 있다.
이 때, 영화별 평점 이력은 예를 들어, 'User1(m1, r_1_1), (m3, r_1_3), ... , (m100, r_1_100)'와 같은 형태의 제2 평점 데이터를 영화별로 모아서 'm1, (user1,r_1_1), (user1,r_2_1), ... , (userN, r_N_1)'과 같은 형태로 모을 수 있다.
이 때, 영화별 퍼지 지지도는 퍼지 소속도 값을 정규화하여 획득한 기준 값을 이용하여 계산할 수 있다. 예를 들어, 상기에서 설명한 수학식 1을 이용하여 각각의 퍼지 소속도 값을 정규화할 수 있다.
이와 같이 퍼지 소속도 값을 정규화하여 획득한 기준 값을 이용하여 아래의 수식과 같이 영화별 퍼지 지지도를 계산할 수 있다.
또한, 상기에서 설명한 수학식 2를 이용하여 퍼지 지지도를 계산할 수 있다.
도 3은 본 발명의 일실시예에 따른 영화 추천 방법을 나타낸 동작 흐름도이다.
도 3을 참조하면, 본 발명의 일실시예에 따른 영화 추천 방법은 영화에 대한 사용자의 평점을 포함하는 제1 평점 데이터를 획득할 수 있다(S310).
이 때, 제1 평점 데이터에는 입력 로그로부터 획득할 수 있는 정보, 즉 사용자를 구분할 수 있는 사용자 아이디, 영화를 구분할 수 있는 영화 아이디를 포함할 수 있으며, 숫자 형태로 된 평점을 포함할 수 있다. 또한, 다른 형태의 입력 로그에서 사용자 아이디, 영화 아이디 및 평점을 추출할 수 있으면 제1 평점 데이터를 획득할 수 있다. 예를 들어, 제1 평점 데이터를 하나의 트랜잭션으로 처리하기 위해 'User1(m1, r_1_1), (m3, r_1_3), ... , (m100, r_1_100)'와 같은 형태로 나타낼 수 있다. 여기에서 User1은 사용자 아이디, m1, m3 및 m100은 영화 아이디 그리고 r_1_1, r_1_3 및 r_1_100 등은 평점으로 n번째 사용자가 m번째 영화에 대해 매긴 평점은 r_n_m의 형태로 표시할 수 있다.
또한, 본 발명의 일실시예에 따른 영화 추천 장치는 획득한 제1 평점 데이터를 제2 평점 데이터로 변환하고, 변환한 제2 평점 데이터를 퍼지 연관 규칙 마이닝(Fuzzy Association Rule Mining)에 적용하여 연관 영화 목록을 생성할 수 있다(S320).
이 때, 퍼지 연관 규칙 마이닝은 퍼지 이론을 연관 규칙 마이닝에 적용한 기법으로써, 각 대상이 어떤 집합에 속한다 또는 속하지 않는다는 이진법 논리로부터, 각 대상이 그 모임에 속하는 정도를 소속 함수로 나타냄으로써 표현할 수 있다. 따라서, 연관 규칙 마이닝과 같이 사용자의 로그를 기반으로 소비된 상품 간의 연관성을 계산하여, 마켓이나 스토어에 등록된 상품간의 연관성을 계산할 수 있다.
이와 같은 퍼지 연관 규칙은 주로 한 대의 기계 장치를 이용해서 계산되는데, 대용량의 추천을 위해서는 이러한 로직의 분산 처리가 필요하므로, 이 때, 본 발명에서는 퍼지 연관 규칙 마이닝을 분산 프레임 워크에 기반하여 더 효과적으로 계산하기 위해 하둡(Hadoop)의 맵리듀스(MapReduce)를 사용할 수 있다.
이 때, 맵리듀스에서는 mapper와 reducer의 단계별로 <key, value>를 정의하여 해결할 수 있다. <key, value>는 데이터가 처리되는 기본 단위인 데이터 페어(pair)이며, key와 value는 임의의 구조체나 클래스로 정의하여 복잡한 형태의 데이터를 처리할 수 있다.
이 때, 삼각형 소속 함수(Triangular membership function), 사다리꼴 소속 함수(Trapezoidal membership function) 및 가우시안 소속 함수(Gaussian membership function)를 포함하는 퍼지 소속 함수 중 하나 이상에 평점을 대입하여 퍼지 소속도 값을 획득하고, 획득한 퍼지 소속도 값에 따른 언어 레이블을 평점과 치환하여 제2 평점 데이터로 변환할 수 있다.
이 때, 제1 평점 데이터에 포함된 평점을 퍼지 소속 함수에 대입하면 언어 레이블과 관련하여 0과 1사이의 값으로 퍼지 소속도 값을 획득할 수 있고, 퍼지 소속도 값이 큰 언어 레이블의 값을 평점과 치환함으로써 제2 평점 데이터로 변환할 수 있다. 예를 들어, 제1 평점 데이터에 포함된 8점의 평점을 퍼지 소속 함수를 이용하여 퍼지 소속도 값으로 생성한 값이 '보통'의 언어 레이블과 관련하여 0.3의 퍼지 소속도 값을 획득하고, '좋다'의 언어 레이블과 관련하여 0.7의 퍼지 소속도 값을 획득하였다면, 제1 평점 데이터의 평점 8에 대한 정보를 '좋다'로 치환하여 제2 평점 데이터를 생성할 수 있다.
이 때, 각각의 퍼지 소속 함수는 '싫다', '보통', '좋다'와 같은 언어 레이블과 대응되게 되며, 퍼지 소속 함수의 범위와 퍼지 소속 함수의 개수는 따로 지정이 가능할 수 있다.
또한, 연관 목록 생성부(120)는 퍼지 연관 규칙 마이닝을 이용해서 퍼지 신뢰도 및 퍼지 상관도 중 하나 이상을 생성하고, 생성한 퍼지 신뢰도 및 퍼지 상관도 중 적어도 하나를 기준으로 연관 영화 목록을 생성할 수 있다.
또한, 연관 목록 생성부(120)는 변환한 제2 평점 데이터를 퍼지 연관 규칙에 따라 조합하여 영화별 연관 조합을 생성할 수 있고, 제2 평점 데이터를 영화별로 정리한 영화별 평점 이력을 생성하고, 생성한 영화별 평점 이력을 이용하여 영화별 퍼지 지지도를 계산할 수 있다.
이 때, 영화별 연관 조합은 퍼지 연관 규칙에 따라 미리 설정된 연관 규칙의 길이로 조합을 생성할 수 있다. 예를 들어, 연관 규칙의 길이가 2라고 할 경우 'm1, m3, user1, r_1_1, r_1_3'으로 영화 m1과 m3에 대한 영화 조합을 생성하고, 해당 영화 조합에 대한 사용자별 영화의 평점 정보를 모아서 'm1, m3,(user1, r_1_1, r_1_3), (uesr7, r_7_1, r_7_3), ... , (userN, r_N_1, r_N_3)'과 같은 데이터를 수집할 수 있다. 이 때, r_n_m과 같은 표현은 n번째 사용자가 m번째 영화에 대해 매긴 평점으로 해석할 수 있다.
또한, 영화별 평점 이력은 예를 들어, 'User1(m1, r_1_1), (m3, r_1_3), ... , (m100, r_1_100)'와 같은 형태의 제2 평점 데이터를 영화별로 모아서 'm1, (user1,r_1_1), (user1,r_2_1), ... , (userN, r_N_1)'과 같은 형태로 모을 수 있다.
이 때, 영화별 퍼지 지지도는 퍼지 소속도 값을 정규화하여 획득한 기준 값을 이용하여 계산할 수 있다. 예를 들어, 상기에서 설명한 수학식 1을 이용하여 각각의 퍼지 소속도 값을 정규화할 수 있다.
이와 같이 퍼지 소속도 값을 정규화하여 획득한 기준 값을 이용하여 아래의 수식과 같이 영화별 퍼지 지지도를 계산할 수 있다.
또한, 상기에서 설명한 수학식 2를 이용하여 퍼지 지지도를 계산할 수 있다.
또한, 퍼지 소속 함수 중 적어도 둘 이상을 조합하여 영화별 연관 조합에 대한 연관 조합 퍼지 지지도를 계산하고, 영화별 퍼지 지지도 및 계산한 연관 조합 퍼지 지지도 중 하나 이상을 이용하여 퍼지 신뢰도를 계산할 수 있다.
이 때, 연관 조합 퍼지 지지도는 'm1, m2, MF_1, MF_2, FS(m1, MF1, m2, MF_2)'의 형태로 나타낼 수 있으며 이 때 m은 영화, MF는 퍼지 소속 함수, FS는 퍼지 지지도를 나타낼 수 있다. 예를 들어, 상기에서 설명한 수학식 3을 이용하여 퍼지 신뢰도를 계산할 수 있다.
또한, 영화별 퍼지 지지도, 퍼지 신뢰도 및 영화별 퍼지 지지도의 제곱 값 중 하나 이상을 이용하여 퍼지 상관도를 계산할 수 있다. 예를 들어, 상기에서 설명한 수학식 4를 이용하여 퍼지 상관도를 계산할 수 있다.
또한, 본 발명의 일실시예에 따른 영화 추천 방법은 추천 대상 사용자에게 연관 영화 목록을 이용하여 영화를 추천할 수 있다(S330). 예를 들어, 연관 영화 목록에 포함된 영화 중에서 연관성이 높은 영화의 순서대로 추천 대상 사용자에게 보여줌으로써 사용자에게 보다 적합한 영화 순으로 추천할 수 있다.
이 때, 미리 설정된 중요도에 따라 생성한 연관 영화 목록의 순위를 결정하고, 결정한 순위가 높은 연관 영화 목록의 순서대로 영화를 추천할 수 있다. 예를 들어, 제2 평점 데이터에 포함된 언어 레이블을 이용하여 영화간의 연관 관계가 '좋다 -> 좋다'의 관계나 '싫다 -> 좋다'의 관계는 추천 서비스를 이용하여 추천된 영화가 마음에 든 사용자를 더 유입하는 계기로 사용할 수 있는 반면, '좋다 -> 싫다', '싫다 -> 싫다'의 관계는 직접적인 구매 유도보다는 호기심 유도를 위한 용도에 적합할 수 있다. 또한, '보통'으로 연결되는 관계는 직접적인 추천 서비스 상 기능과 연결되기 어려워 서비스 측면에서는 불필요한 정보가 될 수 있다. 따라서, '좋다 -> 좋다'의 관계나 '싫다 -> 좋다'의 관계는 높은 중요도 순위로 결정하고 '좋다 -> 싫다', '싫다 -> 싫다' 및 '보통'으로 연결되는 관계는 비교적 낮은 중요도 순위로 결정할 수 있다.
또한, 연관 영화 목록간의 중복된 영화가 존재하는 경우, 연관 영화 목록의 순위를 기준으로 하위 목록에 있는 중복 영화를 삭제할 수 있다. 예를 들어, '영화 A를 좋다고 한 사용자가 좋다'고 한 영화 목록에 영화 B가 존재하는데, '영화 A를 좋다고 한 사용자가 싫다'고 한 영화 목록에도 영화 B가 존재한다면, 연관 영화 목록의 순위를 확인하여 비교적 하위 목록인 '영화 A를 좋다고 한 사용자가 싫다'고 한 영화 목록에서 영화 B를 삭제할 수 있다.
이와 같은 영화 추천 방법을 통해 영화 추천 서비스를 이용하는 사용자들에게 대용량의 사용자 로그를 이용한 신뢰성 있는 영화 추천 서비스를 제공할 수 있다.
도 4는 본 발명의 일실시예에 따른 연관 영화 목록을 생성하는 과정을 나타낸 동작 흐름도이다.
도 4를 참조하면, 본 발명의 일실시예에 따른 연관 영화 목록을 생성하는 과정은 제1 평점 데이터에 포함된 평점을 언어 레이블로 치환하여 제2 평점 데이터를 획득할 수 있다(S410).
이 때, 삼각형 소속 함수(Triangular membership function), 사다리꼴 소속 함수(Trapezoidal membership function) 및 가우시안 소속 함수(Gaussian membership function)를 포함하는 퍼지 소속 함수 중 하나 이상에 평점을 대입하여 퍼지 소속도 값을 획득하고, 획득한 퍼지 소속도 값에 따른 언어 레이블을 평점과 치환하여 제2 평점 데이터로 변환할 수 있다.
또한, 본 발명의 일실시예에 따른 연관 영화 목록을 생성하는 과정은 변환한 제2 평점 데이터를 퍼지 연관 규칙에 따라 조합하여 영화별 연관 조합을 생성할 수 있다(S420).
또한, 본 발명의 일실시예에 따른 연관 영화 목록을 생성하는 과정은 제2 평점 데이터를 영화별로 정리한 영화별 평점 이력을 생성하고(S430), 생성한 영화별 평점 이력을 이용하여 영화별 퍼지 지지도를 계산할 수 있다(S440).
또한, 본 발명의 일실시예에 따른 연관 영화 목록을 생성하는 과정은 단계(S420) 및 단계(S440)에서 각각 생성 및 계산한 영화별 연관 조합과 영화별 퍼지 지지도를 이용하여, 퍼지 소속 함수 중 적어도 둘 이상을 조합하여 영화별 연관 조합에 대한 연관 조합 퍼지 지지도를 계산할 수 있다(S450).
또한, 본 발명의 일실시예에 따른 연관 영화 목록을 생성하는 과정은 영화별 퍼지 지지도 및 계산한 연관 조합 퍼지 지지도 중 하나 이상을 이용하여 퍼지 신뢰도를 계산할 수 있다(S460).
또한, 본 발명의 일실시예에 따른 연관 영화 목록을 생성하는 과정은 영화별 퍼지 지지도, 퍼지 신뢰도 및 영화별 퍼지 지지도의 제곱 값 중 하나 이상을 이용하여 퍼지 상관도를 계산할 수 있다(S470).
또한, 본 발명의 일실시예에 따른 연관 영화 목록을 생성하는 과정은 생성한 퍼지 신뢰도 및 퍼지 상관도 중 하나를 기준으로 연관 영화 목록을 생성할 수 있다(S480).
도 5는 영화의 대한 사용자들의 제1 평점 데이터의 일 예를 나타낸 도면이다.
도 6a 내지 도 6c는 본 발명에 따른 제2 평점 데이터를 생성하기 위한 퍼지 소속 함수를 나타낸 도면이다.
도 7은 도 5에 나타난 제1 평점 데이터를 도 6a의 퍼지 소속 함수를 이용하여 퍼지 소속도 값 및 제2 평점 데이터로 나타낸 도면이다.
도 5, 도 6a 내지 도 6c 및 도 7을 참조하면, 도 5와 같이 사용자들이 영화에 대해서 평점을 부여하였을 때, 도 6a 내지 도 6c에 나타낸 퍼지 소속 함수들을 이용하여 도 7과 같이 퍼지 소속도 값 및 제2 평점 데이터를 생성할 수 있다.
예를 들어, 도 6a의 퍼지 소속 함수를 이용하는 경우에 도 5의 사용자 1이 영화 1에 대해 평점을 2점 부여하였음을 알 수 있다. 이 때, 사용자 1의 영화 1에 대한 퍼지 소속도 값은 도 7에서 싫다:1.0, 보통:0.0, 좋다:0.0으로 나타냄을 알 수 있다. 따라서, 이 경우에는 언어 레이블 '싫다'를 제1 평점 데이터의 평점 2점과 치환하여 제2 평점 데이터로 변환할 수 있다.
또한, 사용자 1이 영화 4에 대해서는 평점을 8점을 부여하였음을 알 수 있다. 이 때, 사용자 1의 영화 4에 대한 퍼지 소속도 값은 도 7에서 싫다:0.0, 보통:0.33, 좋다:0.67으로 나타냄을 알 수 있다. 따라서, 이 경우에는 언어 레이블 '좋다'를 제1 평점 데이터의 평점 8점과 치환하여 제2 평점 데이터로 변환할 수 있다.
본 발명에 따른 영화 추천 방법은 다양한 컴퓨터 수단을 통하여 수행될 수 있는 프로그램 명령 형태로 구현되어 컴퓨터 판독 가능 매체에 기록될 수 있다. 상기 컴퓨터 판독 가능 매체는 프로그램 명령, 데이터 파일, 데이터 구조 등을 단독으로 또는 조합하여 포함할 수 있다. 상기 매체에 기록되는 프로그램 명령은 본 발명을 위하여 특별히 설계되고 구성된 것들이거나 컴퓨터 소프트웨어 당업자에게 공지되어 사용 가능한 것일 수도 있다. 컴퓨터 판독 가능 기록 매체의 예에는 하드 디스크, 플로피 디스크 및 자기 테이프와 같은 자기 매체(magnetic media), CD-ROM, DVD와 같은 광기록 매체(optical media), 플롭티컬 디스크(floptical disk)와 같은 자기-광 매체(magneto-optical media), 및 롬(ROM), 램(RAM), 플래시 메모리 등과 같은 프로그램 명령을 저장하고 수행하도록 특별히 구성된 모든 형태의 하드웨어 장치가 포함된다. 프로그램 명령의 예에는 컴파일러에 의해 만들어지는 것과 같은 기계어 코드뿐만 아니라 인터프리터 등을 사용해서 컴퓨터에 의해서 실행될 수 있는 고급 언어 코드를 포함할 수 있다. 이러한 하드웨어 장치는 본 발명의 동작을 수행하기 위해 하나 이상의 소프트웨어 모듈로서 작동하도록 구성될 수 있으며, 그 역도 마찬가지이다.
이상에서와 같이 본 발명에 따른 분산 퍼지 연관 규칙 마이닝에 기반한 영화 추천 장치 및 방법은 상기한 바와 같이 설명된 실시예들의 구성과 방법이 한정되게 적용될 수 있는 것이 아니라, 상기 실시예들은 다양한 변형이 이루어질 수 있도록 각 실시예들의 전부 또는 일부가 선택적으로 조합되어 구성될 수도 있다.
본 발명에 의하면 영화에 대한 평점을 포함한 제1 평점 데이터를 제2 평점 데이터로 변환하고, 변환한 제2 평점 데이터를 퍼지 연관 규칙 마이닝에 적용하여 연관 영화 목록을 생성하고, 생성한 연관 영화 목록을 통해 영화를 추천 함으로써 추천 대상 사용자의 선호도에 적합한 영화를 효과적으로 추천할 수 있다. 나아가, 이와 같은 추천 기능을 대용량의 사용자에게 적용하기 위해 분산 프레임 워크에 적합한 데이터 처리 방식을 사용하기 때문에 대규모의 평점 로그 데이터에도 적용할 수 있어 보다 신뢰성 있는 서비스를 제공할 수 있다.

Claims (17)

  1. 영화에 대한 평점을 포함한 제1 평점 데이터를 획득하는 데이터 획득부;
    획득한 제1 평점 데이터를 제2 평점 데이터로 변환하고, 변환한 제2 평점 데이터를 퍼지 연관 규칙 마이닝(Fuzzy Association Rule Mining)에 적용하여 연관 영화 목록을 생성하는 연관 목록 생성부; 및
    추천 대상 사용자에게 상기 연관 영화 목록을 이용하여 영화를 추천하는 영화 추천부
    를 포함하는 것을 특징으로 하는 영화 추천 장치.
  2. 청구항 1에 있어서,
    상기 연관 목록 생성부는
    삼각형 소속 함수(Triangular membership function), 사다리꼴 소속 함수(Trapezoidal membership function) 및 가우시안 소속 함수(Gaussian membership function)를 포함하는 퍼지 소속 함수 중 하나 이상에 상기 평점을 대입하여 퍼지 소속도 값을 획득하고,
    획득한 퍼지 소속도 값에 따른 언어 레이블을 상기 평점과 치환하여 제2 평점 데이터로 변환하는 것을 특징으로 하는 영화 추천 장치.
  3. 청구항 1에 있어서,
    상기 연관 목록 생성부는
    상기 퍼지 연관 규칙 마이닝을 이용해서 퍼지 신뢰도 및 퍼지 상관도 중 하나 이상을 생성하고,
    생성한 퍼지 신뢰도 및 퍼지 상관도 중 적어도 하나를 기준으로 상기 연관 영화 목록을 생성하는 것을 특징으로 하는 영화 추천 장치.
  4. 청구항 3에 있어서,
    상기 연관 영화 목록 생성부는
    변환한 제2 평점 데이터를 퍼지 연관 규칙에 따라 조합하여 영화별 연관 조합을 생성하는 연관 조합 생성부; 및
    상기 제2 평점 데이터를 영화별로 정리한 영화별 평점 이력을 생성하고, 생성한 영화별 평점 이력을 이용하여 영화별 퍼지 지지도를 계산하는 퍼지 지지도 계산부를 포함하는 것을 특징으로 하는 영화 추천 장치.
  5. 청구항 4에 있어서,
    상기 퍼지 지지도 계산부는
    상기 퍼지 지지도 값을 정규화하여 획득한 기준 값을 이용하여 상기 영화별 퍼지 지지도를 계산하는 것을 특징으로 하는 영화 추천 장치.
  6. 청구항 4에 있어서,
    상기 연관 목록 생성부는
    상기 퍼지 소속 함수 중 적어도 둘 이상을 조합하여 상기 영화별 연관 조합에 대한 연관 조합 퍼지 지지도를 계산하고,
    상기 영화별 퍼지 지지도 및 계산한 연관 조합 퍼지 지지도 중 하나 이상을 이용하여 상기 퍼지 신뢰도를 계산하는 것을 특징으로 하는 영화 추천 장치.
  7. 청구항 4에 있어서,
    상기 연관 목록 생성부는
    상기 영화별 퍼지 지지도, 퍼지 신뢰도 및 영화별 퍼지 지지도의 제곱 값 중 하나 이상을 이용하여 상기 퍼지 상관도를 계산하는 것을 특징으로 하는 영화 추천 장치.
  8. 청구항 1에 있어서,
    상기 영화 추천부는
    미리 설정된 중요도에 따라 생성한 연관 영화 목록의 순위를 결정하고, 결정한 순위가 높은 연관 영화 목록의 순서대로 영화를 추천하는 것을 특징으로 하는 영화 추천 장치.
  9. 청구항 1에 있어서,
    상기 연관 영화 목록은
    영화의 제목, 장르, 감독, 국가, 제작연도 및 이미지 중 하나 이상의 정보를 포함하는 것을 특징으로 하는 영화 추천 장치.
  10. 영화에 대한 평점을 포함한 제1 평점 데이터를 획득하는 단계;
    획득한 제1 평점 데이터를 제2 평점 데이터로 변환하고, 변환한 제2 평점 데이터를 퍼지 연관 규칙 마이닝에 적용하여 연관 영화 목록을 생성하는 단계; 및
    추천 대상 사용자에게 상기 연관 영화 목록을 이용하여 영화를 추천하는 단계
    를 포함하는 것을 특징으로 하는 영화 추천 방법.
  11. 청구항 10에 있어서,
    상기 연관 영화 목록을 생성하는 단계는
    삼각형 소속 함수(Triangular membership function), 사다리꼴 소속 함수(Trapezoidal membership function) 및 가우시안 소속 함수(Gaussian membership function)를 포함하는 퍼지 소속 함수 중 하나 이상에 상기 평점을 대입하여 퍼지 소속도 값을 획득하는 단계를 포함하고,
    획득한 퍼지 소속도 값에 따른 언어 레이블을 상기 평점과 치환하여 제2 평점 데이터로 변환하는 것을 특징으로 하는 영화 추천 방법.
  12. 청구항 10에 있어서,
    상기 연관 영화 목록을 생성하는 단계는
    상기 퍼지 연관 규칙 마이닝을 이용하여 퍼지 신뢰도 및 퍼지 상관도 중 하나 이상을 생성하는 단계; 및
    생성한 퍼지 신뢰도 및 퍼지 상관도 중 적어도 하나를 기준으로 상기 연관 영화 목록을 생성하는 단계를 포함하는 것을 특징으로 하는 영화 추천 방법.
  13. 청구항 12에 있어서,
    상기 연관 영화 목록을 생성하는 단계는
    변환한 제2 평점 데이터를 퍼지 연관 규칙에 따라 조합하여 영화별 연관 조합을 생성하는 단계; 및
    상기 제2 평점 데이터를 영화별로 정리한 영화별 평점 이력을 생성하고, 생성한 영화별 평점 이력을 이용하여 영화별 퍼지 지지도를 계산하는 단계를 포함하는 것을 특징으로 하는 영화 추천 방법.
  14. 청구항 13에 있어서,
    상기 연관 영화 목록을 생성하는 단계는
    상기 퍼지 소속 함수 중 적어도 둘 이상을 조합하여 상기 영화별 연관 조합에 대한 연관 조합 퍼지 지지도를 계산하는 단계; 및
    상기 영화별 퍼지 지지도 및 계산한 연관 조합 퍼지 지지도 중 하나 이상을 이용하여 상기 퍼지 신뢰도를 계산하는 단계를 포함하는 것을 특징으로 하는 영화 추천 방법.
  15. 청구항 13에 있어서,
    상기 연관 영화 목록을 생성하는 단계는
    상기 영화별 퍼지 지지도, 퍼지 신뢰도 및 영화별 퍼지 지지도의 제곱 값 중 하나 이상을 이용하여 상기 퍼지 상관도를 계산하는 단계를 포함하는 것을 특징으로 하는 영화 추천 방법.
  16. 청구항 10에 있어서,
    상기 영화를 추천하는 단계는
    미리 설정된 중요도에 따라 생성한 연관 영화 목록의 순위를 결정하는 단계를 포함하고,
    결정한 순위가 높은 연관 영화 목록의 순서대로 영화를 추천하는 것을 특징으로 하는 영화 추천 방법.
  17. 청구항 10 내지 16 중 어느 한 항의 방법을 실행하기 위한 프로그램이 기록된 컴퓨터에서 판독 가능한 기록매체.
PCT/KR2014/010252 2014-02-26 2014-10-29 분산 퍼지 연관 규칙 마이닝에 기반한 영화 추천 장치 및 방법 Ceased WO2015129983A1 (ko)

Applications Claiming Priority (2)

Application Number Priority Date Filing Date Title
KR10-2014-0022934 2014-02-26
KR1020140022934A KR102167593B1 (ko) 2014-02-26 2014-02-26 분산 퍼지 연관 규칙 마이닝에 기반한 영화 추천 장치 및 방법

Publications (1)

Publication Number Publication Date
WO2015129983A1 true WO2015129983A1 (ko) 2015-09-03

Family

ID=54009269

Family Applications (1)

Application Number Title Priority Date Filing Date
PCT/KR2014/010252 Ceased WO2015129983A1 (ko) 2014-02-26 2014-10-29 분산 퍼지 연관 규칙 마이닝에 기반한 영화 추천 장치 및 방법

Country Status (2)

Country Link
KR (1) KR102167593B1 (ko)
WO (1) WO2015129983A1 (ko)

Cited By (1)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN107943953A (zh) * 2017-11-24 2018-04-20 福建中金在线信息科技有限公司 榜单推荐方法、装置、电子设备和计算机可读存储介质

Families Citing this family (7)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
KR101708254B1 (ko) 2015-09-25 2017-02-21 인하대학교 산학협력단 협업적 필터링과 캐릭터 넷을 이용한 스토리 기반의 영화 추전 시스템 및 방법.
KR20190030194A (ko) 2018-12-31 2019-03-21 씨제이씨지브이 주식회사 상영관 추천에 기반하여 영화와 상영관 예매를 제공하기 위한 방법 및 서버
KR102276353B1 (ko) * 2020-01-22 2021-07-12 공주대학교 산학협력단 퍼지 계층 분석 과정을 이용한 워드투벡터 학습 기반 영화 추천 시스템 및 방법
CN111859117B (zh) * 2020-06-19 2024-03-26 腾讯科技(深圳)有限公司 信息推荐方法、装置、电子设备及可读存储介质
CN111830501B (zh) * 2020-06-28 2023-04-28 中国人民解放军战略支援部队信息工程大学 Hrrp历史特征辅助的信号模糊数据关联方法及系统
KR102433804B1 (ko) * 2021-01-25 2022-08-18 공주대학교 산학협력단 영화 추천 장치
KR102881735B1 (ko) 2022-09-21 2025-11-05 서울과학기술대학교 산학협력단 영화 리뷰 작성자의 신뢰성 검증 장치 및 방법

Citations (4)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
KR20090014259A (ko) * 2006-02-16 2009-02-09 모바일 컨텐트 네트웍스, 인크. 관련있는 소스를 결정하고, 질의를 하며 다수의 컨텐츠 소스로부터의 결과를 병합하는 방법 및 시스템
KR20090080857A (ko) * 2008-01-22 2009-07-27 에스케이텔레콤 주식회사 소셜 네트워크 기반의 콘텐츠 추천 시스템과 방법 및콘텐츠 제공서버
KR20090124629A (ko) * 2008-05-30 2009-12-03 성균관대학교산학협력단 컨텐츠의 최대 재생 시간과 사용자의 시청시간 혹은청취시간을 고려하는 관심 정보 추천 시스템 및 그 방법
KR20120014458A (ko) * 2010-08-09 2012-02-17 충북대학교 산학협력단 연관 규칙 마이닝을 이용한 주제어 기반 인터넷 정보 검색 방법

Family Cites Families (2)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
KR101565339B1 (ko) * 2010-11-03 2015-11-04 네이버 주식회사 집단지성을 이용한 추천 시스템 및 방법
KR20130009360A (ko) 2011-07-15 2013-01-23 박용구 영화추천 서비스 제공방법 및 그 시스템

Patent Citations (5)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
KR20090014259A (ko) * 2006-02-16 2009-02-09 모바일 컨텐트 네트웍스, 인크. 관련있는 소스를 결정하고, 질의를 하며 다수의 컨텐츠 소스로부터의 결과를 병합하는 방법 및 시스템
KR20090080857A (ko) * 2008-01-22 2009-07-27 에스케이텔레콤 주식회사 소셜 네트워크 기반의 콘텐츠 추천 시스템과 방법 및콘텐츠 제공서버
KR20090124629A (ko) * 2008-05-30 2009-12-03 성균관대학교산학협력단 컨텐츠의 최대 재생 시간과 사용자의 시청시간 혹은청취시간을 고려하는 관심 정보 추천 시스템 및 그 방법
US20090299943A1 (en) * 2008-05-30 2009-12-03 Sungkyunkwan University Foundation For Corporate Collaboration Concerned information recommendation system and method considering user's watching or listening time and maximum playing time of contents
KR20120014458A (ko) * 2010-08-09 2012-02-17 충북대학교 산학협력단 연관 규칙 마이닝을 이용한 주제어 기반 인터넷 정보 검색 방법

Cited By (1)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN107943953A (zh) * 2017-11-24 2018-04-20 福建中金在线信息科技有限公司 榜单推荐方法、装置、电子设备和计算机可读存储介质

Also Published As

Publication number Publication date
KR20150101341A (ko) 2015-09-03
KR102167593B1 (ko) 2020-10-19

Similar Documents

Publication Publication Date Title
WO2015129983A1 (ko) 분산 퍼지 연관 규칙 마이닝에 기반한 영화 추천 장치 및 방법
WO2016208916A1 (en) Method and system for context based tab management
WO2015122691A1 (en) Dynamically modifying elements of user interface based on knowledge graph
WO2010117213A2 (en) Apparatus and method for providing information related to broadcasting programs
WO2024091080A1 (ko) 동영상 자동 생성 방법 및 동영상 자동 생성 서버
WO2014069755A1 (ko) 컨텐츠 추천 서비스 제공 시스템 및 방법
WO2020055071A1 (en) System and method for dynamic trend clustering
EP3031213A1 (en) Apparatus, server, and method for providing conversation topic
WO2010119996A1 (ko) 동영상 관련 광고를 제공하는 방법 및 그 장치
WO2011162446A1 (ko) 온톨로지 스키마와 결합된 개체명 사전 및 마이닝 규칙을 이용한 용어의 개체명 결정모듈 및 방법
WO2020130418A1 (ko) 협력업체 공급망 리스크 분석 방법
WO2011065630A1 (ko) 연구자의 연구정보 분석 장치 및 그 방법 그리고 방법에 관한 컴퓨터가 실행할 수 있는 프로그램을 기록한 컴퓨터로 읽을 수 있는 기록매체
WO2016085105A1 (ko) 광고 차단 방법 및 장치
WO2016093630A1 (en) Semantic enrichment of trajectory data
WO2015133856A1 (ko) 정답 키워드 제공 방법 및 장치
WO2022071635A1 (en) Recommending information to present to users without server-side collection of user data for those users
WO2020085558A1 (ko) 고속분석 영상처리장치 및 그 장치의 구동방법
WO2017164510A2 (ko) 음성 데이터 기반 멀티미디어 콘텐츠 태깅 방법 및 이를 이용한 시스템
WO2022050632A1 (ko) 인공지능을 이용하여 사용자의 음성 데이터에 적합한 멀티미디어를 자동으로 생성하는 멀티미디어 자동 생성 시스템
WO2020242089A2 (ko) 인공 지능 기반의 큐레이팅 방법 및 이러한 방법을 수행하는 장치
WO2022119326A1 (ko) 영상 리소스 매칭을 이용한 멀티미디어 변환 콘텐츠 제작 서비스 제공 방법 및 그 장치
WO2016195421A1 (ko) 통계 분석 기반의 데이터 프로파일링을 제공하기 위한 방법, 시스템 및 비일시성의 컴퓨터 판독 가능한 기록 매체
WO2019198950A1 (ko) 컨텐츠 정보 제공 장치 및 그 방법
WO2016129804A1 (ko) 소비자 행동 패턴을 기반으로 한 웹페이지 생성 방법 및 활용 방법
WO2019151620A1 (ko) 컨텐츠 정보 제공 장치 및 그 방법

Legal Events

Date Code Title Description
121 Ep: the epo has been informed by wipo that ep was designated in this application

Ref document number: 14883788

Country of ref document: EP

Kind code of ref document: A1

NENP Non-entry into the national phase

Ref country code: DE

122 Ep: pct application non-entry in european phase

Ref document number: 14883788

Country of ref document: EP

Kind code of ref document: A1