A Movie Recommender System Based on User Profile and Artificial Bee Colony Optimization

In this study, a new algorithm for recommending movies to viewers has been proposed. To do this, the suggested method employs data mining techniques. The proposed method includes three steps for generating recommendations: “preprocessing of user profile information,” “feature extraction,” and “recommendation.” In the first step of proposed method, the user information will be examined and transformed into a form that can be handled in the next phases. In the second step of the proposed method, user attributes are then extracted as a collection of their individual qualities, as well as the average rating of each user for various genres. The bee colony optimization algorithm is then used to select the optimal features. Finally, in the third step of the proposed method, the ratings of similar users are utilized to offer movies to the target user, and the similarities between various users are determined using the characteristics calculated for them, as well as the Euclidean distance criteria. The proposed method was evaluated using the MovieLens database, and its output was assessed in terms of precision and recall criteria; these results show that the proposed method will increase the precision by an average of 1.39% and the recall by 0.8% compared to the compared algorithms.


Introduction
Te Internet is the frst and most accessible source of information for users to search for content and obtain information.Today, many websites welcome millions of users with diferent interests and characteristics on a daily basis.One of the main concerns of the owners of these websites is to provide the appropriate content that the users want in the fastest possible time.Tis need has led to the formation of recommender systems that can ofer the user the desired content, item, or product [1].Today, recommender systems are one of the most widely used aspects of web analytics and review and analyze user behavioral information in interaction with website in order to predict the future behavior of users and provide an environment tailored to the user's tastes and needs [2].Since one of the issues in e-commerce is to provide a user-friendly environment, this branch of data mining science has been considered by many researchers and several recommending systems have been proposed for use on the web [3].Due to the signifcant increase of information available on the web, users are faced with a large amount of information in their daily interactions.In order to prevent confusion for users and avoid wasting their time when searching for the information they need, recommender systems have been created and facilitate users' access to the required information by personalizing the website environment.To create web recommender systems, the required information is collected through user behavior.Tis information represents requests made by the user to access specifc content on the server.Behavioral information collected from other users is compared with the behavior of a new user who is currently using the website, and a list of suggestions is prepared for the current user.Tis method of inference is one of the most widely used methods of information fltering in recommender systems [4,5].However, in order to achieve an efcient recommender system that meets today's needs, we face two basic problems: frst, the modeling of user behavior must be done in an efcient manner and in accordance with computational patterns.Te second issue is to prevent the use of redundant and irrelevant information in providing recommendations.In this study, a new method is presented to solve the mentioned problems.Te contribution of this study can be summarized as follows: (i) Te proposed method uses a combination of behavioral characteristics and user profle information to form a user model and provides a computational method for making recommendations based on user-created models.Te computational cost of this method is very low and this makes the proposed method a more efcient way to be used in huge networks compared to the previous solutions (the computational cost of proposed method is discussed in Section 4).(ii) In order to prevent the use of redundant and irrelevant information in recommendation, artifcial bee colony (ABC) optimization algorithm is used.Te feature selection step can be efective in reducing the processing time (due to reducing the number of features) and improving the precision of the recommender system (due to providing recommendations based on optimal features).
Since the above two cases have not been addressed in previous works, they can be considered as innovations of the proposed method.Te remainder of this study is organized as follows: in the second section, the previous works are reviewed and in the third section, the details of the proposed method are presented.In the fourth section, the results of the implementation and evaluation of the proposed method are presented and in the ffth section, conclusions are made.Finally, some suggestions for further research in this regard are provided.

