{"_id":"54f22bd032242e0d007861a7","user":"54ee203467e09c230091e70c","version":{"_id":"54ee20645f63b321008be94a","project":"54ee20635f63b321008be947","__v":5,"createdAt":"2015-02-25T19:20:04.054Z","releaseDate":"2015-02-25T19:20:04.054Z","categories":["54ee20645f63b321008be94b","54f097ed7d40be370012d4f1","54f097f39502520d00d78da3","54f097fcf68da9350094ec6e","54f22e183fcd560d00003ed8"],"is_deprecated":false,"is_hidden":false,"is_beta":true,"is_stable":true,"codename":"","version_clean":"1.0.0","version":"1.0"},"category":{"_id":"54ee20645f63b321008be94b","pages":["54ee20655f63b321008be94d","54f2028b3fcd560d00003e9f","54f22bd032242e0d007861a7"],"project":"54ee20635f63b321008be947","version":"54ee20645f63b321008be94a","__v":3,"sync":{"url":"","isSync":false},"reference":false,"createdAt":"2015-02-25T19:20:04.572Z","from_sync":false,"order":0,"slug":"getting-started","title":"Getting Started"},"project":"54ee20635f63b321008be947","__v":3,"updates":[],"next":{"pages":[],"description":""},"createdAt":"2015-02-28T20:57:52.060Z","link_external":false,"link_url":"","githubsync":"","sync_unique":"","hidden":false,"api":{"results":{"codes":[]},"auth":"required","params":[],"url":""},"isReference":false,"order":999,"body":"It is undeniable that apps are becoming smarter: mapping apps now show us traffic information, shopping apps predict which products we might want to purchase, and music apps show us new songs we might enjoy based on our previous listening habits. Users have come to expect these smart features in apps and the lack of these predictive features can often result in a missed download.\n\nProviding your users with personalized recommendations can improve user engagement with your app and provide features your users will appreciate. Users are more likely to interact with a personalized experience tailored to their interests and preferences.\n\n* **Social:** Increase user engagement with social recommendations, such as Users you may be interested in.\n* **Content:** Increase sales with personalized product recommendations based on purchase or viewing history.\n* **Commerce:** Recommend news articles and other content based on user viewing history.\n[block:api-header]\n{\n  \"type\": \"basic\",\n  \"title\": \"Datamaglia recommendations\"\n}\n[/block]\nBuilding out these features is often not the core competency of the development team, and can be a distraction for developers who would rather focus on building the core functionality of their app. Managing the data pipeline that is required to support these features requires devops resources.\n\nDatamaglia Recommendations are provided as a service so there is no need to maintain extra servers, databases or implement complex machine learning algorithms.\n[block:api-header]\n{\n  \"type\": \"basic\",\n  \"title\": \"How we generate recommendations\"\n}\n[/block]\n## Graph data model\n\nBy modeling user preferences as a graph we are able to express user preferences in a concise and efficient format.\n\nThis data model allows us to take advantage of complex algorithms for generating personalized recommendations. To learn more, read about [Collaborative Filtering](http://en.wikipedia.org/wiki/Collaborative_filtering).\n\n## User defined data model\n\n\n[block:image]\n{\n  \"images\": [\n    {\n      \"image\": [\n        \"https://files.readme.io/IYn8kifGSbWrmpftHF7X_subgraph.png\",\n        \"subgraph.png\",\n        \"475\",\n        \"150\",\n        \"#5187eb\",\n        \"\"\n      ]\n    }\n  ]\n}\n[/block]\nUnlike other recommender systems which force the user to constrain their data to an inflexible data model, Datamaglia allows the user to define their data model by creating any number of subgraphs. Subgraph is the term we use to describe a piece of a user's data model that will be used to generate recommendations. You can learn more about subgraphs in our [getting started tutorial](doc:getting-started-demo-1).\n[block:api-header]\n{\n  \"type\": \"basic\",\n  \"title\": \"Data integration: The Datamaglia difference\"\n}\n[/block]\nRecommendations are more likely to be relevant if the algorithm is fed lots of data about user preferences. What if there simply isn't enough data to learn user preferences? This is the notorious cold-start problem that can often make user onboarding a painful and unpersonalized process.\n\nDatamaglia Recommendations solves this issue by integrating user data across applications and across social networks. This means you can start delivering personalized recommendations to your users immediately without learning about their preferences in the context of your app, and deliever more relevant recommendations once you have collected some user preferences.\n[block:api-header]\n{\n  \"type\": \"basic\",\n  \"title\": \"Complex data models\"\n}\n[/block]\n\n[block:image]\n{\n  \"images\": [\n    {\n      \"image\": [\n        \"https://files.readme.io/GAr8wTLRsuOWcY5alNRl_user_user.png\",\n        \"user_user.png\",\n        \"850\",\n        \"430\",\n        \"#3680bc\",\n        \"\"\n      ]\n    }\n  ]\n}\n[/block]\nOften the data we would to like to use to express user preferences is rather complex. When represented as a graph we end up with several different types of edges (\"LIKES\", \"FOLLOWS\", etc) and several different node types (\"User\", \"Item\", etc). These types of networks are known as multi-modal networks, because there are multiple modes through which a relationship can be expressed.\n\nOther recommendation systems are not able to make use of this rich data model and only capture a simple version of the data available. This means recommendations are not as relevant and interesting to your users. Datamaglia Recommendations algorithms are able to take these complex data models into account to always make sure the recommendations are relevant and interesting to your users.\n\nView the [tutorial](doc:getting-started-demo-1) to read more or [create an account here](http://console.datamaglia.com) to get started with Datamaglia API!","excerpt":"","slug":"how-it-works","type":"basic","title":"How does it work?"}
It is undeniable that apps are becoming smarter: mapping apps now show us traffic information, shopping apps predict which products we might want to purchase, and music apps show us new songs we might enjoy based on our previous listening habits. Users have come to expect these smart features in apps and the lack of these predictive features can often result in a missed download. Providing your users with personalized recommendations can improve user engagement with your app and provide features your users will appreciate. Users are more likely to interact with a personalized experience tailored to their interests and preferences. * **Social:** Increase user engagement with social recommendations, such as Users you may be interested in. * **Content:** Increase sales with personalized product recommendations based on purchase or viewing history. * **Commerce:** Recommend news articles and other content based on user viewing history. [block:api-header] { "type": "basic", "title": "Datamaglia recommendations" } [/block] Building out these features is often not the core competency of the development team, and can be a distraction for developers who would rather focus on building the core functionality of their app. Managing the data pipeline that is required to support these features requires devops resources. Datamaglia Recommendations are provided as a service so there is no need to maintain extra servers, databases or implement complex machine learning algorithms. [block:api-header] { "type": "basic", "title": "How we generate recommendations" } [/block] ## Graph data model By modeling user preferences as a graph we are able to express user preferences in a concise and efficient format. This data model allows us to take advantage of complex algorithms for generating personalized recommendations. To learn more, read about [Collaborative Filtering](http://en.wikipedia.org/wiki/Collaborative_filtering). ## User defined data model [block:image] { "images": [ { "image": [ "https://files.readme.io/IYn8kifGSbWrmpftHF7X_subgraph.png", "subgraph.png", "475", "150", "#5187eb", "" ] } ] } [/block] Unlike other recommender systems which force the user to constrain their data to an inflexible data model, Datamaglia allows the user to define their data model by creating any number of subgraphs. Subgraph is the term we use to describe a piece of a user's data model that will be used to generate recommendations. You can learn more about subgraphs in our [getting started tutorial](doc:getting-started-demo-1). [block:api-header] { "type": "basic", "title": "Data integration: The Datamaglia difference" } [/block] Recommendations are more likely to be relevant if the algorithm is fed lots of data about user preferences. What if there simply isn't enough data to learn user preferences? This is the notorious cold-start problem that can often make user onboarding a painful and unpersonalized process. Datamaglia Recommendations solves this issue by integrating user data across applications and across social networks. This means you can start delivering personalized recommendations to your users immediately without learning about their preferences in the context of your app, and deliever more relevant recommendations once you have collected some user preferences. [block:api-header] { "type": "basic", "title": "Complex data models" } [/block] [block:image] { "images": [ { "image": [ "https://files.readme.io/GAr8wTLRsuOWcY5alNRl_user_user.png", "user_user.png", "850", "430", "#3680bc", "" ] } ] } [/block] Often the data we would to like to use to express user preferences is rather complex. When represented as a graph we end up with several different types of edges ("LIKES", "FOLLOWS", etc) and several different node types ("User", "Item", etc). These types of networks are known as multi-modal networks, because there are multiple modes through which a relationship can be expressed. Other recommendation systems are not able to make use of this rich data model and only capture a simple version of the data available. This means recommendations are not as relevant and interesting to your users. Datamaglia Recommendations algorithms are able to take these complex data models into account to always make sure the recommendations are relevant and interesting to your users. View the [tutorial](doc:getting-started-demo-1) to read more or [create an account here](http://console.datamaglia.com) to get started with Datamaglia API!