CINXE.COM
Deep Matrix Factorization Approach for Collaborative Filtering Recommender Systems
<!DOCTYPE html> <html lang="en" xmlns:og="http://ogp.me/ns#" xmlns:fb="https://www.facebook.com/2008/fbml"> <head> <meta charset="utf-8"> <meta http-equiv="X-UA-Compatible" content="IE=edge,chrome=1"> <meta content="mdpi" name="sso-service" /> <meta content="width=device-width, initial-scale=1.0" name="viewport" /> <title>Deep Matrix Factorization Approach for Collaborative Filtering Recommender Systems</title><link rel="stylesheet" href="https://pub.mdpi-res.com/assets/css/font-awesome.min.css?eb190a3a77e5e1ee?1732286508"> <link rel="stylesheet" href="https://pub.mdpi-res.com/assets/css/jquery.multiselect.css?f56c135cbf4d1483?1732286508"> <link rel="stylesheet" href="https://pub.mdpi-res.com/assets/css/chosen.min.css?d7ca5ca9441ef9e1?1732286508"> <link rel="stylesheet" href="https://pub.mdpi-res.com/assets/css/main2.css?69b39374e6b554b7?1732286508"> <link rel="mask-icon" href="https://pub.mdpi-res.com/img/mask-icon-128.svg?c1c7eca266cd7013?1732286508" color="#4f5671"> <link rel="apple-touch-icon" sizes="180x180" href="https://pub.mdpi-res.com/icon/apple-touch-icon-180x180.png?1732286508"> <link rel="apple-touch-icon" sizes="152x152" href="https://pub.mdpi-res.com/icon/apple-touch-icon-152x152.png?1732286508"> <link rel="apple-touch-icon" sizes="144x144" href="https://pub.mdpi-res.com/icon/apple-touch-icon-144x144.png?1732286508"> <link rel="apple-touch-icon" sizes="120x120" href="https://pub.mdpi-res.com/icon/apple-touch-icon-120x120.png?1732286508"> <link rel="apple-touch-icon" sizes="114x114" href="https://pub.mdpi-res.com/icon/apple-touch-icon-114x114.png?1732286508"> <link rel="apple-touch-icon" sizes="76x76" href="https://pub.mdpi-res.com/icon/apple-touch-icon-76x76.png?1732286508"> <link rel="apple-touch-icon" sizes="72x72" href="https://pub.mdpi-res.com/icon/apple-touch-icon-72x72.png?1732286508"> <link rel="apple-touch-icon" sizes="57x57" href="https://pub.mdpi-res.com/icon/apple-touch-icon-57x57.png?1732286508"> <link rel="apple-touch-icon" href="https://pub.mdpi-res.com/icon/apple-touch-icon-57x57.png?1732286508"> <link rel="apple-touch-icon-precomposed" href="https://pub.mdpi-res.com/icon/apple-touch-icon-57x57.png?1732286508"> <link rel="manifest" href="/manifest.json"> <meta name="theme-color" content="#ffffff"> <meta name="application-name" content=" "/> <link rel="apple-touch-startup-image" href="https://pub.mdpi-res.com/img/journals/applsci-logo-sq.png?8600e93ff98dbf14"> <link rel="apple-touch-icon" href="https://pub.mdpi-res.com/img/journals/applsci-logo-sq.png?8600e93ff98dbf14"> <meta name="msapplication-TileImage" content="https://pub.mdpi-res.com/img/journals/applsci-logo-sq.png?8600e93ff98dbf14"> <link rel="stylesheet" href="https://pub.mdpi-res.com/assets/css/jquery-ui-1.10.4.custom.min.css?80647d88647bf347?1732286508"> <link rel="stylesheet" href="https://pub.mdpi-res.com/assets/css/magnific-popup.min.css?04d343e036f8eecd?1732286508"> <link rel="stylesheet" href="https://pub.mdpi-res.com/assets/css/xml2html/article-html.css?230b005b39af4260?1732286508"> <style> h2, #abstract .related_suggestion_title { } .batch_articles a { color: #000; } a, .batch_articles .authors a, a:focus, a:hover, a:active, .batch_articles a:focus, .batch_articles a:hover, li.side-menu-li a { } span.label a { color: #fff; } #main-content a.title-link:hover, #main-content a.title-link:focus, #main-content div.generic-item a.title-link:hover, #main-content div.generic-item a.title-link:focus { } #main-content #middle-column .generic-item.article-item a.title-link:hover, #main-content #middle-column .generic-item.article-item a.title-link:focus { } .art-authors a.toEncode { color: #333; font-weight: 700; } #main-content #middle-column ul li::before { } .accordion-navigation.active a.accordion__title, .accordion-navigation.active a.accordion__title::after { } .accordion-navigation li:hover::before, .accordion-navigation li:hover a, .accordion-navigation li:focus a { } .relative-size-container .relative-size-image .relative-size { } .middle-column__help__fixed a:hover i, } input[type="checkbox"]:checked:after { } input[type="checkbox"]:not(:disabled):hover:before { } #main-content .bolded-text { } #main-content .hypothesis-count-container { } #main-content .hypothesis-count-container:before { } .full-size-menu ul li.menu-item .dropdown-wrapper { } .full-size-menu ul li.menu-item > a.open::after { } #title-story .title-story-orbit .orbit-caption { #background: url('/img/design/000000_background.png') !important; background: url('/img/design/ffffff_background.png') !important; color: rgb(51, 51, 51) !important; } #main-content .content__container__orbit { background-color: #000 !important; } #main-content .content__container__journal { color: #fff; } .html-article-menu .row span { } .html-article-menu .row span.active { } .accordion-navigation__journal .side-menu-li.active::before, .accordion-navigation__journal .side-menu-li.active a { color: rgba(74,74,127,0.75) !important; font-weight: 700; } .accordion-navigation__journal .side-menu-li:hover::before , .accordion-navigation__journal .side-menu-li:hover a { color: rgba(74,74,127,0.75) !important; } .side-menu-ul li.active a, .side-menu-ul li.active, .side-menu-ul li.active::before { color: rgba(74,74,127,0.75) !important; } .side-menu-ul li.active a { } .result-selected, .active-result.highlighted, .active-result:hover, .result-selected, .active-result.highlighted, .active-result:focus { } .search-container.search-container__default-scheme { } nav.tab-bar .open-small-search.active:after { } .search-container.search-container__default-scheme .custom-accordion-for-small-screen-link::after { color: #fff; } @media only screen and (max-width: 50em) { #main-content .content__container.journal-info { color: #fff; } #main-content .content__container.journal-info a { color: #fff; } } .button.button--color { } .button.button--color:hover, .button.button--color:focus { } .button.button--color-journal { position: relative; background-color: rgba(74,74,127,0.75); border-color: #fff; color: #fff !important; } .button.button--color-journal:hover::before { content: ''; position: absolute; top: 0; left: 0; height: 100%; width: 100%; background-color: #ffffff; opacity: 0.2; } .button.button--color-journal:visited, .button.button--color-journal:hover, .button.button--color-journal:focus { background-color: rgba(74,74,127,0.75); border-color: #fff; color: #fff !important; } .button.button--color path { } .button.button--color:hover path { fill: #fff; } #main-content #search-refinements .ui-slider-horizontal .ui-slider-range { } .breadcrumb__element:last-of-type a { } #main-header { } #full-size-menu .top-bar, #full-size-menu li.menu-item span.user-email { } .top-bar-section li:not(.has-form) a:not(.button) { } #full-size-menu li.menu-item .dropdown-wrapper li a:hover { } #full-size-menu li.menu-item a:hover, #full-size-menu li.menu.item a:focus, nav.tab-bar a:hover { } #full-size-menu li.menu.item a:active, #full-size-menu li.menu.item a.active { } #full-size-menu li.menu-item a.open-mega-menu.active, #full-size-menu li.menu-item div.mega-menu, a.open-mega-menu.active { } #full-size-menu li.menu-item div.mega-menu li, #full-size-menu li.menu-item div.mega-menu a { border-color: #9a9a9a; } div.type-section h2 { font-size: 20px; line-height: 26px; font-weight: 300; } div.type-section h3 { margin-left: 15px; margin-bottom: 0px; font-weight: 300; } .journal-tabs .tab-title.active a { } </style> <link rel="stylesheet" href="https://pub.mdpi-res.com/assets/css/slick.css?f38b2db10e01b157?1732286508"> <meta name="title" content="Deep Matrix Factorization Approach for Collaborative Filtering Recommender Systems"> <meta name="description" content="Providing useful information to the users by recommending highly demanded products and services is a fundamental part of the business of many top tier companies. Recommender Systems make use of many sources of information to provide users with accurate predictions and novel recommendations of items. Here we propose, DeepMF, a novel collaborative filtering method that combines the Deep Learning paradigm with Matrix Factorization (MF) to improve the quality of both predictions and recommendations made to the user. Specifically, DeepMF performs successive refinements of a MF model with a layered architecture that uses the acquired knowledge in a layer as input for subsequent layers. Experimental results showed that the quality of both the predictions and recommendations of DeepMF overcome the baselines." > <link rel="image_src" href="https://pub.mdpi-res.com/img/journals/applsci-logo.png?8600e93ff98dbf14" > <meta name="dc.title" content="Deep Matrix Factorization Approach for Collaborative Filtering Recommender Systems"> <meta name="dc.creator" content="Raúl Lara-Cabrera"> <meta name="dc.creator" content="Ángel González-Prieto"> <meta name="dc.creator" content="Fernando Ortega"> <meta name="dc.type" content="Article"> <meta name="dc.source" content="Applied Sciences 2020, Vol. 10, Page 4926"> <meta name="dc.date" content="2020-07-17"> <meta name ="dc.identifier" content="10.3390/app10144926"> <meta name="dc.publisher" content="Multidisciplinary Digital Publishing Institute"> <meta name="dc.rights" content="http://creativecommons.org/licenses/by/3.0/"> <meta name="dc.format" content="application/pdf" > <meta name="dc.language" content="en" > <meta name="dc.description" content="Providing useful information to the users by recommending highly demanded products and services is a fundamental part of the business of many top tier companies. Recommender Systems make use of many sources of information to provide users with accurate predictions and novel recommendations of items. Here we propose, DeepMF, a novel collaborative filtering method that combines the Deep Learning paradigm with Matrix Factorization (MF) to improve the quality of both predictions and recommendations made to the user. Specifically, DeepMF performs successive refinements of a MF model with a layered architecture that uses the acquired knowledge in a layer as input for subsequent layers. Experimental results showed that the quality of both the predictions and recommendations of DeepMF overcome the baselines." > <meta name="dc.subject" content="deep learning" > <meta name="dc.subject" content="recommender systems" > <meta name="dc.subject" content="collaborative filtering" > <meta name="dc.subject" content="matrix factorization" > <meta name ="prism.issn" content="2076-3417"> <meta name ="prism.publicationName" content="Applied Sciences"> <meta name ="prism.publicationDate" content="2020-07-17"> <meta name ="prism.volume" content="10"> <meta name ="prism.number" content="14"> <meta name ="prism.section" content="Article" > <meta name ="prism.startingPage" content="4926" > <meta name="citation_issn" content="2076-3417"> <meta name="citation_journal_title" content="Applied Sciences"> <meta name="citation_publisher" content="Multidisciplinary Digital Publishing Institute"> <meta name="citation_title" content="Deep Matrix Factorization Approach for Collaborative Filtering Recommender Systems"> <meta name="citation_publication_date" content="2020/1"> <meta name="citation_online_date" content="2020/07/17"> <meta name="citation_volume" content="10"> <meta name="citation_issue" content="14"> <meta name="citation_firstpage" content="4926"> <meta name="citation_author" content="Lara-Cabrera, Raúl"> <meta name="citation_author" content="González-Prieto, Ángel"> <meta name="citation_author" content="Ortega, Fernando"> <meta name="citation_doi" content="10.3390/app10144926"> <meta name="citation_id" content="mdpi-app10144926"> <meta name="citation_abstract_html_url" content="https://www.mdpi.com/2076-3417/10/14/4926"> <meta name="citation_pdf_url" content="https://www.mdpi.com/2076-3417/10/14/4926/pdf?version=1595218236"> <link rel="alternate" type="application/pdf" title="PDF Full-Text" href="https://www.mdpi.com/2076-3417/10/14/4926/pdf?version=1595218236"> <meta name="fulltext_pdf" content="https://www.mdpi.com/2076-3417/10/14/4926/pdf?version=1595218236"> <meta name="citation_fulltext_html_url" content="https://www.mdpi.com/2076-3417/10/14/4926/htm"> <link rel="alternate" type="text/html" title="HTML Full-Text" href="https://www.mdpi.com/2076-3417/10/14/4926/htm"> <meta name="fulltext_html" content="https://www.mdpi.com/2076-3417/10/14/4926/htm"> <link rel="alternate" type="text/xml" title="XML Full-Text" href="https://www.mdpi.com/2076-3417/10/14/4926/xml"> <meta name="fulltext_xml" content="https://www.mdpi.com/2076-3417/10/14/4926/xml"> <meta name="citation_xml_url" content="https://www.mdpi.com/2076-3417/10/14/4926/xml"> <meta name="twitter:card" content="summary" /> <meta name="twitter:site" content="@MDPIOpenAccess" /> <meta name="twitter:image" content="https://pub.mdpi-res.com/img/journals/applsci-logo-social.png?8600e93ff98dbf14" /> <meta property="fb:app_id" content="131189377574"/> <meta property="og:site_name" content="MDPI"/> <meta property="og:type" content="article"/> <meta property="og:url" content="https://www.mdpi.com/2076-3417/10/14/4926" /> <meta property="og:title" content="Deep Matrix Factorization Approach for Collaborative Filtering Recommender Systems" /> <meta property="og:description" content="Providing useful information to the users by recommending highly demanded products and services is a fundamental part of the business of many top tier companies. Recommender Systems make use of many sources of information to provide users with accurate predictions and novel recommendations of items. Here we propose, DeepMF, a novel collaborative filtering method that combines the Deep Learning paradigm with Matrix Factorization (MF) to improve the quality of both predictions and recommendations made to the user. Specifically, DeepMF performs successive refinements of a MF model with a layered architecture that uses the acquired knowledge in a layer as input for subsequent layers. Experimental results showed that the quality of both the predictions and recommendations of DeepMF overcome the baselines." /> <meta property="og:image" content="https://pub.mdpi-res.com/applsci/applsci-10-04926/article_deploy/html/images/applsci-10-04926-g001-550.jpg?1602245608" /> <link rel="alternate" type="application/rss+xml" title="MDPI Publishing - Latest articles" href="https://www.mdpi.com/rss"> <meta name="google-site-verification" content="PxTlsg7z2S00aHroktQd57fxygEjMiNHydKn3txhvwY"> <meta name="facebook-domain-verification" content="mcoq8dtq6sb2hf7z29j8w515jjoof7" /> <script id="Cookiebot" data-cfasync="false" src="https://consent.cookiebot.com/uc.js" data-cbid="51491ddd-fe7a-4425-ab39-69c78c55829f" type="text/javascript" async></script> <!--[if lt IE 9]> <script>var browserIe8 = true;</script> <link rel="stylesheet" href="https://pub.mdpi-res.com/assets/css/ie8foundationfix.css?50273beac949cbf0?1732286508"> <script src="//html5shiv.googlecode.com/svn/trunk/html5.js"></script> <script src="//cdnjs.cloudflare.com/ajax/libs/html5shiv/3.6.2/html5shiv.js"></script> <script src="//s3.amazonaws.com/nwapi/nwmatcher/nwmatcher-1.2.5-min.js"></script> <script src="//html5base.googlecode.com/svn-history/r38/trunk/js/selectivizr-1.0.3b.js"></script> <script src="//cdnjs.cloudflare.com/ajax/libs/respond.js/1.1.0/respond.min.js"></script> <script src="https://pub.mdpi-res.com/assets/js/ie8/ie8patch.js?9e1d3c689a0471df?1732286508"></script> <script src="https://pub.mdpi-res.com/assets/js/ie8/rem.min.js?94b62787dcd6d2f2?1732286508"></script> <![endif]--> <script type="text/plain" data-cookieconsent="statistics"> (function(w,d,s,l,i){w[l]=w[l]||[];w[l].push({'gtm.start': new Date().getTime(),event:'gtm.js'});var f=d.getElementsByTagName(s)[0], j=d.createElement(s),dl=l!='dataLayer'?'&l='+l:'';j.async=true;j.src= 'https://www.googletagmanager.com/gtm.js?id='+i+dl;f.parentNode.insertBefore(j,f); })(window,document,'script','dataLayer','GTM-WPK7SW5'); </script> <script type="text/plain" data-cookieconsent="statistics"> _linkedin_partner_id = "2846186"; window._linkedin_data_partner_ids = window._linkedin_data_partner_ids || []; window._linkedin_data_partner_ids.push(_linkedin_partner_id); </script><script type="text/javascript"> (function(){var s = document.getElementsByTagName("script")[0]; var b = document.createElement("script"); b.type = "text/javascript";b.async = true; b.src = "https://snap.licdn.com/li.lms-analytics/insight.min.js"; s.parentNode.insertBefore(b, s);})(); </script> <script type="text/plain" data-cookieconsent="statistics" data-cfasync="false" src="//script.crazyegg.com/pages/scripts/0116/4951.js" async="async" ></script> </head> <body> <div class="direction direction_right" id="small_right" style="border-right-width: 0px; padding:0;"> <i class="fa fa-caret-right fa-2x"></i> </div> <div class="big_direction direction_right" id="big_right" style="border-right-width: 0px;"> <div style="text-align: right;"> Next Article in Journal<br> <div><a href="/2076-3417/10/14/4927">Model-Guided Manufacturing of Transducer Arrays Based on Single-Fibre Piezocomposites</a></div> Next Article in Special Issue<br> <div><a href="/2076-3417/10/15/5324">Time-Aware Music Recommender Systems: Modeling the Evolution of Implicit User Preferences and User Listening Habits in A Collaborative Filtering Approach</a></div> </div> </div> <div class="direction" id="small_left" style="border-left-width: 0px"> <i class="fa fa-caret-left fa-2x"></i> </div> <div class="big_direction" id="big_left" style="border-left-width: 0px;"> <div> Previous Article in Journal<br> <div><a href="/2076-3417/10/14/4925">Design, Simulation, and Test of a New Threshing Cylinder for High Moisture Content Corn</a></div> Previous Article in Special Issue<br> <div><a href="/2076-3417/10/14/4756">Personalized Standard Deviations Improve the Baseline Estimation of Collaborative Filtering Recommendation</a></div> </div> </div> <div style="clear: both;"></div> <div id="menuModal" class="reveal-modal reveal-modal-new reveal-modal-menu" aria-hidden="true" data-reveal role="dialog"> <div class="menu-container"> <div class="UI_NavMenu"> <div class="content__container " > <div class="custom-accordion-for-small-screen-link " > <h2>Journals</h2> </div> <div class="target-item custom-accordion-for-small-screen-content show-for-medium-up"> <div class="menu-container__links"> <div style="width: 100%; float: left;"> <a href="/about/journals">Active Journals</a> <a href="/about/journalfinder">Find a Journal</a> <a href="/about/journals/proposal">Journal Proposal</a> <a href="/about/proceedings">Proceedings Series</a> </div> </div> </div> </div> <a href="/topics"> <h2>Topics</h2> </a> <div class="content__container " > <div class="custom-accordion-for-small-screen-link " > <h2>Information</h2> </div> <div class="target-item custom-accordion-for-small-screen-content show-for-medium-up"> <div class="menu-container__links"> <div style="width: 100%; max-width: 200px; float: left;"> <a href="/authors">For Authors</a> <a href="/reviewers">For Reviewers</a> <a href="/editors">For Editors</a> <a href="/librarians">For Librarians</a> <a href="/publishing_services">For Publishers</a> <a href="/societies">For Societies</a> <a href="/conference_organizers">For Conference Organizers</a> </div> <div style="width: 100%; max-width: 250px; float: left;"> <a href="/openaccess">Open Access Policy</a> <a href="/ioap">Institutional Open Access Program</a> <a href="/special_issues_guidelines">Special Issues Guidelines</a> <a href="/editorial_process">Editorial Process</a> <a href="/ethics">Research and Publication Ethics</a> <a href="/apc">Article Processing Charges</a> <a href="/awards">Awards</a> <a href="/testimonials">Testimonials</a> </div> </div> </div> </div> <a href="/authors/english"> <h2>Editing Services</h2> </a> <div class="content__container " > <div class="custom-accordion-for-small-screen-link " > <h2>Initiatives</h2> </div> <div class="target-item custom-accordion-for-small-screen-content show-for-medium-up"> <div class="menu-container__links"> <div style="width: 100%; float: left;"> <a href="https://sciforum.net" target="_blank" rel="noopener noreferrer">Sciforum</a> <a href="https://www.mdpi.com/books" target="_blank" rel="noopener noreferrer">MDPI Books</a> <a href="https://www.preprints.org" target="_blank" rel="noopener noreferrer">Preprints.org</a> <a href="https://www.scilit.net" target="_blank" rel="noopener noreferrer">Scilit</a> <a href="https://sciprofiles.com" target="_blank" rel="noopener noreferrer">SciProfiles</a> <a href="https://encyclopedia.pub" target="_blank" rel="noopener noreferrer">Encyclopedia</a> <a href="https://jams.pub" target="_blank" rel="noopener noreferrer">JAMS</a> <a href="/about/proceedings">Proceedings Series</a> </div> </div> </div> </div> <div class="content__container " > <div class="custom-accordion-for-small-screen-link " > <h2>About</h2> </div> <div class="target-item custom-accordion-for-small-screen-content show-for-medium-up"> <div class="menu-container__links"> <div style="width: 100%; float: left;"> <a href="/about">Overview</a> <a href="/about/contact">Contact</a> <a href="https://careers.mdpi.com" target="_blank" rel="noopener noreferrer">Careers</a> <a href="/about/announcements">News</a> <a href="/about/press">Press</a> <a href="http://blog.mdpi.com/" target="_blank" rel="noopener noreferrer">Blog</a> </div> </div> </div> </div> </div> <div class="menu-container__buttons"> <a class="button UA_SignInUpButton" href="/user/login">Sign In / Sign Up</a> </div> </div> </div> <div id="captchaModal" class="reveal-modal reveal-modal-new reveal-modal-new--small" data-reveal aria-label="Captcha" aria-hidden="true" role="dialog"></div> <div id="actionDisabledModal" class="reveal-modal" data-reveal aria-labelledby="actionDisableModalTitle" aria-hidden="true" role="dialog" style="width: 300px;"> <h2 id="actionDisableModalTitle">Notice</h2> <form action="/email/captcha" method="post" id="emailCaptchaForm"> <div class="row"> <div id="js-action-disabled-modal-text" class="small-12 columns"> </div> <div id="js-action-disabled-modal-submit" class="small-12 columns" style="margin-top: 10px; display: none;"> You can make submissions to other journals <a href="https://susy.mdpi.com/user/manuscripts/upload">here</a>. </div> </div> </form> <a class="close-reveal-modal" aria-label="Close"> <i class="material-icons">clear</i> </a> </div> <div id="rssNotificationModal" class="reveal-modal reveal-modal-new" data-reveal aria-labelledby="rssNotificationModalTitle" aria-hidden="true" role="dialog"> <div class="row"> <div class="small-12 columns"> <h2 id="rssNotificationModalTitle">Notice</h2> <p> You are accessing a machine-readable page. In order to be human-readable, please install an RSS reader. </p> </div> </div> <div class="row"> <div class="small-12 columns"> <a class="button button--color js-rss-notification-confirm">Continue</a> <a class="button button--grey" onclick="$(this).closest('.reveal-modal').find('.close-reveal-modal').click(); return false;">Cancel</a> </div> </div> <a class="close-reveal-modal" aria-label="Close"> <i class="material-icons">clear</i> </a> </div> <div id="drop-article-label-openaccess" class="f-dropdown medium" data-dropdown-content aria-hidden="true" tabindex="-1"> <p> All articles published by MDPI are made immediately available worldwide under an open access license. No special permission is required to reuse all or part of the article published by MDPI, including figures and tables. For articles published under an open access Creative Common CC BY license, any part of the article may be reused without permission provided that the original article is clearly cited. For more information, please refer to <a href="https://www.mdpi.com/openaccess">https://www.mdpi.com/openaccess</a>. </p> </div> <div id="drop-article-label-feature" class="f-dropdown medium" data-dropdown-content aria-hidden="true" tabindex="-1"> <p> Feature papers represent the most advanced research with significant potential for high impact in the field. A Feature Paper should be a substantial original Article that involves several techniques or approaches, provides an outlook for future research directions and describes possible research applications. </p> <p> Feature papers are submitted upon individual invitation or recommendation by the scientific editors and must receive positive feedback from the reviewers. </p> </div> <div id="drop-article-label-choice" class="f-dropdown medium" data-dropdown-content aria-hidden="true" tabindex="-1"> <p> Editor’s Choice articles are based on recommendations by the scientific editors of MDPI journals from around the world. Editors select a small number of articles recently published in the journal that they believe will be particularly interesting to readers, or important in the respective research area. The aim is to provide a snapshot of some of the most exciting work published in the various research areas of the journal. <div style="margin-top: -10px;"> <div id="drop-article-label-choice-journal-link" style="display: none; margin-top: -10px; padding-top: 10px;"> </div> </div> </p> </div> <div id="drop-article-label-resubmission" class="f-dropdown medium" data-dropdown-content aria-hidden="true" tabindex="-1"> <p> Original Submission Date Received: <span id="drop-article-label-resubmission-date"></span>. </p> </div> <div id="container"> <noscript> <div id="no-javascript"> You seem to have javascript disabled. Please note that many of the page functionalities won't work as expected without javascript enabled. </div> </noscript> <div class="fixed"> <nav class="tab-bar show-for-medium-down"> <div class="row full-width collapse"> <div class="medium-3 small-4 columns"> <a href="/"> <img class="full-size-menu__mdpi-logo" src="https://pub.mdpi-res.com/img/design/mdpi-pub-logo-black-small1.svg?da3a8dcae975a41c?1732286508" style="width: 64px;" title="MDPI Open Access Journals"> </a> </div> <div class="medium-3 small-4 columns right-aligned"> <div class="show-for-medium-down"> <a href="#" style="display: none;"> <i class="material-icons" onclick="$('#menuModal').foundation('reveal', 'close'); return false;">clear</i> </a> <a class="js-toggle-desktop-layout-link" title="Toggle desktop layout" style="display: none;" href="/toggle_desktop_layout_cookie"> <i class="material-icons">zoom_out_map</i> </a> <a href="#" class="js-open-small-search open-small-search"> <i class="material-icons show-for-small only">search</i> </a> <a title="MDPI main page" class="js-open-menu" data-reveal-id="menuModal" href="#"> <i class="material-icons">menu</i> </a> </div> </div> </div> </nav> </div> <section class="main-section"> <header> <div class="full-size-menu show-for-large-up"> <div class="row full-width"> <div class="large-1 columns"> <a href="/"> <img class="full-size-menu__mdpi-logo" src="https://pub.mdpi-res.com/img/design/mdpi-pub-logo-black-small1.svg?da3a8dcae975a41c?1732286508" title="MDPI Open Access Journals"> </a> </div> <div class="large-8 columns text-right UI_NavMenu"> <ul> <li class="menu-item"> <a href="/about/journals" data-dropdown="journals-dropdown" aria-controls="journals-dropdown" aria-expanded="false" data-options="is_hover: true; hover_timeout: 200">Journals</a> <ul id="journals-dropdown" class="f-dropdown dropdown-wrapper dropdown-wrapper__small" data-dropdown-content aria-hidden="true" tabindex="-1"> <li> <div class="row"> <div class="small-12 columns"> <ul> <li> <a href="/about/journals"> Active Journals </a> </li> <li> <a href="/about/journalfinder"> Find a Journal </a> </li> <li> <a href="/about/journals/proposal"> Journal Proposal </a> </li> <li> <a href="/about/proceedings"> Proceedings Series </a> </li> </ul> </div> </div> </li> </ul> </li> <li class="menu-item"> <a href="/topics">Topics</a> </li> <li class="menu-item"> <a href="/authors" data-dropdown="information-dropdown" aria-controls="information-dropdown" aria-expanded="false" data-options="is_hover:true; hover_timeout:200">Information</a> <ul id="information-dropdown" class="f-dropdown dropdown-wrapper" data-dropdown-content aria-hidden="true" tabindex="-1"> <li> <div class="row"> <div class="small-5 columns right-border"> <ul> <li> <a href="/authors">For Authors</a> </li> <li> <a href="/reviewers">For Reviewers</a> </li> <li> <a href="/editors">For Editors</a> </li> <li> <a href="/librarians">For Librarians</a> </li> <li> <a href="/publishing_services">For Publishers</a> </li> <li> <a href="/societies">For Societies</a> </li> <li> <a href="/conference_organizers">For Conference Organizers</a> </li> </ul> </div> <div class="small-7 columns"> <ul> <li> <a href="/openaccess">Open Access Policy</a> </li> <li> <a href="/ioap">Institutional Open Access Program</a> </li> <li> <a href="/special_issues_guidelines">Special Issues Guidelines</a> </li> <li> <a href="/editorial_process">Editorial Process</a> </li> <li> <a href="/ethics">Research and Publication Ethics</a> </li> <li> <a href="/apc">Article Processing Charges</a> </li> <li> <a href="/awards">Awards</a> </li> <li> <a href="/testimonials">Testimonials</a> </li> </ul> </div> </div> </li> </ul> </li> <li class="menu-item"> <a href="/authors/english">Editing Services</a> </li> <li class="menu-item"> <a href="/about/initiatives" data-dropdown="initiatives-dropdown" aria-controls="initiatives-dropdown" aria-expanded="false" data-options="is_hover: true; hover_timeout: 200">Initiatives</a> <ul id="initiatives-dropdown" class="f-dropdown dropdown-wrapper dropdown-wrapper__small" data-dropdown-content aria-hidden="true" tabindex="-1"> <li> <div class="row"> <div class="small-12 columns"> <ul> <li> <a href="https://sciforum.net" target="_blank" rel="noopener noreferrer"> Sciforum </a> </li> <li> <a href="https://www.mdpi.com/books" target="_blank" rel="noopener noreferrer"> MDPI Books </a> </li> <li> <a href="https://www.preprints.org" target="_blank" rel="noopener noreferrer"> Preprints.org </a> </li> <li> <a href="https://www.scilit.net" target="_blank" rel="noopener noreferrer"> Scilit </a> </li> <li> <a href="https://sciprofiles.com" target="_blank" rel="noopener noreferrer"> SciProfiles </a> </li> <li> <a href="https://encyclopedia.pub" target="_blank" rel="noopener noreferrer"> Encyclopedia </a> </li> <li> <a href="https://jams.pub" target="_blank" rel="noopener noreferrer"> JAMS </a> </li> <li> <a href="/about/proceedings"> Proceedings Series </a> </li> </ul> </div> </div> </li> </ul> </li> <li class="menu-item"> <a href="/about" data-dropdown="about-dropdown" aria-controls="about-dropdown" aria-expanded="false" data-options="is_hover: true; hover_timeout: 200">About</a> <ul id="about-dropdown" class="f-dropdown dropdown-wrapper dropdown-wrapper__small" data-dropdown-content aria-hidden="true" tabindex="-1"> <li> <div class="row"> <div class="small-12 columns"> <ul> <li> <a href="/about"> Overview </a> </li> <li> <a href="/about/contact"> Contact </a> </li> <li> <a href="https://careers.mdpi.com" target="_blank" rel="noopener noreferrer"> Careers </a> </li> <li> <a href="/about/announcements"> News </a> </li> <li> <a href="/about/press"> Press </a> </li> <li> <a href="http://blog.mdpi.com/" target="_blank" rel="noopener noreferrer"> Blog </a> </li> </ul> </div> </div> </li> </ul> </li> </ul> </div> <div class="large-3 columns text-right full-size-menu__buttons"> <div> <a class="button button--default-inversed UA_SignInUpButton" href="/user/login">Sign In / Sign Up</a> <a class="button button--default js-journal-active-only-link js-journal-active-only-submit-link UC_NavSubmitButton" href=" https://susy.mdpi.com/user/manuscripts/upload?journal=applsci " data-disabledmessage="new submissions are not possible.">Submit</a> </div> </div> </div> </div> <div class="header-divider"> </div> <div class="search-container hide-for-small-down row search-container__homepage-scheme"> <form id="basic_search" style="background-color: inherit !important;" class="large-12 medium-12 columns " action="/search" method="get"> <div class="row search-container__main-elements"> <div class="large-2 medium-2 small-12 columns text-right1 small-only-text-left"> <div class="show-for-medium-up"> <div class="search-input-label"> </div> </div> <span class="search-container__title">Search<span class="hide-for-medium"> for Articles</span><span class="hide-for-small">:</span></span> </div> <div class="custom-accordion-for-small-screen-content"> <div class="large-2 medium-2 small-6 columns "> <div class=""> <div class="search-input-label">Title / Keyword</div> </div> <input type="text" placeholder="Title / Keyword" id="q" tabindex="1" name="q" value="" /> </div> <div class="large-2 medium-2 small-6 columns "> <div class=""> <div class="search-input-label">Author / Affiliation / Email</div> </div> <input type="text" id="authors" placeholder="Author / Affiliation / Email" tabindex="2" name="authors" value="" /> </div> <div class="large-2 medium-2 small-6 columns "> <div class=""> <div class="search-input-label">Journal</div> </div> <select id="journal" tabindex="3" name="journal" class="chosen-select"> <option value="">All Journals</option> <option value="acoustics" > Acoustics </option> <option value="amh" > Acta Microbiologica Hellenica (AMH) </option> <option value="actuators" > Actuators </option> <option value="admsci" > Administrative Sciences </option> <option value="adolescents" > Adolescents </option> <option value="arm" > Advances in Respiratory Medicine (ARM) </option> <option value="aerobiology" > Aerobiology </option> <option value="aerospace" > Aerospace </option> <option value="agriculture" > Agriculture </option> <option value="agriengineering" > AgriEngineering </option> <option value="agrochemicals" > Agrochemicals </option> <option value="agronomy" > Agronomy </option> <option value="ai" > AI </option> <option value="air" > Air </option> <option value="algorithms" > Algorithms </option> <option value="allergies" > Allergies </option> <option value="alloys" > Alloys </option> <option value="analytica" > Analytica </option> <option value="analytics" > Analytics </option> <option value="anatomia" > Anatomia </option> <option value="anesthres" > Anesthesia Research </option> <option value="animals" > Animals </option> <option value="antibiotics" > Antibiotics </option> <option value="antibodies" > Antibodies </option> <option value="antioxidants" > Antioxidants </option> <option value="applbiosci" > Applied Biosciences </option> <option value="applmech" > Applied Mechanics </option> <option value="applmicrobiol" > Applied Microbiology </option> <option value="applnano" > Applied Nano </option> <option value="applsci" selected='selected'> Applied Sciences </option> <option value="asi" > Applied System Innovation (ASI) </option> <option value="appliedchem" > AppliedChem </option> <option value="appliedmath" > AppliedMath </option> <option value="aquacj" > Aquaculture Journal </option> <option value="architecture" > Architecture </option> <option value="arthropoda" > Arthropoda </option> <option value="arts" > Arts </option> <option value="astronomy" > Astronomy </option> <option value="atmosphere" > Atmosphere </option> <option value="atoms" > Atoms </option> <option value="audiolres" > Audiology Research </option> <option value="automation" > Automation </option> <option value="axioms" > Axioms </option> <option value="bacteria" > Bacteria </option> <option value="batteries" > Batteries </option> <option value="behavsci" > Behavioral Sciences </option> <option value="beverages" > Beverages </option> <option value="BDCC" > Big Data and Cognitive Computing (BDCC) </option> <option value="biochem" > BioChem </option> <option value="bioengineering" > Bioengineering </option> <option value="biologics" > Biologics </option> <option value="biology" > Biology </option> <option value="blsf" > Biology and Life Sciences Forum </option> <option value="biomass" > Biomass </option> <option value="biomechanics" > Biomechanics </option> <option value="biomed" > BioMed </option> <option value="biomedicines" > Biomedicines </option> <option value="biomedinformatics" > BioMedInformatics </option> <option value="biomimetics" > Biomimetics </option> <option value="biomolecules" > Biomolecules </option> <option value="biophysica" > Biophysica </option> <option value="biosensors" > Biosensors </option> <option value="biotech" > BioTech </option> <option value="birds" > Birds </option> <option value="blockchains" > Blockchains </option> <option value="brainsci" > Brain Sciences </option> <option value="buildings" > Buildings </option> <option value="businesses" > Businesses </option> <option value="carbon" > C </option> <option value="cancers" > Cancers </option> <option value="cardiogenetics" > Cardiogenetics </option> <option value="catalysts" > Catalysts </option> <option value="cells" > Cells </option> <option value="ceramics" > Ceramics </option> <option value="challenges" > Challenges </option> <option value="ChemEngineering" > ChemEngineering </option> <option value="chemistry" > Chemistry </option> <option value="chemproc" > Chemistry Proceedings </option> <option value="chemosensors" > Chemosensors </option> <option value="children" > Children </option> <option value="chips" > Chips </option> <option value="civileng" > CivilEng </option> <option value="cleantechnol" > Clean Technologies (Clean Technol.) </option> <option value="climate" > Climate </option> <option value="ctn" > Clinical and Translational Neuroscience (CTN) </option> <option value="clinbioenerg" > Clinical Bioenergetics </option> <option value="clinpract" > Clinics and Practice </option> <option value="clockssleep" > Clocks & Sleep </option> <option value="coasts" > Coasts </option> <option value="coatings" > Coatings </option> <option value="colloids" > Colloids and Interfaces </option> <option value="colorants" > Colorants </option> <option value="commodities" > Commodities </option> <option value="complications" > Complications </option> <option value="compounds" > Compounds </option> <option value="computation" > Computation </option> <option value="csmf" > Computer Sciences & Mathematics Forum </option> <option value="computers" > Computers </option> <option value="condensedmatter" > Condensed Matter </option> <option value="conservation" > Conservation </option> <option value="constrmater" > Construction Materials </option> <option value="cmd" > Corrosion and Materials Degradation (CMD) </option> <option value="cosmetics" > Cosmetics </option> <option value="covid" > COVID </option> <option value="crops" > Crops </option> <option value="cryo" > Cryo </option> <option value="cryptography" > Cryptography </option> <option value="crystals" > Crystals </option> <option value="cimb" > Current Issues in Molecular Biology (CIMB) </option> <option value="curroncol" > Current Oncology </option> <option value="dairy" > Dairy </option> <option value="data" > Data </option> <option value="dentistry" > Dentistry Journal </option> <option value="dermato" > Dermato </option> <option value="dermatopathology" > Dermatopathology </option> <option value="designs" > Designs </option> <option value="diabetology" > Diabetology </option> <option value="diagnostics" > Diagnostics </option> <option value="dietetics" > Dietetics </option> <option value="digital" > Digital </option> <option value="disabilities" > Disabilities </option> <option value="diseases" > Diseases </option> <option value="diversity" > Diversity </option> <option value="dna" > DNA </option> <option value="drones" > Drones </option> <option value="ddc" > Drugs and Drug Candidates (DDC) </option> <option value="dynamics" > Dynamics </option> <option value="earth" > Earth </option> <option value="ecologies" > Ecologies </option> <option value="econometrics" > Econometrics </option> <option value="economies" > Economies </option> <option value="education" > Education Sciences </option> <option value="electricity" > Electricity </option> <option value="electrochem" > Electrochem </option> <option value="electronicmat" > Electronic Materials </option> <option value="electronics" > Electronics </option> <option value="ecm" > Emergency Care and Medicine </option> <option value="encyclopedia" > Encyclopedia </option> <option value="endocrines" > Endocrines </option> <option value="energies" > Energies </option> <option value="esa" > Energy Storage and Applications (ESA) </option> <option value="eng" > Eng </option> <option value="engproc" > Engineering Proceedings </option> <option value="entropy" > Entropy </option> <option value="environsciproc" > Environmental Sciences Proceedings </option> <option value="environments" > Environments </option> <option value="epidemiologia" > Epidemiologia </option> <option value="epigenomes" > Epigenomes </option> <option value="ebj" > European Burn Journal (EBJ) </option> <option value="ejihpe" > European Journal of Investigation in Health, Psychology and Education (EJIHPE) </option> <option value="fermentation" > Fermentation </option> <option value="fibers" > Fibers </option> <option value="fintech" > FinTech </option> <option value="fire" > Fire </option> <option value="fishes" > Fishes </option> <option value="fluids" > Fluids </option> <option value="foods" > Foods </option> <option value="forecasting" > Forecasting </option> <option value="forensicsci" > Forensic Sciences </option> <option value="forests" > Forests </option> <option value="fossstud" > Fossil Studies </option> <option value="foundations" > Foundations </option> <option value="fractalfract" > Fractal and Fractional (Fractal Fract) </option> <option value="fuels" > Fuels </option> <option value="future" > Future </option> <option value="futureinternet" > Future Internet </option> <option value="futurepharmacol" > Future Pharmacology </option> <option value="futuretransp" > Future Transportation </option> <option value="galaxies" > Galaxies </option> <option value="games" > Games </option> <option value="gases" > Gases </option> <option value="gastroent" > Gastroenterology Insights </option> <option value="gastrointestdisord" > Gastrointestinal Disorders </option> <option value="gastronomy" > Gastronomy </option> <option value="gels" > Gels </option> <option value="genealogy" > Genealogy </option> <option value="genes" > Genes </option> <option value="geographies" > Geographies </option> <option value="geohazards" > GeoHazards </option> <option value="geomatics" > Geomatics </option> <option value="geometry" > Geometry </option> <option value="geosciences" > Geosciences </option> <option value="geotechnics" > Geotechnics </option> <option value="geriatrics" > Geriatrics </option> <option value="glacies" > Glacies </option> <option value="gucdd" > Gout, Urate, and Crystal Deposition Disease (GUCDD) </option> <option value="grasses" > Grasses </option> <option value="hardware" > Hardware </option> <option value="healthcare" > Healthcare </option> <option value="hearts" > Hearts </option> <option value="hemato" > Hemato </option> <option value="hematolrep" > Hematology Reports </option> <option value="heritage" > Heritage </option> <option value="histories" > Histories </option> <option value="horticulturae" > Horticulturae </option> <option value="hospitals" > Hospitals </option> <option value="humanities" > Humanities </option> <option value="humans" > Humans </option> <option value="hydrobiology" > Hydrobiology </option> <option value="hydrogen" > Hydrogen </option> <option value="hydrology" > Hydrology </option> <option value="hygiene" > Hygiene </option> <option value="immuno" > Immuno </option> <option value="idr" > Infectious Disease Reports </option> <option value="informatics" > Informatics </option> <option value="information" > Information </option> <option value="infrastructures" > Infrastructures </option> <option value="inorganics" > Inorganics </option> <option value="insects" > Insects </option> <option value="instruments" > Instruments </option> <option value="iic" > Intelligent Infrastructure and Construction </option> <option value="ijerph" > International Journal of Environmental Research and Public Health (IJERPH) </option> <option value="ijfs" > International Journal of Financial Studies (IJFS) </option> <option value="ijms" > International Journal of Molecular Sciences (IJMS) </option> <option value="IJNS" > International Journal of Neonatal Screening (IJNS) </option> <option value="ijpb" > International Journal of Plant Biology (IJPB) </option> <option value="ijt" > International Journal of Topology </option> <option value="ijtm" > International Journal of Translational Medicine (IJTM) </option> <option value="ijtpp" > International Journal of Turbomachinery, Propulsion and Power (IJTPP) </option> <option value="ime" > International Medical Education (IME) </option> <option value="inventions" > Inventions </option> <option value="IoT" > IoT </option> <option value="ijgi" > ISPRS International Journal of Geo-Information (IJGI) </option> <option value="J" > J </option> <option value="jal" > Journal of Ageing and Longevity (JAL) </option> <option value="jcdd" > Journal of Cardiovascular Development and Disease (JCDD) </option> <option value="jcto" > Journal of Clinical & Translational Ophthalmology (JCTO) </option> <option value="jcm" > Journal of Clinical Medicine (JCM) </option> <option value="jcs" > Journal of Composites Science (J. Compos. Sci.) </option> <option value="jcp" > Journal of Cybersecurity and Privacy (JCP) </option> <option value="jdad" > Journal of Dementia and Alzheimer's Disease (JDAD) </option> <option value="jdb" > Journal of Developmental Biology (JDB) </option> <option value="jeta" > Journal of Experimental and Theoretical Analyses (JETA) </option> <option value="jfb" > Journal of Functional Biomaterials (JFB) </option> <option value="jfmk" > Journal of Functional Morphology and Kinesiology (JFMK) </option> <option value="jof" > Journal of Fungi (JoF) </option> <option value="jimaging" > Journal of Imaging (J. Imaging) </option> <option value="jintelligence" > Journal of Intelligence (J. Intell.) </option> <option value="jlpea" > Journal of Low Power Electronics and Applications (JLPEA) </option> <option value="jmmp" > Journal of Manufacturing and Materials Processing (JMMP) </option> <option value="jmse" > Journal of Marine Science and Engineering (JMSE) </option> <option value="jmahp" > Journal of Market Access & Health Policy (JMAHP) </option> <option value="jmp" > Journal of Molecular Pathology (JMP) </option> <option value="jnt" > Journal of Nanotheranostics (JNT) </option> <option value="jne" > Journal of Nuclear Engineering (JNE) </option> <option value="ohbm" > Journal of Otorhinolaryngology, Hearing and Balance Medicine (JOHBM) </option> <option value="jop" > Journal of Parks </option> <option value="jpm" > Journal of Personalized Medicine (JPM) </option> <option value="jpbi" > Journal of Pharmaceutical and BioTech Industry (JPBI) </option> <option value="jor" > Journal of Respiration (JoR) </option> <option value="jrfm" > Journal of Risk and Financial Management (JRFM) </option> <option value="jsan" > Journal of Sensor and Actuator Networks (JSAN) </option> <option value="joma" > Journal of the Oman Medical Association (JOMA) </option> <option value="jtaer" > Journal of Theoretical and Applied Electronic Commerce Research (JTAER) </option> <option value="jvd" > Journal of Vascular Diseases (JVD) </option> <option value="jox" > Journal of Xenobiotics (JoX) </option> <option value="jzbg" > Journal of Zoological and Botanical Gardens (JZBG) </option> <option value="journalmedia" > Journalism and Media </option> <option value="kidneydial" > Kidney and Dialysis </option> <option value="kinasesphosphatases" > Kinases and Phosphatases </option> <option value="knowledge" > Knowledge </option> <option value="labmed" > LabMed </option> <option value="laboratories" > Laboratories </option> <option value="land" > Land </option> <option value="languages" > Languages </option> <option value="laws" > Laws </option> <option value="life" > Life </option> <option value="limnolrev" > Limnological Review </option> <option value="lipidology" > Lipidology </option> <option value="liquids" > Liquids </option> <option value="literature" > Literature </option> <option value="livers" > Livers </option> <option value="logics" > Logics </option> <option value="logistics" > Logistics </option> <option value="lubricants" > Lubricants </option> <option value="lymphatics" > Lymphatics </option> <option value="make" > Machine Learning and Knowledge Extraction (MAKE) </option> <option value="machines" > Machines </option> <option value="macromol" > Macromol </option> <option value="magnetism" > Magnetism </option> <option value="magnetochemistry" > Magnetochemistry </option> <option value="marinedrugs" > Marine Drugs </option> <option value="materials" > Materials </option> <option value="materproc" > Materials Proceedings </option> <option value="mca" > Mathematical and Computational Applications (MCA) </option> <option value="mathematics" > Mathematics </option> <option value="medsci" > Medical Sciences </option> <option value="msf" > Medical Sciences Forum </option> <option value="medicina" > Medicina </option> <option value="medicines" > Medicines </option> <option value="membranes" > Membranes </option> <option value="merits" > Merits </option> <option value="metabolites" > Metabolites </option> <option value="metals" > Metals </option> <option value="meteorology" > Meteorology </option> <option value="methane" > Methane </option> <option value="mps" > Methods and Protocols (MPs) </option> <option value="metrics" > Metrics </option> <option value="metrology" > Metrology </option> <option value="micro" > Micro </option> <option value="microbiolres" > Microbiology Research </option> <option value="micromachines" > Micromachines </option> <option value="microorganisms" > Microorganisms </option> <option value="microplastics" > Microplastics </option> <option value="minerals" > Minerals </option> <option value="mining" > Mining </option> <option value="modelling" > Modelling </option> <option value="mmphys" > Modern Mathematical Physics </option> <option value="molbank" > Molbank </option> <option value="molecules" > Molecules </option> <option value="mti" > Multimodal Technologies and Interaction (MTI) </option> <option value="muscles" > Muscles </option> <option value="nanoenergyadv" > Nanoenergy Advances </option> <option value="nanomanufacturing" > Nanomanufacturing </option> <option value="nanomaterials" > Nanomaterials </option> <option value="ndt" > NDT </option> <option value="network" > Network </option> <option value="neuroglia" > Neuroglia </option> <option value="neurolint" > Neurology International </option> <option value="neurosci" > NeuroSci </option> <option value="nitrogen" > Nitrogen </option> <option value="ncrna" > Non-Coding RNA (ncRNA) </option> <option value="nursrep" > Nursing Reports </option> <option value="nutraceuticals" > Nutraceuticals </option> <option value="nutrients" > Nutrients </option> <option value="obesities" > Obesities </option> <option value="oceans" > Oceans </option> <option value="onco" > Onco </option> <option value="optics" > Optics </option> <option value="oral" > Oral </option> <option value="organics" > Organics </option> <option value="organoids" > Organoids </option> <option value="osteology" > Osteology </option> <option value="oxygen" > Oxygen </option> <option value="parasitologia" > Parasitologia </option> <option value="particles" > Particles </option> <option value="pathogens" > Pathogens </option> <option value="pathophysiology" > Pathophysiology </option> <option value="pediatrrep" > Pediatric Reports </option> <option value="pets" > Pets </option> <option value="pharmaceuticals" > Pharmaceuticals </option> <option value="pharmaceutics" > Pharmaceutics </option> <option value="pharmacoepidemiology" > Pharmacoepidemiology </option> <option value="pharmacy" > Pharmacy </option> <option value="philosophies" > Philosophies </option> <option value="photochem" > Photochem </option> <option value="photonics" > Photonics </option> <option value="phycology" > Phycology </option> <option value="physchem" > Physchem </option> <option value="psf" > Physical Sciences Forum </option> <option value="physics" > Physics </option> <option value="physiologia" > Physiologia </option> <option value="plants" > Plants </option> <option value="plasma" > Plasma </option> <option value="platforms" > Platforms </option> <option value="pollutants" > Pollutants </option> <option value="polymers" > Polymers </option> <option value="polysaccharides" > Polysaccharides </option> <option value="populations" > Populations </option> <option value="poultry" > Poultry </option> <option value="powders" > Powders </option> <option value="proceedings" > Proceedings </option> <option value="processes" > Processes </option> <option value="prosthesis" > Prosthesis </option> <option value="proteomes" > Proteomes </option> <option value="psychiatryint" > Psychiatry International </option> <option value="psychoactives" > Psychoactives </option> <option value="psycholint" > Psychology International </option> <option value="publications" > Publications </option> <option value="qubs" > Quantum Beam Science (QuBS) </option> <option value="quantumrep" > Quantum Reports </option> <option value="quaternary" > Quaternary </option> <option value="radiation" > Radiation </option> <option value="reactions" > Reactions </option> <option value="realestate" > Real Estate </option> <option value="receptors" > Receptors </option> <option value="recycling" > Recycling </option> <option value="rsee" > Regional Science and Environmental Economics (RSEE) </option> <option value="religions" > Religions </option> <option value="remotesensing" > Remote Sensing </option> <option value="reports" > Reports </option> <option value="reprodmed" > Reproductive Medicine (Reprod. Med.) </option> <option value="resources" > Resources </option> <option value="rheumato" > Rheumato </option> <option value="risks" > Risks </option> <option value="robotics" > Robotics </option> <option value="ruminants" > Ruminants </option> <option value="safety" > Safety </option> <option value="sci" > Sci </option> <option value="scipharm" > Scientia Pharmaceutica (Sci. Pharm.) </option> <option value="sclerosis" > Sclerosis </option> <option value="seeds" > Seeds </option> <option value="sensors" > Sensors </option> <option value="separations" > Separations </option> <option value="sexes" > Sexes </option> <option value="signals" > Signals </option> <option value="sinusitis" > Sinusitis </option> <option value="smartcities" > Smart Cities </option> <option value="socsci" > Social Sciences </option> <option value="siuj" > Société Internationale d’Urologie Journal (SIUJ) </option> <option value="societies" > Societies </option> <option value="software" > Software </option> <option value="soilsystems" > Soil Systems </option> <option value="solar" > Solar </option> <option value="solids" > Solids </option> <option value="spectroscj" > Spectroscopy Journal </option> <option value="sports" > Sports </option> <option value="standards" > Standards </option> <option value="stats" > Stats </option> <option value="stresses" > Stresses </option> <option value="surfaces" > Surfaces </option> <option value="surgeries" > Surgeries </option> <option value="std" > Surgical Techniques Development </option> <option value="sustainability" > Sustainability </option> <option value="suschem" > Sustainable Chemistry </option> <option value="symmetry" > Symmetry </option> <option value="synbio" > SynBio </option> <option value="systems" > Systems </option> <option value="targets" > Targets </option> <option value="taxonomy" > Taxonomy </option> <option value="technologies" > Technologies </option> <option value="telecom" > Telecom </option> <option value="textiles" > Textiles </option> <option value="thalassrep" > Thalassemia Reports </option> <option value="therapeutics" > Therapeutics </option> <option value="thermo" > Thermo </option> <option value="timespace" > Time and Space </option> <option value="tomography" > Tomography </option> <option value="tourismhosp" > Tourism and Hospitality </option> <option value="toxics" > Toxics </option> <option value="toxins" > Toxins </option> <option value="transplantology" > Transplantology </option> <option value="traumacare" > Trauma Care </option> <option value="higheredu" > Trends in Higher Education </option> <option value="tropicalmed" > Tropical Medicine and Infectious Disease (TropicalMed) </option> <option value="universe" > Universe </option> <option value="urbansci" > Urban Science </option> <option value="uro" > Uro </option> <option value="vaccines" > Vaccines </option> <option value="vehicles" > Vehicles </option> <option value="venereology" > Venereology </option> <option value="vetsci" > Veterinary Sciences </option> <option value="vibration" > Vibration </option> <option value="virtualworlds" > Virtual Worlds </option> <option value="viruses" > Viruses </option> <option value="vision" > Vision </option> <option value="waste" > Waste </option> <option value="water" > Water </option> <option value="wild" > Wild </option> <option value="wind" > Wind </option> <option value="women" > Women </option> <option value="world" > World </option> <option value="wevj" > World Electric Vehicle Journal (WEVJ) </option> <option value="youth" > Youth </option> <option value="zoonoticdis" > Zoonotic Diseases </option> </select> </div> <div class="large-2 medium-2 small-6 columns "> <div class=""> <div class="search-input-label">Article Type</div> </div> <select id="article_type" tabindex="4" name="article_type" class="chosen-select"> <option value="">All Article Types</option> <option value="research-article">Article</option> <option value="review-article">Review</option> <option value="rapid-communication">Communication</option> <option value="editorial">Editorial</option> <option value="abstract">Abstract</option> <option value="book-review">Book Review</option> <option value="brief-communication">Brief Communication</option> <option value="brief-report">Brief Report</option> <option value="case-report">Case Report</option> <option value="clinicopathological-challenge">Clinicopathological Challenge</option> <option value="article-commentary">Comment</option> <option value="commentary">Commentary</option> <option value="concept-paper">Concept Paper</option> <option value="conference-report">Conference Report</option> <option value="correction">Correction</option> <option value="creative">Creative</option> <option value="data-descriptor">Data Descriptor</option> <option value="discussion">Discussion</option> <option value="Entry">Entry</option> <option value="essay">Essay</option> <option value="expression-of-concern">Expression of Concern</option> <option value="extended-abstract">Extended Abstract</option> <option value="field-guide">Field Guide</option> <option value="guidelines">Guidelines</option> <option value="hypothesis">Hypothesis</option> <option value="interesting-image">Interesting Images</option> <option value="letter">Letter</option> <option value="books-received">New Book Received</option> <option value="obituary">Obituary</option> <option value="opinion">Opinion</option> <option value="perspective">Perspective</option> <option value="proceedings">Proceeding Paper</option> <option value="project-report">Project Report</option> <option value="protocol">Protocol</option> <option value="registered-report">Registered Report</option> <option value="reply">Reply</option> <option value="retraction">Retraction</option> <option value="note">Short Note</option> <option value="study-protocol">Study Protocol</option> <option value="systematic_review">Systematic Review</option> <option value="technical-note">Technical Note</option> <option value="tutorial">Tutorial</option> <option value="viewpoint">Viewpoint</option> </select> </div> <div class="large-1 medium-1 small-6 end columns small-push-6 medium-reset-order large-reset-order js-search-collapsed-button-container"> <div class="search-input-label"> </div> <input type="submit" id="search" value="Search" class="button button--dark button--full-width searchButton1 US_SearchButton" tabindex="12"> </div> <div class="large-1 medium-1 small-6 end columns large-text-left small-only-text-center small-pull-6 medium-reset-order large-reset-order js-search-collapsed-link-container"> <div class="search-input-label"> </div> <a class="main-search-clear search-container__link" href="#" onclick="openAdvanced(''); return false;">Advanced<span class="show-for-small-only"> Search</span></a> </div> </div> </div> <div class="search-container__advanced" style="margin-top: 0; padding-top: 0px; background-color: inherit; color: inherit;"> <div class="row"> <div class="large-2 medium-2 columns show-for-medium-up"> </div> <div class="large-2 medium-2 small-6 columns "> <div class=""> <div class="search-input-label">Section</div> </div> <select id="section" tabindex="5" name="section" class="chosen-select"> <option value=""></option> </select> </div> <div class="large-2 medium-2 small-6 columns "> <div class=""> <div class="search-input-label">Special Issue</div> </div> <select id="special_issue" tabindex="6" name="special_issue" class="chosen-select"> <option value=""></option> </select> </div> <div class="large-1 medium-1 small-6 end columns "> <div class="search-input-label">Volume</div> <input type="text" id="volume" tabindex="7" name="volume" placeholder="..." value="10" /> </div> <div class="large-1 medium-1 small-6 end columns "> <div class="search-input-label">Issue</div> <input type="text" id="issue" tabindex="8" name="issue" placeholder="..." value="14" /> </div> <div class="large-1 medium-1 small-6 end columns "> <div class="search-input-label">Number</div> <input type="text" id="number" tabindex="9" name="number" placeholder="..." value="" /> </div> <div class="large-1 medium-1 small-6 end columns "> <div class="search-input-label">Page</div> <input type="text" id="page" tabindex="10" name="page" placeholder="..." value="" /> </div> <div class="large-1 medium-1 small-6 columns small-push-6 medium-reset order large-reset-order medium-reset-order js-search-expanded-button-container"></div> <div class="large-1 medium-1 small-6 columns large-text-left small-only-text-center small-pull-6 medium-reset-order large-reset-order js-search-expanded-link-container"></div> </div> </div> </form> <form id="advanced-search" class="large-12 medium-12 columns"> <div class="search-container__advanced"> <div id="advanced-search-template" class="row advanced-search-row"> <div class="large-2 medium-2 small-12 columns show-for-medium-up"> </div> <div class="large-2 medium-2 small-3 columns connector-div"> <div class="search-input-label"><span class="show-for-medium-up">Logical Operator</span><span class="show-for-small">Operator</span></div> <select class="connector"> <option value="and">AND</option> <option value="or">OR</option> </select> </div> <div class="large-3 medium-3 small-6 columns search-text-div"> <div class="search-input-label">Search Text</div> <input type="text" class="search-text" placeholder="Search text"> </div> <div class="large-2 medium-2 small-6 large-offset-0 medium-offset-0 small-offset-3 columns search-field-div"> <div class="search-input-label">Search Type</div> <select class="search-field"> <option value="all">All fields</option> <option value="title">Title</option> <option value="abstract">Abstract</option> <option value="keywords">Keywords</option> <option value="authors">Authors</option> <option value="affiliations">Affiliations</option> <option value="doi">Doi</option> <option value="full_text">Full Text</option> <option value="references">References</option> </select> </div> <div class="large-1 medium-1 small-3 columns"> <div class="search-input-label"> </div> <div class="search-action-div"> <div class="search-plus"> <i class="material-icons">add_circle_outline</i> </div> </div> <div class="search-action-div"> <div class="search-minus"> <i class="material-icons">remove_circle_outline</i> </div> </div> </div> <div class="large-1 medium-1 small-6 large-offset-0 medium-offset-0 small-offset-3 end columns"> <div class="search-input-label"> </div> <input class="advanced-search-button button button--dark search-submit" type="submit" value="Search"> </div> <div class="large-1 medium-1 small-6 end columns show-for-medium-up"></div> </div> </div> </form> </div> <div class="header-divider"> </div> <div class="breadcrumb row full-row"> <div class="breadcrumb__element"> <a href="/about/journals">Journals</a> </div> <div class="breadcrumb__element"> <a href="/journal/applsci">Applied Sciences</a> </div> <div class="breadcrumb__element"> <a href="/2076-3417/10">Volume 10</a> </div> <div class="breadcrumb__element"> <a href="/2076-3417/10/14">Issue 14</a> </div> <div class="breadcrumb__element"> <a href="#">10.3390/app10144926</a> </div> </div> </header> <div id="main-content" class=""> <div class="row full-width row-fixed-left-column"> <div id="left-column" class="content__column large-3 medium-3 small-12 columns"> <div class="content__container"> <a href="/journal/applsci"> <img src="https://pub.mdpi-res.com/img/journals/applsci-logo.png?8600e93ff98dbf14" alt="applsci-logo" title="Applied Sciences" style="max-height: 60px; margin: 0 0 0 0;"> </a> <div class="generic-item no-border"> <a class="button button--color button--full-width js-journal-active-only-link js-journal-active-only-submit-link UC_ArticleSubmitButton" href="https://susy.mdpi.com/user/manuscripts/upload?form%5Bjournal_id%5D%3D90" data-disabledmessage="creating new submissions is not possible."> Submit to this Journal </a> <a class="button button--color button--full-width js-journal-active-only-link UC_ArticleReviewButton" href="https://susy.mdpi.com/volunteer/journals/review" data-disabledmessage="volunteering as journal reviewer is not possible."> Review for this Journal </a> <a class="button button--color-inversed button--color-journal button--full-width js-journal-active-only-link UC_ArticleEditIssueButton" href="/journalproposal/sendproposalspecialissue/applsci" data-path="/2076-3417/10/14/4926" data-disabledmessage="proposing new special issue is not possible."> Propose a Special Issue </a> </div> <div class="generic-item link-article-menu show-for-small"> <a href="#" class="link-article-menu show-for-small"> <span class="closed">►</span> <span class="open" style="display: none;">▼</span> Article Menu </a> </div> <div class="hide-small-down-initially UI_ArticleMenu"> <div class="generic-item"> <h2>Article Menu</h2> </div> <ul class="accordion accordion__menu" data-accordion data-options="multi_expand:true;toggleable: true"> <li class="accordion-direct-link"> <a href="/2076-3417/10/14/4926/scifeed_display" data-reveal-id="scifeed-modal" data-reveal-ajax="true">Subscribe SciFeed</a> </li> <li class="accordion-direct-link js-article-similarity-container" style="display: none"> <a href="#" class="js-similarity-related-articles">Recommended Articles</a> </li> <li class="accordion-navigation"> <a href="#related" class="accordion__title">Related Info Link</a> <div id="related" class="content UI_ArticleMenu_RelatedLinks"> <ul> <li class="li-link"> <a href="https://scholar.google.com/scholar?q=Deep%20Matrix%20Factorization%20Approach%20for%20Collaborative%20Filtering%20Recommender%20Systems" target="_blank" rel="noopener noreferrer">Google Scholar</a> </li> </ul> </div> </li> <li class="accordion-navigation"> <a href="#authors" class="accordion__title">More by Authors Links</a> <div id="authors" class="content UI_ArticleMenu_AuthorsLinks"> <ul class="side-menu-ul"> <li> <a class="expand" onclick='$(this).closest("li").next("div").toggle(); return false;'>on DOAJ</a> </li> <div id="AuthorDOAJExpand" style="display:none;"> <ul class="submenu"> <li class="li-link"> <a href='http://doaj.org/search/articles?source=%7B%22query%22%3A%7B%22query_string%22%3A%7B%22query%22%3A%22%5C%22Ra%C3%BAl%20Lara-Cabrera%5C%22%22%2C%22default_operator%22%3A%22AND%22%2C%22default_field%22%3A%22bibjson.author.name%22%7D%7D%7D' target="_blank" rel="noopener noreferrer">Lara-Cabrera, R.</a> <li> </li> <li class="li-link"> <a href='http://doaj.org/search/articles?source=%7B%22query%22%3A%7B%22query_string%22%3A%7B%22query%22%3A%22%5C%22%C3%81ngel%20Gonz%C3%A1lez-Prieto%5C%22%22%2C%22default_operator%22%3A%22AND%22%2C%22default_field%22%3A%22bibjson.author.name%22%7D%7D%7D' target="_blank" rel="noopener noreferrer">González-Prieto, Á.</a> <li> </li> <li class="li-link"> <a href='http://doaj.org/search/articles?source=%7B%22query%22%3A%7B%22query_string%22%3A%7B%22query%22%3A%22%5C%22Fernando%20Ortega%5C%22%22%2C%22default_operator%22%3A%22AND%22%2C%22default_field%22%3A%22bibjson.author.name%22%7D%7D%7D' target="_blank" rel="noopener noreferrer">Ortega, F.</a> <li> </li> </ul> </div> <li> <a class="expand" onclick='$(this).closest("li").next("div").toggle(); return false;'>on Google Scholar</a> </li> <div id="AuthorGoogleExpand" style="display:none;"> <ul class="submenu"> <li class="li-link"> <a href="https://scholar.google.com/scholar?q=Ra%C3%BAl%20Lara-Cabrera" target="_blank" rel="noopener noreferrer">Lara-Cabrera, R.</a> <li> </li> <li class="li-link"> <a href="https://scholar.google.com/scholar?q=%C3%81ngel%20Gonz%C3%A1lez-Prieto" target="_blank" rel="noopener noreferrer">González-Prieto, Á.</a> <li> </li> <li class="li-link"> <a href="https://scholar.google.com/scholar?q=Fernando%20Ortega" target="_blank" rel="noopener noreferrer">Ortega, F.</a> <li> </li> </ul> </div> <li> <a class="expand" onclick='$(this).closest("li").next("div").toggle(); return false;'>on PubMed</a> </li> <div id="AuthorPubMedExpand" style="display:none;"> <ul class="submenu"> <li class="li-link"> <a href="http://www.pubmed.gov/?cmd=Search&term=Ra%C3%BAl%20Lara-Cabrera" target="_blank" rel="noopener noreferrer">Lara-Cabrera, R.</a> <li> </li> <li class="li-link"> <a href="http://www.pubmed.gov/?cmd=Search&term=%C3%81ngel%20Gonz%C3%A1lez-Prieto" target="_blank" rel="noopener noreferrer">González-Prieto, Á.</a> <li> </li> <li class="li-link"> <a href="http://www.pubmed.gov/?cmd=Search&term=Fernando%20Ortega" target="_blank" rel="noopener noreferrer">Ortega, F.</a> <li> </li> </ul> </div> </ul> </div> </li> </ul> <span style="display:none" id="scifeed_hidden_flag"></span> <span style="display:none" id="scifeed_subscribe_url">/ajax/scifeed/subscribe</span> </div> </div> <div class="content__container responsive-moving-container large medium active hidden" data-id="article-counters"> <div id="counts-wrapper" class="row generic-item no-border" data-equalizer> <div id="js-counts-wrapper__views" class="small-12 hide columns count-div-container"> <a href="#metrics" > <div class="count-div" data-equalizer-watch> <span class="name">Article Views</span> <span class="count view-number"></span> </div> </a> </div> <div id="js-counts-wrapper__citations" class="small-12 columns hide count-div-container"> <a href="#metrics" > <div class="count-div" data-equalizer-watch> <span class="name">Citations</span> <span class="count citations-number Var_ArticleMaxCitations">-</span> </div> </a> </div> </div> </div> <div class="content__container"> <div class="hide-small-down-initially"> <ul class="accordion accordion__menu" data-accordion data-options="multi_expand:true;toggleable: true"> <li class="accordion-navigation"> <a href="#table_of_contents" class="accordion__title">Table of Contents</a> <div id="table_of_contents" class="content active"> <div class="menu-caption" id="html-quick-links-title"></div> </div> </li> </ul> </div> </div> <!-- PubGrade code --> <div id="pbgrd-sky"></div> <script src="https://cdn.pbgrd.com/core-mdpi.js"></script> <style>.content__container { min-width: 300px; }</style> <!-- PubGrade code --> </div> <div id="middle-column" class="content__column large-9 medium-9 small-12 columns end middle-bordered"> <div class="middle-column__help"> <div class="middle-column__help__fixed show-for-medium-up"> <span id="js-altmetrics-donut" href="#" target="_blank" rel="noopener noreferrer" style="display: none;"> <span data-badge-type='donut' class='altmetric-embed' data-doi='10.3390/app10144926'></span> <span>Altmetric</span> </span> <a href="#" class="UA_ShareButton" data-reveal-id="main-share-modal" title="Share"> <i class="material-icons">share</i> <span>Share</span> </a> <a href="#" data-reveal-id="main-help-modal" title="Help"> <i class="material-icons">announcement</i> <span>Help</span> </a> <a href="javascript:void(0);" data-reveal-id="cite-modal" data-counterslink = "https://www.mdpi.com/2076-3417/10/14/4926/cite" > <i class="material-icons">format_quote</i> <span>Cite</span> </a> <a href="https://sciprofiles.com/discussion-groups/public/10.3390/app10144926?utm_source=mpdi.com&utm_medium=publication&utm_campaign=discuss_in_sciprofiles" target="_blank" rel="noopener noreferrer" title="Discuss in Sciprofiles"> <i class="material-icons">question_answer</i> <span>Discuss in SciProfiles</span> </a> <a href="#" class="" data-hypothesis-trigger-endorses-tab title="Endorse"> <i data-hypothesis-endorse-trigger class="material-icons" >thumb_up</i> <div data-hypothesis-endorsement-count data-hypothesis-trigger-endorses-tab class="hypothesis-count-container"> ... </div> <span>Endorse</span> </a> <a href="#" data-hypothesis-trigger class="js-hypothesis-open UI_ArticleAnnotationsButton" title="Comment"> <i class="material-icons">textsms</i> <div data-hypothesis-annotation-count class="hypothesis-count-container"> ... </div> <span>Comment</span> </a> </div> <div id="main-help-modal" class="reveal-modal reveal-modal-new" data-reveal aria-labelledby="modalTitle" aria-hidden="true" role="dialog"> <div class="row"> <div class="small-12 columns"> <h2 style="margin: 0;">Need Help?</h2> </div> <div class="small-6 columns"> <h3>Support</h3> <p> Find support for a specific problem in the support section of our website. </p> <a target="_blank" href="/about/contactform" class="button button--color button--full-width"> Get Support </a> </div> <div class="small-6 columns"> <h3>Feedback</h3> <p> Please let us know what you think of our products and services. </p> <a target="_blank" href="/feedback/send" class="button button--color button--full-width"> Give Feedback </a> </div> <div class="small-6 columns end"> <h3>Information</h3> <p> Visit our dedicated information section to learn more about MDPI. </p> <a target="_blank" href="/authors" class="button button--color button--full-width"> Get Information </a> </div> </div> <a class="close-reveal-modal" aria-label="Close"> <i class="material-icons">clear</i> </a> </div> </div> <div class="middle-column__main "> <div class="page-highlight"> <style type="text/css"> img.review-status { width: 30px; } </style> <div id="jmolModal" class="reveal-modal" data-reveal aria-labelledby="Captcha" aria-hidden="true" role="dialog"> <h2>JSmol Viewer</h2> <div class="row"> <div class="small-12 columns text-center"> <iframe style="width: 520px; height: 520px;" frameborder="0" id="jsmol-content"></iframe> <div class="content"></div> </div> </div> <a class="close-reveal-modal" aria-label="Close"> <i class="material-icons">clear</i> </a> </div> <div itemscope itemtype="http://schema.org/ScholarlyArticle" id="abstract" class="abstract_div"> <div class="js-check-update-container"></div> <div class="html-content__container content__container content__container__combined-for-large__first" style="overflow: auto; position: inherit;"> <div class='html-profile-nav'> <div class='top-bar'> <div class='nav-sidebar-btn show-for-large-up' data-status='opened' > <i class='material-icons'>first_page</i> </div> <a id="js-button-download" class="button button--color-inversed" style="display: none;" href="/2076-3417/10/14/4926/pdf?version=1595218236" data-name="Deep Matrix Factorization Approach for Collaborative Filtering Recommender Systems" data-journal="applsci"> <i class="material-icons custom-download"></i> Download PDF </a> <div class='nav-btn'> <i class='material-icons'>settings</i> </div> <a href="/2076-3417/10/14/4926/reprints" id="js-button-reprints" class="button button--color-inversed"> Order Article Reprints </a> </div> <div class='html-article-menu'> <div class='html-first-step row'> <div class='html-font-family large-6 medium-6 small-12 columns'> <div class='row'> <div class='html-font-label large-4 medium-4 small-12 columns'> Font Type: </div> <div class='large-8 medium-8 small-12 columns'> <span class="html-article-menu-option"><i style='font-family:Arial, Arial, Helvetica, sans-serif;' data-fontfamily='Arial, Arial, Helvetica, sans-serif'>Arial</i></span> <span class="html-article-menu-option"><i style='font-family:Georgia1, Georgia, serif;' data-fontfamily='Georgia1, Georgia, serif'>Georgia</i></span> <span class="html-article-menu-option"><i style='font-family:Verdana, Verdana, Geneva, sans-serif;' data-fontfamily='Verdana, Verdana, Geneva, sans-serif' >Verdana</i></span> </div> </div> </div> <div class='html-font-resize large-6 medium-6 small-12 columns'> <div class='row'> <div class='html-font-label large-4 medium-4 small-12 columns'>Font Size:</div> <div class='large-8 medium-8 small-12 columns'> <span class="html-article-menu-option a1" data-percent="100">Aa</span> <span class="html-article-menu-option a2" data-percent="120">Aa</span> <span class="html-article-menu-option a3" data-percent="160">Aa</span> </div> </div> </div> </div> <div class='row'> <div class='html-line-space large-6 medium-6 small-12 columns'> <div class='row'> <div class='html-font-label large-4 medium-4 small-12 columns' >Line Spacing:</div> <div class='large-8 medium-8 small-12 columns'> <span class="html-article-menu-option a1" data-line-height="1.5em"> <i class="fa"></i> </span> <span class="html-article-menu-option a2" data-line-height="1.8em"> <i class="fa"></i> </span> <span class="html-article-menu-option a3" data-line-height="2.1em"> <i class="fa"></i> </span> </div> </div> </div> <div class='html-column-width large-6 medium-6 small-12 columns'> <div class='row'> <div class='html-font-label large-4 medium-4 small-12 columns' >Column Width:</div> <div class='large-8 medium-8 small-12 columns'> <span class="html-article-menu-option a1" data-column-width="20%"> <i class="fa"></i> </span> <span class="html-article-menu-option a2" data-column-width="10%"> <i class="fa"></i> </span> <span class="html-article-menu-option a3" data-column-width="0%"> <i class="fa"></i> </span> </div> </div> </div> </div> <div class='row'> <div class='html-font-bg large-6 medium-6 small-12 columns end'> <div class='row'> <div class='html-font-label large-4 medium-4 small-12 columns'>Background:</div> <div class='large-8 medium-8 small-12 columns'> <div class="html-article-menu-option html-nav-bg html-nav-bright" data-bg="bright"> <i class="fa fa-file-text"></i> </div> <div class="html-article-menu-option html-nav-bg html-nav-dark" data-bg="dark"> <i class="fa fa-file-text-o"></i> </div> <div class="html-article-menu-option html-nav-bg html-nav-creme" data-bg="creme"> <i class="fa fa-file-text"></i> </div> </div> </div> </div> </div> </div> </div> <article ><div class='html-article-content'> <span itemprop="publisher" content="Multidisciplinary Digital Publishing Institute"></span><span itemprop="url" content="https://www.mdpi.com/2076-3417/10/14/4926"></span> <div class="article-icons"><span class="label openaccess" data-dropdown="drop-article-label-openaccess" aria-expanded="false">Open Access</span><span class="label articletype">Article</span></div> <h1 class="title hypothesis_container" itemprop="name"> Deep Matrix Factorization Approach for Collaborative Filtering Recommender Systems </h1> <div class="art-authors hypothesis_container"> by <span class="inlineblock "><div class='profile-card-drop' data-dropdown='profile-card-drop3163567' data-options='is_hover:true, hover_timeout:5000'> Raúl Lara-Cabrera</div><div id="profile-card-drop3163567" data-dropdown-content class="f-dropdown content profile-card-content" aria-hidden="true" tabindex="-1"><div class="profile-card__title"><div class="sciprofiles-link" style="display: inline-block"><div class="sciprofiles-link__link"><img class="sciprofiles-link__image" src="/bundles/mdpisciprofileslink/img/unknown-user.png" style="width: auto; height: 16px; border-radius: 50%;"><span class="sciprofiles-link__name">Raúl Lara-Cabrera</span></div></div></div><div class="profile-card__buttons" style="margin-bottom: 10px;"><a href="https://sciprofiles.com/profile/876038?utm_source=mdpi.com&utm_medium=website&utm_campaign=avatar_name" class="button button--color-inversed" target="_blank"> SciProfiles </a><a href="https://scilit.net/scholars?q=Ra%C3%BAl%20Lara-Cabrera" class="button button--color-inversed" target="_blank"> Scilit </a><a href="https://www.preprints.org/search?search1=Ra%C3%BAl%20Lara-Cabrera&field1=authors" class="button button--color-inversed" target="_blank"> Preprints.org </a><a href="https://scholar.google.com/scholar?q=Ra%C3%BAl%20Lara-Cabrera" class="button button--color-inversed" target="_blank" rels="noopener noreferrer"> Google Scholar </a></div></div><sup> *,†</sup><span style="display: inline; margin-left: 5px;"></span><a class="toEncode emailCaptcha visibility-hidden" data-author-id="3163567" href="/cdn-cgi/l/email-protection#b699d5d8d29bd5d1df99da99d3dbd7dfda9bc6c4d9c2d3d5c2dfd9d895868687858184868187d383d587d387858686878585848681868487d083d587818687"><sup><i class="fa fa-envelope-o"></i></sup></a><a href="https://orcid.org/0000-0002-7959-1936" target="_blank" rel="noopener noreferrer"><img src="https://pub.mdpi-res.com/img/design/orcid.png?0465bc3812adeb52?1732286508" title="ORCID" style="position: relative; width: 13px; margin-left: 3px; max-width: 13px !important; height: auto; top: -5px;"></a>, </span><span class="inlineblock "><div class='profile-card-drop' data-dropdown='profile-card-drop3163568' data-options='is_hover:true, hover_timeout:5000'> Ángel González-Prieto</div><div id="profile-card-drop3163568" data-dropdown-content class="f-dropdown content profile-card-content" aria-hidden="true" tabindex="-1"><div class="profile-card__title"><div class="sciprofiles-link" style="display: inline-block"><div class="sciprofiles-link__link"><img class="sciprofiles-link__image" src="/profiles/888315/thumb/Ángel_González-Prieto.png" style="width: auto; height: 16px; border-radius: 50%;"><span class="sciprofiles-link__name">Ángel González-Prieto</span></div></div></div><div class="profile-card__buttons" style="margin-bottom: 10px;"><a href="https://sciprofiles.com/profile/888315?utm_source=mdpi.com&utm_medium=website&utm_campaign=avatar_name" class="button button--color-inversed" target="_blank"> SciProfiles </a><a href="https://scilit.net/scholars?q=%C3%81ngel%20Gonz%C3%A1lez-Prieto" class="button button--color-inversed" target="_blank"> Scilit </a><a href="https://www.preprints.org/search?search1=%C3%81ngel%20Gonz%C3%A1lez-Prieto&field1=authors" class="button button--color-inversed" target="_blank"> Preprints.org </a><a href="https://scholar.google.com/scholar?q=%C3%81ngel%20Gonz%C3%A1lez-Prieto" class="button button--color-inversed" target="_blank" rels="noopener noreferrer"> Google Scholar </a></div></div><sup> †</sup><span style="display: inline; margin-left: 5px;"></span><a class="toEncode emailCaptcha visibility-hidden" data-author-id="3163568" href="/cdn-cgi/l/email-protection#8ea1ede0eaa3ede9e7a1e2a1ebe3efe7e2a3fefce1faebedfae7e1e0adbebebee8b8bfbeb8bebabeeabae8beb8beebbee8bfecbebebeeabebabfecbae8bfbfbfbdbeb6bebabfbbbeebbcbfbfbabfbfbeedbae8bebabfbc"><sup><i class="fa fa-envelope-o"></i></sup></a><a href="https://orcid.org/0000-0003-2326-6752" target="_blank" rel="noopener noreferrer"><img src="https://pub.mdpi-res.com/img/design/orcid.png?0465bc3812adeb52?1732286508" title="ORCID" style="position: relative; width: 13px; margin-left: 3px; max-width: 13px !important; height: auto; top: -5px;"></a> and </span><span class="inlineblock "><div class='profile-card-drop' data-dropdown='profile-card-drop3163569' data-options='is_hover:true, hover_timeout:5000'> Fernando Ortega</div><div id="profile-card-drop3163569" data-dropdown-content class="f-dropdown content profile-card-content" aria-hidden="true" tabindex="-1"><div class="profile-card__title"><div class="sciprofiles-link" style="display: inline-block"><div class="sciprofiles-link__link"><img class="sciprofiles-link__image" src="/profiles/518829/thumb/Fernando_Ortega.png" style="width: auto; height: 16px; border-radius: 50%;"><span class="sciprofiles-link__name">Fernando Ortega</span></div></div></div><div class="profile-card__buttons" style="margin-bottom: 10px;"><a href="https://sciprofiles.com/profile/518829?utm_source=mdpi.com&utm_medium=website&utm_campaign=avatar_name" class="button button--color-inversed" target="_blank"> SciProfiles </a><a href="https://scilit.net/scholars?q=Fernando%20Ortega" class="button button--color-inversed" target="_blank"> Scilit </a><a href="https://www.preprints.org/search?search1=Fernando%20Ortega&field1=authors" class="button button--color-inversed" target="_blank"> Preprints.org </a><a href="https://scholar.google.com/scholar?q=Fernando%20Ortega" class="button button--color-inversed" target="_blank" rels="noopener noreferrer"> Google Scholar </a></div></div><sup> †</sup><span style="display: inline; margin-left: 5px;"></span><a class="toEncode emailCaptcha visibility-hidden" data-author-id="3163569" href="/cdn-cgi/l/email-protection#123d717c763f71757b3d7e3d777f737b7e3f62607d667771667b7d7c312222222124242326222a2225222a2220222b262a222b232623202221222322252024232123242270262a22212327"><sup><i class="fa fa-envelope-o"></i></sup></a><a href="https://orcid.org/0000-0003-4765-1479" target="_blank" rel="noopener noreferrer"><img src="https://pub.mdpi-res.com/img/design/orcid.png?0465bc3812adeb52?1732286508" title="ORCID" style="position: relative; width: 13px; margin-left: 3px; max-width: 13px !important; height: auto; top: -5px;"></a></span> </div> <div class="nrm"></div> <span style="display:block; height:6px;"></span> <div></div> <div style="margin: 5px 0 15px 0;" class="hypothesis_container"> <div class="art-affiliations"> <div class="affiliation "> <div class="affiliation-name ">Departamento de Sistemas Informáticos, Escuela Técnica Superior de Ingeniería de Sistemas Informáticos, Universidad Politécnica de Madrid, 28031 Madrid, Spain</div> </div> <div class="affiliation"> <div class="affiliation-item"><sup>*</sup></div> <div class="affiliation-name ">Author to whom correspondence should be addressed. </div> </div> <div class="affiliation"> <div class="affiliation-item"><sup>†</sup></div> <div class="affiliation-name ">These authors contributed equally to this work.</div> </div> </div> </div> <div class="bib-identity" style="margin-bottom: 10px;"> <em>Appl. Sci.</em> <b>2020</b>, <em>10</em>(14), 4926; <a href="https://doi.org/10.3390/app10144926">https://doi.org/10.3390/app10144926</a> </div> <div class="pubhistory" style="font-weight: bold; padding-bottom: 10px;"> <span style="display: inline-block">Submission received: 18 June 2020</span> / <span style="display: inline-block">Revised: 6 July 2020</span> / <span style="display: inline-block">Accepted: 15 July 2020</span> / <span style="display: inline-block">Published: 17 July 2020</span> </div> <div class="belongsTo" style="margin-bottom: 10px;"> (This article belongs to the Special Issue <a href=" /journal/applsci/special_issues/recommender_systems_collaborative_filtering ">Recommender Systems and Collaborative Filtering</a>)<br/> </div> <div class="highlight-box1"> <div class="download"> <a class="button button--color-inversed button--drop-down" data-dropdown="drop-download-385965" aria-controls="drop-supplementary-385965" aria-expanded="false"> Download <i class="material-icons">keyboard_arrow_down</i> </a> <div id="drop-download-385965" class="f-dropdown label__btn__dropdown label__btn__dropdown--button" data-dropdown-content aria-hidden="true" tabindex="-1"> <a class="UD_ArticlePDF" href="/2076-3417/10/14/4926/pdf?version=1595218236" data-name="Deep Matrix Factorization Approach for Collaborative Filtering Recommender Systems" data-journal="applsci">Download PDF</a> <br/> <a id="js-pdf-with-cover-access-captcha" href="#" data-target="/2076-3417/10/14/4926/pdf-with-cover" class="accessCaptcha">Download PDF with Cover</a> <br/> <a id="js-xml-access-captcha" href="#" data-target="/2076-3417/10/14/4926/xml" class="accessCaptcha">Download XML</a> <br/> <a href="/2076-3417/10/14/4926/epub" id="epub_link">Download Epub</a> <br/> </div> <div class="js-browse-figures" style="display: inline-block;"> <a href="#" class="button button--color-inversed margin-bottom-10 openpopupgallery UI_BrowseArticleFigures" data-target='article-popup' data-counterslink = "https://www.mdpi.com/2076-3417/10/14/4926/browse" >Browse Figures</a> </div> <div id="article-popup" class="popupgallery" style="display: inline; line-height: 200%"> <a href="https://pub.mdpi-res.com/applsci/applsci-10-04926/article_deploy/html/images/applsci-10-04926-g001.png?1602245608" title=" <strong>Figure 1</strong><br/> <p>Illustrative explanation of proposed DeepMF method.</p> "> </a> <a href="https://pub.mdpi-res.com/applsci/applsci-10-04926/article_deploy/html/images/applsci-10-04926-g002.png?1602245608" title=" <strong>Figure 2</strong><br/> <p>Quality of the recommendations measured by precision and recall. The higher the better. Blue number over the lines represents the size of the recommendation list for each value.</p> "> </a> <a href="https://pub.mdpi-res.com/applsci/applsci-10-04926/article_deploy/html/images/applsci-10-04926-g003.png?1602245608" title=" <strong>Figure 3</strong><br/> <p>Average value of the predictions provided by each factorization according to its depth. Top 5 combinations of hyper-parameters for each dataset included in <a href="#applsci-10-04926-t003" class="html-table">Table 3</a> are shown.</p> "> </a> </div> <a class="button button--color-inversed" href="/2076-3417/10/14/4926/notes">Versions Notes</a> </div> </div> <div class="responsive-moving-container small hidden" data-id="article-counters" style="margin-top: 15px;"></div> <div class="html-dynamic"> <section> <div class="art-abstract art-abstract-new in-tab hypothesis_container"> <p> <div><section class="html-abstract" id="html-abstract"> <h2 id="html-abstract-title">Abstract</h2><b>:</b> <div class="html-p">Providing useful information to the users by recommending highly demanded products and services is a fundamental part of the business of many top tier companies. Recommender Systems make use of many sources of information to provide users with accurate predictions and novel recommendations of items. Here we propose, DeepMF, a novel collaborative filtering method that combines the Deep Learning paradigm with Matrix Factorization (MF) to improve the quality of both predictions and recommendations made to the user. Specifically, DeepMF performs successive refinements of a MF model with a layered architecture that uses the acquired knowledge in a layer as input for subsequent layers. Experimental results showed that the quality of both the predictions and recommendations of DeepMF overcome the baselines.</div> </section> <div id="html-keywords"> <div class="html-gwd-group"><div id="html-keywords-title">Keywords: </div><a href="/search?q=deep+learning">deep learning</a>; <a href="/search?q=recommender+systems">recommender systems</a>; <a href="/search?q=collaborative+filtering">collaborative filtering</a>; <a href="/search?q=matrix+factorization">matrix factorization</a></div> <div> </div> </div> </div> </p> </div> </section> </div> <div class="hypothesis_container"> <ul class="menu html-nav" data-prev-node="#html-quick-links-title"> </ul> <div class="html-body"> <section id='sec1-applsci-10-04926' type='intro'><h2 data-nested='1'> 1. Introduction</h2><div class='html-p'>Presently, data processing has become a priority for the society. The amount of information we generate every day is on the rise, mainly due to the increase in the number of devices we use routinely as well as new patterns of interaction with technology that have been developed over the last few years. With such a high volume of real-time data, Machine Learning (<span class='html-small-caps'>ml</span>) techniques became a key tool for being able to extract knowledge from data. At present, <span class='html-small-caps'>ml</span> is one of the most active research field not only within computer science, but also in healthcare [<a href="#B1-applsci-10-04926" class="html-bibr">1</a>], sociology [<a href="#B2-applsci-10-04926" class="html-bibr">2</a>] and industry [<a href="#B3-applsci-10-04926" class="html-bibr">3</a>].</div><div class='html-p'>One of the most important applications of <span class='html-small-caps'>ml</span> are Recommender System (RS) [<a href="#B4-applsci-10-04926" class="html-bibr">4</a>], which are techniques that make use of different sources of information for providing users with predictions and recommendations of items, adjusting factors such as accuracy, novelty, sparsity and stability in the recommendations [<a href="#B5-applsci-10-04926" class="html-bibr">5</a>,<a href="#B6-applsci-10-04926" class="html-bibr">6</a>]. Top tier companies such as Netflix, Spotify and Amazon, use <span class='html-small-caps'>rs</span> provide useful information to the users by recommending highly demanded products and services. Although it is possible to find many kinds of <span class='html-small-caps'>rs</span> in the state of the art, they all share a key component: The filtering algorithm at the core. According to the filtering algorithm used, <span class='html-small-caps'>rs</span> might be categorized [<a href="#B7-applsci-10-04926" class="html-bibr">7</a>] into (a) Collaborative Filtering (CF), (b) demographic filtering, (c) content-based filtering and (d) hybrid filtering. Regarding <span class='html-small-caps'>cf</span>, Matrix Factorization (<span class='html-small-caps'>mf</span>) is one of its most widely used techniques [<a href="#B4-applsci-10-04926" class="html-bibr">4</a>,<a href="#B8-applsci-10-04926" class="html-bibr">8</a>]. It operates by decomposing the user-item interaction matrix into the product of two lower dimensional rectangular matrices as well as assigning different regularization weights to the latent factors in order to improve the prediction results [<a href="#B9-applsci-10-04926" class="html-bibr">9</a>].</div><div class='html-p'>A major recent breakthrough in the field of <span class='html-small-caps'>ml</span> is the so-called Deep Learning (<span class='html-small-caps'>dl</span>) technology, that has attracted much attention not only from the scientific community, but also from society in general. Oppositely to other <span class='html-small-caps'>ml</span> techniques, which can only extract knowledge from the shallow of the data, typically based on statistical evidence, <span class='html-small-caps'>dl</span> is able to detect and exploit the underlying multi-layer structure of the data. Although <span class='html-small-caps'>dl</span> is generally linked to artificial neural networks, the paradigm is more complex than that. As stated by LeCun et al. [<a href="#B10-applsci-10-04926" class="html-bibr">10</a>], “<span class='html-small-caps'>dl</span> allows computational models that are composed of multiple processing layers to learn representations of data with multiple levels of abstraction”. Since its inception, <span class='html-small-caps'>dl</span> has positioned as a very top notch technology for uncovering tangled structures in high-dimensional data. In this way, it has been applied to a wide range of domains such as speech recognition [<a href="#B11-applsci-10-04926" class="html-bibr">11</a>], image recognition [<a href="#B12-applsci-10-04926" class="html-bibr">12</a>] or natural language processing [<a href="#B13-applsci-10-04926" class="html-bibr">13</a>], among others.</div><div class='html-p'>As might be expected, <span class='html-small-caps'>rs</span> have not been immune to the boom in <span class='html-small-caps'>dl</span> and it is possible to find several works in this direction. The most obvious interplay is to apply deep neural networks [<a href="#B14-applsci-10-04926" class="html-bibr">14</a>] for improving the predictions of the RSs. Indeed, they provide appropriate a posteriori biases to the input data type, exploiting any inherent structure within the data. Furthermore, deep neural networks are capable of modeling the non-linearity in data with nonlinear activations, which is one of the principal aims of modern RS, making it possible to capture complex interaction patterns between users and items.</div><div class='html-p'>Due to the aforementioned advantages, neural networks with deep architectures, i.e., many layers, have been used to create new RS. For instance, DeepFM [<a href="#B15-applsci-10-04926" class="html-bibr">15</a>] is an approach that models the interactions of high and low order features through deep neural networks and factorization machines, respectively. On the other hand, Autoencoder-Based Collaborative Filtering (ACF) [<a href="#B16-applsci-10-04926" class="html-bibr">16</a>] uses another well-known <span class='html-small-caps'>dl</span> architecture, namely variational autoencoders, to build a <span class='html-small-caps'>rs</span> model that decompose the partial observed ratings vectors in a similar way as one-hot encoding. In the same way, Bobadilla et al. [<a href="#B17-applsci-10-04926" class="html-bibr">17</a>] provide an innovative <span class='html-small-caps'>dl</span> architecture to improve <span class='html-small-caps'>cf</span> results by exploiting the potential of the reliability concept to raise predictions and recommendations quality by incorporating prediction errors in the <span class='html-small-caps'>dl</span> layers. Regarding convolutional neural networks, He et al. [<a href="#B18-applsci-10-04926" class="html-bibr">18</a>] propose to use them in order to enhance <span class='html-small-caps'>cf</span> by using the outer product instead of the customary dot product to model the interaction patterns of both users and items, as well as capturing the high-order correlations among embedding dimensions. In addition, Abavisani and Patel [<a href="#B19-applsci-10-04926" class="html-bibr">19</a>] proposed an artificial neural network that consists of a convolutional autoencoder along with a fully connected layer to learn robust deep features for classification. Along the same lines, Recurrent Neural networks have been used with <span class='html-small-caps'>rs</span> [<a href="#B20-applsci-10-04926" class="html-bibr">20</a>,<a href="#B21-applsci-10-04926" class="html-bibr">21</a>,<a href="#B22-applsci-10-04926" class="html-bibr">22</a>], although under some restrictions (i.e., session-based recommendations), due to the features of this kind of deep architecture, which are suitable for sequential data processing. Even Generative Adversarial Networks (GANs) have been used to generate negative samples for a memory network-based streaming <span class='html-small-caps'>rs</span> [<a href="#B23-applsci-10-04926" class="html-bibr">23</a>] and enhancing the Bayesian personalized ranking with adversarial training [<a href="#B24-applsci-10-04926" class="html-bibr">24</a>].</div><div class='html-p'>Another promising line of application of <span class='html-small-caps'>dl</span> is to pull apart the neural networks and to apply the underlying philosophy to extend the usual <span class='html-small-caps'>mf</span> algorithm to get deep factorizations. This approach is a common trend in several machine learning contexts, but it has never been applied to RS. For instance, Le Magoarou and Gribonval proposed FAuST [<a href="#B25-applsci-10-04926" class="html-bibr">25</a>], a deep factorization method of a matrix into a product of many sparse factors that can be achieved through hierarchical refinements, in the spirit of deep networks. FAuST has proven to be very successful in image processing, data compression and inverse linear problems but, as we will see, it fails to provide a competitive alternative when applied to RS. In a similar vein, Trigeorgis et al. [<a href="#B26-applsci-10-04926" class="html-bibr">26</a>] devised a semi-supervised learning method based on Non-negative Matrix Factorization, which was applied to the problem of face clustering, while Guo and Zhang [<a href="#B27-applsci-10-04926" class="html-bibr">27</a>] used a similar approach to perform dimension reduction and pattern recognition. A multilevel decomposition method used to derive a feature representation for speech recognition is presented in [<a href="#B28-applsci-10-04926" class="html-bibr">28</a>], which outperforms existing features for various speech recognition tasks.</div><div class='html-p'>In this paper, we propose a novel method for incorporating <span class='html-small-caps'>dl</span> to <span class='html-small-caps'>CF</span>-based RSs. For that purpose, we present a new <span class='html-small-caps'>cf</span> method that combines the <span class='html-small-caps'>dl</span> paradigm with <span class='html-small-caps'>mf</span> in order to improve the quality of predictions and recommendations. The approach presented here is based on the principles of <span class='html-small-caps'>dl</span>, but unlike state-of-the-art works, the proposed method does not use deep neural network architectures. Instead, it transforms the <span class='html-small-caps'>mf</span> process into a layered process, in which each layer factors out the errors made in the previous layer.</div><div class='html-p'>Roughly speaking, the proposed model works as follows. Consider a matrix <span class='html-italic'>R</span> that collects the known ratings of the users of the <span class='html-small-caps'>rs</span> to the supervised items. Typically, the <span class='html-small-caps'>mf</span> looks for a factorization of the form <math display='inline'><semantics> <mrow> <mi>R</mi> <mo>≈</mo> <mi>P</mi> <mo>·</mo> <mi>Q</mi> </mrow> </semantics></math> for some matrices <math display='inline'><semantics> <mrow> <mi>P</mi> <mo>,</mo> <mi>Q</mi> </mrow> </semantics></math> of low rank. In this way, the matrix <math display='inline'><semantics> <mrow> <msup> <mi>E</mi> <mn>1</mn> </msup> <mo>=</mo> <mi>R</mi> <mo>−</mo> <mi>P</mi> <mo>·</mo> <mi>Q</mi> </mrow> </semantics></math> measures the error attained with the <span class='html-small-caps'>mf</span>. The key point is that, if we were able to exactly predict the error, then we could correct the output of our model by tuning it to take into account the expected error. To get this, our proposal is to deepen this factorization and to look for a factorization of the error <math display='inline'><semantics> <mrow> <msup> <mi>E</mi> <mn>1</mn> </msup> <mo>≈</mo> <msup> <mi>P</mi> <mn>1</mn> </msup> <mo>·</mo> <msup> <mi>Q</mi> <mn>1</mn> </msup> </mrow> </semantics></math>, which gives rise to a ‘second order error’ <math display='inline'><semantics> <mrow> <msup> <mi>E</mi> <mn>2</mn> </msup> <mo>=</mo> <msup> <mi>E</mi> <mn>1</mn> </msup> <mo>−</mo> <msup> <mi>P</mi> <mn>1</mn> </msup> <mo>·</mo> <msup> <mi>Q</mi> <mn>1</mn> </msup> </mrow> </semantics></math>. This refinement of the expected error can be continued as many times as desired in order to achieve a better control of the error. In this way, as byproduct of the application of the <span class='html-small-caps'>dl</span> process, we end up with a more accurate model that auto-corrects its predictions with the estimation of the expected error in the guess.</div><div class='html-p'>Summarizing, the proposed <span class='html-small-caps'>rs</span> model follows the <span class='html-small-caps'>dl</span> paradigm by performing successive refinements of a <span class='html-small-caps'>mf</span> model with a layered architecture and letting it to use the acquired knowledge in one layer to be used as input for subsequent layers. The novelty of our work lies in using the concepts of <span class='html-small-caps'>dl</span>, not for use with artificial neural networks, but to improve the <span class='html-small-caps'>mf</span> itself.</div><div class='html-p'>The rest of the paper is structured as follows. <a href="#sec2-applsci-10-04926" class="html-sec">Section 2</a> contains the material and methods used to formalize the proposed method, as well as the associated algorithm. <a href="#sec3-applsci-10-04926" class="html-sec">Section 3</a> presents the results of the experimental evaluation conducted in order to measure the performance of the presented method. As we will see, the proposed algorithm consistently outperforms the previous <span class='html-small-caps'>mf</span> methods that can be found in the literature. Finally, <a href="#sec4-applsci-10-04926" class="html-sec">Section 4</a> discusses about these results and its impact on the <span class='html-small-caps'>rs</span> research field.</div></section><section id='sec2-applsci-10-04926' type=''><h2 data-nested='1'> 2. Materials and Methods</h2><div class='html-p'>A current trend in the field of <span class='html-small-caps'>cf</span> is to improve the quality of the predictions by means of different techniques of <span class='html-small-caps'>mf</span>, such as PMF [<a href="#B29-applsci-10-04926" class="html-bibr">29</a>], NMF [<a href="#B30-applsci-10-04926" class="html-bibr">30</a>], and SVD++ [<a href="#B31-applsci-10-04926" class="html-bibr">31</a>]. However, all these techniques rely on the same approach: they pose an optimization problem through a loss function that measures the divergence of the model of the expected behavior of users and items in a collaborative context from the actual behavior. Trying to break with this paradigm, in this paper we present a novel recommendation model that, using the <span class='html-small-caps'>mf</span> paradigm, introduces the principles of <span class='html-small-caps'>dl</span> to refine the output of the model through successive trainings. We named this new model Deep Matrix Factorization (DeepMF).</div><div class='html-p'><a href="#applsci-10-04926-f001" class="html-fig">Figure 1</a> summarizes the operation of DeepMF. As we can observe, the model is initialized with the usual input of a CF-based RS: a matrix <span class='html-italic'>R</span> that contains the ratings of the users to the items. Note that this matrix is sparse, since a user generally only votes a very small subset of the existing items. As in classical <span class='html-small-caps'>mf</span> approaches, this matrix <span class='html-italic'>R</span>, that will be also called <math display='inline'><semantics> <mrow> <mi>R</mi> <mo>=</mo> <msup> <mi>E</mi> <mn>0</mn> </msup> </mrow> </semantics></math> in our context, is approximated by a dense matrix <math display='inline'><semantics> <msup> <mover accent="true"> <mi>E</mi> <mo stretchy="false">^</mo> </mover> <mn>0</mn> </msup> </semantics></math> of the form <math display='inline'><semantics> <mrow> <msup> <mover accent="true"> <mi>E</mi> <mo stretchy="false">^</mo> </mover> <mn>0</mn> </msup> <mo>=</mo> <msup> <mi>P</mi> <mn>0</mn> </msup> <mo>·</mo> <msup> <mi>Q</mi> <mn>0</mn> </msup> </mrow> </semantics></math>, where <math display='inline'><semantics> <msup> <mi>P</mi> <mn>0</mn> </msup> </semantics></math> and <math display='inline'><semantics> <msup> <mi>Q</mi> <mn>0</mn> </msup> </semantics></math> are matrices of small rank. This matrix <math display='inline'><semantics> <msup> <mover accent="true"> <mi>E</mi> <mo stretchy="false">^</mo> </mover> <mn>0</mn> </msup> </semantics></math> provides the predicted ratings at the first step.</div><div class='html-p'>At this point the <span class='html-small-caps'>dl</span> begins. A new matrix <math display='inline'><semantics> <mrow> <msup> <mi>E</mi> <mn>1</mn> </msup> <mo>=</mo> <mi>R</mi> <mo>−</mo> <msup> <mover accent="true"> <mi>E</mi> <mo stretchy="false">^</mo> </mover> <mn>0</mn> </msup> </mrow> </semantics></math> is built by computing the attained errors between the original ratings <span class='html-italic'>R</span> and the predicted ratings stored in <math display='inline'><semantics> <msup> <mover accent="true"> <mi>E</mi> <mo stretchy="false">^</mo> </mover> <mn>0</mn> </msup> </semantics></math>. This new matrix is, again, approximated by a factorization into two new small rank matrices <math display='inline'><semantics> <mrow> <msup> <mover accent="true"> <mi>E</mi> <mo stretchy="false">^</mo> </mover> <mn>1</mn> </msup> <mo>=</mo> <msup> <mi>P</mi> <mn>1</mn> </msup> <mo>·</mo> <msup> <mi>Q</mi> <mn>1</mn> </msup> </mrow> </semantics></math>, which produces the errors at the second step <math display='inline'><semantics> <mrow> <msup> <mi>E</mi> <mn>2</mn> </msup> <mo>=</mo> <msup> <mi>E</mi> <mn>1</mn> </msup> <mo>−</mo> <msup> <mover accent="true"> <mi>E</mi> <mo stretchy="false">^</mo> </mover> <mn>1</mn> </msup> </mrow> </semantics></math>. This process is repeated as many times as desired, by generating and factorizing successive error matrices <math display='inline'><semantics> <mrow> <msup> <mi>E</mi> <mn>1</mn> </msup> <mo>,</mo> <mo>…</mo> <mo>,</mo> <msup> <mi>E</mi> <mi>N</mi> </msup> </mrow> </semantics></math>. Presumably, this sequence of error matrices converges to zero, so we get preciser predictions as we add new layers to the model.</div><div class='html-p'>This method can be formalized as follows. Suppose that our <span class='html-small-caps'>cf</span>-based <span class='html-small-caps'>rs</span> is dealing with <span class='html-italic'>n</span> users and <span class='html-italic'>m</span> items, whose ratings are collected in a spare matrix <math display='inline'><semantics> <mrow> <mi>R</mi> <mo>=</mo> <mrow> <mo>(</mo> <msub> <mi>R</mi> <mrow> <mi>u</mi> <mo>,</mo> <mi>i</mi> </mrow> </msub> <mo>)</mo> </mrow> <mo>∈</mo> <msup> <mi mathvariant="double-struck">R</mi> <mrow> <mi>n</mi> <mo>×</mo> <mi>m</mi> </mrow> </msup> </mrow> </semantics></math>, where <math display='inline'><semantics> <msub> <mi>R</mi> <mrow> <mi>u</mi> <mo>,</mo> <mi>i</mi> </mrow> </msub> </semantics></math> is the rating that the user <span class='html-italic'>u</span> gave to item <span class='html-italic'>i</span> (typically, integer values between 1 and 5), or <math display='inline'><semantics> <mrow> <msub> <mi>R</mi> <mrow> <mi>u</mi> <mo>,</mo> <mi>i</mi> </mrow> </msub> <mo>=</mo> <mo>•</mo> </mrow> </semantics></math> if <span class='html-italic'>u</span> has not rated the item <span class='html-italic'>i</span>. We look for a factorization of <math display='inline'><semantics> <mrow> <msup> <mi>E</mi> <mn>0</mn> </msup> <mo>=</mo> <mi>R</mi> </mrow> </semantics></math> of the form <math display='inline'><semantics> <mrow> <msup> <mi>E</mi> <mn>0</mn> </msup> <mo>≈</mo> <msup> <mi>P</mi> <mn>0</mn> </msup> <mo>·</mo> <msup> <mi>Q</mi> <mn>0</mn> </msup> </mrow> </semantics></math>, where <math display='inline'><semantics> <msup> <mi>P</mi> <mn>0</mn> </msup> </semantics></math> is a <math display='inline'><semantics> <mrow> <mi>n</mi> <mo>×</mo> <msup> <mi>k</mi> <mn>0</mn> </msup> </mrow> </semantics></math> matrix and <math display='inline'><semantics> <msup> <mi>Q</mi> <mn>0</mn> </msup> </semantics></math> is a <math display='inline'><semantics> <mrow> <msup> <mi>k</mi> <mn>0</mn> </msup> <mo>×</mo> <mi>m</mi> </mrow> </semantics></math> matrix. Here, <math display='inline'><semantics> <msup> <mi>k</mi> <mn>0</mn> </msup> </semantics></math> is interpreted as the number of hidden factors we try to detect in the first step (typically <math display='inline'><semantics> <msup> <mi>k</mi> <mn>0</mn> </msup> </semantics></math> is around 10) and <math display='inline'><semantics> <mrow> <msup> <mi>Q</mi> <mn>0</mn> </msup> <mo>,</mo> <msup> <mi>P</mi> <mn>0</mn> </msup> </mrow> </semantics></math> are seen as the projection/co-projection of the <span class='html-italic'>n</span> users and <span class='html-italic'>m</span> items into a <math display='inline'><semantics> <msup> <mi>k</mi> <mn>0</mn> </msup> </semantics></math>-dimensional latent space. These small rank matrices are learned such that the product <math display='inline'><semantics> <mrow> <msup> <mi>P</mi> <mn>0</mn> </msup> <mo>·</mo> <msup> <mi>Q</mi> <mn>0</mn> </msup> </mrow> </semantics></math> is a good approximation of the ratings matrix <math display='inline'><semantics> <mrow> <msup> <mi>E</mi> <mn>0</mn> </msup> <mo>=</mo> <mi>R</mi> </mrow> </semantics></math>, that is <div class='html-disp-formula-info' id='FD1-applsci-10-04926'> <div class='f'> <math display='block'><semantics> <mrow> <msup> <mi>E</mi> <mn>0</mn> </msup> <mo>≈</mo> <msup> <mover accent="true"> <mi>E</mi> <mo stretchy="false">^</mo> </mover> <mn>0</mn> </msup> <mo>=</mo> <msup> <mi>P</mi> <mn>0</mn> </msup> <mo>·</mo> <msup> <mi>Q</mi> <mn>0</mn> </msup> </mrow> </semantics></math> </div> <div class='l'> <label >(1)</label> </div> </div> in the usual euclidean distance.</div><div class='html-p'>By subtracting the approximation performed by <math display='inline'><semantics> <msup> <mover accent="true"> <mi>E</mi> <mo stretchy="false">^</mo> </mover> <mn>0</mn> </msup> </semantics></math> to the original matrix <span class='html-italic'>R</span> we can obtain a new sparse matrix <math display='inline'><semantics> <msup> <mi>E</mi> <mn>1</mn> </msup> </semantics></math> that contains the prediction error <div class='html-disp-formula-info' id='FD2-applsci-10-04926'> <div class='f'> <math display='block'><semantics> <mrow> <msup> <mi>E</mi> <mn>1</mn> </msup> <mo>=</mo> <mi>R</mi> <mo>−</mo> <msup> <mover accent="true"> <mi>E</mi> <mo stretchy="false">^</mo> </mover> <mn>0</mn> </msup> <mo>=</mo> <msup> <mi>E</mi> <mn>0</mn> </msup> <mo>−</mo> <msup> <mi>P</mi> <mn>0</mn> </msup> <mo>·</mo> <msup> <mi>Q</mi> <mn>0</mn> </msup> <mo>.</mo> </mrow> </semantics></math> </div> <div class='l'> <label >(2)</label> </div> </div></div><div class='html-p'>Note that positive values in <math display='inline'><semantics> <msup> <mi>E</mi> <mn>1</mn> </msup> </semantics></math> denotes that the prediction is too low and must be increased and negative values in <math display='inline'><semantics> <msub> <mi>E</mi> <mn>1</mn> </msub> </semantics></math> denotes that the prediction is too high and must be decreased. As we stated before, the main contribution of the proposed method is its deep learning approach. This is achieved by performing a new factorization to the <math display='inline'><semantics> <msup> <mi>E</mi> <mn>1</mn> </msup> </semantics></math> error matrix in such a way that <div class='html-disp-formula-info' id='FD3-applsci-10-04926'> <div class='f'> <math display='block'><semantics> <mrow> <msup> <mi>E</mi> <mn>1</mn> </msup> <mo>≈</mo> <msup> <mover accent="true"> <mi>E</mi> <mo stretchy="false">^</mo> </mover> <mn>1</mn> </msup> <mo>=</mo> <msup> <mi>P</mi> <mn>1</mn> </msup> <mo>·</mo> <msup> <mi>Q</mi> <mn>1</mn> </msup> <mo>.</mo> </mrow> </semantics></math> </div> <div class='l'> <label >(3)</label> </div> </div></div><div class='html-p'>The matrices <math display='inline'><semantics> <mrow> <msup> <mi>P</mi> <mn>1</mn> </msup> <mo>,</mo> <msup> <mi>Q</mi> <mn>1</mn> </msup> </mrow> </semantics></math> have orders <math display='inline'><semantics> <mrow> <mi>n</mi> <mo>×</mo> <msup> <mi>k</mi> <mn>1</mn> </msup> </mrow> </semantics></math> and <math display='inline'><semantics> <mrow> <msup> <mi>k</mi> <mn>1</mn> </msup> <mo>×</mo> <mi>m</mi> </mrow> </semantics></math> for a certain number of latent factors <math display='inline'><semantics> <msup> <mi>k</mi> <mn>1</mn> </msup> </semantics></math>. Observe that we may take <math display='inline'><semantics> <mrow> <msup> <mi>k</mi> <mn>1</mn> </msup> <mo>≠</mo> <msup> <mi>k</mi> <mn>0</mn> </msup> </mrow> </semantics></math> in order to get a different level of resolution in the factorization.</div><div class='html-p'>In the general case, if we computed <math display='inline'><semantics> <mrow> <mi>s</mi> <mo>−</mo> <mn>1</mn> </mrow> </semantics></math> steps of the deep learning procedure, we compute the <span class='html-italic'>s</span>-th matrix of errors as <div class='html-disp-formula-info' id='FD4-applsci-10-04926'> <div class='f'> <math display='block'><semantics> <mrow> <msup> <mi>E</mi> <mi>s</mi> </msup> <mo>=</mo> <msup> <mi>E</mi> <mrow> <mi>s</mi> <mo>−</mo> <mn>1</mn> </mrow> </msup> <mo>−</mo> <msup> <mover accent="true"> <mi>E</mi> <mo stretchy="false">^</mo> </mover> <mrow> <mi>s</mi> <mo>−</mo> <mn>1</mn> </mrow> </msup> <mo>=</mo> <msup> <mi>E</mi> <mrow> <mi>s</mi> <mo>−</mo> <mn>1</mn> </mrow> </msup> <mo>−</mo> <msup> <mi>P</mi> <mrow> <mi>s</mi> <mo>−</mo> <mn>1</mn> </mrow> </msup> <mo>·</mo> <msup> <mi>Q</mi> <mrow> <mi>s</mi> <mo>−</mo> <mn>1</mn> </mrow> </msup> <mo>,</mo> </mrow> </semantics></math> </div> <div class='l'> <label >(4)</label> </div> </div> and we look for a factorization into matrices <math display='inline'><semantics> <msup> <mi>P</mi> <mi>s</mi> </msup> </semantics></math> of order <math display='inline'><semantics> <mrow> <mi>n</mi> <mo>×</mo> <msup> <mi>k</mi> <mi>s</mi> </msup> </mrow> </semantics></math> and <math display='inline'><semantics> <msup> <mi>Q</mi> <mi>s</mi> </msup> </semantics></math> of order <math display='inline'><semantics> <mrow> <msup> <mi>k</mi> <mi>s</mi> </msup> <mo>×</mo> <mi>m</mi> </mrow> </semantics></math> such that, as much as possible in the euclidean norm, <div class='html-disp-formula-info' id='FD5-applsci-10-04926'> <div class='f'> <math display='block'><semantics> <mrow> <msup> <mi>E</mi> <mi>s</mi> </msup> <mo>≈</mo> <msup> <mover accent="true"> <mi>E</mi> <mo stretchy="false">^</mo> </mover> <mi>s</mi> </msup> <mo>=</mo> <msup> <mi>P</mi> <mi>s</mi> </msup> <mo>·</mo> <msup> <mi>Q</mi> <mi>s</mi> </msup> <mo>.</mo> </mrow> </semantics></math> </div> <div class='l'> <label >(5)</label> </div> </div></div><div class='html-p'>Once the deep factorization process ends after <span class='html-italic'>N</span> steps, the original rating matrix <span class='html-italic'>R</span> can be reconstructed by adding the estimates of the errors as <div class='html-disp-formula-info' id='FD6-applsci-10-04926'> <div class='f'> <math display='block'><semantics> <mtable displaystyle="true"> <mtr> <mtd columnalign="right"> <mrow> <mi>R</mi> <mo>≈</mo> <mover accent="true"> <mi>R</mi> <mo stretchy="false">^</mo> </mover> </mrow> </mtd> <mtd columnalign="left"> <mrow> <mo>=</mo> <msup> <mover accent="true"> <mi>E</mi> <mo stretchy="false">^</mo> </mover> <mn>0</mn> </msup> <mo>+</mo> <msup> <mi>E</mi> <mn>1</mn> </msup> <mo>=</mo> <msup> <mover accent="true"> <mi>E</mi> <mo stretchy="false">^</mo> </mover> <mn>0</mn> </msup> <mo>+</mo> <msup> <mover accent="true"> <mi>E</mi> <mo stretchy="false">^</mo> </mover> <mn>1</mn> </msup> <mo>+</mo> <msup> <mi>E</mi> <mn>2</mn> </msup> <mo>=</mo> <mo>…</mo> <mo>≈</mo> <msup> <mover accent="true"> <mi>E</mi> <mo stretchy="false">^</mo> </mover> <mn>0</mn> </msup> <mo>+</mo> <msup> <mover accent="true"> <mi>E</mi> <mo stretchy="false">^</mo> </mover> <mn>1</mn> </msup> <mo>+</mo> <msup> <mover accent="true"> <mi>E</mi> <mo stretchy="false">^</mo> </mover> <mn>2</mn> </msup> <mo>+</mo> <mo>…</mo> <mo>+</mo> <msup> <mover accent="true"> <mi>E</mi> <mo stretchy="false">^</mo> </mover> <mi>N</mi> </msup> </mrow> </mtd> </mtr> <mtr> <mtd columnalign="right"> <mspace width="1.em"/> </mtd> <mtd columnalign="left"> <mrow> <mo>=</mo> <msup> <mi>P</mi> <mn>0</mn> </msup> <mo>·</mo> <msup> <mi>Q</mi> <mn>0</mn> </msup> <mo>+</mo> <msup> <mi>P</mi> <mn>1</mn> </msup> <mo>·</mo> <msup> <mi>Q</mi> <mn>1</mn> </msup> <mo>+</mo> <mo>⋯</mo> <mo>+</mo> <msup> <mi>P</mi> <mi>N</mi> </msup> <mo>·</mo> <msup> <mi>Q</mi> <mi>N</mi> </msup> <mo>=</mo> <munderover> <mo>∑</mo> <mrow> <mi>s</mi> <mo>=</mo> <mn>0</mn> </mrow> <mi>N</mi> </munderover> <msup> <mi>P</mi> <mi>s</mi> </msup> <mo>·</mo> <msup> <mi>Q</mi> <mi>s</mi> </msup> <mo>.</mo> </mrow> </mtd> </mtr> </mtable> </semantics></math> </div> <div class='l'> <label >(6)</label> </div> </div></div><div class='html-p'>For any step <math display='inline'><semantics> <mrow> <mi>s</mi> <mo>=</mo> <mn>0</mn> <mo>,</mo> <mo>…</mo> <mo>,</mo> <mi>N</mi> </mrow> </semantics></math>, the factorization <math display='inline'><semantics> <mrow> <msup> <mi>E</mi> <mi>s</mi> </msup> <mo>≈</mo> <msup> <mi>P</mi> <mi>s</mi> </msup> <mo>·</mo> <msup> <mi>Q</mi> <mi>s</mi> </msup> </mrow> </semantics></math> is sought by the standard method of minimizing the euclidean distance between <math display='inline'><semantics> <msup> <mi>E</mi> <mi>s</mi> </msup> </semantics></math> and <math display='inline'><semantics> <mrow> <msup> <mi>P</mi> <mi>s</mi> </msup> <msup> <mi>Q</mi> <mi>s</mi> </msup> </mrow> </semantics></math> by gradient descent with regularization, as in PMF [<a href="#B29-applsci-10-04926" class="html-bibr">29</a>]. In this way, if we write <math display='inline'><semantics> <mrow> <msup> <mi>E</mi> <mi>s</mi> </msup> <mo>=</mo> <mrow> <mo stretchy="false">(</mo> <msubsup> <mi>e</mi> <mrow> <mi>u</mi> <mo>,</mo> <mi>i</mi> </mrow> <mi>s</mi> </msubsup> <mo stretchy="false">)</mo> </mrow> </mrow> </semantics></math>, the rows of <math display='inline'><semantics> <msup> <mi>P</mi> <mi>s</mi> </msup> </semantics></math> are denoted by <math display='inline'><semantics> <mrow> <msubsup> <mi>p</mi> <mn>1</mn> <mi>s</mi> </msubsup> <mo>,</mo> <msubsup> <mi>p</mi> <mn>2</mn> <mi>s</mi> </msubsup> <mo>,</mo> <mo>…</mo> <mo>,</mo> <msubsup> <mi>p</mi> <mi>n</mi> <mi>s</mi> </msubsup> </mrow> </semantics></math> and the columns of <math display='inline'><semantics> <msup> <mi>Q</mi> <mi>s</mi> </msup> </semantics></math> are denoted by <math display='inline'><semantics> <mrow> <msubsup> <mi>q</mi> <mn>1</mn> <mi>s</mi> </msubsup> <mo>,</mo> <msubsup> <mi>q</mi> <mn>2</mn> <mi>s</mi> </msubsup> <mo>,</mo> <mo>…</mo> <mo>,</mo> <msubsup> <mi>q</mi> <mi>m</mi> <mi>s</mi> </msubsup> </mrow> </semantics></math>, the loss function is given by <div class='html-disp-formula-info' id='FD7-applsci-10-04926'> <div class='f'> <math display='block'><semantics> <mtable displaystyle="true"> <mtr> <mtd columnalign="right"> <mrow> <msup> <mi mathvariant="script">F</mi> <mi>s</mi> </msup> <mrow> <mo>(</mo> <msubsup> <mi>p</mi> <mi>u</mi> <mi>s</mi> </msubsup> <mo>,</mo> <msubsup> <mi>q</mi> <mi>i</mi> <mi>s</mi> </msubsup> <mo>)</mo> </mrow> </mrow> </mtd> <mtd columnalign="left"> <mrow> <mo>=</mo> <mrow> <mo>|</mo> <mo>|</mo> </mrow> <msup> <mi>E</mi> <mi>s</mi> </msup> <mo>−</mo> <msup> <mi>P</mi> <mi>s</mi> </msup> <mo>·</mo> <msup> <mi>Q</mi> <mi>s</mi> </msup> <msup> <mrow> <mo>|</mo> <mo>|</mo> </mrow> <mn>2</mn> </msup> <mo>+</mo> <msup> <mi>λ</mi> <mi>s</mi> </msup> <mfenced separators="" open="(" close=")"> <munderover> <mo>∑</mo> <mrow> <mi>u</mi> <mo>=</mo> <mn>1</mn> </mrow> <mi>n</mi> </munderover> <mrow> <mo>|</mo> <mo>|</mo> </mrow> <msubsup> <mi>p</mi> <mi>u</mi> <mi>s</mi> </msubsup> <msup> <mrow> <mo>|</mo> <mo>|</mo> </mrow> <mn>2</mn> </msup> <mo>+</mo> <munderover> <mo>∑</mo> <mrow> <mi>i</mi> <mo>=</mo> <mn>1</mn> </mrow> <mi>m</mi> </munderover> <mrow> <mo>|</mo> <mo>|</mo> </mrow> <msubsup> <mi>q</mi> <mi>i</mi> <mi>s</mi> </msubsup> <msup> <mrow> <mo>|</mo> <mo>|</mo> </mrow> <mn>2</mn> </msup> </mfenced> </mrow> </mtd> </mtr> <mtr> <mtd columnalign="right"> <mspace width="1.em"/> </mtd> <mtd columnalign="left"> <mrow> <mo>=</mo> <munder> <mo>∑</mo> <mrow> <msubsup> <mi>e</mi> <mrow> <mi>u</mi> <mo>,</mo> <mi>i</mi> </mrow> <mi>s</mi> </msubsup> <mo>≠</mo> <mo>•</mo> </mrow> </munder> <msup> <mfenced separators="" open="(" close=")"> <msubsup> <mi>e</mi> <mrow> <mi>u</mi> <mo>,</mo> <mi>i</mi> </mrow> <mi>s</mi> </msubsup> <mo>−</mo> <msubsup> <mi>p</mi> <mi>u</mi> <mi>s</mi> </msubsup> <mo>·</mo> <msubsup> <mi>q</mi> <mi>i</mi> <mi>s</mi> </msubsup> </mfenced> <mn>2</mn> </msup> <mo>+</mo> <msup> <mi>λ</mi> <mi>s</mi> </msup> <mfenced separators="" open="(" close=")"> <munderover> <mo>∑</mo> <mrow> <mi>u</mi> <mo>=</mo> <mn>1</mn> </mrow> <mi>n</mi> </munderover> <mrow> <mo>|</mo> <mo>|</mo> </mrow> <msubsup> <mi>p</mi> <mi>u</mi> <mi>s</mi> </msubsup> <msup> <mrow> <mo>|</mo> <mo>|</mo> </mrow> <mn>2</mn> </msup> <mo>+</mo> <munderover> <mo>∑</mo> <mrow> <mi>i</mi> <mo>=</mo> <mn>1</mn> </mrow> <mi>m</mi> </munderover> <mrow> <mo>|</mo> <mo>|</mo> </mrow> <msubsup> <mi>q</mi> <mi>i</mi> <mi>s</mi> </msubsup> <msup> <mrow> <mo>|</mo> <mo>|</mo> </mrow> <mn>2</mn> </msup> </mfenced> <mo>,</mo> </mrow> </mtd> </mtr> </mtable> </semantics></math> </div> <div class='l'> <label >(7)</label> </div> </div> where <math display='inline'><semantics> <msup> <mi>λ</mi> <mi>s</mi> </msup> </semantics></math> is the regularization hyper-parameter of the <span class='html-italic'>s</span>-th step to avoid overfitting.</div><div class='html-p'>The previous loss function <math display='inline'><semantics> <mi mathvariant="script">F</mi> </semantics></math> can be derived with respect to <math display='inline'><semantics> <msubsup> <mi>p</mi> <mi>u</mi> <mi>s</mi> </msubsup> </semantics></math> and <math display='inline'><semantics> <msubsup> <mi>q</mi> <mi>i</mi> <mi>s</mi> </msubsup> </semantics></math> resulting the following update rules for learning the model parameters <div class='html-disp-formula-info' id='FD8-applsci-10-04926'> <div class='f'> <math display='block'><semantics> <mtable displaystyle="true"> <mtr> <mtd columnalign="right"> <msubsup> <mi>p</mi> <mi>u</mi> <mi>s</mi> </msubsup> </mtd> <mtd columnalign="left"> <mrow> <mo>←</mo> <msubsup> <mi>p</mi> <mi>u</mi> <mi>s</mi> </msubsup> <mo>+</mo> <msup> <mi>γ</mi> <mi>s</mi> </msup> <mfenced separators="" open="(" close=")"> <mrow> <mo stretchy="false">(</mo> <msubsup> <mi>e</mi> <mrow> <mi>u</mi> <mo>,</mo> <mi>i</mi> </mrow> <mi>s</mi> </msubsup> <mo>−</mo> <msubsup> <mi>p</mi> <mi>u</mi> <mi>s</mi> </msubsup> <mo>·</mo> <msubsup> <mi>q</mi> <mi>i</mi> <mi>s</mi> </msubsup> <mo stretchy="false">)</mo> </mrow> <mo>·</mo> <msubsup> <mi>q</mi> <mi>i</mi> <mi>s</mi> </msubsup> <mo>−</mo> <msup> <mi>λ</mi> <mi>s</mi> </msup> <msubsup> <mi>p</mi> <mi>u</mi> <mi>s</mi> </msubsup> </mfenced> <mo>,</mo> </mrow> </mtd> </mtr> <mtr> <mtd columnalign="right"> <msubsup> <mi>q</mi> <mi>i</mi> <mi>s</mi> </msubsup> </mtd> <mtd columnalign="left"> <mrow> <mo>←</mo> <msubsup> <mi>q</mi> <mi>i</mi> <mi>s</mi> </msubsup> <mo>+</mo> <msup> <mi>γ</mi> <mi>s</mi> </msup> <mfenced separators="" open="(" close=")"> <mrow> <mo stretchy="false">>(</mo> <msubsup> <mi>e</mi> <mrow> <mi>u</mi> <mo>,</mo> <mi>i</mi> </mrow> <mi>s</mi> </msubsup> <mo>−</mo> <msubsup> <mi>p</mi> <mi>u</mi> <mi>s</mi> </msubsup> <mo>·</mo> <msubsup> <mi>q</mi> <mi>i</mi> <mi>s</mi> </msubsup> <mo stretchy="false">>)</mo> </mrow> <mo>·</mo> <msubsup> <mi>p</mi> <mi>u</mi> <mi>s</mi> </msubsup> <mo>−</mo> <msup> <mi>λ</mi> <mi>s</mi> </msup> <msubsup> <mi>q</mi> <mi>i</mi> <mi>s</mi> </msubsup> </mfenced> <mo>,</mo> </mrow> </mtd> </mtr> </mtable> </semantics></math> </div> <div class='l'> <label >(8)</label> </div> </div> where <math display='inline'><semantics> <msup> <mi>γ</mi> <mi>s</mi> </msup> </semantics></math> is the learning rate hyper-parameter of the <span class='html-italic'>s</span>-th step to control the learning speed.</div><div class='html-p'>In this way, after finishing the nested factorization, the predicted ratings are collected in the matrix <math display='inline'><semantics> <mrow> <mover accent="true"> <mi>R</mi> <mo stretchy="false">^</mo> </mover> <mo>=</mo> <mrow> <mo stretchy="false">>(</mo> <msub> <mover accent="true"> <mi>R</mi> <mo stretchy="false">^</mo> </mover> <mrow> <mi>u</mi> <mo>,</mo> <mi>i</mi> </mrow> </msub> <mo stretchy="false">>)</mo> </mrow> </mrow> </semantics></math>, where the predicted rating of the user <span class='html-italic'>u</span> to the item <span class='html-italic'>i</span> is given by <div class='html-disp-formula-info' id='FD9-applsci-10-04926'> <div class='f'> <math display='block'><semantics> <mrow> <msub> <mover accent="true"> <mi>R</mi> <mo stretchy="false">^</mo> </mover> <mrow> <mi>u</mi> <mo>,</mo> <mi>i</mi> </mrow> </msub> <mo>=</mo> <munderover> <mo>∑</mo> <mrow> <mi>s</mi> <mo>=</mo> <mn>0</mn> </mrow> <mi>N</mi> </munderover> <msubsup> <mi>p</mi> <mi>u</mi> <mi>s</mi> </msubsup> <mo>·</mo> <msubsup> <mi>q</mi> <mi>i</mi> <mi>s</mi> </msubsup> <mo>.</mo> </mrow> </semantics></math> </div> <div class='l'> <label >(9)</label> </div> </div></div><div class='html-p'>Note that the proposed method consists of successive repetitions of a <span class='html-small-caps'>mf</span> process using the results of the previous <span class='html-small-caps'>mf</span> as input. Therefore, it is possible to make an algorithmic implementation of the proposed method using a recursive approach. Algorithm 1 contains the pseudo-code of the recursive implementation of DeepMF. The algorithm receives as input the <span class='html-italic'>E</span> matrix, which contains either the users’ ratings to the items (<math display='inline'><semantics> <mrow> <mi>R</mi> <mo>=</mo> <msup> <mi>E</mi> <mn>0</mn> </msup> </mrow> </semantics></math>) for the first call or the errors of the previous factorization <math display='inline'><semantics> <msup> <mi>E</mi> <mi>s</mi> </msup> </semantics></math> for the successive ones. It also receives the model hyper-parameters: the number of latent factors on each step (<span class='html-italic'>K</span>), the number of iterations of the gradient descent optimization on each step (<span class='html-italic'>T</span>), the learning rates (<math display='inline'><semantics> <mo>Γ</mo> </semantics></math>) and the regularizations (<math display='inline'><semantics> <mo>Λ</mo> </semantics></math>).</div><div class='html-p'>Note that these hyper-parameters were stacked so that each of the factorizations performed uses different hyper-parameters. The hyper-parameters of the first factorization will be placed at the top of the stack, those of the second factorization in the next one and so on until the parameters of the deeper factorization, which will be placed at the bottom of the stack. This allows us to define the stopping criteria of the algorithm: as soon as a stack is empty the learning process will be finished. Similarly, the output of the algorithm will be a stack containing the pairs <math display='inline'><semantics> <mrow> <mo>〈</mo> <mi>P</mi> <mo>,</mo> <mi>Q</mi> <mo>〉</mo> </mrow> </semantics></math> with the hidden factors of each of the factorizations carried out.</div><table class='html-array_table'><tbody ><tr ><td align='left' valign='middle' style='border-top:solid thin;border-bottom:solid thin' class='html-align-left' ><b>Algorithm 1:</b> Pseudo-code of a recursive implementation of DeepMF.</td></tr><tr ><td align='left' valign='middle' style='border-bottom:solid thin' class='html-align-left' ><span class='html-fig-inline' id = applsci-10-04926-i001 > <img alt="Applsci 10 04926 i001" data-lsrc="/applsci/applsci-10-04926/article_deploy/html/images/applsci-10-04926-i001.png" /></span></td></tr></tbody></table><div class='html-p'>Algorithm 1 needs to be run in a single thread since the update of the <span class='html-italic'>P</span> matrix requires the <span class='html-italic'>Q</span> matrix and vice versa. However, this algorithm can easily be sped-up by using an Alternating Least Squares (<span class='html-small-caps'>als</span>) approach. Algorithm 2 contains a parrallel implementation of DeepMF using an <span class='html-small-caps'>als</span> approach. As can be observed, to perform a factorization, the matrices <span class='html-italic'>P</span> and <span class='html-italic'>Q</span> are updated <span class='html-italic'>t</span> times according to the loss function gradient. This update is performed in two steps: first, the values of the <span class='html-italic'>Q</span> matrix are fixed as constants allowing updating of the latent factors of each user (<math display='inline'><semantics> <msub> <mi>P</mi> <mi>u</mi> </msub> </semantics></math>) independently from the latent factors of the rest of the users, thus, they can be updated in parallel for each user. Second, the values of the <span class='html-italic'>P</span> matrix are fixed as constants and the latent factors of each item <math display='inline'><semantics> <msub> <mi>Q</mi> <mi>i</mi> </msub> </semantics></math> are updated independently from the latent factors of the rest of the items, thus, they can be updated in parallel for each item. Although this parallel implementation needs to go through the rating set twice to update both the <span class='html-italic'>P</span> and the <span class='html-italic'>Q</span> matrices, its computation time is significantly less than that of Algorithm 1 when more than 2 execution threads are available. For example, in a dataset with 1 million ratings, the total computation time of each iteration will be the time required to update the Algorithm 2, the total computation time in a processor with 8 execution threads of each iteration will be the time required to update the matrices <span class='html-italic'>P</span> and <span class='html-italic'>Q</span> <span class='html-italic'>2 * 1 million / 8 threads = 250,000 times</span>, a quarter of the total computation time required by Algorithm 1.</div><table class='html-array_table'><tbody ><tr ><td align='left' valign='middle' style='border-top:solid thin;border-bottom:solid thin' class='html-align-left' ><b>Algorithm 2:</b> Pseudo-code of a parrallel recursive implementation of Deep<span class='html-small-caps'>mf</span> using an <span class='html-small-caps'>als</span> approach.</td></tr><tr ><td align='left' valign='middle' style='border-bottom:solid thin' class='html-align-left' ><span class='html-fig-inline' id = applsci-10-04926-i002 > <img alt="Applsci 10 04926 i002" data-lsrc="/applsci/applsci-10-04926/article_deploy/html/images/applsci-10-04926-i002.png" /></span></td></tr></tbody></table></section><section id='sec3-applsci-10-04926' type='results'><h2 data-nested='1'> 3. Results</h2><div class='html-p'>In this section we describe the empirical experiments designed to evaluate the performance of the proposed method. According to the standard <span class='html-small-caps'>cf</span>’s evaluation framework [<a href="#B32-applsci-10-04926" class="html-bibr">32</a>], the evaluation of the quality of the predictions is carried out by measuring the Mean Absolute Error (<span class='html-small-caps'>mae</span>) of the model output. The <span class='html-small-caps'>mae</span> is defined as average absolute difference between the actual ratings <span class='html-italic'>R</span> and the predicted ratings <math display='inline'><semantics> <mover accent="true"> <mi>R</mi> <mo stretchy="false">^</mo> </mover> </semantics></math> of the test split <math display='inline'><semantics> <msup> <mi>R</mi> <mi>test</mi> </msup> </semantics></math>:<div class='html-disp-formula-info' id='FD10-applsci-10-04926'> <div class='f'> <math display='block'><semantics> <mrow> <mi>MAE</mi> <mo>=</mo> <mfrac> <mn>1</mn> <mrow> <mo>#</mo> <msup> <mi>R</mi> <mi>test</mi> </msup> </mrow> </mfrac> <munder> <mo>∑</mo> <mrow> <mrow> <mo>〈</mo> <mi>u</mi> <mo>,</mo> <mi>i</mi> <mo>〉</mo> </mrow> <mo>∈</mo> <msup> <mi>R</mi> <mi>test</mi> </msup> </mrow> </munder> <mrow> <mo>|</mo> <msub> <mi>R</mi> <mrow> <mi>u</mi> <mo>,</mo> <mi>i</mi> </mrow> </msub> <mo>−</mo> <msub> <mover accent="true"> <mi>R</mi> <mo stretchy="false">^</mo> </mover> <mrow> <mi>u</mi> <mo>,</mo> <mi>i</mi> </mrow> </msub> <mo>|</mo> </mrow> <mo>.</mo> </mrow> </semantics></math> </div> <div class='l'> <label >(10)</label> </div> </div></div><div class='html-p'>Analogously, the quality of the top <span class='html-italic'>l</span> recommendations is evaluated by the precision and recall quality measures on the recommendation lists. Remark that, given an user <span class='html-italic'>u</span>, his recommendation list of <span class='html-italic'>l</span> items, <math display='inline'><semantics> <msubsup> <mi>L</mi> <mi>u</mi> <mi>l</mi> </msubsup> </semantics></math>, is the collection of the <span class='html-italic'>l</span> items <math display='inline'><semantics> <mrow> <msub> <mi>i</mi> <mn>1</mn> </msub> <mo>,</mo> <mo>…</mo> <mo>,</mo> <msub> <mi>i</mi> <mi>l</mi> </msub> </mrow> </semantics></math> with <math display='inline'><semantics> <mrow> <msub> <mover accent="true"> <mi>R</mi> <mo stretchy="false">^</mo> </mover> <mrow> <mi>u</mi> <mo>,</mo> <msub> <mi>i</mi> <mn>1</mn> </msub> </mrow> </msub> <mo>,</mo> <mo>…</mo> <mo>,</mo> <msub> <mover accent="true"> <mi>R</mi> <mo stretchy="false">^</mo> </mover> <mrow> <mi>u</mi> <mo>,</mo> <msub> <mi>i</mi> <mi>l</mi> </msub> </mrow> </msub> </mrow> </semantics></math> the highest <span class='html-italic'>l</span> predicted ratings.</div><div class='html-p'>Now, we fix a parameter <math display='inline'><semantics> <mrow> <mi>θ</mi> <mo>≥</mo> <mn>0</mn> </mrow> </semantics></math>, which plays the role of a minimum threshold to discern whether or not an item is of interest to the users. The precision is defined as the average proportion of successful recommendations of the recommendation list:<div class='html-disp-formula-info' id='FD11-applsci-10-04926'> <div class='f'> <math display='block'><semantics> <mrow> <mi>precision</mi> <mo>=</mo> <mfrac> <mn>1</mn> <mrow> <mo>#</mo> <msup> <mi>U</mi> <mi>test</mi> </msup> </mrow> </mfrac> <munder> <mo>∑</mo> <mrow> <mi>u</mi> <mo>∈</mo> <msup> <mi>U</mi> <mi>test</mi> </msup> </mrow> </munder> <mfrac> <mfenced separators="" open="{" close="}"> <mi>i</mi> <mo>∈</mo> <msubsup> <mi>L</mi> <mi>u</mi> <mi>l</mi> </msubsup> <mrow> <mo>|</mo> </mrow> <msub> <mi>R</mi> <mrow> <mi>u</mi> <mo>,</mo> <mi>i</mi> </mrow> </msub> <mo>≥</mo> <mi>θ</mi> </mfenced> <mi>l</mi> </mfrac> <mo>,</mo> </mrow> </semantics></math> </div> <div class='l'> <label >(11)</label> </div> </div> where <math display='inline'><semantics> <msup> <mi>U</mi> <mi>test</mi> </msup> </semantics></math> is the collection of users in the test split.</div><div class='html-p'>In the same vein, the recall is defined as the averaged proportion of successful recommendations included in the recommendation list with respect to the total number of test items the user <span class='html-italic'>u</span> likes:<div class='html-disp-formula-info' id='FD12-applsci-10-04926'> <div class='f'> <math display='block'><semantics> <mrow> <mi>recall</mi> <mo>=</mo> <mfrac> <mn>1</mn> <mrow> <mo>#</mo> <msup> <mi>U</mi> <mi>test</mi> </msup> </mrow> </mfrac> <munder> <mo>∑</mo> <mrow> <mi>u</mi> <mo>∈</mo> <msup> <mi>U</mi> <mi>test</mi> </msup> </mrow> </munder> <mfrac> <mfenced separators="" open="{" close="}"> <mi>i</mi> <mo>∈</mo> <msubsup> <mi>L</mi> <mi>u</mi> <mi>l</mi> </msubsup> <mrow> <mo>|</mo> </mrow> <msub> <mi>R</mi> <mrow> <mi>u</mi> <mo>,</mo> <mi>i</mi> </mrow> </msub> <mo>≥</mo> <mi>θ</mi> </mfenced> <mfenced separators="" open="{" close="}"> <mi>i</mi> <mo>∈</mo> <msubsup> <mi>R</mi> <mi>u</mi> <mi>test</mi> </msubsup> <mrow> <mo>|</mo> </mrow> <msub> <mi>R</mi> <mrow> <mi>u</mi> <mo>,</mo> <mi>i</mi> </mrow> </msub> <mo>≥</mo> <mi>θ</mi> </mfenced> </mfrac> <mo>,</mo> </mrow> </semantics></math> </div> <div class='l'> <label >(12)</label> </div> </div> where <math display='inline'><semantics> <msubsup> <mi>R</mi> <mi>u</mi> <mi>test</mi> </msubsup> </semantics></math> is the collection of items in the test split at the <span class='html-italic'>u</span>-th row of <span class='html-italic'>R</span>.</div><div class='html-p'>The experimental evaluation has been carried out using MovieLens [<a href="#B33-applsci-10-04926" class="html-bibr">33</a>], FilmTrust [<a href="#B34-applsci-10-04926" class="html-bibr">34</a>] and MyAnimeList [<a href="#B35-applsci-10-04926" class="html-bibr">35</a>] datasets. <a href="#applsci-10-04926-t001" class="html-table">Table 1</a> contains their main parameters. To ensure the reproducibility of these experiments, all of them have been run using the benchmark version of these datasets included in Collaborative Filtering for Java (CF4J) [<a href="#B36-applsci-10-04926" class="html-bibr">36</a>].</div><div class='html-p'>The selection of the baselines has been done trying to pick a representative sample of the existing <span class='html-small-caps'>mf</span> models. A first approach, based on the deep nature of the proposed method, is to focus on existing deep factorization models such as FAuST [<a href="#B25-applsci-10-04926" class="html-bibr">25</a>] and DNMF [<a href="#B27-applsci-10-04926" class="html-bibr">27</a>]. However recall that, as stated in <a href="#sec1-applsci-10-04926" class="html-sec">Section 1</a>, these methods were designed for image processing, not for solving <span class='html-small-caps'>cf</span> problems, so a performance similar to other standard MF-based <span class='html-small-caps'>cf</span> algorithms is not guaranteed. Trying to discern whether these methods would be suitable for <span class='html-small-caps'>cf</span>, we proposed a preliminary experiment for evaluating the performance of FAuST against the MovieLens 100K dataset. To tune the hyper-parameters, a grid search was conducted whose limits are as follows. It was searched for factorizations of the rating matrix <span class='html-italic'>R</span> into up to 4 smaller matrices, with 6 or 9 hidden factors for each level and a gradient descent step size (learning rate) of <math display='inline'><semantics> <mrow> <mi>γ</mi> <mo>=</mo> <mn>0.0001</mn> </mrow> </semantics></math> or <math display='inline'><semantics> <mrow> <mn>0.01</mn> </mrow> </semantics></math>. Notice that FAuST also allows you to impose a sparsity constraint on each factor matrix. For this experiment, it was allowed a <math display='inline'><semantics> <mrow> <mn>0</mn> <mo>%</mo> </mrow> </semantics></math> of sparsity (i.e., fully dense matrix with no restrictions) or a <math display='inline'><semantics> <mrow> <mn>20</mn> <mo>%</mo> </mrow> </semantics></math> of sparsity (that is, up to <math display='inline'><semantics> <mrow> <mn>80</mn> <mo>%</mo> </mrow> </semantics></math> of non-vanishing entries are allowed). The best found model attained a <span class='html-small-caps'>mae</span> of 3.49262 with a factorization into 4 matrices, all with 9 hidden factors, no sparsity constraints and a learning rate of <math display='inline'><semantics> <mrow> <mi>γ</mi> <mo>=</mo> <mn>0.01</mn> </mrow> </semantics></math>. This result is very far from the current baselines reported in the literature, which are typically around <math display='inline'><semantics> <mrow> <mn>0.75</mn> </mrow> </semantics></math> as we will see below, showing that the existing deep methods are unsuitable as RSs. In is worthy to mention that, although FAuST with no sparsity constraints is very similar to the usual PMF [<a href="#B29-applsci-10-04926" class="html-bibr">29</a>] algorithm, it looks for a factorization into normalized matrices with Frobenius norm 1. This normalization seems to be crucial for the bad performance of FAuST as RS: this restriction might be very useful for image processing and memory saving problems which are the usual applications of FAuST, but it seems to be very ill-posed for regression problems.</div><div class='html-p'>Due to the failure of this method as RS, it was decided to pull apart the existing deep factorization methods, designed specifically for image processing, and to choose the competing baselines from the most popular MF-based <span class='html-small-caps'>cf</span> methods, namely PMF [<a href="#B29-applsci-10-04926" class="html-bibr">29</a>], NMF [<a href="#B30-applsci-10-04926" class="html-bibr">30</a>] and SVD++ [<a href="#B31-applsci-10-04926" class="html-bibr">31</a>].</div><div class='html-p'>These baselines contain several hyper-parameters that must be tuned in order to improve their performance on the selected datasets. The optimal configuration of the hyper-parameters of each baseline has been found by a grid search optimization. All combinations resulting from evaluating a wide range of values for each hyper-parameter have been evaluated, and the combination returning the least <span class='html-small-caps'>mae</span> on the predictions of the test split has been selected as the most suitable for each baseline and data set. <a href="#applsci-10-04926-t002" class="html-table">Table 2</a> contains the resulting hyper-parameters of this optimization process. Recall that <span class='html-italic'>k</span> denotes the number of hidden factors in the factorization, <math display='inline'><semantics> <mi>γ</mi> </semantics></math> is the learning rate of the associated gradient descent optimization and <math display='inline'><semantics> <mi>λ</mi> </semantics></math> is the regularization hyper-parameter.</div><div class='html-p'>Analogously, DeepMF also contains several hyper-parameters needed to fit the model to an specific dataset. As with the baselines, we performed a grid search optimization in order to obtain the combination of parameters that minimizes the prediction error (<span class='html-small-caps'>mae</span>) in the test split. In this case, the recursive nature of the proposed method causes that the number of hyper-parameter combinations to be evaluated grows exponentially.</div><div class='html-p'>To deal with this combinatorial explosion, we evaluated with depths from 1 to 4, i.e., performing 1 to 4 deep factorizations. Each of this factorizations has been evaluated varying the number of latent factors <math display='inline'><semantics> <mrow> <mi>k</mi> <mo>∈</mo> <mo>{</mo> <mn>3</mn> <mo>,</mo> <mn>6</mn> <mo>,</mo> <mn>9</mn> <mo>}</mo> </mrow> </semantics></math>, the learning rate <math display='inline'><semantics> <mrow> <mi>γ</mi> <mo>∈</mo> <mo>{</mo> <mn>0</mn> <mo>.</mo> <mn>01</mn> <mo>,</mo> <mn>0.1</mn> <mo>}</mo> </mrow> </semantics></math> and the regularization <math display='inline'><semantics> <mrow> <mi>λ</mi> <mo>∈</mo> <mo>{</mo> <mn>0.01</mn> <mo>,</mo> <mn>0.1</mn> <mo>}</mo> </mrow> </semantics></math>. The number of iterations has been fixed to <math display='inline'><semantics> <mrow> <mi>T</mi> <mo>=</mo> <mo>[</mo> <mn>50</mn> <mo>,</mo> <mn>50</mn> <mo>,</mo> <mo>…</mo> <mo>,</mo> <mn>50</mn> <mo>]</mo> </mrow> </semantics></math> for all factorizations. In total, 22,620 combinations of hyper-parameters has been evaluated for each dataset. <a href="#applsci-10-04926-t003" class="html-table">Table 3</a> contains the top five results returned by the grid search optimization. Note that hyper-parameters has been named as in Algorithm 1 to facilitate their interpretation.</div><div class='html-p'>Once all the evaluated models have been set up, the best tuned models can be compared to measure the prediction and recommendation improvement of DeepMF with respect to the selected baselines. <a href="#applsci-10-04926-t004" class="html-table">Table 4</a> contains the <span class='html-small-caps'>mae</span> of the predictions performed by all the evaluated models. We can observe that the proposed model DeepMF significantly improves the accuracy of predictions with respect to other models in MovieLens 100K, MovieLens 1M and FilmTrust datasets. Similarly, in the MyAnimeList dataset, DeepMF substantially improves PMF and NMF baselines and achieves a slightly worse <span class='html-small-caps'>mae</span> than SVD++. Observe that this later underperformance might be due to the fact that MyAnimeList is significantly larger than any other dataset, so deeper models of DeepMF would be needed in order the exploit the recursive nature of the proposed method that fit the dataset better than SVD++.</div><div class='html-p'><a href="#applsci-10-04926-f002" class="html-fig">Figure 2</a> contains the precision and recall of the recommendations when varying the number of desired top recommendations from <math display='inline'><semantics> <mrow> <mi>l</mi> <mo>=</mo> <mn>1</mn> </mrow> </semantics></math> to <math display='inline'><semantics> <mrow> <mi>l</mi> <mo>=</mo> <mn>10</mn> </mrow> </semantics></math> items. The threshold <math display='inline'><semantics> <mi>θ</mi> </semantics></math> for precision and recall has been set to <math display='inline'><semantics> <mrow> <mi>θ</mi> <mo>=</mo> <mn>4</mn> </mrow> </semantics></math> for MovieLens datasets, <math display='inline'><semantics> <mrow> <mi>θ</mi> <mo>=</mo> <mn>3.5</mn> </mrow> </semantics></math> for FilmTrust dataset and <math display='inline'><semantics> <mrow> <mi>θ</mi> <mo>=</mo> <mn>7</mn> </mrow> </semantics></math> for MyAnimeList dataset. We can observe that in all evaluated datasets the proposed method DeepMF provides the best balance between the precision and recall quality measures for any number of recommendations.</div><div class='html-p'>All experiments conducted in this article are committed to reproducible science. The full code of these experiments is available at <a href='https://github.com/ferortega/deep-matrix-factorization' target='_blank' rel="noopener noreferrer">https://github.com/ferortega/deep-matrix-factorization</a>.</div></section><section id='sec4-applsci-10-04926' type='discussion'><h2 data-nested='1'> 4. Discussion</h2><div class='html-p'>In this paper, we presented DeepMF, a novel MF-based <span class='html-small-caps'>cf</span> algorithm using a <span class='html-small-caps'>dl</span> approach. As stated in <a href="#sec1-applsci-10-04926" class="html-sec">Section 1</a> the <span class='html-small-caps'>dl</span> is an incipient approach in the <span class='html-small-caps'>ml</span> field that consists of a hierarchical self-training method that uses the information acquired from data. Although <span class='html-small-caps'>dl</span> has been used mainly in artificial neural networks, the proposed model breaks this tendency by applying the foundations of <span class='html-small-caps'>dl</span> to the field of MF.</div><div class='html-p'>The essence of the proposed method lies in the <span class='html-small-caps'>dl</span> approach. Our model performs successive matrix factorizations in order to successively refine the model output. Thus, the first factorization, the least deep one, represents the classic approach of <span class='html-small-caps'>mf</span>-based <span class='html-small-caps'>cf</span> models and seeks to predict the score that a user will give to an item. The second factorization seeks to refine the previous prediction by trying to increase the predictions that tend to be lower than the real rating and decrease those that tend to be higher. Subsequently, the learning is deepened by correcting the errors of the errors to build a <span class='html-small-caps'>dl</span> model that converges towards a prediction as close as possible to the real value to be learned.</div><div class='html-p'>This expected behavior is corroborated by the results of the experiment shown in <a href="#applsci-10-04926-f003" class="html-fig">Figure 3</a>. On it, we plot the average value of the predictions provided by each factorization layer according to its depth. The same decreasing trend in the average prediction is observed in all the analyzed datasets: as factorization is deeper, errors to be refined tend to zero and the learning process converges. The <a href="#applsci-10-04926-f003" class="html-fig">Figure 3</a> includes the top 5 combinations of hyper-parameters obtained in the grid search shown in <a href="#applsci-10-04926-t003" class="html-table">Table 3</a>. Note that a logarithmic scale has been used on the <span class='html-italic'>y</span>-axis to emphasize the differences in the deeper factorizations.</div><div class='html-p'>The hypothesis of this contribution was that a <span class='html-small-caps'>dl</span> approach applied to a <span class='html-small-caps'>mf</span>-based <span class='html-small-caps'>cf</span> can improve the quality of both predictions and recommendations. This hypothesis has been confirmed with the experimental results showed in <a href="#sec3-applsci-10-04926" class="html-sec">Section 3</a>. The quality of the predictions (see <a href="#applsci-10-04926-t004" class="html-table">Table 4</a>) and recommendations (see <a href="#applsci-10-04926-f002" class="html-fig">Figure 2</a>) of the proposed method, DeepMF, exceeds the baselines used in the 3 datasets analyzed: MovieLens 100K, MovieLens 1M and FilmTrust.</div><div class='html-p'>Summarizing, the proposed model in this paper expands the landscape of matrix factorization models by importing a Deep Learning approach from the field of neural computing. From this point, several future research lines open. Maybe, the most obvious one would be to analyze the <span class='html-small-caps'>dl</span> approach performed in this paper with other matrix factorization models and to define different loss functions depending on the depth of factorization. For example, experimental results show that SVD++ factorization works properly on MyAnimeList dataset, so it would be interesting to evaluate the performance of DeepMF using SVD++ as the initial factorization and other factorizations models for the deeper factorizations.</div><div class='html-p'>A more ambitious prospective work would be transferring the ideas of this paper to a purely bioinspired framework. For instance, it can be studied the incorporation of DeepMF as a model to be implemented by the neurons of a fully connected or convolutional neural network. In this way, the knowledge of the scientific community about network architectures can be applied to give rise to deeper an more involved nested patterns of matrix factorizations.</div></section> </div> <div class="html-back"> <section class='html-notes'><h2 >Author Contributions</h2><div class='html-p'>Conceptualization, R.L.-C. and Á.G.-P. and F.O.; formal analysis, Á.G.-P.; methodology, R.L.-C. and F.O.; software, A.G.-P. and F.O.; writing—original draft preparation, R.L.-C. and Á.G.-P. and F.O.; writing—review and editing, R.L.-C. All authors have read and agreed to the published version of the manuscript.</div></section><section class='html-notes'><h2 >Funding</h2><div class='html-p'>This work has been supported by Spanish Ministry of Science and Education and Competitivity (MINECO) and European Regional Development Fund (FEDER) under grants TIN2017-85727-C4-3-P (DeepBio).</div></section><section class='html-notes'><h2 >Conflicts of Interest</h2><div class='html-p'>The authors declare no conflict of interest. The funders had no role in the design of the study; in the collection, analyses, or interpretation of data; in the writing of the manuscript, or in the decision to publish the results.</div></section><section id='html-references_list'><h2>References</h2><ol class='html-xx'><li id='B1-applsci-10-04926' class='html-x' data-content='1.'>Manogaran, G.; Lopez, D. A survey of big data architectures and machine learning algorithms in healthcare. <span class='html-italic'>Int. J. Biomed. Eng. Technol.</span> <b>2017</b>, <span class='html-italic'>25</span>, 182–211. [<a href="https://scholar.google.com/scholar_lookup?title=A+survey+of+big+data+architectures+and+machine+learning+algorithms+in+healthcare&author=Manogaran,+G.&author=Lopez,+D.&publication_year=2017&journal=Int.+J.+Biomed.+Eng.+Technol.&volume=25&pages=182%E2%80%93211&doi=10.1504/IJBET.2017.087722" class='google-scholar' target='_blank' rel='noopener noreferrer'>Google Scholar</a>] [<a href="https://doi.org/10.1504/IJBET.2017.087722" class='cross-ref' target='_blank' rel='noopener noreferrer'>CrossRef</a>]</li><li id='B2-applsci-10-04926' class='html-x' data-content='2.'>Molina, M.; Garip, F. Machine Learning for Sociology. <span class='html-italic'>Ann. Rev. Sociol.</span> <b>2019</b>, <span class='html-italic'>45</span>, 27–45. [<a href="https://scholar.google.com/scholar_lookup?title=Machine+Learning+for+Sociology&author=Molina,+M.&author=Garip,+F.&publication_year=2019&journal=Ann.+Rev.+Sociol.&volume=45&pages=27%E2%80%9345&doi=10.1146/annurev-soc-073117-041106" class='google-scholar' target='_blank' rel='noopener noreferrer'>Google Scholar</a>] [<a href="https://doi.org/10.1146/annurev-soc-073117-041106" class='cross-ref' target='_blank' rel='noopener noreferrer'>CrossRef</a>] [<a href="http://osf.io/a6r9g//download" target='_blank' rel="noopener noreferrer">Green Version</a>]</li><li id='B3-applsci-10-04926' class='html-x' data-content='3.'>Lu, Y. Industry 4.0: A survey on technologies, applications and open research issues. <span class='html-italic'>J. Ind. Inform. Integr.</span> <b>2017</b>, <span class='html-italic'>6</span>, 1–10. [<a href="https://scholar.google.com/scholar_lookup?title=Industry+4.0:+A+survey+on+technologies,+applications+and+open+research+issues&author=Lu,+Y.&publication_year=2017&journal=J.+Ind.+Inform.+Integr.&volume=6&pages=1%E2%80%9310&doi=10.1016/j.jii.2017.04.005" class='google-scholar' target='_blank' rel='noopener noreferrer'>Google Scholar</a>] [<a href="https://doi.org/10.1016/j.jii.2017.04.005" class='cross-ref' target='_blank' rel='noopener noreferrer'>CrossRef</a>]</li><li id='B4-applsci-10-04926' class='html-x' data-content='4.'>Bobadilla, J.; Ortega, F.; Hernando, A.; Gutiérrez, A. Recommender systems survey. <span class='html-italic'>Knowl. Based Syst.</span> <b>2013</b>, <span class='html-italic'>46</span>, 109–132. [<a href="https://scholar.google.com/scholar_lookup?title=Recommender+systems+survey&author=Bobadilla,+J.&author=Ortega,+F.&author=Hernando,+A.&author=Guti%C3%A9rrez,+A.&publication_year=2013&journal=Knowl.+Based+Syst.&volume=46&pages=109%E2%80%93132&doi=10.1016/j.knosys.2013.03.012" class='google-scholar' target='_blank' rel='noopener noreferrer'>Google Scholar</a>] [<a href="https://doi.org/10.1016/j.knosys.2013.03.012" class='cross-ref' target='_blank' rel='noopener noreferrer'>CrossRef</a>]</li><li id='B5-applsci-10-04926' class='html-x' data-content='5.'>Son, Y.; Choi, Y. Improving Matrix Factorization Based Expert Recommendation for Manuscript Editing Services by Refining User Opinions with Binary Ratings. <span class='html-italic'>Appl. Sci.</span> <b>2020</b>, <span class='html-italic'>10</span>, 3395. [<a href="https://scholar.google.com/scholar_lookup?title=Improving+Matrix+Factorization+Based+Expert+Recommendation+for+Manuscript+Editing+Services+by+Refining+User+Opinions+with+Binary+Ratings&author=Son,+Y.&author=Choi,+Y.&publication_year=2020&journal=Appl.+Sci.&volume=10&pages=3395&doi=10.3390/app10103395" class='google-scholar' target='_blank' rel='noopener noreferrer'>Google Scholar</a>] [<a href="https://doi.org/10.3390/app10103395" class='cross-ref' target='_blank' rel='noopener noreferrer'>CrossRef</a>]</li><li id='B6-applsci-10-04926' class='html-x' data-content='6.'>Zhang, D.; Liu, L.; Wei, Q.; Yang, Y.; Yang, P.; Liu, Q. Neighborhood Aggregation Collaborative Filtering Based on Knowledge Graph. <span class='html-italic'>Appl. Sci.</span> <b>2020</b>, <span class='html-italic'>10</span>, 3818. [<a href="https://scholar.google.com/scholar_lookup?title=Neighborhood+Aggregation+Collaborative+Filtering+Based+on+Knowledge+Graph&author=Zhang,+D.&author=Liu,+L.&author=Wei,+Q.&author=Yang,+Y.&author=Yang,+P.&author=Liu,+Q.&publication_year=2020&journal=Appl.+Sci.&volume=10&pages=3818&doi=10.3390/app10113818" class='google-scholar' target='_blank' rel='noopener noreferrer'>Google Scholar</a>] [<a href="https://doi.org/10.3390/app10113818" class='cross-ref' target='_blank' rel='noopener noreferrer'>CrossRef</a>]</li><li id='B7-applsci-10-04926' class='html-x' data-content='7.'>Adomavicius, G.; Tuzhilin, A. Toward the next generation of recommender systems: A survey of the state-of-the-art and possible extensions. <span class='html-italic'>IEEE Trans. Knowl. Data Eng.</span> <b>2005</b>, <span class='html-italic'>17</span>, 734–749. [<a href="https://scholar.google.com/scholar_lookup?title=Toward+the+next+generation+of+recommender+systems:+A+survey+of+the+state-of-the-art+and+possible+extensions&author=Adomavicius,+G.&author=Tuzhilin,+A.&publication_year=2005&journal=IEEE+Trans.+Knowl.+Data+Eng.&volume=17&pages=734%E2%80%93749&doi=10.1109/TKDE.2005.99" class='google-scholar' target='_blank' rel='noopener noreferrer'>Google Scholar</a>] [<a href="https://doi.org/10.1109/TKDE.2005.99" class='cross-ref' target='_blank' rel='noopener noreferrer'>CrossRef</a>]</li><li id='B8-applsci-10-04926' class='html-x' data-content='8.'>Lara-Cabrera, R.; González-Prieto, Á.; Ortega, F.; Bobadilla, J. Evolving matrix-factorization-based collaborative filtering using genetic programming. <span class='html-italic'>Appl. Sci.</span> <b>2020</b>, <span class='html-italic'>10</span>, 675. [<a href="https://scholar.google.com/scholar_lookup?title=Evolving+matrix-factorization-based+collaborative+filtering+using+genetic+programming&author=Lara-Cabrera,+R.&author=Gonz%C3%A1lez-Prieto,+%C3%81.&author=Ortega,+F.&author=Bobadilla,+J.&publication_year=2020&journal=Appl.+Sci.&volume=10&pages=675&doi=10.3390/app10020675" class='google-scholar' target='_blank' rel='noopener noreferrer'>Google Scholar</a>] [<a href="https://doi.org/10.3390/app10020675" class='cross-ref' target='_blank' rel='noopener noreferrer'>CrossRef</a>] [<a href="https://www.mdpi.com/2076-3417/10/2/675/pdf" target='_blank' rel="noopener noreferrer">Green Version</a>]</li><li id='B9-applsci-10-04926' class='html-x' data-content='9.'>Koren, Y.; Bell, R.; Volinsky, C. Matrix factorization techniques for recommender systems. <span class='html-italic'>Computer</span> <b>2009</b>, <span class='html-italic'>42</span>, 30–37. [<a href="https://scholar.google.com/scholar_lookup?title=Matrix+factorization+techniques+for+recommender+systems&author=Koren,+Y.&author=Bell,+R.&author=Volinsky,+C.&publication_year=2009&journal=Computer&volume=42&pages=30%E2%80%9337&doi=10.1109/MC.2009.263" class='google-scholar' target='_blank' rel='noopener noreferrer'>Google Scholar</a>] [<a href="https://doi.org/10.1109/MC.2009.263" class='cross-ref' target='_blank' rel='noopener noreferrer'>CrossRef</a>]</li><li id='B10-applsci-10-04926' class='html-xx' data-content='10.'>LeCun, Y.; Bengio, Y.; Hinton, G. Deep learning. <span class='html-italic'>Nature</span> <b>2015</b>, <span class='html-italic'>521</span>, 436–444. [<a href="https://scholar.google.com/scholar_lookup?title=Deep+learning&author=LeCun,+Y.&author=Bengio,+Y.&author=Hinton,+G.&publication_year=2015&journal=Nature&volume=521&pages=436%E2%80%93444&doi=10.1038/nature14539" class='google-scholar' target='_blank' rel='noopener noreferrer'>Google Scholar</a>] [<a href="https://doi.org/10.1038/nature14539" class='cross-ref' target='_blank' rel='noopener noreferrer'>CrossRef</a>]</li><li id='B11-applsci-10-04926' class='html-xx' data-content='11.'>Deng, L.; Hinton, G.; Kingsbury, B. New types of deep neural network learning for speech recognition and related applications: An overview. In Proceedings of the 2013 IEEE International Conference on Acoustics, Speech and Signal Processing, Vancouver, BC, Canada, 26–31 May 2013; pp. 8599–8603. [<a href="https://scholar.google.com/scholar_lookup?title=New+types+of+deep+neural+network+learning+for+speech+recognition+and+related+applications:+An+overview&conference=Proceedings+of+the+2013+IEEE+International+Conference+on+Acoustics,+Speech+and+Signal+Processing&author=Deng,+L.&author=Hinton,+G.&author=Kingsbury,+B.&publication_year=2013&pages=8599%E2%80%938603" class='google-scholar' target='_blank' rel='noopener noreferrer'>Google Scholar</a>]</li><li id='B12-applsci-10-04926' class='html-xx' data-content='12.'>Wu, M.; Li, C. Image recognition based on deep learning. In Proceedings of the 2015 Chinese Automation Congress (CAC), Wuhan, China, 27–29 November 2015; pp. 542–546. [<a href="https://scholar.google.com/scholar_lookup?title=Image+recognition+based+on+deep+learning&conference=Proceedings+of+the+2015+Chinese+Automation+Congress+(CAC)&author=Wu,+M.&author=Li,+C.&publication_year=2015&pages=542%E2%80%93546" class='google-scholar' target='_blank' rel='noopener noreferrer'>Google Scholar</a>]</li><li id='B13-applsci-10-04926' class='html-xx' data-content='13.'>Deng, L.; Liu, Y. <span class='html-italic'>Deep Learning in Natural Language Processing</span>; Springer: Berlin/Heidelberg, Germany, 2018. [<a href="https://scholar.google.com/scholar_lookup?title=Deep+Learning+in+Natural+Language+Processing&author=Deng,+L.&author=Liu,+Y.&publication_year=2018" class='google-scholar' target='_blank' rel='noopener noreferrer'>Google Scholar</a>]</li><li id='B14-applsci-10-04926' class='html-xx' data-content='14.'>Zhang, S.; Yao, L.; Sun, A.; Tay, Y. Deep Learning Based Recommender System: A Survey and New Perspectives. <span class='html-italic'>ACM Comput. Surv.</span> <b>2019</b>, <span class='html-italic'>52</span>, 1–38. [<a href="https://scholar.google.com/scholar_lookup?title=Deep+Learning+Based+Recommender+System:+A+Survey+and+New+Perspectives&author=Zhang,+S.&author=Yao,+L.&author=Sun,+A.&author=Tay,+Y.&publication_year=2019&journal=ACM+Comput.+Surv.&volume=52&pages=1%E2%80%9338&doi=10.1145/3285029" class='google-scholar' target='_blank' rel='noopener noreferrer'>Google Scholar</a>] [<a href="https://doi.org/10.1145/3285029" class='cross-ref' target='_blank' rel='noopener noreferrer'>CrossRef</a>] [<a href="http://arxiv.org/pdf/1707.07435" target='_blank' rel="noopener noreferrer">Green Version</a>]</li><li id='B15-applsci-10-04926' class='html-xx' data-content='15.'>Guo, H.; Tang, R.; Ye, Y.; Li, Z.; He, X. DeepFM: A factorization-machine based neural network for CTR prediction. In Proceedings of the 26th International Joint Conference on Artificial Intelligence, Melbourne, VIC, Australia, 19–25 August 2017; pp. 1725–1731. [<a href="https://scholar.google.com/scholar_lookup?title=DeepFM:+A+factorization-machine+based+neural+network+for+CTR+prediction&conference=Proceedings+of+the+26th+International+Joint+Conference+on+Artificial+Intelligence&author=Guo,+H.&author=Tang,+R.&author=Ye,+Y.&author=Li,+Z.&author=He,+X.&publication_year=2017&pages=1725%E2%80%931731" class='google-scholar' target='_blank' rel='noopener noreferrer'>Google Scholar</a>]</li><li id='B16-applsci-10-04926' class='html-xx' data-content='16.'>Ouyang, Y.; Liu, W.; Rong, W.; Xiong, Z. <span class='html-italic'>Autoencoder-Based Collaborative Filtering</span>; SpringerLink: Berlin/Heidelberg, Germany, 2014; pp. 284–291. [<a href="https://scholar.google.com/scholar_lookup?title=Autoencoder-Based+Collaborative+Filtering&author=Ouyang,+Y.&author=Liu,+W.&author=Rong,+W.&author=Xiong,+Z.&publication_year=2014" class='google-scholar' target='_blank' rel='noopener noreferrer'>Google Scholar</a>]</li><li id='B17-applsci-10-04926' class='html-xx' data-content='17.'>Bobadilla, J.; Alonso, S.; Hernando, A. Deep Learning Architecture for Collaborative Filtering Recommender Systems. <span class='html-italic'>Appl. Sci.</span> <b>2020</b>, <span class='html-italic'>10</span>, 2441. [<a href="https://scholar.google.com/scholar_lookup?title=Deep+Learning+Architecture+for+Collaborative+Filtering+Recommender+Systems&author=Bobadilla,+J.&author=Alonso,+S.&author=Hernando,+A.&publication_year=2020&journal=Appl.+Sci.&volume=10&pages=2441&doi=10.3390/app10072441" class='google-scholar' target='_blank' rel='noopener noreferrer'>Google Scholar</a>] [<a href="https://doi.org/10.3390/app10072441" class='cross-ref' target='_blank' rel='noopener noreferrer'>CrossRef</a>] [<a href="https://www.mdpi.com/2076-3417/10/7/2441/pdf" target='_blank' rel="noopener noreferrer">Green Version</a>]</li><li id='B18-applsci-10-04926' class='html-xx' data-content='18.'>He, X.; Du, X.; Wang, X.; Tian, F.; Tang, J.; Chua, T.S. Outer product-based neural collaborative filtering. In Proceedings of the 27th International Joint Conference on Artificial Intelligence, Stockholm, Sweden, 13–19 July 2018; pp. 2227–2233. [<a href="https://scholar.google.com/scholar_lookup?title=Outer+product-based+neural+collaborative+filtering&conference=Proceedings+of+the+27th+International+Joint+Conference+on+Artificial+Intelligence&author=He,+X.&author=Du,+X.&author=Wang,+X.&author=Tian,+F.&author=Tang,+J.&author=Chua,+T.S.&publication_year=2018&pages=2227%E2%80%932233" class='google-scholar' target='_blank' rel='noopener noreferrer'>Google Scholar</a>]</li><li id='B19-applsci-10-04926' class='html-xx' data-content='19.'>Abavisani, M.; Patel, V.M. Deep Sparse Representation-Based Classification. <span class='html-italic'>IEEE Signal Proces. Lett.</span> <b>2019</b>, <span class='html-italic'>26</span>, 948–952. [<a href="https://scholar.google.com/scholar_lookup?title=Deep+Sparse+Representation-Based+Classification&author=Abavisani,+M.&author=Patel,+V.M.&publication_year=2019&journal=IEEE+Signal+Proces.+Lett.&volume=26&pages=948%E2%80%93952&doi=10.1109/LSP.2019.2913022" class='google-scholar' target='_blank' rel='noopener noreferrer'>Google Scholar</a>] [<a href="https://doi.org/10.1109/LSP.2019.2913022" class='cross-ref' target='_blank' rel='noopener noreferrer'>CrossRef</a>]</li><li id='B20-applsci-10-04926' class='html-xx' data-content='20.'>Hidasi, B.; Karatzoglou, A.; Baltrunas, L.; Tikk, D. Session-based Recommendations with Recurrent Neural Networks. <span class='html-italic'>arXiv</span> <b>2015</b>, arXiv:cs.LG/1511.06939. [<a href="https://scholar.google.com/scholar_lookup?title=Session-based+Recommendations+with+Recurrent+Neural+Networks&author=Hidasi,+B.&author=Karatzoglou,+A.&author=Baltrunas,+L.&author=Tikk,+D.&publication_year=2015&journal=arXiv" class='google-scholar' target='_blank' rel='noopener noreferrer'>Google Scholar</a>]</li><li id='B21-applsci-10-04926' class='html-xx' data-content='21.'>Tan, Y.K.; Xu, X.; Liu, Y. Improved Recurrent Neural Networks for Session-Based Recommendations. In Proceedings of the 1st Workshop on Deep Learning for Recommender Systems, Boston, MA, USA, 15 September 2016; Association for Computing Machinery: New York, NY, USA, 2016; pp. 17–22. [<a href="https://scholar.google.com/scholar_lookup?title=Improved+Recurrent+Neural+Networks+for+Session-Based+Recommendations&conference=Proceedings+of+the+1st+Workshop+on+Deep+Learning+for+Recommender+Systems&author=Tan,+Y.K.&author=Xu,+X.&author=Liu,+Y.&publication_year=2016&pages=17%E2%80%9322" class='google-scholar' target='_blank' rel='noopener noreferrer'>Google Scholar</a>]</li><li id='B22-applsci-10-04926' class='html-xx' data-content='22.'>Wu, S.; Ren, W.; Yu, C.; Chen, G.; Zhang, D.; Zhu, J. Personal recommendation using deep recurrent neural networks in NetEase. In Proceedings of the 2016 IEEE 32nd International Conference on Data Engineering (ICDE), Helsinki, Finland, 16–20 May 2016; pp. 1218–1229. [<a href="https://scholar.google.com/scholar_lookup?title=Personal+recommendation+using+deep+recurrent+neural+networks+in+NetEase&conference=Proceedings+of+the+2016+IEEE+32nd+International+Conference+on+Data+Engineering+(ICDE)&author=Wu,+S.&author=Ren,+W.&author=Yu,+C.&author=Chen,+G.&author=Zhang,+D.&author=Zhu,+J.&publication_year=2016&pages=1218%E2%80%931229" class='google-scholar' target='_blank' rel='noopener noreferrer'>Google Scholar</a>]</li><li id='B23-applsci-10-04926' class='html-xx' data-content='23.'>Wang, Q.; Yin, H.; Hu, Z.; Lian, D.; Wang, H.; Huang, Z. Neural Memory Streaming Recommender Networks with Adversarial Training. In Proceedings of the 24th ACM SIGKDD International Conference on Knowledge Discovery & Data Mining, London, UK, 19–23 August 2018; Association for Computing Machinery: New York, NY, USA, 2018; pp. 2467–2475. [<a href="https://scholar.google.com/scholar_lookup?title=Neural+Memory+Streaming+Recommender+Networks+with+Adversarial+Training&conference=Proceedings+of+the+24th+ACM+SIGKDD+International+Conference+on+Knowledge+Discovery+&+Data+Mining&author=Wang,+Q.&author=Yin,+H.&author=Hu,+Z.&author=Lian,+D.&author=Wang,+H.&author=Huang,+Z.&publication_year=2018&pages=2467%E2%80%932475" class='google-scholar' target='_blank' rel='noopener noreferrer'>Google Scholar</a>]</li><li id='B24-applsci-10-04926' class='html-xx' data-content='24.'>He, X.; He, Z.; Du, X.; Chua, T.S. Adversarial Personalized Ranking for Recommendation. In Proceedings of the 41st International ACM SIGIR Conference on Research & Development in Information Retrieval, Ann Arbor, MI, USA, 8–12 July 2018; Association for Computing Machinery: New York, NY, USA, 2018; pp. 355–364. [<a href="https://scholar.google.com/scholar_lookup?title=Adversarial+Personalized+Ranking+for+Recommendation&conference=Proceedings+of+the+41st+International+ACM+SIGIR+Conference+on+Research+&+Development+in+Information+Retrieval&author=He,+X.&author=He,+Z.&author=Du,+X.&author=Chua,+T.S.&publication_year=2018&pages=355%E2%80%93364" class='google-scholar' target='_blank' rel='noopener noreferrer'>Google Scholar</a>]</li><li id='B25-applsci-10-04926' class='html-xx' data-content='25.'>Le Magoarou, L.; Gribonval, R. Flexible multilayer sparse approximations of matrices and applications. <span class='html-italic'>IEEE J. Sel. Top. Signal Process.</span> <b>2016</b>, <span class='html-italic'>10</span>, 688–700. [<a href="https://scholar.google.com/scholar_lookup?title=Flexible+multilayer+sparse+approximations+of+matrices+and+applications&author=Le+Magoarou,+L.&author=Gribonval,+R.&publication_year=2016&journal=IEEE+J.+Sel.+Top.+Signal+Process.&volume=10&pages=688%E2%80%93700&doi=10.1109/JSTSP.2016.2543461" class='google-scholar' target='_blank' rel='noopener noreferrer'>Google Scholar</a>] [<a href="https://doi.org/10.1109/JSTSP.2016.2543461" class='cross-ref' target='_blank' rel='noopener noreferrer'>CrossRef</a>] [<a href="https://hal.inria.fr/hal-01167948/file/ieeeJSTSP.pdf" target='_blank' rel="noopener noreferrer">Green Version</a>]</li><li id='B26-applsci-10-04926' class='html-xx' data-content='26.'>Trigeorgis, G.; Bousmalis, K.; Zafeiriou, S.; Schuller, B.W. A Deep Matrix Factorization Method for Learning Attribute Representations. <span class='html-italic'>IEEE Trans. Pattern Anal. Mach. Intel.</span> <b>2017</b>, <span class='html-italic'>39</span>, 417–429. [<a href="https://scholar.google.com/scholar_lookup?title=A+Deep+Matrix+Factorization+Method+for+Learning+Attribute+Representations&author=Trigeorgis,+G.&author=Bousmalis,+K.&author=Zafeiriou,+S.&author=Schuller,+B.W.&publication_year=2017&journal=IEEE+Trans.+Pattern+Anal.+Mach.+Intel.&volume=39&pages=417%E2%80%93429&doi=10.1109/TPAMI.2016.2554555" class='google-scholar' target='_blank' rel='noopener noreferrer'>Google Scholar</a>] [<a href="https://doi.org/10.1109/TPAMI.2016.2554555" class='cross-ref' target='_blank' rel='noopener noreferrer'>CrossRef</a>] [<a href="http://arxiv.org/pdf/1509.03248" target='_blank' rel="noopener noreferrer">Green Version</a>]</li><li id='B27-applsci-10-04926' class='html-xx' data-content='27.'>Guo, Z.; Zhang, S. Sparse deep nonnegative matrix factorization. <span class='html-italic'>Big Data Min. Anal.</span> <b>2020</b>, <span class='html-italic'>3</span>, 13–28. [<a href="https://scholar.google.com/scholar_lookup?title=Sparse+deep+nonnegative+matrix+factorization&author=Guo,+Z.&author=Zhang,+S.&publication_year=2020&journal=Big+Data+Min.+Anal.&volume=3&pages=13%E2%80%9328&doi=10.26599/BDMA.2019.9020020" class='google-scholar' target='_blank' rel='noopener noreferrer'>Google Scholar</a>] [<a href="https://doi.org/10.26599/BDMA.2019.9020020" class='cross-ref' target='_blank' rel='noopener noreferrer'>CrossRef</a>] [<a href="http://arxiv.org/pdf/1707.09316" target='_blank' rel="noopener noreferrer">Green Version</a>]</li><li id='B28-applsci-10-04926' class='html-xx' data-content='28.'>Sharma, P.; Abrol, V.; Sao, A.K. Deep-Sparse-Representation-Based Features for Speech Recognition. <span class='html-italic'>IEEE/ACM Trans. Audio Speech Lang. Process.</span> <b>2017</b>, <span class='html-italic'>25</span>, 2162–2175. [<a href="https://scholar.google.com/scholar_lookup?title=Deep-Sparse-Representation-Based+Features+for+Speech+Recognition&author=Sharma,+P.&author=Abrol,+V.&author=Sao,+A.K.&publication_year=2017&journal=IEEE/ACM+Trans.+Audio+Speech+Lang.+Process.&volume=25&pages=2162%E2%80%932175&doi=10.1109/TASLP.2017.2748240" class='google-scholar' target='_blank' rel='noopener noreferrer'>Google Scholar</a>] [<a href="https://doi.org/10.1109/TASLP.2017.2748240" class='cross-ref' target='_blank' rel='noopener noreferrer'>CrossRef</a>]</li><li id='B29-applsci-10-04926' class='html-xx' data-content='29.'>Mnih, A.; Salakhutdinov, R.R. Probabilistic matrix factorization. In <span class='html-italic'>Advances in Neural Information Processing Systems</span>; University of Toronto: Toronto, ON, Canada, 2008; pp. 1257–1264. [<a href="https://scholar.google.com/scholar_lookup?title=Probabilistic+matrix+factorization&author=Mnih,+A.&author=Salakhutdinov,+R.R.&publication_year=2008&pages=1257%E2%80%931264" class='google-scholar' target='_blank' rel='noopener noreferrer'>Google Scholar</a>]</li><li id='B30-applsci-10-04926' class='html-xx' data-content='30.'>Lee, D.D.; Seung, H.S. Algorithms for non-negative matrix factorization. In <span class='html-italic'>Advances in Neural Information Processing Systems</span>; University of Toronto: Toronto, ON, Canada, 2001; pp. 556–562. [<a href="https://scholar.google.com/scholar_lookup?title=Algorithms+for+non-negative+matrix+factorization&author=Lee,+D.D.&author=Seung,+H.S.&publication_year=2001&pages=556%E2%80%93562" class='google-scholar' target='_blank' rel='noopener noreferrer'>Google Scholar</a>]</li><li id='B31-applsci-10-04926' class='html-xx' data-content='31.'>Koren, Y. Factorization Meets the Neighborhood: A Multifaceted Collaborative Filtering Model. In Proceedings of the 14th ACM SIGKDD International Conference on Knowledge Discovery and Data Mining, Las Vegas, NV, USA, 24–27 August 2008; Association for Computing Machinery: New York, NY, USA, 2008; pp. 426–434. [<a href="https://scholar.google.com/scholar_lookup?title=Factorization+Meets+the+Neighborhood:+A+Multifaceted+Collaborative+Filtering+Model&conference=Proceedings+of+the+14th+ACM+SIGKDD+International+Conference+on+Knowledge+Discovery+and+Data+Mining&author=Koren,+Y.&publication_year=2008&pages=426%E2%80%93434" class='google-scholar' target='_blank' rel='noopener noreferrer'>Google Scholar</a>]</li><li id='B32-applsci-10-04926' class='html-xx' data-content='32.'>Bobadilla, J.; Hernando, A.; Ortega, F.; Bernal, J. A framework for collaborative filtering recommender systems. <span class='html-italic'>Expert Syst. Appl.</span> <b>2011</b>, <span class='html-italic'>38</span>, 14609–14623. [<a href="https://scholar.google.com/scholar_lookup?title=A+framework+for+collaborative+filtering+recommender+systems&author=Bobadilla,+J.&author=Hernando,+A.&author=Ortega,+F.&author=Bernal,+J.&publication_year=2011&journal=Expert+Syst.+Appl.&volume=38&pages=14609%E2%80%9314623&doi=10.1016/j.eswa.2011.05.021" class='google-scholar' target='_blank' rel='noopener noreferrer'>Google Scholar</a>] [<a href="https://doi.org/10.1016/j.eswa.2011.05.021" class='cross-ref' target='_blank' rel='noopener noreferrer'>CrossRef</a>] [<a href="http://oa.upm.es/15281/1/INVE_MEM_2011_123405.pdf" target='_blank' rel="noopener noreferrer">Green Version</a>]</li><li id='B33-applsci-10-04926' class='html-xx' data-content='33.'>Harper, F.M.; Konstan, J.A. The movielens datasets: History and context. <span class='html-italic'>ACM Trans. Interact. Intel. Syst.</span> <b>2015</b>, <span class='html-italic'>5</span>, 1–19. [<a href="https://scholar.google.com/scholar_lookup?title=The+movielens+datasets:+History+and+context&author=Harper,+F.M.&author=Konstan,+J.A.&publication_year=2015&journal=ACM+Trans.+Interact.+Intel.+Syst.&volume=5&pages=1%E2%80%9319&doi=10.1145/2827872" class='google-scholar' target='_blank' rel='noopener noreferrer'>Google Scholar</a>] [<a href="https://doi.org/10.1145/2827872" class='cross-ref' target='_blank' rel='noopener noreferrer'>CrossRef</a>]</li><li id='B34-applsci-10-04926' class='html-xx' data-content='34.'>Guo, G.; Zhang, J.; Yorke-Smith, N. A Novel Bayesian Similarity Measure for Recommender Systems. In Proceedings of the 23rd International Joint Conference on Artificial Intelligence (IJCAI), Beijing, China, 3–9 August 2013; pp. 2619–2625. [<a href="https://scholar.google.com/scholar_lookup?title=A+Novel+Bayesian+Similarity+Measure+for+Recommender+Systems&conference=Proceedings+of+the+23rd+International+Joint+Conference+on+Artificial+Intelligence+(IJCAI)&author=Guo,+G.&author=Zhang,+J.&author=Yorke-Smith,+N.&publication_year=2013&pages=2619%E2%80%932625" class='google-scholar' target='_blank' rel='noopener noreferrer'>Google Scholar</a>]</li><li id='B35-applsci-10-04926' class='html-xx' data-content='35.'>MyAnimeList.net. MyAnimeList Dataset. 2020. Available online: <a href='https://www.kaggle.com/azathoth42/myanimelist' target='_blank' rel="noopener noreferrer" >https://www.kaggle.com/azathoth42/myanimelist</a> (accessed on 18 May 2020).</li><li id='B36-applsci-10-04926' class='html-xx' data-content='36.'>Ortega, F.; Zhu, B.; Bobadilla, J.; Hernando, A. CF4J: Collaborative filtering for Java. <span class='html-italic'>Knowl. Based Syst.</span> <b>2018</b>, <span class='html-italic'>152</span>, 94–99. [<a href="https://scholar.google.com/scholar_lookup?title=CF4J:+Collaborative+filtering+for+Java&author=Ortega,+F.&author=Zhu,+B.&author=Bobadilla,+J.&author=Hernando,+A.&publication_year=2018&journal=Knowl.+Based+Syst.&volume=152&pages=94%E2%80%9399&doi=10.1016/j.knosys.2018.04.008" class='google-scholar' target='_blank' rel='noopener noreferrer'>Google Scholar</a>] [<a href="https://doi.org/10.1016/j.knosys.2018.04.008" class='cross-ref' target='_blank' rel='noopener noreferrer'>CrossRef</a>]</li></ol></section><section id='FiguresandTables' type='display-objects'><div class="html-fig-wrap" id="applsci-10-04926-f001"> <div class='html-fig_img'> <div class="html-figpopup html-figpopup-link" data-counterslinkmanual = "https://www.mdpi.com/2076-3417/10/14/4926/display" href="#fig_body_display_applsci-10-04926-f001"> <img alt="Applsci 10 04926 g001 550" data-large="/applsci/applsci-10-04926/article_deploy/html/images/applsci-10-04926-g001.png" data-original="/applsci/applsci-10-04926/article_deploy/html/images/applsci-10-04926-g001.png" data-lsrc="/applsci/applsci-10-04926/article_deploy/html/images/applsci-10-04926-g001-550.jpg" /> <a class="html-expand html-figpopup" data-counterslinkmanual = "https://www.mdpi.com/2076-3417/10/14/4926/display" href="#fig_body_display_applsci-10-04926-f001"></a> </div> </div> <div class="html-fig_description"> <b>Figure 1.</b> Illustrative explanation of proposed DeepMF method. <!-- <p><a class="html-figpopup" href="#fig_body_display_applsci-10-04926-f001"> Click here to enlarge figure </a></p> --> </div> </div> <div class="html-fig_show mfp-hide" id ="fig_body_display_applsci-10-04926-f001" > <div class="html-caption" > <b>Figure 1.</b> Illustrative explanation of proposed DeepMF method.</div> <div class="html-img"><img alt="Applsci 10 04926 g001" data-large="/applsci/applsci-10-04926/article_deploy/html/images/applsci-10-04926-g001.png" data-original="/applsci/applsci-10-04926/article_deploy/html/images/applsci-10-04926-g001.png" data-lsrc="/applsci/applsci-10-04926/article_deploy/html/images/applsci-10-04926-g001.png" /></div> </div><div class="html-fig-wrap" id="applsci-10-04926-f002"> <div class='html-fig_img'> <div class="html-figpopup html-figpopup-link" data-counterslinkmanual = "https://www.mdpi.com/2076-3417/10/14/4926/display" href="#fig_body_display_applsci-10-04926-f002"> <img alt="Applsci 10 04926 g002 550" data-large="/applsci/applsci-10-04926/article_deploy/html/images/applsci-10-04926-g002.png" data-original="/applsci/applsci-10-04926/article_deploy/html/images/applsci-10-04926-g002.png" data-lsrc="/applsci/applsci-10-04926/article_deploy/html/images/applsci-10-04926-g002-550.jpg" /> <a class="html-expand html-figpopup" data-counterslinkmanual = "https://www.mdpi.com/2076-3417/10/14/4926/display" href="#fig_body_display_applsci-10-04926-f002"></a> </div> </div> <div class="html-fig_description"> <b>Figure 2.</b> Quality of the recommendations measured by precision and recall. The higher the better. Blue number over the lines represents the size of the recommendation list for each value. <!-- <p><a class="html-figpopup" href="#fig_body_display_applsci-10-04926-f002"> Click here to enlarge figure </a></p> --> </div> </div> <div class="html-fig_show mfp-hide" id ="fig_body_display_applsci-10-04926-f002" > <div class="html-caption" > <b>Figure 2.</b> Quality of the recommendations measured by precision and recall. The higher the better. Blue number over the lines represents the size of the recommendation list for each value.</div> <div class="html-img"><img alt="Applsci 10 04926 g002" data-large="/applsci/applsci-10-04926/article_deploy/html/images/applsci-10-04926-g002.png" data-original="/applsci/applsci-10-04926/article_deploy/html/images/applsci-10-04926-g002.png" data-lsrc="/applsci/applsci-10-04926/article_deploy/html/images/applsci-10-04926-g002.png" /></div> </div><div class="html-fig-wrap" id="applsci-10-04926-f003"> <div class='html-fig_img'> <div class="html-figpopup html-figpopup-link" data-counterslinkmanual = "https://www.mdpi.com/2076-3417/10/14/4926/display" href="#fig_body_display_applsci-10-04926-f003"> <img alt="Applsci 10 04926 g003 550" data-large="/applsci/applsci-10-04926/article_deploy/html/images/applsci-10-04926-g003.png" data-original="/applsci/applsci-10-04926/article_deploy/html/images/applsci-10-04926-g003.png" data-lsrc="/applsci/applsci-10-04926/article_deploy/html/images/applsci-10-04926-g003-550.jpg" /> <a class="html-expand html-figpopup" data-counterslinkmanual = "https://www.mdpi.com/2076-3417/10/14/4926/display" href="#fig_body_display_applsci-10-04926-f003"></a> </div> </div> <div class="html-fig_description"> <b>Figure 3.</b> Average value of the predictions provided by each factorization according to its depth. Top 5 combinations of hyper-parameters for each dataset included in <a href="#applsci-10-04926-t003" class="html-table">Table 3</a> are shown. <!-- <p><a class="html-figpopup" href="#fig_body_display_applsci-10-04926-f003"> Click here to enlarge figure </a></p> --> </div> </div> <div class="html-fig_show mfp-hide" id ="fig_body_display_applsci-10-04926-f003" > <div class="html-caption" > <b>Figure 3.</b> Average value of the predictions provided by each factorization according to its depth. Top 5 combinations of hyper-parameters for each dataset included in <a href="#applsci-10-04926-t003" class="html-table">Table 3</a> are shown.</div> <div class="html-img"><img alt="Applsci 10 04926 g003" data-large="/applsci/applsci-10-04926/article_deploy/html/images/applsci-10-04926-g003.png" data-original="/applsci/applsci-10-04926/article_deploy/html/images/applsci-10-04926-g003.png" data-lsrc="/applsci/applsci-10-04926/article_deploy/html/images/applsci-10-04926-g003.png" /></div> </div><div class="html-table-wrap" id="applsci-10-04926-t001"> <div class="html-table_wrap_td" > <div class="html-tablepopup html-tablepopup-link" data-counterslinkmanual = "https://www.mdpi.com/2076-3417/10/14/4926/display" href='#table_body_display_applsci-10-04926-t001'> <img alt="Table" data-lsrc="https://www.mdpi.com/img/table.png" /> <a class="html-expand html-tablepopup" data-counterslinkmanual = "https://www.mdpi.com/2076-3417/10/14/4926/display" href="#table_body_display_applsci-10-04926-t001"></a> </div> </div> <div class="html-table_wrap_discription"> <b>Table 1.</b> Main parameters of the datasets used in the experiments. </div> </div> <div class="html-table_show mfp-hide " id ="table_body_display_applsci-10-04926-t001" > <div class="html-caption" ><b>Table 1.</b> Main parameters of the datasets used in the experiments.</div> <table > <thead ><tr ><th align='center' valign='middle' style='border-bottom:solid thin;border-top:solid thin' class='html-align-center' >Dataset</th><th align='center' valign='middle' style='border-bottom:solid thin;border-top:solid thin' class='html-align-center' >Number of Users</th><th align='center' valign='middle' style='border-bottom:solid thin;border-top:solid thin' class='html-align-center' >Number of Items</th><th align='center' valign='middle' style='border-bottom:solid thin;border-top:solid thin' class='html-align-center' >Number of Ratings</th><th align='center' valign='middle' style='border-bottom:solid thin;border-top:solid thin' class='html-align-center' >Number of Test Ratings</th><th align='center' valign='middle' style='border-bottom:solid thin;border-top:solid thin' class='html-align-center' >Possible Scores</th></tr></thead><tbody ><tr ><td align='center' valign='middle' class='html-align-center' >MovieLens 100K</td><td align='center' valign='middle' class='html-align-center' >943</td><td align='center' valign='middle' class='html-align-center' >1682</td><td align='center' valign='middle' class='html-align-center' >92,026</td><td align='center' valign='middle' class='html-align-center' >7974</td><td align='center' valign='middle' class='html-align-center' >1 to 5 stars</td></tr><tr ><td align='center' valign='middle' class='html-align-center' >MovieLens 1M</td><td align='center' valign='middle' class='html-align-center' >6040</td><td align='center' valign='middle' class='html-align-center' >3706</td><td align='center' valign='middle' class='html-align-center' >911,031</td><td align='center' valign='middle' class='html-align-center' >89,178</td><td align='center' valign='middle' class='html-align-center' >1 to 5 stars</td></tr><tr ><td align='center' valign='middle' class='html-align-center' >FilmTrust</td><td align='center' valign='middle' class='html-align-center' >1508</td><td align='center' valign='middle' class='html-align-center' >2071</td><td align='center' valign='middle' class='html-align-center' >32,675</td><td align='center' valign='middle' class='html-align-center' >2819</td><td align='center' valign='middle' class='html-align-center' >0.5 to 4.0 with half increments</td></tr><tr ><td align='center' valign='middle' style='border-bottom:solid thin' class='html-align-center' >MyAnimeList</td><td align='center' valign='middle' style='border-bottom:solid thin' class='html-align-center' >69,600</td><td align='center' valign='middle' style='border-bottom:solid thin' class='html-align-center' >9927</td><td align='center' valign='middle' style='border-bottom:solid thin' class='html-align-center' >5,788,207</td><td align='center' valign='middle' style='border-bottom:solid thin' class='html-align-center' >549,027</td><td align='center' valign='middle' style='border-bottom:solid thin' class='html-align-center' >1 to 10</td></tr></tbody> </table> </div><div class="html-table-wrap" id="applsci-10-04926-t002"> <div class="html-table_wrap_td" > <div class="html-tablepopup html-tablepopup-link" data-counterslinkmanual = "https://www.mdpi.com/2076-3417/10/14/4926/display" href='#table_body_display_applsci-10-04926-t002'> <img alt="Table" data-lsrc="https://www.mdpi.com/img/table.png" /> <a class="html-expand html-tablepopup" data-counterslinkmanual = "https://www.mdpi.com/2076-3417/10/14/4926/display" href="#table_body_display_applsci-10-04926-t002"></a> </div> </div> <div class="html-table_wrap_discription"> <b>Table 2.</b> Best hyper-parameters for each baseline found by a grid search optimization. </div> </div> <div class="html-table_show mfp-hide " id ="table_body_display_applsci-10-04926-t002" > <div class="html-caption" ><b>Table 2.</b> Best hyper-parameters for each baseline found by a grid search optimization.</div> <table > <thead ><tr ><th align='center' valign='middle' style='border-bottom:solid thin;border-top:solid thin' class='html-align-center' >Dataset</th><th align='center' valign='middle' style='border-bottom:solid thin;border-top:solid thin' class='html-align-center' >PMF</th><th align='center' valign='middle' style='border-bottom:solid thin;border-top:solid thin' class='html-align-center' >NMF</th><th align='center' valign='middle' style='border-bottom:solid thin;border-top:solid thin' class='html-align-center' >SVD++</th></tr></thead><tbody ><tr ><td align='center' valign='middle' class='html-align-center' >MovieLens 100K</td><td align='center' valign='middle' class='html-align-center' ><math display='inline'><semantics> <mrow> <mi>k</mi> <mo>=</mo> <mn>2</mn> </mrow> </semantics></math>, <math display='inline'><semantics> <mrow> <mi>γ</mi> <mo>=</mo> <mn>0.01</mn> </mrow> </semantics></math>, <math display='inline'><semantics> <mrow> <mi>λ</mi> <mo>=</mo> <mn>0.025</mn> </mrow> </semantics></math></td><td align='center' valign='middle' class='html-align-center' ><math display='inline'> <semantics> <mrow> <mi>k</mi> <mo>=</mo> <mn>2</mn> </mrow> </semantics> </math></td><td align='center' valign='middle' class='html-align-center' ><math display='inline'><semantics> <mrow> <mi>k</mi> <mo>=</mo> <mn>2</mn> </mrow> </semantics></math>, <math display='inline'><semantics> <mrow> <mi>γ</mi> <mo>=</mo> <mn>0.0014</mn> </mrow> </semantics></math>, <math display='inline'><semantics> <mrow> <mi>λ</mi> <mo>=</mo> <mn>0.08</mn> </mrow> </semantics></math></td></tr><tr ><td align='center' valign='middle' class='html-align-center' >MovieLens 1M</td><td align='center' valign='middle' class='html-align-center' ><math display='inline'><semantics> <mrow> <mi>k</mi> <mo>=</mo> <mn>8</mn> </mrow> </semantics></math>, <math display='inline'><semantics> <mrow> <mi>γ</mi> <mo>=</mo> <mn>0.01</mn> </mrow> </semantics></math>, <math display='inline'><semantics> <mrow> <mi>λ</mi> <mo>=</mo> <mn>0.045</mn> </mrow> </semantics></math></td><td align='center' valign='middle' class='html-align-center' ><math display='inline'> <semantics> <mrow> <mi>k</mi> <mo>=</mo> <mn>2</mn> </mrow> </semantics> </math></td><td align='center' valign='middle' class='html-align-center' ><math display='inline'><semantics> <mrow> <mi>k</mi> <mo>=</mo> <mn>4</mn> </mrow> </semantics></math>, <math display='inline'><semantics> <mrow> <mi>γ</mi> <mo>=</mo> <mn>0.0014</mn> </mrow> </semantics></math>, <math display='inline'><semantics> <mrow> <mi>λ</mi> <mo>=</mo> <mn>0.05</mn> </mrow> </semantics></math></td></tr><tr ><td align='center' valign='middle' class='html-align-center' >FilmTrust</td><td align='center' valign='middle' class='html-align-center' ><math display='inline'><semantics> <mrow> <mi>k</mi> <mo>=</mo> <mn>4</mn> </mrow> </semantics></math>, <math display='inline'><semantics> <mrow> <mi>γ</mi> <mo>=</mo> <mn>0.015</mn> </mrow> </semantics></math>, <math display='inline'><semantics> <mrow> <mi>λ</mi> <mo>=</mo> <mn>0.1</mn> </mrow> </semantics></math></td><td align='center' valign='middle' class='html-align-center' ><math display='inline'> <semantics> <mrow> <mi>k</mi> <mo>=</mo> <mn>2</mn> </mrow> </semantics> </math></td><td align='center' valign='middle' class='html-align-center' ><math display='inline'><semantics> <mrow> <mi>k</mi> <mo>=</mo> <mn>2</mn> </mrow> </semantics></math>, <math display='inline'><semantics> <mrow> <mi>γ</mi> <mo>=</mo> <mn>0.0014</mn> </mrow> </semantics></math>, <math display='inline'><semantics> <mrow> <mi>λ</mi> <mo>=</mo> <mn>0.1</mn> </mrow> </semantics></math></td></tr><tr ><td align='center' valign='middle' style='border-bottom:solid thin' class='html-align-center' >MyAnimeList</td><td align='center' valign='middle' style='border-bottom:solid thin' class='html-align-center' ><math display='inline'><semantics> <mrow> <mi>k</mi> <mo>=</mo> <mn>10</mn> </mrow> </semantics></math>, <math display='inline'><semantics> <mrow> <mi>γ</mi> <mo>=</mo> <mn>0.005</mn> </mrow> </semantics></math>, <math display='inline'><semantics> <mrow> <mi>λ</mi> <mo>=</mo> <mn>0.085</mn> </mrow> </semantics></math></td><td align='center' valign='middle' style='border-bottom:solid thin' class='html-align-center' ><math display='inline'> <semantics> <mrow> <mi>k</mi> <mo>=</mo> <mn>2</mn> </mrow> </semantics> </math></td><td align='center' valign='middle' style='border-bottom:solid thin' class='html-align-center' ><math display='inline'><semantics> <mrow> <mi>k</mi> <mo>=</mo> <mn>4</mn> </mrow> </semantics></math>, <math display='inline'><semantics> <mrow> <mi>γ</mi> <mo>=</mo> <mn>0.0014</mn> </mrow> </semantics></math>, <math display='inline'><semantics> <mrow> <mi>λ</mi> <mo>=</mo> <mn>0.02</mn> </mrow> </semantics></math></td></tr></tbody> </table> </div><div class="html-table-wrap" id="applsci-10-04926-t003"> <div class="html-table_wrap_td" > <div class="html-tablepopup html-tablepopup-link" data-counterslinkmanual = "https://www.mdpi.com/2076-3417/10/14/4926/display" href='#table_body_display_applsci-10-04926-t003'> <img alt="Table" data-lsrc="https://www.mdpi.com/img/table.png" /> <a class="html-expand html-tablepopup" data-counterslinkmanual = "https://www.mdpi.com/2076-3417/10/14/4926/display" href="#table_body_display_applsci-10-04926-t003"></a> </div> </div> <div class="html-table_wrap_discription"> <b>Table 3.</b> Top 5 results resulting from grid search optimization of DeepMF. </div> </div> <div class="html-table_show mfp-hide " id ="table_body_display_applsci-10-04926-t003" > <div class="html-caption" ><b>Table 3.</b> Top 5 results resulting from grid search optimization of DeepMF.</div> <table > <thead ><tr ><th align='center' valign='middle' style='border-bottom:solid thin;border-top:solid thin' class='html-align-center' >Dataset</th><th align='center' valign='middle' style='border-bottom:solid thin;border-top:solid thin' class='html-align-center' >Rank</th><th align='center' valign='middle' style='border-bottom:solid thin;border-top:solid thin' class='html-align-center' >Hyper-Parameters</th><th align='center' valign='middle' style='border-bottom:solid thin;border-top:solid thin' class='html-align-center' >MAE</th></tr></thead><tbody ><tr ><td rowspan='5' align='center' valign='middle' style='border-bottom:solid thin' class='html-align-center' >MovieLens 100K</td><td align='center' valign='middle' class='html-align-center' >1</td><td align='center' valign='middle' class='html-align-center' ><span class='html-italic'>K</span> = [3, 3, 3, 3]; <math display='inline'><semantics> <mrow> <mspace width="3.33333pt"/> <mo>Γ</mo> </mrow> </semantics></math>= [0.01, 0.1, 0.01, 0.1]; <math display='inline'><semantics> <mo>Λ</mo> </semantics></math> = [0.1, 0.01, 0.1, 0.01]</td><td align='center' valign='middle' class='html-align-center' >0.75017</td></tr><tr ><td align='center' valign='middle' class='html-align-center' >2</td><td align='center' valign='middle' class='html-align-center' ><span class='html-italic'>K</span> = [3, 3, 3, 9]; <math display='inline'><semantics> <mrow> <mspace width="3.33333pt"/> <mo>Γ</mo> </mrow> </semantics></math>= [0.01, 0.1, 0.01, 0.1]; <math display='inline'><semantics> <mo>Λ</mo> </semantics></math> = [0.1, 0.01, 0.1, 0.01]</td><td align='center' valign='middle' class='html-align-center' >0.75077</td></tr><tr ><td align='center' valign='middle' class='html-align-center' >3</td><td align='center' valign='middle' class='html-align-center' ><span class='html-italic'>K</span> = [3, 6, 6, 3]; <math display='inline'><semantics> <mrow> <mspace width="3.33333pt"/> <mo>Γ</mo> </mrow> </semantics></math>= [0.01, 0.1, 0.01, 0.1]; <math display='inline'><semantics> <mo>Λ</mo> </semantics></math> = [0.1, 0.01, 0.1, 0.01]</td><td align='center' valign='middle' class='html-align-center' >0.75079</td></tr><tr ><td align='center' valign='middle' class='html-align-center' >4</td><td align='center' valign='middle' class='html-align-center' ><span class='html-italic'>K</span> = [3, 3, 3]; <math display='inline'><semantics> <mrow> <mspace width="3.33333pt"/> <mo>Γ</mo> </mrow> </semantics></math>= [0.01, 0.1, 0.01]; <math display='inline'><semantics> <mo>Λ</mo> </semantics></math> = [0.1, 0.01, 0.1]</td><td align='center' valign='middle' class='html-align-center' >0.75092</td></tr><tr ><td align='center' valign='middle' style='border-bottom:solid thin' class='html-align-center' >5</td><td align='center' valign='middle' style='border-bottom:solid thin' class='html-align-center' ><span class='html-italic'>K</span> = [3, 3, 9, 9]; <math display='inline'><semantics> <mrow> <mspace width="3.33333pt"/> <mo>Γ</mo> </mrow> </semantics></math>= [0.01, 0.1, 0.01, 0.1]; <math display='inline'><semantics> <mo>Λ</mo> </semantics></math> = [0.1, 0.01, 0.1, 0.01]</td><td align='center' valign='middle' style='border-bottom:solid thin' class='html-align-center' >0.75105</td></tr><tr ><td rowspan='5' align='center' valign='middle' style='border-bottom:solid thin' class='html-align-center' >MovieLens 1M</td><td align='center' valign='middle' class='html-align-center' >1</td><td align='center' valign='middle' class='html-align-center' ><span class='html-italic'>K</span> = [9, 3, 3]; <math display='inline'><semantics> <mrow> <mspace width="3.33333pt"/> <mo>Γ</mo> </mrow> </semantics></math>= [0.01, 0.01, 0.01]; <math display='inline'><semantics> <mo>Λ</mo> </semantics></math> = [0.1, 0.01, 0.1]</td><td align='center' valign='middle' class='html-align-center' >0.70943</td></tr><tr ><td align='center' valign='middle' class='html-align-center' >2</td><td align='center' valign='middle' class='html-align-center' ><span class='html-italic'>K</span> = [9, 3, 9, 3]; <math display='inline'><semantics> <mrow> <mspace width="3.33333pt"/> <mo>Γ</mo> </mrow> </semantics></math>= [0.01, 0.01, 0.01, 0.1]; <math display='inline'><semantics> <mo>Λ</mo> </semantics></math> = [0.1, 0.01, 0.1, 0.01]</td><td align='center' valign='middle' class='html-align-center' >0.70948</td></tr><tr ><td align='center' valign='middle' class='html-align-center' >3</td><td align='center' valign='middle' class='html-align-center' ><span class='html-italic'>K</span> = [9, 3, 9]; <math display='inline'><semantics> <mrow> <mspace width="3.33333pt"/> <mo>Γ</mo> </mrow> </semantics></math>= [0.01, 0.01, 0.01]; <math display='inline'><semantics> <mo>Λ</mo> </semantics></math> = [0.1, 0.01, 0.1]</td><td align='center' valign='middle' class='html-align-center' >0.70949</td></tr><tr ><td align='center' valign='middle' class='html-align-center' >4</td><td align='center' valign='middle' class='html-align-center' ><span class='html-italic'>K</span> = [9, 3, 3, 9]; <math display='inline'><semantics> <mrow> <mspace width="3.33333pt"/> <mo>Γ</mo> </mrow> </semantics></math>= [0.01, 0.01, 0.01, 0.1]; <math display='inline'><semantics> <mo>Λ</mo> </semantics></math> = [0.1, 0.01, 0.1, 0.01]</td><td align='center' valign='middle' class='html-align-center' >0.70956</td></tr><tr ><td align='center' valign='middle' style='border-bottom:solid thin' class='html-align-center' >5</td><td align='center' valign='middle' style='border-bottom:solid thin' class='html-align-center' ><span class='html-italic'>K</span> = [9, 3, 3, 3]; <math display='inline'><semantics> <mrow> <mspace width="3.33333pt"/> <mo>Γ</mo> </mrow> </semantics></math>= [0.01, 0.01, 0.01, 0.1]; <math display='inline'><semantics> <mo>Λ</mo> </semantics></math> = [0.1, 0.01, 0.1, 0.01]</td><td align='center' valign='middle' style='border-bottom:solid thin' class='html-align-center' >0.70959</td></tr><tr ><td rowspan='5' align='center' valign='middle' style='border-bottom:solid thin' class='html-align-center' >FilmTrust</td><td align='center' valign='middle' class='html-align-center' >1</td><td align='center' valign='middle' class='html-align-center' ><span class='html-italic'>K</span> = [6, 6, 3]; <math display='inline'><semantics> <mrow> <mspace width="3.33333pt"/> <mo>Γ</mo> </mrow> </semantics></math>= [0.01, 0.1, 0.01]; <math display='inline'><semantics> <mo>Λ</mo> </semantics></math> = [0.1, 0.01, 0.01]</td><td align='center' valign='middle' class='html-align-center' >0.64936</td></tr><tr ><td align='center' valign='middle' class='html-align-center' >2</td><td align='center' valign='middle' class='html-align-center' ><span class='html-italic'>K</span> = [6, 6, 3]; <math display='inline'><semantics> <mrow> <mspace width="3.33333pt"/> <mo>Γ</mo> </mrow> </semantics></math>= [0.01, 0.1, 0.01]; <math display='inline'><semantics> <mo>Λ</mo> </semantics></math> = [0.1, 0.01, 0.1]</td><td align='center' valign='middle' class='html-align-center' >0.64987</td></tr><tr ><td align='center' valign='middle' class='html-align-center' >3</td><td align='center' valign='middle' class='html-align-center' ><span class='html-italic'>K</span> = [6, 3, 6]; <math display='inline'><semantics> <mrow> <mspace width="3.33333pt"/> <mo>Γ</mo> </mrow> </semantics></math>= [0.01, 0.1, 0.01]; <math display='inline'><semantics> <mo>Λ</mo> </semantics></math> = [0.1, 0.01, 0.1]</td><td align='center' valign='middle' class='html-align-center' >0.65072</td></tr><tr ><td align='center' valign='middle' class='html-align-center' >4</td><td align='center' valign='middle' class='html-align-center' ><span class='html-italic'>K</span> = [9, 3, 3]; <math display='inline'><semantics> <mrow> <mspace width="3.33333pt"/> <mo>Γ</mo> </mrow> </semantics></math>= [0.01, 0.1, 0.01]; <math display='inline'><semantics> <mo>Λ</mo> </semantics></math> = [0.1, 0.01, 0.1]</td><td align='center' valign='middle' class='html-align-center' >0.65088</td></tr><tr ><td align='center' valign='middle' style='border-bottom:solid thin' class='html-align-center' >5</td><td align='center' valign='middle' style='border-bottom:solid thin' class='html-align-center' ><span class='html-italic'>K</span> = [6, 6]; <math display='inline'><semantics> <mrow> <mspace width="3.33333pt"/> <mo>Γ</mo> </mrow> </semantics></math>= [0.01, 0.01]; <math display='inline'><semantics> <mo>Λ</mo> </semantics></math> = [0.1, 0.01]</td><td align='center' valign='middle' style='border-bottom:solid thin' class='html-align-center' >0.65102</td></tr><tr ><td rowspan='5' align='center' valign='middle' style='border-bottom:solid thin' class='html-align-center' >MyAnimeList</td><td align='center' valign='middle' class='html-align-center' >1</td><td align='center' valign='middle' class='html-align-center' ><span class='html-italic'>K</span> = [9, 6, 9, 6]; <math display='inline'><semantics> <mrow> <mspace width="3.33333pt"/> <mo>Γ</mo> </mrow> </semantics></math>= [0.01, 0.1, 0.01, 0.1]; <math display='inline'><semantics> <mo>Λ</mo> </semantics></math> = [0.1, 0.01, 0.1, 0.01]</td><td align='center' valign='middle' class='html-align-center' >0.97447</td></tr><tr ><td align='center' valign='middle' class='html-align-center' >2</td><td align='center' valign='middle' class='html-align-center' ><span class='html-italic'>K</span> = [9, 9, 6, 9]; <math display='inline'><semantics> <mrow> <mspace width="3.33333pt"/> <mo>Γ</mo> </mrow> </semantics></math>= [0.01, 0.1, 0.01, 0.1]; <math display='inline'><semantics> <mo>Λ</mo> </semantics></math> = [0.1, 0.01, 0.1, 0.01]</td><td align='center' valign='middle' class='html-align-center' >0.97452</td></tr><tr ><td align='center' valign='middle' class='html-align-center' >3</td><td align='center' valign='middle' class='html-align-center' ><span class='html-italic'>K</span> = [9, 6, 6, 6]; <math display='inline'><semantics> <mrow> <mspace width="3.33333pt"/> <mo>Γ</mo> </mrow> </semantics></math>= [0.01, 0.1, 0.01, 0.1]; <math display='inline'><semantics> <mo>Λ</mo> </semantics></math> = [0.1, 0.01, 0.1, 0.01]</td><td align='center' valign='middle' class='html-align-center' >0.97454</td></tr><tr ><td align='center' valign='middle' class='html-align-center' >4</td><td align='center' valign='middle' class='html-align-center' ><span class='html-italic'>K</span> = [9, 6, 6, 9]; <math display='inline'><semantics> <mrow> <mspace width="3.33333pt"/> <mo>Γ</mo> </mrow> </semantics></math>= [0.01, 0.1, 0.01, 0.1]; <math display='inline'><semantics> <mo>Λ</mo> </semantics></math> = [0.1, 0.01, 0.1, 0.01]</td><td align='center' valign='middle' class='html-align-center' >0.97454</td></tr><tr ><td align='center' valign='middle' style='border-bottom:solid thin' class='html-align-center' >5</td><td align='center' valign='middle' style='border-bottom:solid thin' class='html-align-center' ><span class='html-italic'>K</span> = [9, 9, 9, 6]; <math display='inline'><semantics> <mrow> <mspace width="3.33333pt"/> <mo>Γ</mo> </mrow> </semantics></math>= [0.01, 0.1, 0.01, 0.1]; <math display='inline'><semantics> <mo>Λ</mo> </semantics></math> = [0.1, 0.01, 0.1, 0.01]</td><td align='center' valign='middle' style='border-bottom:solid thin' class='html-align-center' >0.97458</td></tr></tbody> </table> </div><div class="html-table-wrap" id="applsci-10-04926-t004"> <div class="html-table_wrap_td" > <div class="html-tablepopup html-tablepopup-link" data-counterslinkmanual = "https://www.mdpi.com/2076-3417/10/14/4926/display" href='#table_body_display_applsci-10-04926-t004'> <img alt="Table" data-lsrc="https://www.mdpi.com/img/table.png" /> <a class="html-expand html-tablepopup" data-counterslinkmanual = "https://www.mdpi.com/2076-3417/10/14/4926/display" href="#table_body_display_applsci-10-04926-t004"></a> </div> </div> <div class="html-table_wrap_discription"> <b>Table 4.</b> Quality of the predictions measured by the <span class='html-small-caps'>mae</span>. The lower the better. In bold the best recommendation model for each dataset. </div> </div> <div class="html-table_show mfp-hide " id ="table_body_display_applsci-10-04926-t004" > <div class="html-caption" ><b>Table 4.</b> Quality of the predictions measured by the <span class='html-small-caps'>mae</span>. The lower the better. In bold the best recommendation model for each dataset.</div> <table > <thead ><tr ><th align='center' valign='middle' style='border-bottom:solid thin;border-top:solid thin' class='html-align-center' >Dataset</th><th align='center' valign='middle' style='border-bottom:solid thin;border-top:solid thin' class='html-align-center' >DeepMF</th><th align='center' valign='middle' style='border-bottom:solid thin;border-top:solid thin' class='html-align-center' >PMF</th><th align='center' valign='middle' style='border-bottom:solid thin;border-top:solid thin' class='html-align-center' >NMF</th><th align='center' valign='middle' style='border-bottom:solid thin;border-top:solid thin' class='html-align-center' >SVD++</th></tr></thead><tbody ><tr ><td align='center' valign='middle' class='html-align-center' >MovieLens 100K</td><td align='center' valign='middle' class='html-align-center' ><b>0.75017</b></td><td align='center' valign='middle' class='html-align-center' >0.76720</td><td align='center' valign='middle' class='html-align-center' >0.79138</td><td align='center' valign='middle' class='html-align-center' >0.78170</td></tr><tr ><td align='center' valign='middle' class='html-align-center' >MovieLens 1M</td><td align='center' valign='middle' class='html-align-center' ><b>0.70943</b></td><td align='center' valign='middle' class='html-align-center' >0.71868</td><td align='center' valign='middle' class='html-align-center' >0.75166</td><td align='center' valign='middle' class='html-align-center' >0.74285</td></tr><tr ><td align='center' valign='middle' class='html-align-center' >FilmTrust</td><td align='center' valign='middle' class='html-align-center' ><b>0.64936</b></td><td align='center' valign='middle' class='html-align-center' >0.84659</td><td align='center' valign='middle' class='html-align-center' >0.82911</td><td align='center' valign='middle' class='html-align-center' >0.65748</td></tr><tr ><td align='center' valign='middle' style='border-bottom:solid thin' class='html-align-center' >MyAnimeList</td><td align='center' valign='middle' style='border-bottom:solid thin' class='html-align-center' >0.97447</td><td align='center' valign='middle' style='border-bottom:solid thin' class='html-align-center' >1.10006</td><td align='center' valign='middle' style='border-bottom:solid thin' class='html-align-center' >1.12025</td><td align='center' valign='middle' style='border-bottom:solid thin' class='html-align-center' ><b>0.95179</b></td></tr></tbody> </table> </div></section> <section id="html-copyright"><br>© 2020 by the authors. Licensee MDPI, Basel, Switzerland. This article is an open access article distributed under the terms and conditions of the Creative Commons Attribution (CC BY) license (<a href='http://creativecommons.org/licenses/by/4.0/' target='_blank' rel="noopener noreferrer" >http://creativecommons.org/licenses/by/4.0/</a>).</section> </div> </div> <div class="additional-content"> <h2><a name="cite"></a>Share and Cite</h2> <div class="social-media-links" style="text-align: left;"> <a href="/cdn-cgi/l/email-protection#5f60793e322f642c2a3d353a3c2b62192d30327a6d6f121b0f167a6c1e7a6d6f7a6d6d1b3a3a2f7a6d6f123e2b2d36277a6d6f193e3c2b302d36253e2b3630317a6d6f1e2f2f2d303e3c377a6d6f39302d7a6d6f1c3033333e3d302d3e2b36293a7a6d6f1936332b3a2d3631387a6d6f0d3a3c3032323a313b3a2d7a6d6f0c262c2b3a322c792e2a302b64793e322f643d303b2662372b2b2f2c65707028282871323b2f36713c30327068686e666c6f7a6c1e7a6f1e7a6f1e1b3a3a2f7a6d6f123e2b2d36277a6d6f193e3c2b302d36253e2b3630317a6d6f1e2f2f2d303e3c377a6d6f39302d7a6d6f1c3033333e3d302d3e2b36293a7a6d6f1936332b3a2d3631387a6d6f0d3a3c3032323a313b3a2d7a6d6f0c262c2b3a322c7a6f1e7a6f1e1e3d2c2b2d3e3c2b7a6c1e7a6d6f0f2d3029363b3631387a6d6f2a2c3a392a337a6d6f363139302d323e2b3630317a6d6f2b307a6d6f2b373a7a6d6f2a2c3a2d2c7a6d6f3d267a6d6f2d3a3c3032323a313b3631387a6d6f3736383733267a6d6f3b3a323e313b3a3b7a6d6f2f2d303b2a3c2b2c7a6d6f3e313b7a6d6f2c3a2d29363c3a2c7a6d6f362c7a6d6f3e7a6d6f392a313b3e323a312b3e337a6d6f2f3e2d2b7a6d6f30397a6d6f2b373a7a6d6f3d2a2c36313a2c2c7a6d6f30397a6d6f323e31267a6d6f2b302f7a6d6f2b363a2d7a6d6f3c30322f3e31363a2c717a6d6f0d3a3c3032323a313b3a2d7a6d6f0c262c2b3a322c7a6d6f323e343a7a6d6f2a2c3a7a6d6f30397a6d6f323e31267a6d6f2c302a2d3c3a2c7a6d6f30397a6d6f363139302d323e2b3630317a6d6f2b307a6d6f2f2d3029363b3a7a6d6f2a2c3a2d2c7a6d6f28362b377a6d6f3e3c3c2a2d3e2b3a7a6d6f2f2d3a3b363c2b3630312c7a6d6f3e313b7a6d6f3130293a337a6d6f2d3a3c3032323a313b3e2b3630312c7a6d6f30397a6d6f362b3a322c717a6d6f173a2d3a7a6d6f283a7a6d6f2f2d302f302c3a7a6d1c7a6d6f1b3a3a2f12197a6d1c7a6d6f3e7a6d6f3130293a337a6d6f3c3033333e3d302d3e2b36293a7a6d6f3936332b3a2d3631387a6d6f323a2b37303b7a6d6f2b373e2b7a6d6f3c30323d36313a2c7a6d6f2b373a7a6d6f1b3a3a2f7a6d6f133a3e2d313631387a6d6f2f3e2d3e3b3638327a6d6f28362b377a6d6f123e2b2d36277a6d6f193e3c2b302d36253e2b3630317a6d6f7a6d6712197a6d667a6d6f2b307a6d6f36322f2d30293a7a6d6f2b373a7a6d6f2e2a3e33362b267a6d6f30397a6d6f3d302b377a6d6f2f2d3a3b363c2b3630312c7a6d6f3e313b7a6d6f2d3a3c3032323a313b3e2b3630312c7a6d6f323e3b3a7a6d6f2b307a6d6f2b373a7a6d6f2a2c3a2d717a6d6f0c2f3a3c3639363c3e3333267a6d1c7a6d6f1b3a3a2f12197a6d6f2f3a2d39302d322c7a6d6f2c2a3c3c3a2c2c36293a7a6d6f2d3a3936313a323a312b2c7a6d6f30397a6d6f3e7a6d6f12197a6d6f32303b3a337a6d6f28362b377a6d6f3e7a6d6f333e263a2d3a3b7a6d6f3e2d3c37362b3a3c2b2a2d3a7a6d6f2b373e2b7a6d6f2a2c3a2c7a6d6f2b373a7a6d6f3e3c2e2a362d3a3b7a6d6f34313028333a3b383a7a6d6f36317a6d6f3e7a6d6f333e263a2d7a6d6f3e2c7a6d6f36312f2a2b7a6d6f39302d7a6d6f2c2a3d2c3a2e2a3a312b7a6d6f333e263a2d2c717a6d6f1a272f3a2d36323a312b3e337a6d6f2d3a2c2a332b2c7a6d6f2c3730283a3b7a6d6f2b373e2b7a6d6f2b373a7a6d6f2e2a3e33362b267a6d6f30397a6d6f3d302b377a6d6f2b373a7a6d6f2f2d3a3b363c2b3630312c7a6d6f3e313b7a6d6f2d3a3c3032323a313b3e2b3630312c7a6d6f30397a6d6f1b3a3a2f12197a6d6f30293a2d3c30323a7a6d6f2b373a7a6d6f3d3e2c3a3336313a2c71" title="Email"> <i class="fa fa-envelope-square" style="font-size: 30px;"></i> </a> <a href="https://twitter.com/intent/tweet?text=Deep+Matrix+Factorization+Approach+for+Collaborative+Filtering+Recommender+Systems&hashtags=mdpiapplsci&url=https%3A%2F%2Fwww.mdpi.com%2F771930&via=Applsci" onclick="windowOpen(this.href,600,800); return false" target="_blank" rel="noopener noreferrer"> <i class="fa fa-twitter-x-square" style="font-size: 30px;"></i> </a> <a href=" http://www.linkedin.com/shareArticle?mini=true&url=https%3A%2F%2Fwww.mdpi.com%2F771930&title=Deep%20Matrix%20Factorization%20Approach%20for%20Collaborative%20Filtering%20Recommender%20Systems%26source%3Dhttps%3A%2F%2Fwww.mdpi.com%26summary%3DProviding%20useful%20information%20to%20the%20users%20by%20recommending%20highly%20demanded%20products%20and%20services%20is%20a%20fundamental%20part%20of%20the%20business%20of%20many%20top%20tier%20companies.%20Recommender%20Systems%20make%20use%20of%20many%20sources%20of%20information%20to%20provide%20users%20with%20%5B...%5D" onclick="windowOpen(this.href,600,800); return false" title="LinkedIn" target="_blank" rel="noopener noreferrer"> <i class="fa fa-linkedin-square" style="font-size: 30px;"></i> </a> <a href="https://www.facebook.com/sharer.php?u=https://www.mdpi.com/771930" title="facebook" target="_blank" rel="noopener noreferrer"> <i class="fa fa-facebook-square" style="font-size: 30px;"></i> </a> <a href="javascript:void(0);" title="Wechat" data-reveal-id="weixin-share-modal"> <i class="fa fa-weixin-square" style="font-size: 26px;"></i> </a> <a href="http://www.reddit.com/submit?url=https://www.mdpi.com/771930" title="Reddit" target="_blank" rel="noopener noreferrer"> <i class="fa fa-reddit-square" style="font-size: 30px;"></i> </a> <a href="http://www.mendeley.com/import/?url=https://www.mdpi.com/771930" title="Mendeley" target="_blank" rel="noopener noreferrer"> <i class="fa fa-mendeley-square" style="font-size: 30px;"></i> </a> </div> <div class="in-tab" style="padding-top: 0px!important; margin-top: 15px;"> <div><b>MDPI and ACS Style</b></div> <p> Lara-Cabrera, R.; González-Prieto, Á.; Ortega, F. Deep Matrix Factorization Approach for Collaborative Filtering Recommender Systems. <em>Appl. Sci.</em> <b>2020</b>, <em>10</em>, 4926. https://doi.org/10.3390/app10144926 </p> <div style="display: block"> <b>AMA Style</b><br> <p> Lara-Cabrera R, González-Prieto Á, Ortega F. Deep Matrix Factorization Approach for Collaborative Filtering Recommender Systems. <em>Applied Sciences</em>. 2020; 10(14):4926. https://doi.org/10.3390/app10144926 </p> <b>Chicago/Turabian Style</b><br> <p> Lara-Cabrera, Raúl, Ángel González-Prieto, and Fernando Ortega. 2020. "Deep Matrix Factorization Approach for Collaborative Filtering Recommender Systems" <em>Applied Sciences</em> 10, no. 14: 4926. https://doi.org/10.3390/app10144926 </p> <b>APA Style</b><br> <p> Lara-Cabrera, R., González-Prieto, Á., & Ortega, F. (2020). Deep Matrix Factorization Approach for Collaborative Filtering Recommender Systems. <em>Applied Sciences</em>, <em>10</em>(14), 4926. https://doi.org/10.3390/app10144926 </p> </div> </div> <div class="info-box no-margin"> Note that from the first issue of 2016, this journal uses article numbers instead of page numbers. See further details <a target="_blank" href="https://www.mdpi.com/about/announcements/784">here</a>. </div> <h2><a name="metrics"></a>Article Metrics</h2> <div class="row"> <div class="small-12 columns"> <div id="loaded_cite_count" style="display:none">No</div> <div id="framed_div_cited_count" class="in-tab" style="display: none; overflow: auto;"></div> <div id="loaded" style="display:none">No</div> <div id="framed_div" class="in-tab" style="display: none; margin-top: 10px;"></div> </div> <div class="small-12 columns"> <div id="article_stats_div" style="display: none; margin-bottom: 1em;"> <h3>Article Access Statistics</h3> <div id="article_stats_swf" ></div> For more information on the journal statistics, click <a href="/journal/applsci/stats">here</a>. <div class="info-box"> Multiple requests from the same IP address are counted as one view. </div> </div> </div> </div> </div> </div> </article> </div> </div></div> <div class="webpymol-controls webpymol-controls-template" style="margin-top: 10px; display: none;"> <a class="bzoom">Zoom</a> <span style="display: inline-block; margin-left: 5px; margin-right: 5px;">|</span> <a class="borient"> Orient </a> <span style="display: inline-block; margin-left: 5px; margin-right: 5px;">|</span> <a class="blines"> As Lines </a> <span style="display: inline-block; margin-left: 5px; margin-right: 5px;">|</span> <a class="bsticks"> As Sticks </a> <span style="display: inline-block; margin-left: 5px; margin-right: 5px;">|</span> <a class="bcartoon"> As Cartoon </a> <span style="display: inline-block; margin-left: 5px; margin-right: 5px;">|</span> <a class="bsurface"> As Surface </a> <span style="display: inline-block; margin-left: 5px; margin-right: 5px;">|</span> <a class="bprevscene">Previous Scene</a> <span style="display: inline-block; margin-left: 5px; margin-right: 5px;">|</span> <a class="bnextscene">Next Scene</a> </div> <div id="scifeed-modal" class="reveal-modal reveal-modal-new" data-reveal aria-labelledby="modalTitle" aria-hidden="true" role="dialog"> </div> <div id="recommended-articles-modal" class="reveal-modal reveal-modal-new" data-reveal aria-labelledby="modalTitle" aria-hidden="true" role="dialog"> </div> <div id="author-biographies-modal" class="reveal-modal reveal-modal-new" data-reveal aria-labelledby="modalTitle" aria-hidden="true" role="dialog"> </div> <div id="cite-modal" class="reveal-modal reveal-modal-new" data-reveal aria-labelledby="Captcha" aria-hidden="true" role="dialog"> <div class="row"> <div class="small-12 columns"> <h2 style="margin: 0;">Cite</h2> </div> <div class="small-12 columns"> <!-- BibTeX --> <form style="margin:0; padding:0; display:inline;" name="export-bibtex" method="POST" action="/export"> <input type="hidden" name="articles_ids[]" value="385965"> <input type="hidden" name="export_format_top" value="bibtex"> <input type="hidden" name="export_submit_top" value=""> </form> <!-- EndNote --> <form style="margin:0; padding:0; display:inline;" name="export-endnote" method="POST" action="/export"> <input type="hidden" name="articles_ids[]" value="385965"> <input type="hidden" name="export_format_top" value="endnote_no_abstract"> <input type="hidden" name="export_submit_top" value=""> </form> <!-- RIS --> <form style="margin:0; padding:0; display:inline;" name="export-ris" method="POST" action="/export"> <input type="hidden" name="articles_ids[]" value="385965"> <input type="hidden" name="export_format_top" value="ris"> <input type="hidden" name="export_submit_top" value=""> </form> <div> Export citation file: <a href="javascript:window.document.forms['export-bibtex'].submit()">BibTeX</a> | <a href="javascript:window.document.forms['export-endnote'].submit()">EndNote</a> | <a href="javascript:window.document.forms['export-ris'].submit()">RIS</a> </div> </div> <div class="small-12 columns"> <div class="in-tab"> <div><b>MDPI and ACS Style</b></div> <p> Lara-Cabrera, R.; González-Prieto, Á.; Ortega, F. Deep Matrix Factorization Approach for Collaborative Filtering Recommender Systems. <em>Appl. Sci.</em> <b>2020</b>, <em>10</em>, 4926. https://doi.org/10.3390/app10144926 </p> <div style="display: block"> <b>AMA Style</b><br> <p> Lara-Cabrera R, González-Prieto Á, Ortega F. Deep Matrix Factorization Approach for Collaborative Filtering Recommender Systems. <em>Applied Sciences</em>. 2020; 10(14):4926. https://doi.org/10.3390/app10144926 </p> <b>Chicago/Turabian Style</b><br> <p> Lara-Cabrera, Raúl, Ángel González-Prieto, and Fernando Ortega. 2020. "Deep Matrix Factorization Approach for Collaborative Filtering Recommender Systems" <em>Applied Sciences</em> 10, no. 14: 4926. https://doi.org/10.3390/app10144926 </p> <b>APA Style</b><br> <p> Lara-Cabrera, R., González-Prieto, Á., & Ortega, F. (2020). Deep Matrix Factorization Approach for Collaborative Filtering Recommender Systems. <em>Applied Sciences</em>, <em>10</em>(14), 4926. https://doi.org/10.3390/app10144926 </p> </div> </div> <div class="info-box no-margin"> Note that from the first issue of 2016, this journal uses article numbers instead of page numbers. See further details <a target="_blank" href="https://www.mdpi.com/about/announcements/784">here</a>. </div> </div> </div> <a class="close-reveal-modal" aria-label="Close"> <i class="material-icons">clear</i> </a> </div> </div> </div> </div> </div> </section> <div id="footer"> <div class="journal-info"> <span> <em><a class="Var_JournalInfo" href="/journal/applsci">Appl. Sci.</a></em>, EISSN 2076-3417, Published by MDPI </span> <div class="large-right"> <span> <a href="/rss/journal/applsci" class="rss-link">RSS</a> </span> <span> <a href="/journal/applsci/toc-alert">Content Alert</a> </span> </div> </div> <div class="row full-width footer-links" data-equalizer="footer" data-equalizer-mq="small"> <div class="large-2 large-push-4 medium-3 small-6 columns" data-equalizer-watch="footer"> <h3> Further Information </h3> <a href="/apc"> Article Processing Charges </a> <a href="/about/payment"> Pay an Invoice </a> <a href="/openaccess"> Open Access Policy </a> <a href="/about/contact"> Contact MDPI </a> <a href="https://careers.mdpi.com" target="_blank" rel="noopener noreferrer"> Jobs at MDPI </a> </div> <div class="large-2 large-push-4 medium-3 small-6 columns" data-equalizer-watch="footer"> <h3> Guidelines </h3> <a href="/authors"> For Authors </a> <a href="/reviewers"> For Reviewers </a> <a href="/editors"> For Editors </a> <a href="/librarians"> For Librarians </a> <a href="/publishing_services"> For Publishers </a> <a href="/societies"> For Societies </a> <a href="/conference_organizers"> For Conference Organizers </a> </div> <div class="large-2 large-push-4 medium-3 small-6 columns"> <h3> MDPI Initiatives </h3> <a href="https://sciforum.net" target="_blank" rel="noopener noreferrer"> Sciforum </a> <a href="https://www.mdpi.com/books" target="_blank" rel="noopener noreferrer"> MDPI Books </a> <a href="https://www.preprints.org" target="_blank" rel="noopener noreferrer"> Preprints.org </a> <a href="https://www.scilit.net" target="_blank" rel="noopener noreferrer"> Scilit </a> <a href="https://sciprofiles.com?utm_source=mpdi.com&utm_medium=bottom_menu&utm_campaign=initiative" target="_blank" rel="noopener noreferrer"> SciProfiles </a> <a href="https://encyclopedia.pub" target="_blank" rel="noopener noreferrer"> Encyclopedia </a> <a href="https://jams.pub" target="_blank" rel="noopener noreferrer"> JAMS </a> <a href="/about/proceedings"> Proceedings Series </a> </div> <div class="large-2 large-push-4 medium-3 small-6 right-border-large-without columns UA_FooterFollowMDPI"> <h3> Follow MDPI </h3> <a href="https://www.linkedin.com/company/mdpi" target="_blank" rel="noopener noreferrer"> LinkedIn </a> <a href="https://www.facebook.com/MDPIOpenAccessPublishing" target="_blank" rel="noopener noreferrer"> Facebook </a> <a href="https://twitter.com/MDPIOpenAccess" target="_blank" rel="noopener noreferrer"> Twitter </a> </div> <div id="footer-subscribe" class="large-4 large-pull-8 medium-12 small-12 left-border-large columns"> <div class="footer-subscribe__container"> <img class="show-for-large-up" src="https://pub.mdpi-res.com/img/design/mdpi-pub-logo-white-small.png?71d18e5f805839ab?1732286508" alt="MDPI" title="MDPI Open Access Journals" style="height: 50px; margin-bottom: 10px;"> <form id="newsletter" method="POST" action="/subscribe"> <p> Subscribe to receive issue release notifications and newsletters from MDPI journals </p> <select multiple id="newsletter-journal" class="foundation-select" name="journals[]"> <option value="acoustics">Acoustics</option> <option value="amh">Acta Microbiologica Hellenica</option> <option value="actuators">Actuators</option> <option value="admsci">Administrative Sciences</option> <option value="adolescents">Adolescents</option> <option value="arm">Advances in Respiratory Medicine</option> <option value="aerobiology">Aerobiology</option> <option value="aerospace">Aerospace</option> <option value="agriculture">Agriculture</option> <option value="agriengineering">AgriEngineering</option> <option value="agrochemicals">Agrochemicals</option> <option value="agronomy">Agronomy</option> <option value="ai">AI</option> <option value="air">Air</option> <option value="algorithms">Algorithms</option> <option value="allergies">Allergies</option> <option value="alloys">Alloys</option> <option value="analytica">Analytica</option> <option value="analytics">Analytics</option> <option value="anatomia">Anatomia</option> <option value="anesthres">Anesthesia Research</option> <option value="animals">Animals</option> <option value="antibiotics">Antibiotics</option> <option value="antibodies">Antibodies</option> <option value="antioxidants">Antioxidants</option> <option value="applbiosci">Applied Biosciences</option> <option value="applmech">Applied Mechanics</option> <option value="applmicrobiol">Applied Microbiology</option> <option value="applnano">Applied Nano</option> <option value="applsci">Applied Sciences</option> <option value="asi">Applied System Innovation</option> <option value="appliedchem">AppliedChem</option> <option value="appliedmath">AppliedMath</option> <option value="aquacj">Aquaculture Journal</option> <option value="architecture">Architecture</option> <option value="arthropoda">Arthropoda</option> <option value="arts">Arts</option> <option value="astronomy">Astronomy</option> <option value="atmosphere">Atmosphere</option> <option value="atoms">Atoms</option> <option value="audiolres">Audiology Research</option> <option value="automation">Automation</option> <option value="axioms">Axioms</option> <option value="bacteria">Bacteria</option> <option value="batteries">Batteries</option> <option value="behavsci">Behavioral Sciences</option> <option value="beverages">Beverages</option> <option value="BDCC">Big Data and Cognitive Computing</option> <option value="biochem">BioChem</option> <option value="bioengineering">Bioengineering</option> <option value="biologics">Biologics</option> <option value="biology">Biology</option> <option value="blsf">Biology and Life Sciences Forum</option> <option value="biomass">Biomass</option> <option value="biomechanics">Biomechanics</option> <option value="biomed">BioMed</option> <option value="biomedicines">Biomedicines</option> <option value="biomedinformatics">BioMedInformatics</option> <option value="biomimetics">Biomimetics</option> <option value="biomolecules">Biomolecules</option> <option value="biophysica">Biophysica</option> <option value="biosensors">Biosensors</option> <option value="biotech">BioTech</option> <option value="birds">Birds</option> <option value="blockchains">Blockchains</option> <option value="brainsci">Brain Sciences</option> <option value="buildings">Buildings</option> <option value="businesses">Businesses</option> <option value="carbon">C</option> <option value="cancers">Cancers</option> <option value="cardiogenetics">Cardiogenetics</option> <option value="catalysts">Catalysts</option> <option value="cells">Cells</option> <option value="ceramics">Ceramics</option> <option value="challenges">Challenges</option> <option value="ChemEngineering">ChemEngineering</option> <option value="chemistry">Chemistry</option> <option value="chemproc">Chemistry Proceedings</option> <option value="chemosensors">Chemosensors</option> <option value="children">Children</option> <option value="chips">Chips</option> <option value="civileng">CivilEng</option> <option value="cleantechnol">Clean Technologies</option> <option value="climate">Climate</option> <option value="ctn">Clinical and Translational Neuroscience</option> <option value="clinbioenerg">Clinical Bioenergetics</option> <option value="clinpract">Clinics and Practice</option> <option value="clockssleep">Clocks & Sleep</option> <option value="coasts">Coasts</option> <option value="coatings">Coatings</option> <option value="colloids">Colloids and Interfaces</option> <option value="colorants">Colorants</option> <option value="commodities">Commodities</option> <option value="complications">Complications</option> <option value="compounds">Compounds</option> <option value="computation">Computation</option> <option value="csmf">Computer Sciences & Mathematics Forum</option> <option value="computers">Computers</option> <option value="condensedmatter">Condensed Matter</option> <option value="conservation">Conservation</option> <option value="constrmater">Construction Materials</option> <option value="cmd">Corrosion and Materials Degradation</option> <option value="cosmetics">Cosmetics</option> <option value="covid">COVID</option> <option value="crops">Crops</option> <option value="cryo">Cryo</option> <option value="cryptography">Cryptography</option> <option value="crystals">Crystals</option> <option value="cimb">Current Issues in Molecular Biology</option> <option value="curroncol">Current Oncology</option> <option value="dairy">Dairy</option> <option value="data">Data</option> <option value="dentistry">Dentistry Journal</option> <option value="dermato">Dermato</option> <option value="dermatopathology">Dermatopathology</option> <option value="designs">Designs</option> <option value="diabetology">Diabetology</option> <option value="diagnostics">Diagnostics</option> <option value="dietetics">Dietetics</option> <option value="digital">Digital</option> <option value="disabilities">Disabilities</option> <option value="diseases">Diseases</option> <option value="diversity">Diversity</option> <option value="dna">DNA</option> <option value="drones">Drones</option> <option value="ddc">Drugs and Drug Candidates</option> <option value="dynamics">Dynamics</option> <option value="earth">Earth</option> <option value="ecologies">Ecologies</option> <option value="econometrics">Econometrics</option> <option value="economies">Economies</option> <option value="education">Education Sciences</option> <option value="electricity">Electricity</option> <option value="electrochem">Electrochem</option> <option value="electronicmat">Electronic Materials</option> <option value="electronics">Electronics</option> <option value="ecm">Emergency Care and Medicine</option> <option value="encyclopedia">Encyclopedia</option> <option value="endocrines">Endocrines</option> <option value="energies">Energies</option> <option value="esa">Energy Storage and Applications</option> <option value="eng">Eng</option> <option value="engproc">Engineering Proceedings</option> <option value="entropy">Entropy</option> <option value="environsciproc">Environmental Sciences Proceedings</option> <option value="environments">Environments</option> <option value="epidemiologia">Epidemiologia</option> <option value="epigenomes">Epigenomes</option> <option value="ebj">European Burn Journal</option> <option value="ejihpe">European Journal of Investigation in Health, Psychology and Education</option> <option value="fermentation">Fermentation</option> <option value="fibers">Fibers</option> <option value="fintech">FinTech</option> <option value="fire">Fire</option> <option value="fishes">Fishes</option> <option value="fluids">Fluids</option> <option value="foods">Foods</option> <option value="forecasting">Forecasting</option> <option value="forensicsci">Forensic Sciences</option> <option value="forests">Forests</option> <option value="fossstud">Fossil Studies</option> <option value="foundations">Foundations</option> <option value="fractalfract">Fractal and Fractional</option> <option value="fuels">Fuels</option> <option value="future">Future</option> <option value="futureinternet">Future Internet</option> <option value="futurepharmacol">Future Pharmacology</option> <option value="futuretransp">Future Transportation</option> <option value="galaxies">Galaxies</option> <option value="games">Games</option> <option value="gases">Gases</option> <option value="gastroent">Gastroenterology Insights</option> <option value="gastrointestdisord">Gastrointestinal Disorders</option> <option value="gastronomy">Gastronomy</option> <option value="gels">Gels</option> <option value="genealogy">Genealogy</option> <option value="genes">Genes</option> <option value="geographies">Geographies</option> <option value="geohazards">GeoHazards</option> <option value="geomatics">Geomatics</option> <option value="geometry">Geometry</option> <option value="geosciences">Geosciences</option> <option value="geotechnics">Geotechnics</option> <option value="geriatrics">Geriatrics</option> <option value="glacies">Glacies</option> <option value="gucdd">Gout, Urate, and Crystal Deposition Disease</option> <option value="grasses">Grasses</option> <option value="hardware">Hardware</option> <option value="healthcare">Healthcare</option> <option value="hearts">Hearts</option> <option value="hemato">Hemato</option> <option value="hematolrep">Hematology Reports</option> <option value="heritage">Heritage</option> <option value="histories">Histories</option> <option value="horticulturae">Horticulturae</option> <option value="hospitals">Hospitals</option> <option value="humanities">Humanities</option> <option value="humans">Humans</option> <option value="hydrobiology">Hydrobiology</option> <option value="hydrogen">Hydrogen</option> <option value="hydrology">Hydrology</option> <option value="hygiene">Hygiene</option> <option value="immuno">Immuno</option> <option value="idr">Infectious Disease Reports</option> <option value="informatics">Informatics</option> <option value="information">Information</option> <option value="infrastructures">Infrastructures</option> <option value="inorganics">Inorganics</option> <option value="insects">Insects</option> <option value="instruments">Instruments</option> <option value="iic">Intelligent Infrastructure and Construction</option> <option value="ijerph">International Journal of Environmental Research and Public Health</option> <option value="ijfs">International Journal of Financial Studies</option> <option value="ijms">International Journal of Molecular Sciences</option> <option value="IJNS">International Journal of Neonatal Screening</option> <option value="ijpb">International Journal of Plant Biology</option> <option value="ijt">International Journal of Topology</option> <option value="ijtm">International Journal of Translational Medicine</option> <option value="ijtpp">International Journal of Turbomachinery, Propulsion and Power</option> <option value="ime">International Medical Education</option> <option value="inventions">Inventions</option> <option value="IoT">IoT</option> <option value="ijgi">ISPRS International Journal of Geo-Information</option> <option value="J">J</option> <option value="jal">Journal of Ageing and Longevity</option> <option value="jcdd">Journal of Cardiovascular Development and Disease</option> <option value="jcto">Journal of Clinical & Translational Ophthalmology</option> <option value="jcm">Journal of Clinical Medicine</option> <option value="jcs">Journal of Composites Science</option> <option value="jcp">Journal of Cybersecurity and Privacy</option> <option value="jdad">Journal of Dementia and Alzheimer's Disease</option> <option value="jdb">Journal of Developmental Biology</option> <option value="jeta">Journal of Experimental and Theoretical Analyses</option> <option value="jfb">Journal of Functional Biomaterials</option> <option value="jfmk">Journal of Functional Morphology and Kinesiology</option> <option value="jof">Journal of Fungi</option> <option value="jimaging">Journal of Imaging</option> <option value="jintelligence">Journal of Intelligence</option> <option value="jlpea">Journal of Low Power Electronics and Applications</option> <option value="jmmp">Journal of Manufacturing and Materials Processing</option> <option value="jmse">Journal of Marine Science and Engineering</option> <option value="jmahp">Journal of Market Access & Health Policy</option> <option value="jmp">Journal of Molecular Pathology</option> <option value="jnt">Journal of Nanotheranostics</option> <option value="jne">Journal of Nuclear Engineering</option> <option value="ohbm">Journal of Otorhinolaryngology, Hearing and Balance Medicine</option> <option value="jop">Journal of Parks</option> <option value="jpm">Journal of Personalized Medicine</option> <option value="jpbi">Journal of Pharmaceutical and BioTech Industry</option> <option value="jor">Journal of Respiration</option> <option value="jrfm">Journal of Risk and Financial Management</option> <option value="jsan">Journal of Sensor and Actuator Networks</option> <option value="joma">Journal of the Oman Medical Association</option> <option value="jtaer">Journal of Theoretical and Applied Electronic Commerce Research</option> <option value="jvd">Journal of Vascular Diseases</option> <option value="jox">Journal of Xenobiotics</option> <option value="jzbg">Journal of Zoological and Botanical Gardens</option> <option value="journalmedia">Journalism and Media</option> <option value="kidneydial">Kidney and Dialysis</option> <option value="kinasesphosphatases">Kinases and Phosphatases</option> <option value="knowledge">Knowledge</option> <option value="labmed">LabMed</option> <option value="laboratories">Laboratories</option> <option value="land">Land</option> <option value="languages">Languages</option> <option value="laws">Laws</option> <option value="life">Life</option> <option value="limnolrev">Limnological Review</option> <option value="lipidology">Lipidology</option> <option value="liquids">Liquids</option> <option value="literature">Literature</option> <option value="livers">Livers</option> <option value="logics">Logics</option> <option value="logistics">Logistics</option> <option value="lubricants">Lubricants</option> <option value="lymphatics">Lymphatics</option> <option value="make">Machine Learning and Knowledge Extraction</option> <option value="machines">Machines</option> <option value="macromol">Macromol</option> <option value="magnetism">Magnetism</option> <option value="magnetochemistry">Magnetochemistry</option> <option value="marinedrugs">Marine Drugs</option> <option value="materials">Materials</option> <option value="materproc">Materials Proceedings</option> <option value="mca">Mathematical and Computational Applications</option> <option value="mathematics">Mathematics</option> <option value="medsci">Medical Sciences</option> <option value="msf">Medical Sciences Forum</option> <option value="medicina">Medicina</option> <option value="medicines">Medicines</option> <option value="membranes">Membranes</option> <option value="merits">Merits</option> <option value="metabolites">Metabolites</option> <option value="metals">Metals</option> <option value="meteorology">Meteorology</option> <option value="methane">Methane</option> <option value="mps">Methods and Protocols</option> <option value="metrics">Metrics</option> <option value="metrology">Metrology</option> <option value="micro">Micro</option> <option value="microbiolres">Microbiology Research</option> <option value="micromachines">Micromachines</option> <option value="microorganisms">Microorganisms</option> <option value="microplastics">Microplastics</option> <option value="minerals">Minerals</option> <option value="mining">Mining</option> <option value="modelling">Modelling</option> <option value="mmphys">Modern Mathematical Physics</option> <option value="molbank">Molbank</option> <option value="molecules">Molecules</option> <option value="mti">Multimodal Technologies and Interaction</option> <option value="muscles">Muscles</option> <option value="nanoenergyadv">Nanoenergy Advances</option> <option value="nanomanufacturing">Nanomanufacturing</option> <option value="nanomaterials">Nanomaterials</option> <option value="ndt">NDT</option> <option value="network">Network</option> <option value="neuroglia">Neuroglia</option> <option value="neurolint">Neurology International</option> <option value="neurosci">NeuroSci</option> <option value="nitrogen">Nitrogen</option> <option value="ncrna">Non-Coding RNA</option> <option value="nursrep">Nursing Reports</option> <option value="nutraceuticals">Nutraceuticals</option> <option value="nutrients">Nutrients</option> <option value="obesities">Obesities</option> <option value="oceans">Oceans</option> <option value="onco">Onco</option> <option value="optics">Optics</option> <option value="oral">Oral</option> <option value="organics">Organics</option> <option value="organoids">Organoids</option> <option value="osteology">Osteology</option> <option value="oxygen">Oxygen</option> <option value="parasitologia">Parasitologia</option> <option value="particles">Particles</option> <option value="pathogens">Pathogens</option> <option value="pathophysiology">Pathophysiology</option> <option value="pediatrrep">Pediatric Reports</option> <option value="pets">Pets</option> <option value="pharmaceuticals">Pharmaceuticals</option> <option value="pharmaceutics">Pharmaceutics</option> <option value="pharmacoepidemiology">Pharmacoepidemiology</option> <option value="pharmacy">Pharmacy</option> <option value="philosophies">Philosophies</option> <option value="photochem">Photochem</option> <option value="photonics">Photonics</option> <option value="phycology">Phycology</option> <option value="physchem">Physchem</option> <option value="psf">Physical Sciences Forum</option> <option value="physics">Physics</option> <option value="physiologia">Physiologia</option> <option value="plants">Plants</option> <option value="plasma">Plasma</option> <option value="platforms">Platforms</option> <option value="pollutants">Pollutants</option> <option value="polymers">Polymers</option> <option value="polysaccharides">Polysaccharides</option> <option value="populations">Populations</option> <option value="poultry">Poultry</option> <option value="powders">Powders</option> <option value="proceedings">Proceedings</option> <option value="processes">Processes</option> <option value="prosthesis">Prosthesis</option> <option value="proteomes">Proteomes</option> <option value="psychiatryint">Psychiatry International</option> <option value="psychoactives">Psychoactives</option> <option value="psycholint">Psychology International</option> <option value="publications">Publications</option> <option value="qubs">Quantum Beam Science</option> <option value="quantumrep">Quantum Reports</option> <option value="quaternary">Quaternary</option> <option value="radiation">Radiation</option> <option value="reactions">Reactions</option> <option value="realestate">Real Estate</option> <option value="receptors">Receptors</option> <option value="recycling">Recycling</option> <option value="rsee">Regional Science and Environmental Economics</option> <option value="religions">Religions</option> <option value="remotesensing">Remote Sensing</option> <option value="reports">Reports</option> <option value="reprodmed">Reproductive Medicine</option> <option value="resources">Resources</option> <option value="rheumato">Rheumato</option> <option value="risks">Risks</option> <option value="robotics">Robotics</option> <option value="ruminants">Ruminants</option> <option value="safety">Safety</option> <option value="sci">Sci</option> <option value="scipharm">Scientia Pharmaceutica</option> <option value="sclerosis">Sclerosis</option> <option value="seeds">Seeds</option> <option value="sensors">Sensors</option> <option value="separations">Separations</option> <option value="sexes">Sexes</option> <option value="signals">Signals</option> <option value="sinusitis">Sinusitis</option> <option value="smartcities">Smart Cities</option> <option value="socsci">Social Sciences</option> <option value="siuj">Société Internationale d’Urologie Journal</option> <option value="societies">Societies</option> <option value="software">Software</option> <option value="soilsystems">Soil Systems</option> <option value="solar">Solar</option> <option value="solids">Solids</option> <option value="spectroscj">Spectroscopy Journal</option> <option value="sports">Sports</option> <option value="standards">Standards</option> <option value="stats">Stats</option> <option value="stresses">Stresses</option> <option value="surfaces">Surfaces</option> <option value="surgeries">Surgeries</option> <option value="std">Surgical Techniques Development</option> <option value="sustainability">Sustainability</option> <option value="suschem">Sustainable Chemistry</option> <option value="symmetry">Symmetry</option> <option value="synbio">SynBio</option> <option value="systems">Systems</option> <option value="targets">Targets</option> <option value="taxonomy">Taxonomy</option> <option value="technologies">Technologies</option> <option value="telecom">Telecom</option> <option value="textiles">Textiles</option> <option value="thalassrep">Thalassemia Reports</option> <option value="therapeutics">Therapeutics</option> <option value="thermo">Thermo</option> <option value="timespace">Time and Space</option> <option value="tomography">Tomography</option> <option value="tourismhosp">Tourism and Hospitality</option> <option value="toxics">Toxics</option> <option value="toxins">Toxins</option> <option value="transplantology">Transplantology</option> <option value="traumacare">Trauma Care</option> <option value="higheredu">Trends in Higher Education</option> <option value="tropicalmed">Tropical Medicine and Infectious Disease</option> <option value="universe">Universe</option> <option value="urbansci">Urban Science</option> <option value="uro">Uro</option> <option value="vaccines">Vaccines</option> <option value="vehicles">Vehicles</option> <option value="venereology">Venereology</option> <option value="vetsci">Veterinary Sciences</option> <option value="vibration">Vibration</option> <option value="virtualworlds">Virtual Worlds</option> <option value="viruses">Viruses</option> <option value="vision">Vision</option> <option value="waste">Waste</option> <option value="water">Water</option> <option value="wild">Wild</option> <option value="wind">Wind</option> <option value="women">Women</option> <option value="world">World</option> <option value="wevj">World Electric Vehicle Journal</option> <option value="youth">Youth</option> <option value="zoonoticdis">Zoonotic Diseases</option> </select> <input name="email" type="email" placeholder="Enter your email address..." required="required" /> <button class="genericCaptcha button button--dark UA_FooterNewsletterSubscribeButton" type="submit">Subscribe</button> </form> </div> </div> </div> <div id="footer-copyright"> <div class="row"> <div class="columns large-6 medium-6 small-12 text-left"> © 1996-2024 MDPI (Basel, Switzerland) unless otherwise stated </div> <div class="columns large-6 medium-6 small-12 small-text-left medium-text-right large-text-right"> <a data-dropdown="drop-view-disclaimer" aria-controls="drop-view-disclaimer" aria-expanded="false" data-options="align:top; is_hover:true; hover_timeout:2000;"> Disclaimer </a> <div id="drop-view-disclaimer" class="f-dropdown label__btn__dropdown label__btn__dropdown--wide text-left" data-dropdown-content aria-hidden="true" tabindex="-1"> Disclaimer/Publisher’s Note: The statements, opinions and data contained in all publications are solely those of the individual author(s) and contributor(s) and not of MDPI and/or the editor(s). MDPI and/or the editor(s) disclaim responsibility for any injury to people or property resulting from any ideas, methods, instructions or products referred to in the content. </div> <a href="/about/terms-and-conditions"> Terms and Conditions </a> <a href="/about/privacy"> Privacy Policy </a> </div> </div> </div> </div> <div id="cookie-notification" class="js-allow-cookies" style="display: none;"> <div class="columns large-10 medium-10 small-12"> We use cookies on our website to ensure you get the best experience.<br class="show-for-medium-up"/> Read more about our cookies <a href="/about/privacy">here</a>. </div> <div class="columns large-2 medium-2 small-12 small-only-text-left text-right"> <a class="button button--default" href="/accept_cookies">Accept</a> </div> </div> </div> <div id="main-share-modal" class="reveal-modal reveal-modal-new reveal-modal-new--small" data-reveal aria-labelledby="modalTitle" aria-hidden="true" role="dialog"> <div class="row"> <div class="small-12 columns"> <h2 style="margin: 0;">Share Link</h2> </div> <div class="small-12 columns"> <div class="social-media-links UA_ShareModalLinks" style="text-align: left;"> <a href="/cdn-cgi/l/email-protection#92adb4f3ffe2a9e1e7f0f8f7f1e6afd4e0fdffb7a0a2dfd6c2dbb7a1d3b7a0a2b7a0a0d6f7f7e2b7a0a2dff3e6e0fbeab7a0a2d4f3f1e6fde0fbe8f3e6fbfdfcb7a0a2d3e2e2e0fdf3f1fab7a0a2f4fde0b7a0a2d1fdfefef3f0fde0f3e6fbe4f7b7a0a2d4fbfee6f7e0fbfcf5b7a0a2c0f7f1fdfffff7fcf6f7e0b7a0a2c1ebe1e6f7ffe1b4e3e7fde6a9b4f3ffe2a9f0fdf6ebaffae6e6e2e1a8bdbde5e5e5bcfff6e2fbbcf1fdffbda5a5a3aba1a2b7a1d3b7a2d3b7a2d3d6f7f7e2b7a0a2dff3e6e0fbeab7a0a2d4f3f1e6fde0fbe8f3e6fbfdfcb7a0a2d3e2e2e0fdf3f1fab7a0a2f4fde0b7a0a2d1fdfefef3f0fde0f3e6fbe4f7b7a0a2d4fbfee6f7e0fbfcf5b7a0a2c0f7f1fdfffff7fcf6f7e0b7a0a2c1ebe1e6f7ffe19898c2e0fde4fbf6fbfcf5b7a0a2e7e1f7f4e7feb7a0a2fbfcf4fde0fff3e6fbfdfcb7a0a2e6fdb7a0a2e6faf7b7a0a2e7e1f7e0e1b7a0a2f0ebb7a0a2e0f7f1fdfffff7fcf6fbfcf5b7a0a2fafbf5fafeebb7a0a2f6f7fff3fcf6f7f6b7a0a2e2e0fdf6e7f1e6e1b7a0a2f3fcf6b7a0a2e1f7e0e4fbf1f7e1b7a0a2fbe1b7a0a2f3b7a0a2f4e7fcf6f3fff7fce6f3feb7a0a2e2f3e0e6b7a0a2fdf4b7a0a2e6faf7b7a0a2f0e7e1fbfcf7e1e1b7a0a2fdf4b7a0a2fff3fcebb7a0a2e6fde2b7a0a2e6fbf7e0b7a0a2f1fdffe2f3fcfbf7e1bcb7a0a2c0f7f1fdfffff7fcf6f7e0b7a0a2c1ebe1e6f7ffe1b7a0a2fff3f9f7b7a0a2e7e1f7b7a0a2fdf4b7a0a2fff3fcebb7a0a2e1fde7e0f1f7e1b7a0a2fdf4b7a0a2fbfcf4fde0fff3e6fbfdfcb7a0a2e6fdb7a0a2e2e0fde4fbf6f7b7a0a2e7e1f7e0e1b7a0a2e5fbe6fab7a0a2f3f1f1e7e0f3e6f7b7a0a2e2e0f7f6fbf1e6fbfdfce1b7a0a2f3fcf6b7a0a2fcfde4f7feb7a0a2e0f7f1fdfffff7fcf6f3e6fbfdfce1b7a0a2fdf4b7a0a2fbe6f7ffe1bcb7a0a2daf7e0f7b7a0a2e5f7b7a0a2e2e0fde2fde1f7b7a0d1b7a0a2d6f7f7e2dfd4b7a0d1b7a0a2f3b7a0a2fcfde4f7feb7a0a2f1fdfefef3f0fde0f3e6fbe4f7b7a0a2f4fbfee6f7e0fbfcf5b7a0a2fff7e6fafdf6b7a0a2e6faf3e6b7a0a2f1fdfff0fbfcf7e1b7a0a2e6faf7b7a0a2d6f7f7e2b7a0a2def7f3e0fcfbfcf5b7a0a2e2f3e0f3f6fbf5ffb7a0a2e5fbe6fab7a0a2dff3e6e0fbeab7a0a2d4f3f1e6fde0fbe8f3e6fbfdfcb7a0a2b7a0aadfd4b7a0abb7a0a2e6fdb7a0a2fbffe2e0fde4f7b7a0a2e6faf7b7a0a2e3e7f3fefbe6ebb7a0a2fdf4b7a0a2f0fde6fab7a0a2e2e0f7f6fbf1e6fbfdfce1b7a0a2f3fcf6b7a0a2e0f7f1fdfffff7fcf6f3e6fbfdfce1b7a0a2fff3f6f7b7a0a2e6fdb7a0a2e6faf7b7a0a2e7e1f7e0bcb7a0a2c1e2f7f1fbf4fbf1f3fefeebb7a0d1b7a0a2d6f7f7e2dfd4b7a0a2e2f7e0f4fde0ffe1b7a0a2e1e7f1f1f7e1e1fbe4f7b7a0a2e0f7f4fbfcf7fff7fce6e1b7a0a2fdf4b7a0a2f3b7a0a2dfd4b7a0a2fffdf6f7feb7a0a2e5fbe6fab7a0a2f3b7a0a2fef3ebf7e0f7f6b7a0a2f3e0f1fafbe6f7f1e6e7e0f7b7a0a2e6faf3e6b7a0a2e7e1f7e1b7a0a2e6faf7b7a0a2f3f1e3e7fbe0f7f6b7a0a2f9fcfde5fef7f6f5f7b7a0a2fbfcb7a0a2f3b7a0a2fef3ebf7e0b7a0a2f3e1b7a0a2fbfce2e7e6b7a0a2f4fde0b7a0a2e1e7f0e1f7e3e7f7fce6b7a0a2fef3ebf7e0e1bcb7a0a2d7eae2f7e0fbfff7fce6f3feb7a0a2e0f7e1e7fee6e1b7a0a2e1fafde5f7f6b7a0a2e6faf3e6b7a0a2e6faf7b7a0a2e3e7f3fefbe6ebb7a0a2fdf4b7a0a2f0fde6fab7a0a2e6faf7b7a0a2e2e0f7f6fbf1e6fbfdfce1b7a0a2f3fcf6b7a0a2e0f7f1fdfffff7fcf6f3e6fbfdfce1b7a0a2fdf4b7a0a2d6f7f7e2dfd4b7a0a2fde4f7e0f1fdfff7b7a0a2e6faf7b7a0a2f0f3e1f7fefbfcf7e1bc" title="Email"> <i class="fa fa-envelope-square" style="font-size: 30px;"></i> </a> <a href="https://twitter.com/intent/tweet?text=Deep+Matrix+Factorization+Approach+for+Collaborative+Filtering+Recommender+Systems&hashtags=mdpiapplsci&url=https%3A%2F%2Fwww.mdpi.com%2F771930&via=Applsci" onclick="windowOpen(this.href,600,800); return false" title="Twitter" target="_blank" rel="noopener noreferrer"> <i class="fa fa-twitter-x-square" style="font-size: 30px;"></i> </a> <a href=" http://www.linkedin.com/shareArticle?mini=true&url=https%3A%2F%2Fwww.mdpi.com%2F771930&title=Deep%20Matrix%20Factorization%20Approach%20for%20Collaborative%20Filtering%20Recommender%20Systems%26source%3Dhttps%3A%2F%2Fwww.mdpi.com%26summary%3DProviding%20useful%20information%20to%20the%20users%20by%20recommending%20highly%20demanded%20products%20and%20services%20is%20a%20fundamental%20part%20of%20the%20business%20of%20many%20top%20tier%20companies.%20Recommender%20Systems%20make%20use%20of%20many%20sources%20of%20information%20to%20provide%20users%20with%20%5B...%5D" onclick="windowOpen(this.href,600,800); return false" title="LinkedIn" target="_blank" rel="noopener noreferrer"> <i class="fa fa-linkedin-square" style="font-size: 30px;"></i> </a> <a href="https://www.facebook.com/sharer.php?u=https://www.mdpi.com/771930" title="facebook" target="_blank" rel="noopener noreferrer"> <i class="fa fa-facebook-square" style="font-size: 30px;"></i> </a> <a href="javascript:void(0);" title="Wechat" data-reveal-id="weixin-share-modal"> <i class="fa fa-weixin-square" style="font-size: 26px;"></i> </a> <a href="http://www.reddit.com/submit?url=https://www.mdpi.com/771930" title="Reddit" target="_blank" rel="noopener noreferrer"> <i class="fa fa-reddit-square" style="font-size: 30px;"></i> </a> <a href="http://www.mendeley.com/import/?url=https://www.mdpi.com/771930" title="Mendeley" target="_blank" rel="noopener noreferrer"> <i class="fa fa-mendeley-square" style="font-size: 30px;"></i> </a> <a href="http://www.citeulike.org/posturl?url=https://www.mdpi.com/771930" title="CiteULike" target="_blank" rel="noopener noreferrer"> <i class="fa fa-citeulike-square" style="font-size: 30px;"></i> </a> </div> </div> <div class="small-9 columns"> <input id="js-clipboard-text" type="text" readonly value="https://www.mdpi.com/771930" /> </div> <div class="small-3 columns text-left"> <a class="button button--color js-clipboard-copy" data-clipboard-target="#js-clipboard-text">Copy</a> </div> </div> <a class="close-reveal-modal" aria-label="Close"> <i class="material-icons">clear</i> </a> </div> <div id="weixin-share-modal" class="reveal-modal reveal-modal-new" data-reveal aria-labelledby="weixin-share-modal-title" aria-hidden="true" role="dialog"> <div class="row"> <div class="small-12 columns"> <h2 id="weixin-share-modal-title" style="margin: 0;">Share</h2> </div> <div class="small-12 columns"> <div class="weixin-qr-code-section"> <?xml version="1.0" standalone="no"?> <!DOCTYPE svg PUBLIC "-//W3C//DTD SVG 1.1//EN" "http://www.w3.org/Graphics/SVG/1.1/DTD/svg11.dtd"> <svg width="300" height="300" version="1.1" xmlns="http://www.w3.org/2000/svg"> <desc>https://www.mdpi.com/771930</desc> <g id="elements" fill="black" stroke="none"> <rect x="0" y="0" width="12" height="12" /> <rect x="12" y="0" width="12" height="12" /> <rect x="24" y="0" width="12" height="12" /> <rect x="36" y="0" width="12" height="12" /> <rect x="48" y="0" width="12" height="12" /> <rect x="60" y="0" width="12" height="12" /> <rect x="72" y="0" width="12" height="12" /> <rect x="108" y="0" width="12" height="12" /> <rect x="144" y="0" width="12" height="12" /> <rect x="168" y="0" width="12" height="12" /> <rect x="180" y="0" width="12" height="12" /> <rect x="216" y="0" width="12" height="12" /> <rect x="228" y="0" width="12" height="12" /> <rect x="240" y="0" width="12" height="12" /> <rect x="252" y="0" width="12" height="12" /> <rect x="264" y="0" width="12" height="12" /> <rect x="276" y="0" width="12" height="12" /> <rect x="288" y="0" width="12" height="12" /> <rect x="0" y="12" width="12" height="12" /> <rect x="72" y="12" width="12" height="12" /> <rect x="96" y="12" width="12" height="12" /> <rect x="132" y="12" width="12" height="12" /> <rect x="144" y="12" width="12" height="12" /> <rect x="156" y="12" width="12" height="12" /> <rect x="180" y="12" width="12" height="12" /> <rect x="192" y="12" width="12" height="12" /> <rect x="216" y="12" width="12" height="12" /> <rect x="288" y="12" width="12" height="12" /> <rect x="0" y="24" width="12" height="12" /> <rect x="24" y="24" width="12" height="12" /> <rect x="36" y="24" width="12" height="12" /> <rect x="48" y="24" width="12" height="12" /> <rect x="72" y="24" width="12" height="12" /> <rect x="96" y="24" width="12" height="12" /> <rect x="108" y="24" width="12" height="12" /> <rect x="120" y="24" width="12" height="12" /> <rect x="132" y="24" width="12" height="12" /> <rect x="144" y="24" width="12" height="12" /> <rect x="168" y="24" width="12" height="12" /> <rect x="180" y="24" width="12" height="12" /> <rect x="216" y="24" width="12" height="12" /> <rect x="240" y="24" width="12" height="12" /> <rect x="252" y="24" width="12" height="12" /> <rect x="264" y="24" width="12" height="12" /> <rect x="288" y="24" width="12" height="12" /> <rect x="0" y="36" width="12" height="12" /> <rect x="24" y="36" width="12" height="12" /> <rect x="36" y="36" width="12" height="12" /> <rect x="48" y="36" width="12" height="12" /> <rect x="72" y="36" width="12" height="12" /> <rect x="108" y="36" width="12" height="12" /> <rect x="120" y="36" width="12" height="12" /> <rect x="132" y="36" width="12" height="12" /> <rect x="168" y="36" width="12" height="12" /> <rect x="216" y="36" width="12" height="12" /> <rect x="240" y="36" width="12" height="12" /> <rect x="252" y="36" width="12" height="12" /> <rect x="264" y="36" width="12" height="12" /> <rect x="288" y="36" width="12" height="12" /> <rect x="0" y="48" width="12" height="12" /> <rect x="24" y="48" width="12" height="12" /> <rect x="36" y="48" width="12" height="12" /> <rect x="48" y="48" width="12" height="12" /> <rect x="72" y="48" width="12" height="12" /> <rect x="96" y="48" width="12" height="12" /> <rect x="168" y="48" width="12" height="12" /> <rect x="180" y="48" width="12" height="12" /> <rect x="216" y="48" width="12" height="12" /> <rect x="240" y="48" width="12" height="12" /> <rect x="252" y="48" width="12" height="12" /> <rect x="264" y="48" width="12" height="12" /> <rect x="288" y="48" width="12" height="12" /> <rect x="0" y="60" width="12" height="12" /> <rect x="72" y="60" width="12" height="12" /> <rect x="96" y="60" width="12" height="12" /> <rect x="108" y="60" width="12" height="12" /> <rect x="132" y="60" width="12" height="12" /> <rect x="180" y="60" width="12" height="12" /> <rect x="192" y="60" width="12" height="12" /> <rect x="216" y="60" width="12" height="12" /> <rect x="288" y="60" width="12" height="12" /> <rect x="0" y="72" width="12" height="12" /> <rect x="12" y="72" width="12" height="12" /> <rect x="24" y="72" width="12" height="12" /> <rect x="36" y="72" width="12" height="12" /> <rect x="48" y="72" width="12" height="12" /> <rect x="60" y="72" width="12" height="12" /> <rect x="72" y="72" width="12" height="12" /> <rect x="96" y="72" width="12" height="12" /> <rect x="120" y="72" width="12" height="12" /> <rect x="144" y="72" width="12" height="12" /> <rect x="168" y="72" width="12" height="12" /> <rect x="192" y="72" width="12" height="12" /> <rect x="216" y="72" width="12" height="12" /> <rect x="228" y="72" width="12" height="12" /> <rect x="240" y="72" width="12" height="12" /> <rect x="252" y="72" width="12" height="12" /> <rect x="264" y="72" width="12" height="12" /> <rect x="276" y="72" width="12" height="12" /> <rect x="288" y="72" width="12" height="12" /> <rect x="96" y="84" width="12" height="12" /> <rect x="108" y="84" width="12" height="12" /> <rect x="144" y="84" width="12" height="12" /> <rect x="168" y="84" width="12" height="12" /> <rect x="180" y="84" width="12" height="12" /> <rect x="192" y="84" width="12" height="12" /> <rect x="0" y="96" width="12" height="12" /> <rect x="12" y="96" width="12" height="12" /> <rect x="36" y="96" width="12" height="12" /> <rect x="72" y="96" width="12" height="12" /> <rect x="84" y="96" width="12" height="12" /> <rect x="120" y="96" width="12" height="12" /> <rect x="144" y="96" width="12" height="12" /> <rect x="156" y="96" width="12" height="12" /> <rect x="168" y="96" width="12" height="12" /> <rect x="180" y="96" width="12" height="12" /> <rect x="192" y="96" width="12" height="12" /> <rect x="216" y="96" width="12" height="12" /> <rect x="228" y="96" width="12" height="12" /> <rect x="240" y="96" width="12" height="12" /> <rect x="264" y="96" width="12" height="12" /> <rect x="276" y="96" width="12" height="12" /> <rect x="24" y="108" width="12" height="12" /> <rect x="36" y="108" width="12" height="12" /> <rect x="48" y="108" width="12" height="12" /> <rect x="84" y="108" width="12" height="12" /> <rect x="120" y="108" width="12" height="12" /> <rect x="132" y="108" width="12" height="12" /> <rect x="192" y="108" width="12" height="12" /> <rect x="216" y="108" width="12" height="12" /> <rect x="288" y="108" width="12" height="12" /> <rect x="0" y="120" width="12" height="12" /> <rect x="12" y="120" width="12" height="12" /> <rect x="36" y="120" width="12" height="12" /> <rect x="48" y="120" width="12" height="12" /> <rect x="60" y="120" width="12" height="12" /> <rect x="72" y="120" width="12" height="12" /> <rect x="108" y="120" width="12" height="12" /> <rect x="120" y="120" width="12" height="12" /> <rect x="144" y="120" width="12" height="12" /> <rect x="156" y="120" width="12" height="12" /> <rect x="204" y="120" width="12" height="12" /> <rect x="216" y="120" width="12" height="12" /> <rect x="276" y="120" width="12" height="12" /> <rect x="288" y="120" width="12" height="12" /> <rect x="0" y="132" width="12" height="12" /> <rect x="12" y="132" width="12" height="12" /> <rect x="24" y="132" width="12" height="12" /> <rect x="60" y="132" width="12" height="12" /> <rect x="96" y="132" width="12" height="12" /> <rect x="156" y="132" width="12" height="12" /> <rect x="180" y="132" width="12" height="12" /> <rect x="204" y="132" width="12" height="12" /> <rect x="216" y="132" width="12" height="12" /> <rect x="240" y="132" width="12" height="12" /> <rect x="36" y="144" width="12" height="12" /> <rect x="72" y="144" width="12" height="12" /> <rect x="84" y="144" width="12" height="12" /> <rect x="96" y="144" width="12" height="12" /> <rect x="156" y="144" width="12" height="12" /> <rect x="168" y="144" width="12" height="12" /> <rect x="204" y="144" width="12" height="12" /> <rect x="216" y="144" width="12" height="12" /> <rect x="228" y="144" width="12" height="12" /> <rect x="252" y="144" width="12" height="12" /> <rect x="276" y="144" width="12" height="12" /> <rect x="288" y="144" width="12" height="12" /> <rect x="60" y="156" width="12" height="12" /> <rect x="108" y="156" width="12" height="12" /> <rect x="120" y="156" width="12" height="12" /> <rect x="156" y="156" width="12" height="12" /> <rect x="216" y="156" width="12" height="12" /> <rect x="228" y="156" width="12" height="12" /> <rect x="252" y="156" width="12" height="12" /> <rect x="264" y="156" width="12" height="12" /> <rect x="288" y="156" width="12" height="12" /> <rect x="0" y="168" width="12" height="12" /> <rect x="24" y="168" width="12" height="12" /> <rect x="36" y="168" width="12" height="12" /> <rect x="48" y="168" width="12" height="12" /> <rect x="60" y="168" width="12" height="12" /> <rect x="72" y="168" width="12" height="12" /> <rect x="96" y="168" width="12" height="12" /> <rect x="120" y="168" width="12" height="12" /> <rect x="132" y="168" width="12" height="12" /> <rect x="156" y="168" width="12" height="12" /> <rect x="168" y="168" width="12" height="12" /> <rect x="192" y="168" width="12" height="12" /> <rect x="216" y="168" width="12" height="12" /> <rect x="228" y="168" width="12" height="12" /> <rect x="240" y="168" width="12" height="12" /> <rect x="264" y="168" width="12" height="12" /> <rect x="288" y="168" width="12" height="12" /> <rect x="12" y="180" width="12" height="12" /> <rect x="36" y="180" width="12" height="12" /> <rect x="60" y="180" width="12" height="12" /> <rect x="96" y="180" width="12" height="12" /> <rect x="108" y="180" width="12" height="12" /> <rect x="156" y="180" width="12" height="12" /> <rect x="168" y="180" width="12" height="12" /> <rect x="180" y="180" width="12" height="12" /> <rect x="192" y="180" width="12" height="12" /> <rect x="216" y="180" width="12" height="12" /> <rect x="240" y="180" width="12" height="12" /> <rect x="276" y="180" width="12" height="12" /> <rect x="0" y="192" width="12" height="12" /> <rect x="12" y="192" width="12" height="12" /> <rect x="24" y="192" width="12" height="12" /> <rect x="48" y="192" width="12" height="12" /> <rect x="60" y="192" width="12" height="12" /> <rect x="72" y="192" width="12" height="12" /> <rect x="84" y="192" width="12" height="12" /> <rect x="108" y="192" width="12" height="12" /> <rect x="168" y="192" width="12" height="12" /> <rect x="192" y="192" width="12" height="12" /> <rect x="204" y="192" width="12" height="12" /> <rect x="216" y="192" width="12" height="12" /> <rect x="228" y="192" width="12" height="12" /> <rect x="240" y="192" width="12" height="12" /> <rect x="252" y="192" width="12" height="12" /> <rect x="264" y="192" width="12" height="12" /> <rect x="96" y="204" width="12" height="12" /> <rect x="132" y="204" width="12" height="12" /> <rect x="156" y="204" width="12" height="12" /> <rect x="180" y="204" width="12" height="12" /> <rect x="192" y="204" width="12" height="12" /> <rect x="240" y="204" width="12" height="12" /> <rect x="252" y="204" width="12" height="12" /> <rect x="288" y="204" width="12" height="12" /> <rect x="0" y="216" width="12" height="12" /> <rect x="12" y="216" width="12" height="12" /> <rect x="24" y="216" width="12" height="12" /> <rect x="36" y="216" width="12" height="12" /> <rect x="48" y="216" width="12" height="12" /> <rect x="60" y="216" width="12" height="12" /> <rect x="72" y="216" width="12" height="12" /> <rect x="96" y="216" width="12" height="12" /> <rect x="108" y="216" width="12" height="12" /> <rect x="156" y="216" width="12" height="12" /> <rect x="180" y="216" width="12" height="12" /> <rect x="192" y="216" width="12" height="12" /> <rect x="216" y="216" width="12" height="12" /> <rect x="240" y="216" width="12" height="12" /> <rect x="252" y="216" width="12" height="12" /> <rect x="276" y="216" width="12" height="12" /> <rect x="288" y="216" width="12" height="12" /> <rect x="0" y="228" width="12" height="12" /> <rect x="72" y="228" width="12" height="12" /> <rect x="132" y="228" width="12" height="12" /> <rect x="168" y="228" width="12" height="12" /> <rect x="192" y="228" width="12" height="12" /> <rect x="240" y="228" width="12" height="12" /> <rect x="252" y="228" width="12" height="12" /> <rect x="264" y="228" width="12" height="12" /> <rect x="288" y="228" width="12" height="12" /> <rect x="0" y="240" width="12" height="12" /> <rect x="24" y="240" width="12" height="12" /> <rect x="36" y="240" width="12" height="12" /> <rect x="48" y="240" width="12" height="12" /> <rect x="72" y="240" width="12" height="12" /> <rect x="120" y="240" width="12" height="12" /> <rect x="156" y="240" width="12" height="12" /> <rect x="192" y="240" width="12" height="12" /> <rect x="204" y="240" width="12" height="12" /> <rect x="216" y="240" width="12" height="12" /> <rect x="228" y="240" width="12" height="12" /> <rect x="240" y="240" width="12" height="12" /> <rect x="252" y="240" width="12" height="12" /> <rect x="276" y="240" width="12" height="12" /> <rect x="0" y="252" width="12" height="12" /> <rect x="24" y="252" width="12" height="12" /> <rect x="36" y="252" width="12" height="12" /> <rect x="48" y="252" width="12" height="12" /> <rect x="72" y="252" width="12" height="12" /> <rect x="96" y="252" width="12" height="12" /> <rect x="156" y="252" width="12" height="12" /> <rect x="168" y="252" width="12" height="12" /> <rect x="204" y="252" width="12" height="12" /> <rect x="228" y="252" width="12" height="12" /> <rect x="240" y="252" width="12" height="12" /> <rect x="252" y="252" width="12" height="12" /> <rect x="264" y="252" width="12" height="12" /> <rect x="0" y="264" width="12" height="12" /> <rect x="24" y="264" width="12" height="12" /> <rect x="36" y="264" width="12" height="12" /> <rect x="48" y="264" width="12" height="12" /> <rect x="72" y="264" width="12" height="12" /> <rect x="108" y="264" width="12" height="12" /> <rect x="180" y="264" width="12" height="12" /> <rect x="192" y="264" width="12" height="12" /> <rect x="228" y="264" width="12" height="12" /> <rect x="240" y="264" width="12" height="12" /> <rect x="264" y="264" width="12" height="12" /> <rect x="288" y="264" width="12" height="12" /> <rect x="0" y="276" width="12" height="12" /> <rect x="72" y="276" width="12" height="12" /> <rect x="96" y="276" width="12" height="12" /> <rect x="108" y="276" width="12" height="12" /> <rect x="156" y="276" width="12" height="12" /> <rect x="180" y="276" width="12" height="12" /> <rect x="192" y="276" width="12" height="12" /> <rect x="204" y="276" width="12" height="12" /> <rect x="216" y="276" width="12" height="12" /> <rect x="252" y="276" width="12" height="12" /> <rect x="0" y="288" width="12" height="12" /> <rect x="12" y="288" width="12" height="12" /> <rect x="24" y="288" width="12" height="12" /> <rect x="36" y="288" width="12" height="12" /> <rect x="48" y="288" width="12" height="12" /> <rect x="60" y="288" width="12" height="12" /> <rect x="72" y="288" width="12" height="12" /> <rect x="96" y="288" width="12" height="12" /> <rect x="120" y="288" width="12" height="12" /> <rect x="156" y="288" width="12" height="12" /> <rect x="168" y="288" width="12" height="12" /> <rect x="180" y="288" width="12" height="12" /> <rect x="192" y="288" width="12" height="12" /> <rect x="228" y="288" width="12" height="12" /> <rect x="276" y="288" width="12" height="12" /> <rect x="288" y="288" width="12" height="12" /> </g> </svg> </div> </div> </div> <a class="close-reveal-modal" aria-label="Close"> <i class="material-icons">clear</i> </a> </div> <a href="#" class="back-to-top"><span class="show-for-medium-up">Back to Top</span><span class="show-for-small">Top</span></a> <script data-cfasync="false" src="/cdn-cgi/scripts/5c5dd728/cloudflare-static/email-decode.min.js"></script><script src="https://pub.mdpi-res.com/assets/js/modernizr-2.8.3.min.js?5227e0738f7f421d?1732286508"></script> <script src="https://pub.mdpi-res.com/assets/js/jquery-1.12.4.min.js?4f252523d4af0b47?1732286508"></script> <script src="https://pub.mdpi-res.com/assets/js/foundation-5.5.3.min.js?6b2ec41c18b29054?1732286508"></script> <script src="https://pub.mdpi-res.com/assets/js/foundation-5.5.3.equalizer.min.js?0f6c549b75ec554c?1732286508"></script> <script src="https://pub.mdpi-res.com/assets/js/jquery.multiselect.js?0edd3998731d1091?1732286508"></script> <script src="https://pub.mdpi-res.com/assets/js/jquery.cycle2.min.js?63413052928f97ee?1732286508"></script> <script> // old browser fix - this way the console log rows won't throw (silent) errors in browsers not supporting console log if (!window.console) window.console = {}; if (!window.console.log) window.console.log = function () { }; var currentJournalNameSystem = "applsci"; $(document).ready(function() { $('select.foundation-select').multiselect({ search: true, minHeight: 130, maxHeight: 130, }); $(document).foundation({ orbit: { timer_speed: 4000, }, reveal: { animation: 'fadeAndPop', animation_speed: 100, } }); $(".chosen-select").each(function(element) { var maxSelected = (undefined !== $(this).data('maxselectedoptions') ? $(this).data('maxselectedoptions') : 100); $(this).on('chosen:ready', function(event, data) { var select = $(data.chosen.form_field); if (select.attr('id') === 'journal-browser-volume') { $(data.chosen.dropdown).addClass('UI_JournalBrowser_Volume_Options'); } if (select.attr('id') === 'journal-browser-issue') { $(data.chosen.dropdown).addClass('UI_JournalBrowser_Issue_Options'); } }).chosen({ display_disabled_options: false, disable_search_threshold: 7, max_selected_options: maxSelected, width: "100%" }); }); $(".toEncode").each(function(e) { var oldHref = $(this).attr("href"); var newHref = oldHref.replace('.botdefense.please.enable.javascript.','@'); $(this).attr("href", newHref); if (!$(this).hasClass("emailCaptcha")) { $(this).html(newHref.replace('mailto:', '')); } $(this).removeClass("visibility-hidden"); }); $(document).on('opened.fndtn.reveal', '[data-reveal]', function() { $(document).foundation('equalizer', 'reflow'); }); // fix the images that have tag height / width defined // otherwise the default foundation styles overwrite the tag definitions $("img").each(function() { if ($(this).attr('width') != undefined || $(this).attr('height') != undefined) { $(this).addClass("img-fixed"); } }); $("#basic_search, #advanced_search").submit(function(e) { var searchArguments = false; $(this).find("input,select").not("#search,.search-button").each(function() { if (undefined === $(this).val() || "" === $(this).val()) { $(this).attr('name', null); } else { $(this).attr('name'); searchArguments = true; } }); if (!searchArguments) { window.location = $(this).attr('action'); return false; } }); $(".hide-show-desktop-option").click(function(e) { e.preventDefault(); var parentDiv = $(this).closest("div"); $.ajax({ url: $(this).attr('href'), success: function(msg) { parentDiv.removeClass().hide(); } }); }); $(".generic-toggleable-header").click(function(e) { $(this).toggleClass("active"); $(this).next(".generic-toggleable-content").toggleClass("active"); }); /* * handle whole row as a link if the row contains only one visible link */ $("table.new tr").hover(function() { if ($(this).find("td:visible a").length == 1) { $(this).addClass("single-link"); } }, function() { $(this).removeClass("single-link"); }); $("table.new:not(.table-of-tables)").on("click", "tr.single-link", function(e) { var target = $(e.target); if (!e.ctrlKey && !target.is("a")) { $(this).find("td:visible a")[0].click(); } }); $(document).on("click", ".custom-accordion-for-small-screen-link", function(e) { if ($(this).closest("#basic_search").length > 0) { if ($(".search-container__advanced").first().is(":visible")) { openAdvanced() } } if (Foundation.utils.is_small_only()) { if ($(this).hasClass("active")) { $(this).removeClass("active"); $(this).next(".custom-accordion-for-small-screen-content").addClass("show-for-medium-up"); } else { $(this).addClass("active"); $(this).next(".custom-accordion-for-small-screen-content").removeClass("show-for-medium-up"); $(document).foundation('orbit', 'reflow'); } } if (undefined !== $(this).data("callback")) { var customCallback = $(this).data("callback"); func = window[customCallback]; func(); } }); $(document).on("click", ".js-open-small-search", function(e) { e.preventDefault(); $(this).toggleClass("active").closest(".tab-bar").toggleClass("active"); $(".search-container").toggleClass("hide-for-small-down"); }); $(document).on("click", ".js-open-menu", function(e) { $(".search-container").addClass("hide-for-small-down"); }); $(window).on('resize', function() { recalculate_main_browser_position(); recalculate_responsive_moving_containers(); }); updateSearchLabelVisibilities(); recalculate_main_browser_position(); recalculate_responsive_moving_containers(); if (window.document.documentMode == 11) { $("<link/>", { rel: "stylesheet", type: "text/css", href: "https://fonts.googleapis.com/icon?family=Material+Icons"}).appendTo("head"); } }); function recalculate_main_browser_position() { if (Foundation.utils.is_small_only()) { if ($("#js-main-top-container").parent("#js-large-main-top-container").length > 0) { $("#js-main-top-container").appendTo($("#js-small-main-top-container")); } } else { if ($("#js-main-top-container").parent("#js-small-main-top-container").length > 0) { $("#js-main-top-container").appendTo($("#js-large-main-top-container")); } } } function recalculate_responsive_moving_containers() { $(".responsive-moving-container.large").each(function() { var previousParent = $(".responsive-moving-container.active[data-id='"+$(this).data("id")+"']"); var movingContent = previousParent.html(); if (Foundation.utils.is_small_only()) { var currentParent = $(".responsive-moving-container.small[data-id='"+$(this).data("id")+"']"); } else if (Foundation.utils.is_medium_only()) { var currentParent = $(".responsive-moving-container.medium[data-id='"+$(this).data("id")+"']"); } else { var currentParent = $(".responsive-moving-container.large[data-id='"+$(this).data("id")+"']"); } if (previousParent.attr("class") !== currentParent.attr("class")) { currentParent.html(movingContent); previousParent.html(); currentParent.addClass("active"); previousParent.removeClass("active"); } }); } // cookies allowed is checked from a) local storage and b) from server separately so that the footer bar doesn't // get included in the custom page caches function checkCookiesAllowed() { var cookiesEnabled = localStorage.getItem("mdpi_cookies_enabled"); if (null === cookiesEnabled) { $.ajax({ url: "/ajax_cookie_value/mdpi_cookies_accepted", success: function(data) { if (data.value) { localStorage.setItem("mdpi_cookies_enabled", true); checkDisplaySurvey(); } else { $(".js-allow-cookies").show(); } } }); } else { checkDisplaySurvey(); } } function checkDisplaySurvey() { } window.addEventListener('CookiebotOnAccept', function (e) { var CookieDate = new Date; if (Cookiebot.consent.preferences) { CookieDate.setFullYear(CookieDate.getFullYear() + 1); document.cookie = "mdpi_layout_type_v2=mobile; path=/; expires=" + CookieDate.toUTCString() + ";"; $(".js-toggle-desktop-layout-link").css("display", "inline-block"); } }, false); window.addEventListener('CookiebotOnDecline', function (e) { if (!Cookiebot.consent.preferences) { $(".js-toggle-desktop-layout-link").hide(); if ("" === "desktop") { window.location = "/toggle_desktop_layout_cookie"; } } }, false); var hash = $(location).attr('hash'); if ("#share" === hash) { if (1 === $("#main-share-modal").length) { $('#main-share-modal').foundation('reveal', 'open'); } } </script> <script src="https://pub.mdpi-res.com/assets/js/lib.js?f8d3d71b3a772f9d?1732286508"></script> <script src="https://pub.mdpi-res.com/assets/js/mdpi.js?c267ce58392b15da?1732286508"></script> <script>var banners_url = 'https://serve.mdpi.com';</script> <script type='text/javascript' src='https://pub.mdpi-res.com/assets/js/ifvisible.min.js?c621d19ecb761212?1732286508'></script> <script src="https://pub.mdpi-res.com/assets/js/xmltohtml/affix.js?ac4ea55275297c15?1732286508"></script> <script src="https://pub.mdpi-res.com/assets/js/clipboard.min.js?3f3688138a1b9fc4?1732286508"></script> <script type="text/javascript"> $(document).ready(function() { var helpFunctions = $(".middle-column__help__fixed"); var leftColumnAffix = $(".left-column__fixed"); var middleColumn = $("#middle-column"); var clone = null; helpFunctions.affix({ offset: { top: function() { return middleColumn.offset().top - 8 - (Foundation.utils.is_medium_only() ? 30 : 0); }, bottom: function() { return $("#footer").innerHeight() + 74 + (Foundation.utils.is_medium_only() ? 0 : 0); } } }); if (leftColumnAffix.length > 0) { clone = leftColumnAffix.clone(); clone.addClass("left-column__fixed__affix"); clone.insertBefore(leftColumnAffix); clone.css('width', leftColumnAffix.outerWidth() + 50); clone.affix({ offset: { top: function() { return leftColumnAffix.offset().top - 30 - (Foundation.utils.is_medium_only() ? 50 : 0); }, bottom: function() { return $("#footer").innerHeight() + 92 + (Foundation.utils.is_medium_only() ? 0 : 0); } } }); } $(window).on("resize", function() { if (clone !== null) { clone.css('width', leftColumnAffix.outerWidth() + 50); } }); new ClipboardJS('.js-clipboard-copy'); }); </script> <script src="https://pub.mdpi-res.com/assets/js/jquery-ui-1.13.2.min.js?1e2047978946a1d2?1732286508"></script> <script src="https://pub.mdpi-res.com/assets/js/slick.min.js?d5a61c749e44e471?1732286508"></script> <script> $(document).ready(function() { $(".link-article-menu").click(function(e) { e.preventDefault(); $(this).find('span').toggle(); $(this).next("div").toggleClass("active"); }); $(".js-similarity-related-articles").click(function(e) { e.preventDefault(); if ('' !== $('#recommended-articles-modal').attr('data-url')) { $('#recommended-articles-modal').foundation('reveal', 'open', $('#recommended-articles-modal').attr('data-url')); } }); $.ajax({ url: "/article/385965/similarity-related/show-link", success: function(result) { if (result.show) { $('#recommended-articles-modal').attr('data-url', result.link); $('.js-article-similarity-container').show(); } } }); $(document).on('opened.fndtn.reveal', '[data-reveal]', function() { var modal = $(this); if (modal.attr('id') === "author-biographies-modal") { modal.find('.multiple-items').slick({ slidesToShow: 1, nextArrow: '<a class="slick-next" href="#"><i class="material-icons">chevron_right</i></a>', prevArrow: '<a class="slick-prev" href="#"><i class="material-icons">chevron_left</i></a>', slidesToScroll: 1, draggable: false, }); modal.find('.multiple-items').slick('refresh'); } }); }); </script> <!-- Twitter universal website tag code --> <script> !function(e,t,n,s,u,a){e.twq||(s=e.twq=function(){s.exe?s.exe.apply(s,arguments):s.queue.push(arguments); },s.version='1.1',s.queue=[],u=t.createElement(n),u.async=!0,u.src='//static.ads-twitter.com/uwt.js', a=t.getElementsByTagName(n)[0],a.parentNode.insertBefore(u,a))}(window,document,'script'); // Insert Twitter Pixel ID and Standard Event data below twq('init','o2pa3'); twq('track','PageView'); </script> <!-- End Twitter universal website tag code --> <script> $(document).ready(function() { $(document).on('keyup', function (e) { if (e.keyCode == 27) { var hElem = $(this).find(".annotator-adder"); if (hElem.length){ hElem.css({'visibility':'hidden'}); } else { document.querySelector("hypothesis-adder").shadowRoot.querySelector(".annotator-adder").style.visibility = "hidden"; } } }); }); </script> <script> window.hypothesisConfig = function () { return { sidebarAppUrl: 'https://commenting.mdpi.com/app.html', showHighlights: 'whenSidebarOpen' , openSidebar: false , assetRoot: 'https://commentingres.mdpi.com/hypothesis', services: [{ apiUrl: 'https://commenting.mdpi.com/api/', authority: 'mdpi', grantToken: '', doi: '10.3390/app10144926' }], }; }; </script> <script async id="hypothesis_frame"></script> <script type="text/javascript"> if (-1 !== window.location.href.indexOf("?src=")) { window.history.replaceState({}, '', `${location.pathname}`); } $(document).ready(function() { var scifeedCounter = 0; var search = window.location.search; var mathjaxReady = false; // late image file loading $("img[data-lsrc]").each(function() { $(this).attr("src", $(this).data("lsrc")); }); // late mathjax initialization var head = document.getElementsByTagName("head")[0]; var script = document.createElement("script"); script.type = "text/x-mathjax-config"; script[(window.opera ? "innerHTML" : "text")] = "MathJax.Hub.processSectionDelay = 0;\n" + "MathJax.Hub.Config({\n" + " \"menuSettings\": {\n" + " CHTMLpreview: false\n" + " },\n" + " \"CHTML-preview\":{\n" + " disabled: true\n" + " },\n" + " \"HTML-CSS\": {\n" + " scale: 90,\n" + " availableFonts: [],\n" + " preferredFont: null,\n" + " preferredFonts: null,\n" + " webFont:\"Gyre-Pagella\",\n" + " imageFont:'TeX',\n" + " undefinedFamily:\"'Arial Unicode MS',serif\",\n" + " linebreaks: { automatic: false }\n" + " },\n" + " \"TeX\": {\n" + " extensions: ['noErrors.js'],\n" + " noErrors: {\n" + " inlineDelimiters: [\"\",\"\"],\n" + " multiLine: true,\n" + " style: {\n" + " 'font-size': '90%',\n" + " 'text-align': 'left',\n" + " 'color': 'black',\n" + " 'padding': '1px 3px',\n" + " 'border': '1px solid'\n" + " }\n" + " }\n" + " }\n" + "});\n" + "MathJax.Hub.Register.StartupHook('End', function() {\n" + " refreshMathjaxWidths();\n" + " mathjaxReady = true;\n" + "});\n" + "MathJax.Hub.Startup.signal.Interest(function (message) {\n" + " if (message == 'End') {\n" + " var hypoLink = document.getElementById('hypothesis_frame');\n" + " if (null !== hypoLink) {\n" + " hypoLink.setAttribute('src', 'https://commenting.mdpi.com/embed.js');\n" + " }\n" + " }\n" + "});"; head.appendChild(script); script = document.createElement("script"); script.type = "text/javascript"; script.src = "https://pub.mdpi-res.com/bundles/mathjax/MathJax.js?config=TeX-AMS-MML_HTMLorMML"; head.appendChild(script); // article version checker if (0 === search.indexOf('?type=check_update&version=')) { $.ajax({ url: "/2076-3417/10/14/4926" + "/versioncheck" + search, success: function(result) { $(".js-check-update-container").html(result); } }); } $('#feed_option').click(function() { // tracker if ($('#scifeed_clicked').length<1) { $(this).append('<span style="display:none" id="scifeed_clicked">done</span>'); } $('#feed_data').toggle('slide', { direction: 'up'}, '1000'); // slideToggle(700); OR toggle(700) $("#scifeed_error_msg").html('').hide(); $("#scifeed_notice_msg").html('').hide(); }); $('#feed_option').click(function(event) { setTimeout(function(){ var captchaSection = $("#captchaSection"); captchaSection.removeClass('ui-helper-hidden').find('input').prop('disabled', false); // var img = captchaSection.find('img'); // img.attr('src', img.data('url') + "?" + (new Date()).getTime()); // $(".captcha_reload").trigger("click"); var img = document.getElementById('gregwar_captcha_scifeed'); img.src = '/generate-captcha/gcb_captcha?n=' + (new Date()).getTime(); },800); }); $(document).on('click', '.split_feeds', function() { var name = $( this ).attr('name'); var flag = 1 - ($(this).is(":checked")*1); $('.split_feeds').each(function (index) { if ($( this ).attr('name') !== name) { $(this)[0].checked = flag; } }); }); $(document).on('click', '#scifeed_submit, #scifeed_submit1', function(event) { event.preventDefault(); $(".captcha_reload").trigger("click"); $("#scifeed_error_msg").html(""); $("#scifeed_error_msg").hide(); }); $(document).on('click', '.subscription_toggle', function(event) { if ($(this).val() === 'Create SciFeed' && $('#scifeed_hidden_flag').length>0) { event.preventDefault(); // alert('Here there would be a captcha because user is not logged in'); var captchaSection = $("#captchaSection"); if (captchaSection.hasClass('ui-helper-hidden')) { captchaSection.removeClass('ui-helper-hidden').find('input').prop('disabled', false); var img = captchaSection.find('img'); img.attr('src', img.data('url') + "?" + (new Date()).getTime()); $("#reloadCaptcha").trigger("click"); } } }); $(document).on('click', '.scifeed_msg', function(){ $(this).hide(); }); $(document).on('click', '.article-scilit-search', function(e) { e.preventDefault(); var data = $(".article-scilit-search-data").val(); var dataArray = data.split(';').map(function(keyword) { return "(\"" + keyword.trim() + "\")"; }); var searchQuery = dataArray.join(" OR "); var searchUrl = encodeURI("https://www.scilit.net/articles/search?q="+ searchQuery + "&advanced=1&highlight=1"); var win = window.open(searchUrl, '_blank'); if (win) { win.focus(); } else { window.location(searchUrl); } }); display_stats(); citedCount(); follow_goto(); // Select the node that will be observed for mutations const targetNodes = document.getElementsByClassName('hypothesis-count-container'); // Options for the observer (which mutations to observe) const config = { attributes: false, childList: true, subtree: false }; // Callback function to execute when mutations are observed const callback = function(mutationList, observer) { for(const mutation of mutationList) { if (mutation.type === 'childList') { let node = $(mutation.target); if (parseInt(node.html()) > 0) { node.show(); } } } }; // Create an observer instance linked to the callback function const observer = new MutationObserver(callback); // Start observing the target node for configured mutations for(const targetNode of targetNodes) { observer.observe(targetNode, config); } // Select the node that will be observed for mutations const mathjaxTargetNode = document.getElementById('middle-column'); // Callback function to execute when mutations are observed const mathjaxCallback = function(mutationList, observer) { if (mathjaxReady && typeof(MathJax) !== 'undefined') { refreshMathjaxWidths(); } }; // Create an observer instance linked to the callback function const mathjaxObserver = new ResizeObserver(mathjaxCallback); // Start observing the target node for configured mutations mathjaxObserver.observe(mathjaxTargetNode); }); /* END $(document).ready */ function refreshMathjaxWidths() { let width = ($('.html-body').width()*0.9) + "px"; $('.MathJax_Display').css('max-width', width); $('.MJXc-display').css('max-width', width); } function sendScifeedFrom(form) { if (!$('#scifeed_email').val().trim()) { // empty email alert('Please, provide an email for subscribe to this scifeed'); return false; } else if (!$('#captchaSection').hasClass('ui-helper-hidden') && !$('#captchaSection').find('input').val().trim()) { // empty captcha alert('Please, fill the captcha field.'); return false; } else if( ((($('#scifeed_form').find('input:checkbox:checked').length)-($('#split_feeds:checked').length))<1) || ($('#scifeed_kwd_txt').length < 0 && !$('#scifeed_kwd_txt').val().trim()) || ($('#scifeed_author_txt').length<0 &&!$('#scifeed_author_txt').val().trim()) ) { alert('You did not select anything to subscribe'); return false; } else if(($('#scifeed_form').find('input:checkbox:checked').length)-($('#split_feeds2:checked').length)<1){ alert("You did not select anything to subscribe"); return false; } else { var url = $('#scifeed_subscribe_url').html(); var formData = $(form).serializeArray(); $.post(url, formData).done(function (data) { if (JSON.parse(data)) { $('.scifeed_msg').hide(); var res = JSON.parse(data); var successFeeds = 0; var errorFeeds = 0; if (res) { $('.scifeed_msg').html(''); $.each(res, function (index, val) { if (val) { if (val.error) { errorFeeds++; $("#scifeed_error_msg").append(index+' - '+val.error+'<br>'); } if (val.notice) // for successful feed creation { successFeeds++; // $("#scifeed_notice_msg").append(index+' - '+val.notice+'<br>'); $("#scifeed_notice_msg").append('<li>'+index+'</li>'); } } }); if (successFeeds>0) { text = $('#scifeed_notice_msg').html(); text = 'The following feed'+(successFeeds>1?'s have':' has')+ ' been sucessfully created:<br><ul>'+ text + '</ul>' +($('#scifeed_hidden_flag').length>0 ? 'You are not logged in, so you probably need to validate '+ (successFeeds>1?'them':' it')+'.<br>' :'' ) +'Please check your email'+(successFeeds>1?'s':'')+' for more details.'; //(successFeeds>1?' for each of them':'')+'.<br>'; $("#scifeed_notice_msg").html(text); $("#scifeed_notice_msg").show(); } if (errorFeeds>0) { $("#scifeed_error_msg").show();; } } $("#feed_data").hide(); } }); } } function follow_goto() { var hashStr = location.hash.replace("#",""); if(typeof hashStr !== 'undefined') { if( hashStr == 'supplementary') { document.getElementById('suppl_id').scrollIntoView(); } if( hashStr == 'citedby') { document.getElementById('cited_id').scrollIntoView(); } } } function cited() { $("#framed_div").toggle('fast', function(){ if ($(this).css('display') != 'none') { var loaded = document.getElementById("loaded"); if(loaded.innerHTML == "No") { // Load Xref result var container = document.getElementById("framed_div"); // This replace the content container.innerHTML = "<img src=\"https://pub.mdpi-res.com/img/loading_circle.gif?9a82694213036313?1732286508\" height=\"20\" width=\"20\" alt=\"Processing...\" style=\"vertical-align:middle; margin-right:0.6em;\">"; var url = "/citedby/10.3390%252Fapp10144926/90"; $.post(url, function(result) { if (result.success) { container.innerHTML = result.view; } loaded.innerHTML = "Yes"; }); } } return true; // for not going at the beginning of the page... }) return true; // for not going at the beginning of the page... } function detect_device() { // Added by Bastien (18/08/2014): based on the http://detectmobilebrowsers.com/ detector var check = false; (function(a){if(/(android|bb\d+|meego).+mobile|avantgo|bada\/|blackberry|blazer|compal|elaine|fennec|hiptop|iemobile|ip(hone|od)|iris|kindle|lge |maemo|midp|mmp|mobile.+firefox|netfront|opera m(ob|in)i|palm( os)?|phone|p(ixi|re)\/|plucker|pocket|psp|series(4|6)0|symbian|treo|up\.(browser|link)|vodafone|wap|windows (ce|phone)|xda|xiino/i.test(a)||/1207|6310|6590|3gso|4thp|50[1-6]i|770s|802s|a wa|abac|ac(er|oo|s\-)|ai(ko|rn)|al(av|ca|co)|amoi|an(ex|ny|yw)|aptu|ar(ch|go)|as(te|us)|attw|au(di|\-m|r |s )|avan|be(ck|ll|nq)|bi(lb|rd)|bl(ac|az)|br(e|v)w|bumb|bw\-(n|u)|c55\/|capi|ccwa|cdm\-|cell|chtm|cldc|cmd\-|co(mp|nd)|craw|da(it|ll|ng)|dbte|dc\-s|devi|dica|dmob|do(c|p)o|ds(12|\-d)|el(49|ai)|em(l2|ul)|er(ic|k0)|esl8|ez([4-7]0|os|wa|ze)|fetc|fly(\-|_)|g1 u|g560|gene|gf\-5|g\-mo|go(\.w|od)|gr(ad|un)|haie|hcit|hd\-(m|p|t)|hei\-|hi(pt|ta)|hp( i|ip)|hs\-c|ht(c(\-| |_|a|g|p|s|t)|tp)|hu(aw|tc)|i\-(20|go|ma)|i230|iac( |\-|\/)|ibro|idea|ig01|ikom|im1k|inno|ipaq|iris|ja(t|v)a|jbro|jemu|jigs|kddi|keji|kgt( |\/)|klon|kpt |kwc\-|kyo(c|k)|le(no|xi)|lg( g|\/(k|l|u)|50|54|\-[a-w])|libw|lynx|m1\-w|m3ga|m50\/|ma(te|ui|xo)|mc(01|21|ca)|m\-cr|me(rc|ri)|mi(o8|oa|ts)|mmef|mo(01|02|bi|de|do|t(\-| |o|v)|zz)|mt(50|p1|v )|mwbp|mywa|n10[0-2]|n20[2-3]|n30(0|2)|n50(0|2|5)|n7(0(0|1)|10)|ne((c|m)\-|on|tf|wf|wg|wt)|nok(6|i)|nzph|o2im|op(ti|wv)|oran|owg1|p800|pan(a|d|t)|pdxg|pg(13|\-([1-8]|c))|phil|pire|pl(ay|uc)|pn\-2|po(ck|rt|se)|prox|psio|pt\-g|qa\-a|qc(07|12|21|32|60|\-[2-7]|i\-)|qtek|r380|r600|raks|rim9|ro(ve|zo)|s55\/|sa(ge|ma|mm|ms|ny|va)|sc(01|h\-|oo|p\-)|sdk\/|se(c(\-|0|1)|47|mc|nd|ri)|sgh\-|shar|sie(\-|m)|sk\-0|sl(45|id)|sm(al|ar|b3|it|t5)|so(ft|ny)|sp(01|h\-|v\-|v )|sy(01|mb)|t2(18|50)|t6(00|10|18)|ta(gt|lk)|tcl\-|tdg\-|tel(i|m)|tim\-|t\-mo|to(pl|sh)|ts(70|m\-|m3|m5)|tx\-9|up(\.b|g1|si)|utst|v400|v750|veri|vi(rg|te)|vk(40|5[0-3]|\-v)|vm40|voda|vulc|vx(52|53|60|61|70|80|81|83|85|98)|w3c(\-| )|webc|whit|wi(g |nc|nw)|wmlb|wonu|x700|yas\-|your|zeto|zte\-/i.test(a.substr(0,4)))check = true})(navigator.userAgent||navigator.vendor||window.opera); return check; } function display_stats(){ $("#article_stats_div").toggle(); return false; } /* * Cited By Scopus */ function citedCount(){ $("#framed_div_cited_count").toggle('fast', function(){ if ($(this).css('display') != 'none') { var loaded = document.getElementById("loaded_cite_count"); // to load only once the result! if(loaded.innerHTML == "No") { // Load Xref result var d = document.getElementById("framed_div_cited_count"); // This replace the content d.innerHTML = "<img src=\"https://pub.mdpi-res.com/img/loading_circle.gif?9a82694213036313?1732286508\" height=\"20\" width=\"20\" alt=\"Processing...\" style=\"vertical-align:middle; margin-right:0.6em;\">"; $.ajax({ method : "POST", url : "/cite-count/10.3390%252Fapp10144926", success : function(data) { if (data.succ) { d.innerHTML = data.view; loaded.innerHTML = "Yes"; follow_goto(); } } }); } } // end else return true; // for not going at the beginning of the page... }) return true; // for not going at the beginning of the page... } </script><script type="text/javascript" src="https://pub.mdpi-res.com/assets/js/third-party/highcharts/highcharts.js?bdd06f45e34c33df?1732286508"></script><script type="text/javascript" src="https://pub.mdpi-res.com/assets/js/third-party/highcharts/modules/exporting.js?944dc938d06de3a8?1732286508"></script><script type="text/javascript" defer="defer"> var advancedStatsData; var selectedStatsType = "abstract"; $(function(){ var countWrapper = $('#counts-wrapper'); $('#author_stats_id #type_links a').on('click', function(e) { e.preventDefault(); selectedStatsType = $(this).data('type'); $('#article_advanced_stats').vectorMap('set', 'values', advancedStatsData[selectedStatsType]); $('#advanced_stats_max').html(advancedStatsData[selectedStatsType].max); $('#type_links a').removeClass('active'); $(this).addClass('active'); }); $.get('/2076-3417/10/14/4926/stats', function (result) { if (!result.success) { return; } // process article metrics part in left column var viewNumber = countWrapper.find(".view-number"); viewNumber.html(result.metrics.views); viewNumber.parent().toggleClass("count-div--grey", result.metrics.views == 0); var downloadNumber = countWrapper.find(".download-number"); downloadNumber.html(result.metrics.downloads); downloadNumber.parent().toggleClass("count-div--grey", result.metrics.downloads == 0); var citationsNumber = countWrapper.find(".citations-number"); citationsNumber.html(result.metrics.citations); citationsNumber.parent().toggleClass("count-div--grey", result.metrics.citations == 0); if (result.metrics.views > 0 || result.metrics.downloads > 0 || result.metrics.citations > 0) { countWrapper.find("#js-counts-wrapper__views, #js-counts-wrapper__downloads").addClass("visible").show(); if (result.metrics.citations > 0) { countWrapper.find('.citations-number').html(result.metrics.citations).show(); countWrapper.find("#js-counts-wrapper__citations").addClass("visible").show(); } else { countWrapper.find("#js-counts-wrapper__citations").remove(); } $("[data-id='article-counters']").removeClass("hidden"); } if (result.metrics.altmetrics_score > 0) { $("#js-altmetrics-donut").show(); } // process view chart in main column var jsondata = result.chart; var series = new Array(); $.each(jsondata.elements, function(i, element) { var dataValues = new Array(); $.each(element.values, function(i, value) { dataValues.push(new Array(value.tip, value.value)); }); series[i] = {name: element.text, data:dataValues}; }); Highcharts.setOptions({ chart: { style: { fontFamily: 'Arial,sans-serif' } } }); $('#article_stats_swf').highcharts({ chart: { type: 'line', width: $("#tabs").width() //* 0.91 }, credits: { enabled: false }, exporting: { enabled: true }, title: { text: jsondata.title.text, x: -20 //center }, xAxis: { categories: jsondata.x_axis.labels.labels, offset: jsondata.x_axis.offset, labels:{ step: jsondata.x_axis.labels.steps, rotation: 30 } }, yAxis: { max: jsondata.y_axis.max, min: jsondata.y_axis.min, offset: jsondata.y_axis.offset, labels: { steps: jsondata.y_axis.steps }, title: { enabled: false } }, tooltip: { formatter: function (){ return this.key.replace("#val#", this.y); } }, legend: { align: 'top', itemDistance: 50 }, series: series }); }); $('#supplement_link').click(function() { document.getElementById('suppl_id').scrollIntoView(); }); $('#stats_link').click(function() { document.getElementById('stats_id').scrollIntoView(); }); // open mol viewer for molbank special supplementary files $('.showJmol').click(function(e) { e.preventDefault(); var jmolModal = $("#jmolModal"); var url = "/article/385965/jsmol_viewer/__supplementary_id__"; url = url.replace(/__supplementary_id__/g, $(this).data('index')); $('#jsmol-content').attr('src', url); jmolModal.find(".content").html($(this).data('description')); jmolModal.foundation("reveal", "open"); }); }); !function() { "use strict"; function e(e) { try { if ("undefined" == typeof console) return; "error"in console ? console.error(e) : console.log(e) } catch (e) {} } function t(e) { return d.innerHTML = '<a href="' + e.replace(/"/g, """) + '"></a>', d.childNodes[0].getAttribute("href") || "" } function n(n, c) { var o = ""; var k = parseInt(n.substr(c + 4, 2), 16); for (var i = c; i < n.length; i += 2) { if (i != c + 4) { var s = parseInt(n.substr(i, 2), 16) ^ k; o += String.fromCharCode(s); } } try { o = decodeURIComponent(escape(o)); } catch (error) { console.error(error); } return t(o); } function c(t) { for (var r = t.querySelectorAll("a"), c = 0; c < r.length; c++) try { var o = r[c] , a = o.href.indexOf(l); a > -1 && (o.href = "mailto:" + n(o.href, a + l.length)) } catch (i) { e(i) } } function o(t) { for (var r = t.querySelectorAll(u), c = 0; c < r.length; c++) try { var o = r[c] , a = o.parentNode , i = o.getAttribute(f); if (i) { var l = n(i, 0) , d = document.createTextNode(l); a.replaceChild(d, o) } } catch (h) { e(h) } } function a(t) { for (var r = t.querySelectorAll("template"), n = 0; n < r.length; n++) try { i(r[n].content) } catch (c) { e(c) } } function i(t) { try { c(t), o(t), a(t) } catch (r) { e(r) } } var l = "/cnd-cgi/l/email-protection#" , u = ".__cf_email__" , f = "data-cfemail" , d = document.createElement("div"); i(document), function() { var e = document.currentScript || document.scripts[document.scripts.length - 1]; e.parentNode.removeChild(e) }() }(); </script><script type="text/javascript"> function setCookie(cname, cvalue, ctime) { ctime = (typeof ctime === 'undefined') ? 10*365*24*60*60*1000 : ctime; // default => 10 years var d = new Date(); d.setTime(d.getTime() + ctime); // ==> 1 hour = 60*60*1000 var expires = "expires="+d.toUTCString(); document.cookie = cname + "=" + cvalue + "; " + expires +"; path=/"; } function getCookie(cname) { var name = cname + "="; var ca = document.cookie.split(';'); for(var i=0; i<ca.length; i++) { var c = ca[i]; while (c.charAt(0)==' ') c = c.substring(1); if (c.indexOf(name) == 0) return c.substring(name.length, c.length); } return ""; } </script><script type="text/javascript" src="https://d1bxh8uas1mnw7.cloudfront.net/assets/embed.js"></script><script> $(document).ready(function() { if ($("#js-similarity-related-data").length > 0) { $.ajax({ url: '/article/385965/similarity-related', success: function(response) { $("#js-similarity-related-data").html(response); $("#js-related-articles-menu").show(); $(document).foundation('tab', 'reflow'); MathJax.Hub.Queue(["Typeset", MathJax.Hub]); } }); } }); </script><link rel="stylesheet" href="https://pub.mdpi-res.com/assets/css/jquery-ui-1.10.4.custom.min.css?80647d88647bf347?1732286508"><link rel="stylesheet" href="https://pub.mdpi-res.com/assets/css/magnific-popup.min.css?04d343e036f8eecd?1732286508"><script type="text/javascript" src="https://pub.mdpi-res.com/assets/js/magnific-popup.min.js?2be3d9e7dc569146?1732286508"></script><script> $(function() { $(".js-show-more-academic-editors").on("click", function(e) { e.preventDefault(); $(this).hide(); $(".academic-editor-container").removeClass("hidden"); }); }); </script> <link rel="stylesheet" href="https://pub.mdpi-res.com/assets/css/vmap/jqvmap.min.css?126a06688aa11c13?1732286508"> <script src="https://pub.mdpi-res.com/assets/js/vmap/jquery.vmap.min.js?935f68d33bdd88a1?1732286508"></script> <script src="https://pub.mdpi-res.com/assets/js/vmap/jquery.vmap.world.js?16677403c0e1bef1?1732286508"></script> <script> function updateSlick() { $('.multiple-items').slick('setPosition'); } $(document).ready(function() { $('.multiple-items').slick({ slidesToShow: 1, nextArrow: '<a class="slick-next" href="#"><i class="material-icons">chevron_right</i></a>', prevArrow: '<a class="slick-prev" href="#"><i class="material-icons">chevron_left</i></a>', slidesToScroll: 1, responsive: [ { breakpoint: 1024, settings: { slidesToShow: 1, slidesToScroll: 1, } }, { breakpoint: 600, settings: { slidesToShow: 1, slidesToScroll: 1, } }, { breakpoint: 480, settings: { slidesToShow: 1, slidesToScroll: 1, } } ] }); $('.multiple-items').show(); $(document).on('click', '.reviewReportSelector', function(e) { let path = $(this).attr('data-path'); handleReviews(path, $(this)); }); $(document).on('click', '.viewReviewReports', function(e) { let versionOne = $('#versionTab_1'); if (!versionOne.hasClass('activeTab')) { let path = $(this).attr('data-path'); handleReviews(path, versionOne); } location.href = "#reviewReports"; }); $(document).on('click', '.reviewersResponse, .authorResponse', function(e) { let version = $(this).attr('data-version'); let targetVersion = $('#versionTab_' + version); if (!targetVersion.hasClass('activeTab')) { let path = targetVersion.attr('data-path'); handleReviews(path, targetVersion); } location.href = $(this).attr('data-link'); }); $(document).on('click', '.tab', function (e) { e.preventDefault(); $('.tab').removeClass('activeTab'); $(this).addClass('activeTab') $('.tab').each(function() { $(this).closest('.tab-title').removeClass('active'); }); $(this).closest('.tab-title').addClass('active') }); }); function handleReviews(path, target) { $.ajax({ url: path, context: this, success: function (data) { $('.activeTab').removeClass('activeTab'); target.addClass('activeTab'); $('#reviewSection').html(data.view); }, error: function (xhr, ajaxOptions, thrownError) { console.log(xhr.status); console.log(thrownError); } }); } </script> <script src="https://pub.mdpi-res.com/assets/js/xmltohtml/affix.js?v1?1732286508"></script> <script src="https://pub.mdpi-res.com/assets/js/xmltohtml/storage.js?e9b262d3a3476d25?1732286508"></script> <script src="https://pub.mdpi-res.com/assets/js/xmltohtml/jquery-scrollspy.js?09cbaec0dbb35a67?1732286508"></script> <script src="https://pub.mdpi-res.com/assets/js/xmltohtml/magnific-popup.js?4a09c18460afb26c?1732286508"></script> <script src="https://pub.mdpi-res.com/assets/js/xmltohtml/underscore.js?f893e294cde60c24?1732286508"></script> <script type="text/javascript"> $('document').ready(function(){ $("#left-column").addClass("show-for-large-up"); $("#middle-column").removeClass("medium-9").removeClass("left-bordered").addClass("medium-12"); $(window).on('resize scroll', function() { /* if ($('.button--drop-down').isInViewport($(".top-bar").outerHeight())) { */ if ($('.button--drop-down').isInViewport()) { $("#js-button-download").hide(); } else { $("#js-button-download").show(); } }); }); $(document).on('DOMNodeInserted', function(e) { var element = $(e.target); if (element.hasClass('menu') && element.hasClass('html-nav') ) { element.addClass("side-menu-ul"); } }); </script> <script src="https://pub.mdpi-res.com/assets/js/xmltohtml/articles.js?5118449d9ad8913a?1732286508"></script> <script> repositionOpenSideBar = function() { $('#left-column').addClass("show-for-large-up show-for-medium-up").show(); $('#middle-column').removeClass('large-12').removeClass('medium-12'); $('#middle-column').addClass('large-9'); } repositionCloseSideBar = function() { $('#left-column').removeClass("show-for-large-up show-for-medium-up").hide(); $('#middle-column').removeClass('large-9'); $('#middle-column').addClass('large-12').addClass('medium-12'); } </script> <!--[if lt IE 9]> <script src="https://pub.mdpi-res.com/assets/js/ie8/ie8.js?6eef8fcbc831f5bd?1732286508"></script> <script src="https://pub.mdpi-res.com/assets/js/ie8/jquery.xdomainrequest.min.js?a945caca315782b0?1732286508"></script> <![endif]--> <!-- Twitter universal website tag code --> <script type="text/plain" data-cookieconsent="marketing"> !function(e,t,n,s,u,a){e.twq||(s=e.twq=function(){s.exe?s.exe.apply(s,arguments):s.queue.push(arguments); },s.version='1.1',s.queue=[],u=t.createElement(n),u.async=!0,u.src='//static.ads-twitter.com/uwt.js', a=t.getElementsByTagName(n)[0],a.parentNode.insertBefore(u,a))}(window,document,'script'); // Insert Twitter Pixel ID and Standard Event data below twq('init','o2pip'); twq('track','PageView'); </script> <!-- End Twitter universal website tag code --> <script>(function(){function c(){var b=a.contentDocument||a.contentWindow.document;if(b){var d=b.createElement('script');d.innerHTML="window.__CF$cv$params={r:'8e6e1cfaa8b59c33',t:'MTczMjMzMjk2OC4wMDAwMDA='};var a=document.createElement('script');a.nonce='';a.src='/cdn-cgi/challenge-platform/scripts/jsd/main.js';document.getElementsByTagName('head')[0].appendChild(a);";b.getElementsByTagName('head')[0].appendChild(d)}}if(document.body){var a=document.createElement('iframe');a.height=1;a.width=1;a.style.position='absolute';a.style.top=0;a.style.left=0;a.style.border='none';a.style.visibility='hidden';document.body.appendChild(a);if('loading'!==document.readyState)c();else if(window.addEventListener)document.addEventListener('DOMContentLoaded',c);else{var e=document.onreadystatechange||function(){};document.onreadystatechange=function(b){e(b);'loading'!==document.readyState&&(document.onreadystatechange=e,c())}}}})();</script></body> </html>