Related Works
Since recommending systems have been one of the most popular areas of research in recent years, the number of studies conducted in this area is signifcant.In this section, we will review some of this research.Sun et al. [6] have developed a user-centric system for recommending content to social network users.In this method, the communication between users and their individual behavior in the social network is considered in order to recommend content simultaneously.In this method, groups are formed based on the common interests of users.Ten, a collection of user feedback on the content received by users in the same group is collected and similar content is recommended to the user according to his wishes.Yadav et al. [7] presented a flm recommendation system using principal component analysis (PCA) and K-means clustering.In this method, principal component analysis is used to preprocess and reduce the dimensions of the features.In this way, the user descriptive features will be created in a compressed capacity.Te K-means clustering algorithm is then used to determine the category of users similar to the target user and provide recommendations based on it.
Arojo et al. [8] tried to model the behavior of social media users using methods based on dynamic recommender structure in order to personalize social networks.In this research, preprocessing is frst performed on the social network server data in order to prepare the required data for the next step and delete the useless data.Ten, two types of classifcation are performed on the data of the previous step.Te frst classifcation tries to identify users based on the pages visited.Te second classifcation tries to determine which user is more interested in which part of the social networks of the site, in fact, in this part, the system intends to identify the interests of users.
Te authors in reference [9] believe that preprocessing plays an important role in the dynamic recommender structure.In this study, a similarity criterion to the clustering algorithm is added, which shows that the simulation results show that the similarity of the results is much better than the previous clustering criteria.Dakotor [10] introduced a new similarity criterion for use in recommender systems.Te accuracy of motion patterns depends on the similarity criterion considered for the clustering algorithm.Also in this research, two criteria of frequency and duration of user presence on a page have been used.Gorji et al. [11] have proposed a hybrid approach based on application-based dynamic recommender structure and content-based dynamic recommender structure.Tis system consists of fve units.Like many recommendation systems, work begins with preprocessing and is followed by session recognition.Sessions are made by taking the weight of the plates.After the motion patterns are created, these patterns are also combined with the page content using dynamic applicationbased dynamic recommender structure methods and user profles.Ten, some sort of classifcation will be done and each of the profles will be placed in a class, so that suggestions can be generated for users.Gunawardana and Shani [12] have proposed a hybrid recommending system using structure and application data.Tis method is based on distributed learning automata and also uses page ranking algorithms and graph segmentation.How to work in this method is that frst using the application data and the structure of a distributed learning automata determines the similarity between the pages and then using the score ranking algorithm of these pages.It then suggests new pages to users using the Markov model.
Kung et al. [13] have proposed a hybrid recommender system for social networks that can use user and content data and structure data to generate user motion models and use 2 Computational Intelligence and Neuroscience these models to generate suggestions for the site's social network users.Latahabai et al. [14] proposed a system that uses automated rules and indexing to create automated profles for users using application-based dynamic recommender structure methods.In fact, in this method, profles are created based on the preprocessing of application data.Parish et al. [15] proposed a method based on a dynamic content-based recommender structure that features a number of repetitions of words and a profle that is automatically created based on user behavior.In this method, the authors weigh the words on the social networks and then, based on an algorithm, remove the words with less weight than the threshold, and thus show each page as a weighted word vector.Ten, this concept can be expanded and in fact, each user profle can be displayed in the form of keywords and their weight.Toth and Lengyel [16] tried to improve the user's search results by providing a method without the user explicitly stating them.In fact, the function of this system is such that the user submits his request to the search engine.
Te recommender system reviews the user's profle and updates it each time so that it can provide more detailed suggestions in subsequent searches.Several nongradient (evolutionary) search strategies have been evaluated by Fozooni et al. [17].For the purpose of assessing the general efcacy of genetic algorithms, particle swarm optimization, and diferential evolution for optimization of mathematical equations, they developed and tested genetic algorithms, particle swarm optimization, and diferential evolution.Optimization algorithms may be used for solving NPhard problem in diferent felds.For example, Han et al. [18] tried to minimize the age of information (AoI) in unnamed aircraft vehicle (UAV)-aided vehicular edge computing networks using game theory.Wang et al. [19] proposed a game-based model to optimize the channel access-based AoI minimization problem in UAV-based mobile edge computing networks.Yang et al. [20] proposed a game-based model for AoI optimization in the UAVaided trafc monitoring network under attack.Akram et al. [21] have developed a deep learning-based technique for Urdu short text clustering.Teir deep neural network model learns clustering objectives by converting the high dimensional feature space to a low dimensional feature space.Abbasi et al. [22] have proposed an authorship identifcation system using ensemble learning.Tis system uses a count vectorizer and bi-gram term frequency-inverse document frequency (TF-IDF) features to describe the characteristics of the authors.Te related works are summarized in Table 1.

Proposed Method
In this section, we will describe the proposed algorithm for recommending movies to the users.Te proposed solution for providing recommendation to users includes three main steps: (1) Preprocessing user profle information (2) Extracting features and constructing user models (3) Providing recommendations based on user models Te diagram of the proposed algorithm is shown in Figure 1.
Te assumed network database, as illustrated in Figure 1, contains a user profle table and a user rating table for various movie titles, which are used as inputs of the proposed method.Preprocessing the information of the user profles is the frst step of the proposed method.Te personal information of each user will be translated into a format that can be handled by the proposed technique throughout this procedure.Te proposed technique then uses a model structure to defne the attributes of the retrieved user profle information as well as the extracted features for each user.For this proposal, the average user rating for each movie genre is determined once diferent movie genres are collected from the database.A collection of attributes describing the user model is built by integrating a set of user profle information with the average of their rating records to distinct genres.
Te dimensions of the characteristics are subsequently reduced using the bee colony algorithm.In the design depicted in Figure 1, the target user is a user to whom we aim to deliver counsel, presuming he is not completely aware of his interests.So, the vector of features of this user is frst constructed in accordance with the procedure of creating the user model in order to obtain a vector of length F for this user.Te distance between the target user's attributes and all database users is then computed using the Euclidean distance criteria, and the most comparable to the target user is found using this criterion.Finally, the suggestion will be based on the interests of those who are most similar to the target user.Following that, we will go into the specifcs of each step in the suggested strategy.Tese models will be saved as a matrix with dimensions F × N, where N indicates the number of network users and F indicates the number of attributes that defne each user.Te dimensions of the characteristics are subsequently reduced using the bee cloning process.
In the design depicted in Figure 1, the target user is a user to whom we aim to deliver counsel, presuming he is not completely aware of his interests.For this purpose, the user's vector of features is constructed using the user model creation method, yielding a vector of length F for this user.Te Euclidean distance criteria are then used to analyze the distance between the target user's qualities and those of all database users, and the most comparable to the target user is found.
Te notations used in this study are listed in Table 2.

Preprocessing User Profle Data.
Considering a network with a number of users, each user in the network has a collection of attributes known as a user profle.In the suggested technique, we will extract the personal information listed in Table 3 as the individual characteristics of each user from the profle and utilize it as one of the inputs to the proposed algorithm.
(Table 3 shows how the proposed approach uses three criteria to determine the characteristics of network users.Only the age feature has a numerical value, whereas the other  Gender.Each person's gender characteristic can have one of three values: "male," "female," or "no value."If the user has not provided the gender, the value is assumed to be zero.Otherwise, the numbers 1 and 2 replace the "man" and "female" values, respectively.
Occupation.In order to convert occupation attributes to numeric values, a unique list of all user occupations in the database is frst created.It is assumed that this unique vector is L � l 1 , . . .l N  .We then assign to each of the unique occupations in the database a number corresponding to its location on the L vector.By doing this, the occupation ID l 1 will be equal to one and the occupation ID l N will be equal to N. Finally, we replace each user's occupation with the ID generated for that.It should be noted that if the user has not entered a value for the occupation attribute, we will replace it with a value of zero.
After converting all nominal qualities to numerical, the proposed strategy employs two independent methods to determine the diference between the nominal and numerical features of people.Te age attribute is a numeric attribute for each individual in the database that is recorded as a number by year.Tis characteristic has a higher number of variations than the others.For example, we suppose that the average age of participants in a network is between 10 and 60.In this scenario, the maximum age gap will be 50 years; if this distance is equal to one for gender characteristics, the maximum age gap will be 50 years (zero distance for homosexuals and one for two people of the opposite sex).Because of these varied traits, calculating user similarity based on their attributes is challenging.) in the range [0, 1].Tis relationship causes age min to be mapped to zero and age_max to be mapped to one.As a result of the preceding relationship, the greatest disparity between people's ages is one.However, in both cases, a diferent approach is used to determine the diference between two characteristics: gender and occupation.If two people have the same relevant attributes, we consider the distance to be zero; otherwise, we consider the distance to be one.Tis operation is defned by the following relationship: In the above relation, f identifes one of the nominal characteristics of gender or occupation.f x represents the value of this feature for user x and f y represents the value of this feature for user y.In this relation, d represents the distance between the two users x and y in terms of the feature f, and if the feature f of the two users is the same, this distance will be equal to zero; otherwise, it will be equal to one.Following this procedure for each user, the attributes of each individual will be described as a numerical vector of length 3. Te proposed method's next step is to extract the features and utilize them to create the user model.Tis procedure will be described in the next section.

Extracting Features and Building User Models.
Preprocessing user profle information yields a numeric matrix that describes the network user profle.Each row of "-Action" "-Adventure" "-Animation" "-Children" "-Comedy" "-Crime" "-Documentary" "-Drama" "-Fantasy" "-Film-Noir" "-Horror" "-Musical" "-Mystery" "-Romance" "-Sci-Fi" "-Triller" "-War" "-Western" Because a flm may belong to more than one cinematic genre, the recorded rating for that flm in all genres will be computed.Figure 1 depicts an example of the recommended method's user interest vector extraction approach (2). Figure 2 illustrates all of the ratings obtained by the hypothetical user U. Tis user has three points, whereas the number of cinematic genres in the database is assessed to be four.In Figure 2, we can see that user U has rated for two movies in the comedy category, which we can use to get the average rating for this genre.We add these two points together and divide by the total number of user rating records.User U's average comedy genre rating will be 2.66 as a result of this.Te average rating reported by users for each cinematic genre is determined using the procedure indicated in Figure 2, and a vector refecting each user's interests in diferent genres is produced as a result.
Because there are 18 cinematic genres in the database, the length of the bar refecting each user's choices will also be 18.By combining these attributes with the users' individual characteristics, the vector of each user's characteristics will be generated.Tis vector, which has 21 attributes, describes the collection of distinct qualities and interests of each person's (3) individual features and 18 average features of cinematic genres.Because the number of features returned for certain databases might be rather large, the bee colony optimization algorithm will be utilized in the following to choose the optimal characteristics in the user model.Tis method detects and eliminates unrelated aspects in the user model.Tis step can improve the accuracy and speed of the proposed method.Te approach for selecting features using the bee colony optimization method will be discussed in the next section.Te length of each response vector in the bee colony optimization technique is equal to the total number of features in the user model (N).As a result, each existing attribute is allocated a position in the optimization algorithm's solution vector.Each location can have a value of 0 or 1.If a location has a value of 0, that attribute is not selected in the current response; otherwise, the attribute corresponding to the current location is considered as the selected attribute.In order to ft each answer in the proposed algorithm by the bee colony optimization algorithm, frst, the list of selected features is stored in sets such as 6 Computational Intelligence and Neuroscience the degree of optimization of the response.We want to identify traits that best distinguish comparable user interest groups in the suggested strategy.One of the appropriate factors for selecting a feature is the use of the correlation parameter.Tis technique may be a suitable choice for rating the extracted attributes.Because, on the one hand, the relationship between each characteristic and user group is similar, and on the other hand, the correlation between characteristics is taken into consideration.Given a set of extracted qualities x and a set of categories c, the Pearson correlation relation [23] may be used to determine the correlation of the extracted features: In the above relation, M x is the relation of the selected attribute set and r cf is the mean of the linear correlation between the attribute set x and the categories c.It should be noted that in problems where the data classifcation is not clear (such as the current problem), r cf � 1 is considered.Also, in the above relation, r ff refers to the average of the linear correlation between the selected features.Terefore, the ftting function is the selection of features with maximum correlation between each other and the possible target categories.Tis goal is equivalent to maximizing (3), or in other words, minimizing the following equation: In the proposed method, using a bee colony optimization algorithm, we select a subset of data that can minimize (4).Tis process is done through the following steps: Step 1. (determining the problem limits).Determining the limits for each optimization variable is described in this section.Tus, each response vector is an integer vector, each of which is a member of the set {0, 1}.
Step 2. (preparation phase).In this step, all the vectors of the food source population (possible answers) are initialized by the scout bees as vectors x → m ,m � 1, 2, . . ., SN; which in this vector, SN is equal to the size of the bee population.Since each member x → m is itself a vector containing the variable F, the goal is to fnd values in the vector x → m that produce the least value of the ftting function (equation ( 4)).Te initialization of the vector x → m is done through the following relation [24]: where R is a random member in the set {0, 1}.
Step 3. (search phase of worker bees).In this stage, the search bees look for new solutions with a better ft in the neighborhood of the vector x → m .Tese bees evaluate the values in the vicinity of the vector x → m by Equation ( 9).In other words, the employed bees changed the list of selected features on the vector x → m to produce the vector v → m .Ten, they calculate the ft of the vector v → m and check whether the features determined in v → m are more suitable than x → m or not?If the answer is yes, the vector x → m will be removed and replaced by v → m .Te vector v → m is determined using the following equation [24]: In the above relation, x k is a random vector selected from the population, i is a random location selected on the response vectors, and φ mi is a random value in the interval [0, 1].
Step 4. (onlooker bees evaluation phase).Employed bees provide the control bees with information about the responses found.Observer bees calculate the probability of selecting each answer and select the appropriate answer to search for in the next steps.Te probability of the vector x → m is calculated by the observing bee using the following equation [24]: As previously stated, the solutions are chosen based on the probability value of equation (7).Te answers are determined using the Roulette wheel algorithm.Tis technique selects the most likely solutions for use in the next population, but a small number of nonoptimal replies are also pushed to the next cycle to preserve the problem's comprehensiveness.
Step 5. (watch bee search phase).In this step, responses that remain unchanged after a certain number of cycles are randomly reset by watch bees.
Step 6. (evaluation of results).If the number of search cycles reaches the specifed maximum value, the algorithm terminates.Otherwise, the search algorithm for the new cycle is repeated from step 2.
In the fnal step of the proposed method, the selected features will be used to provide a recommendation.In the following sections, we will discuss the recommendation process based on the extracted features for users.

Providing Recommendations Based on the Extracted
Characteristics.Te last step in the proposed method is to provide a recommendation based on the features selected in the previous step.If we consider the number of network users to be N, the whole database will be described as a matrix with dimensions N × F. Each column of this matrix represents a feature, while each row indicates a user's unique features and interests.To provide counsel to a user like u, the user attribute vector u is frst generated, and then the user Euclidean distance u is computed from all database users.It should be mentioned that equation ( 2) is utilized to Computational Intelligence and Neuroscience determine the distance between users' gender and occupation attributes.Te following equation is used to compute the distance between user u and v: In the above equation, F represents the number of database features and u i represents the value registered for the user's ith feature.After determining the distance between user u and other users, the suggestion will be based on the database users that are closest to u.As a consequence, after identifying the user with the shortest distance, his database video scoring records will be analyzed, and the R movie with the highest recorded rating will be recommended to user u.R is the number of suggestions parameter, which is determined by the system in this case.

Implementation and Results
In this section, the proposed method is implemented using MATLAB software and the performance of the proposed method is examined.Te efciency of the proposed method is also compared with other learning models.MovieLens database was used in the experiments.MovieLens is a web and virtual community-based service that recommends movies to its users.Te system contains about 11 million rankings for about 8,500 flms and was created in 1997 by GroupLens Research, a research laboratory in the Department of Computer Science and Engineering at the University of Minnesota, to collect research data on personal recommendations.In this research, Movielens 1M version of this database has been used to evaluate the proposed method.Table 4 lists a summary of the specifcations of this database [25].
Tis database describes each user's profle through 10 attributes.In the proposed method, only three features: age, gender, and occupation are used and other features mentioned in the user profle are ignored.Also, for each movie in the database, the features of the ID, name, year of release, and genre are available.User ratings for movies in the MovieLens 1M database do not have a timestamp.As a result, the model cannot be built and recommended in two separate time periods.As a result, double cross-evaluation is used to assess the suggested algorithm's performance.Te database is partitioned into ten subgroups in this assessment technique, and the modeling and recommendation procedure is performed ten times.In each experiment, 9 subsets of the database are used to create the model and the user similarity matrix, with the remaining subset being utilized to assess the proposed method's performance in proposing to users.In other words, all of the points recorded for the flms by each user are separated into 10 groups.Te user model and their similarity matrix are constructed using 90% of the ratings (9 parts) each time the experiment is run, and the suggestions supplied by the proposed technique are extracted based on this similarity matrix.Te suggested algorithm's output is then compared to the remaining 10% of real ratings.In each comparison, one of the following scenarios might occur: (i) Te proposed algorithm proposes a movie that is available in the remaining 10% of the user-recorded ratings (in other words, a rating higher than 3 for the user-suggested movie is recorded).In this case, the recommended flm is a true positive output and is added to the TP set.(ii) Te proposed algorithm has suggested a movie that is not available in the remaining 10% of the points recorded by the user.In this case, the recommended connection is a false positive output and is added to the FP set.(iii) A set of videos is available in the remaining 10% of user-rated ratings that are not recommended by the proposed algorithm (in other words, the suggested algorithm cannot recommend user-favorite movies with a rating higher than 3).All of these ignored videos are added to the FN collection as false negatives.
Using the above results, precision and recall criteria can be used to evaluate the performance of the recommender system.Te precision criterion determines the ratio of the correct outputs of the recommender algorithm, which is calculated as follows: Te recall criterion also represents the proportion of the user's favorite movies that are correctly recommended by the proposed algorithm.Tis criterion is calculated using the following equation: In evaluating the proposed method, three diferent scenarios have been considered for conducting the experiments, which will be discussed later: (1) Changing the Number of Recommendations.In this experiment, the number of movies recommended to the tested users is changed in the range of 1 to 5 and the efciency of the proposed method for these changes will be studied.(2) Changing the Number of Users.In this scenario, we will change the number of users used to perform the recommendation in the range of 2000 to 6000 users.
In each iteration, the list of users used to evaluate the performance of the proposed method will be the same as the compared methods.(Videos).Te purpose of this experiment is to evaluate the performance of the proposed method in terms of changes in the number of items recommended to users.For this purpose, the number of database videos is changed in the range of 1000 to 3883 and the precision and recall criteria for these changes will be examined.

Performance of the Proposed Method Considering the Number of Recommendations.
In this experiment, the number of items (videos) recommended by the proposed algorithm is modifed, and the precision and recall requirements for each case are calculated.Te amount of recommendations is the number of videos that the proposed approach recommends each user view based on their similarity matrix.Te suggested number might range between one and fve.It's worth mentioning that all database users and videos were utilized to ofer suggestions in this experiment.Figure 3 displays a graph of variations in the precision criterion as a function of the number of recommendations in the proposed approach.Te outcomes of the proposed method are compared to the procedures provided in references [6,7] in both of these graphs.Tese data imply that the recommended technique generates superior results.Te precision chart in Figure 3, on the other hand, shows a downward trend, and the recall chart in Figure 4 indicates an upward trend.Tis feature suggests that a range of recommendations may be efective in increasing precision.Te fact that the proposed technique decreases precision while increasing the number of recommendations indicates that it frequently prioritizes appropriate ofers.A good recommender algorithm should have this attribute.As seen in Figure 3, the proposed technique prioritizes more acceptable flms while giving less weight to alternative choices (in other words, as the number of recommendations grows, they are more likely to be included).Te recall criteria, on the other hand, increase as the number of suggestions of the suggested technique in Figure 4 grows.Tis characteristic demonstrates that as the number of suggestions grows, a greater percentage of the user's favorite videos is successfully retrieved.Also, Figure 4 shows a graph of changes in the recall criteria for this experiment.

Performance of the Proposed Method considering the
Number of Users.Tis section examines how the number of users impacts the performance of the recommended technique.Te purpose of this experiment is to investigate how the proposed approach reacts to changes in the problem's dimensions.In this case, the proposed algorithm generates two suggestions.In addition, all of the movies in the database were used as suggested items.Te number of database users is then modifed in the range of 2000 to 6000, while the infuence of dimensional changes on the performance of the suggested approach is tested by continually evaluating these parameters.Te graphs showing changes in precision and recall criteria for changes in the number of users in the proposed technique are illustrated in Figures 5 and 6, respectively.
As seen in Figures 5 and 6, the precision criteria rise while the recall criterion falls (6).As the number of users increases, the recommending system will get more information on the link between users' traits and their favorite movies.As a consequence of this data, the proposing system will have a  Computational Intelligence and Neuroscience better understanding of the problem and will be able to give more likely recommendations.However, as the number of users and the network expand, a greater proportion of users' rights and interests will be destroyed during the testing phase, and the recommending system will be forced to uncover more hidden interests through recommendation.In other words, as the network expands in size, so does the number of test samples.Te number of recommendations, on the other hand, is limited to two.As a result, it is natural that in this situation, the criterion of recall is decreasing.However, in this experiment, the proposed method has a better performance than the compared methods.Computational Intelligence and Neuroscience instance.In addition, all database users were utilized to create the model and test the recommender system.In the suggested technique, Figure 7 depicts a graph of changes in the precision criteria as a function of the number of movies.
Te precision values will increase as the number of database flms grows, as illustrated in Figure 7.Because as the number of flms in the database grows, so does the variety of options for ofering a suggestion, and as a result, the likelihood of providing an acceptable recommendation to the user grows as well.Te suggested technique may be more successful in delivering suggestions than the comparison method, based on the fndings of this experiment.In the suggested technique, Figure 8 depicts a graph of changes in the recall criterion as a function of the number of flms.
As the number of database movies grows, so will the recall values, as seen in Figure 8.Because the suggested strategy would generate a more complete model of users' interests in diferent genres by increasing the quantity of videos in the database.As a consequence, the suggested technique has a better likelihood of correctly extracting users' favorite movies.
Table 5 summarizes the average precision and recall values of the proposed method with compared recommender systems during experiments.In this table, the computational costs of the methods, are also compared.Tese experiments have been executed on a personal computer, running ×64 version Microsoft Windows 10 on an Intel core i7 processor with the processing power of 3.2 GHz and 16 gigabytes of RAM.
In Table 5, the model construction time refers to the average time needed for constructing a user model and is calculated by dividing total model construction time of recommender system by the number of users.Te recommendation time also refers to the average computational time required for providing a recommendation through the constructed model.
According to the mean values in Table 5, the proposed strategy outperforms the compared methods, boosting precision by 1.39% and recall by 0.8%.Tese results indicate that the proposed model is a cost-efective method, which can be deployed in real-world scenarios.According to these results, the proposed scheme can reduce the model construction time and recommendation time by 57.83% and 54.71%, respectively.Tis improvement can be attributed to using reduced features that are provided by the ABC optimization algorithm.

Conclusion
Tis research proposed a revolutionary algorithm for recommending content to consumers in video provider networks.Te three key processes in the proposed system for providing customers with advice are "preprocessing user profle information," "building profle structure and extracting features," and "recommending based on the similarity of users' models."By combining a set of user profle qualities with the average of their rating records to separate genres, the proposed approach [25] generates a collection of attributes that describe the user model.According to the experiments, the computational cost of the proposed method is very low, which makes it a more efcient way to be used in huge networks compared to the previous solutions.In addition, using the ABC algorithm for selecting optimal features is efective in reducing the processing time and improving the precision of the recommender.One of the limitations of the proposal is that the parameters of the number of recommendations and the number of features (in the ABC algorithm) must be determined empirically by the user.In future works, the task of determining suitable values for these parameters can be assigned to the optimization algorithm.Another aspect for improving the efciency of the proposed method is clustering users, which may lead to a better approach for selecting the most similar users with lower computational complexity.Tus, it can be studied in future works.

Figure 3 :
Figure 3: Precision per number of recommendations in the proposed method.

Table 1 :
Summary of the related studies.
Te suggested solution employs the normalization of age data to tackle this difculty.Te following equation will be used to standardize the age attribute of every user in the network: In the above relation, (Age �� �→ ) is the age vector of individuals, age_min is the lowest age in the database, and age_max is the largest value in the database.Te above relation causes the age values of individuals as a vector such as (N age ��� �→

Table 2 :
Notations used in this study.

Table 3 :
A set of personal characteristics used to describe the user profle in the proposed method.a user's attribute, while each column indicates an attribute.As a result, if the number of network users is equal to n, the user attribute matrix will have dimensions n 3. It should be noted that content suggestions cannot be provided only on the basis of user attributes.Two users may, for example, have identical personal attributes (age, gender, etc.) yet difer in their hobbies.As a consequence, the recommended approach considers users' flm scoring records as an extra piece of information when creating appropriate recommendations.Te user model is then built by combining user profle information (personal characteristics) with his scoring records in various flm styles (user interests).In order to extract the elements related to people's interests, a unique list of all cinematic genres in the database is originally produced.For example, doing so for the MovieLens database resulted in the extraction of 18 movie genres, which are listed below.Following the extraction of the database's list of cinematic genres, the users' scoring records for movies in each genre are retrieved, and the user's average rating for each genre is determined.
c i  .Te present selection's ft is then determined, and the selection's optimality is assessed.In an optimization algorithm, the ft function is used to determine
Figure 6: Recall versus the number of users.
4.3.Performance of the Proposed Method considering the Number of Movies.Te goal of this experiment is to see how well the suggested strategy performs as the number of things recommended to users fuctuates.Te amount of database videos will be modifed from 1000 to 3883 for this purpose, and the precision and recall criteria for these modifcations will be investigated.Te number of suggestions produced by the suggested algorithm is assumed to be two in this

Table 5 :
Figure 8: Recall values versus the number of recommendable movies.Comparison of the average precision and recall of the proposed method in all experiments.Average precision Average recall Average model construction time (s) Average recommendation time (s)