Sie sind auf Seite 1von 18

COLLABORATIVE RECOMMENDATION SYSTEM

USING MICROSOFT AZURE


Submitted to:

Prof. Pradeep Kumar


IIM Lucknow

Submitted by:
Group- 5

Apurva Sharma (PGPJ02008)


Himanshu Puri (PGPJ02026)
Vasundhara Gupta (PGPJ020 )
Yachana Sharma (PGPJ020 )

OCTOBER 25, 2018


CONTENTS

INTRODUCTION ........................................................................................................................................ 1

1|Page
INTRODUCTION

A collaborative information system in which a first display device provides a recommendation of


programming content to a viewer of a second display device, where the recommendation is based on content
characteristics of the recommended content, and where the recommendation is based on assigning those
content characteristics respectively different weights. Recommender systems use a technique called
Collaborative filtering. In the newer, narrower sense, collaborative filtering is a method of making automatic
predictions (filtering) about the interests of a user by collecting preferences or taste information from many
users.

Collaborative filtering, also referred to as social filtering, filters information by using the recommendations of
other people. It is based on the idea that people who agreed in their evaluation of certain items in the past
are likely to agree again in the future. A person who wants to see a movie for example, might ask for
recommendations from friends. The recommendations of some friends who have similar interests are trusted
more than recommendations from others. This information is used in the decision on which movie to see.
Most collaborative filtering systems apply the so called neighborhood-based technique. In the neighborhood-
based approach a number of users is selected based on their similarity to the active user. A prediction for the
active user is made by calculating a weighted average of the ratings of the selected users.

In the newer, narrower sense, collaborative filtering is a method of making automatic predictions (filtering)
about the interests of a user by collecting preferences or taste information from many users (collaborating).
The underlying assumption of the collaborative filtering approach is that if a person A has the same opinion
as a person B on an issue, A is more likely to have B's opinion on a different issue than that of a randomly
chosen person. For example, a collaborative filtering recommendation system for television tastes could
make predictions about which television show a user should like given a partial list of that user's tastes (likes
or dislikes). Note that these predictions are specific to the user, but use information gleaned from many
users. This differs from the simpler approach of giving an average (non-specific) score for each item of
interest, for example based on its number of votes.

In the more general sense, collaborative filtering is the process of filtering for information or patterns using
techniques involving collaboration among multiple agents, viewpoints, data sources, etc. Applications of
collaborative filtering typically involve very large data sets. Collaborative filtering methods have been applied
to many different kinds of data including: sensing and monitoring data, such as in mineral exploration,
environmental sensing over large areas or multiple sensors; financial data, such as financial service
institutions that integrate many financial sources; or in electronic commerce and web applications where the

2|Page
focus is on user data, etc. The remainder of this discussion focuses on collaborative filtering for user data,
although some of the methods and approaches may apply to the other major applications as well.

Collaborative filtering algorithms often require (1) users' active participation, (2) an easy way to represent
users' interests, and (3) algorithms that are able to match people with similar interests.

Typically, the workflow of a collaborative filtering system is:

A user expresses his or her preferences by rating items (e.g. books, movies or CDs) of the system. These
ratings can be viewed as an approximate representation of the user's interest in the corresponding domain.
The system matches this user's ratings against other users' and finds the people with most "similar" tastes.
With similar users, the system recommends items that the similar users have rated highly but not yet being
rated by this user (presumably the absence of rating is often considered as the unfamiliarity of an item).

Collaborative filtering systems have many forms, but many common systems can be reduced to two steps:

 Look for users who share the same rating patterns with the active user (the user whom the
prediction is for).
 Use the ratings from those like-minded users found in step 1 to calculate a prediction for the active
user

This falls under the category of user-based collaborative filtering. A specific application of this is the user-
based Nearest Neighbor algorithm. Alternatively, item-based collaborative filtering (users who bought x also
bought y), proceeds in an item-centric manner:

 Build an item-item matrix determining relationships between pairs of items


 Infer the tastes of the current user by examining the matrix and matching that user's data

3|Page
About Microsoft Azure

Microsoft Azure is a cloud computing service created


by Microsoft for building, testing, deploying, and managing
applications and services through a global network of
Microsoft-managed data centres. It facilitates us with
a software as a service (SaaS), platform as a service
(PaaS) and infrastructure as a service (IaaS) and supports many
different programming languages, tools and frameworks,
including both Microsoft-specific and third-party software and
systems.

The Azure Service Platform is comprised of the three cloud centric products namely Windows Azure, SQL
Azure and Azure App Fabric controller. These are in addition to the application hosting infrastructure facility.

Microsoft Azure includes Windows Azure, which is a cloud specific OS designed to provide scalable
compute and storage services. It is supported by Azure App Fabric, which is a collection of different tools
for supporting applications in the cloud. SQL Azure enables storage, as well as management of data,
similar to the conventional relational database services of an SQL server.

The Microsoft Azure website provides a directory of hundreds of different services you can use, including
full virtual machines, databases, file storage, backups, and services for mobile and web apps.

This service was originally named “Windows Azure”, but transitioned to “Microsoft Azure” because it can
handle much more than just Windows. You can run either Windows or Linux virtual machines on Azure,
for example—whichever you prefer.

Digging through these hundreds of services, you’ll see that you can do practically anything. And for
anything Azure doesn’t offer in an easy service, you can set up a Windows or Linux virtual machine that
hosts whatever software you want to use. You could even host a Windows or Linux desktop in the cloud
on a virtual machine and connect to it remotely. It’s just another way to use remote computing resources.

Much of what Azure does isn’t exclusive to Azure. Amazon, Microsoft, and Google are competing. Amazon
Web Services, for example, is the leader in the field—ahead of both Microsoft and Google offerings.

Azure products and services

As of July 2018, Microsoft categorizes Azure cloud services into 18 main product types:

Compute -- These services enable a user to deploy and manage virtual machines (VMs), containers and
batch processing, as well as support remote application access.

4|Page
Web -- These services support the development and deployment of web applications, and also offer
features for search, content delivery, application programming interface (API) management, notification
and reporting.

Data storage -- This category of services provides scalable cloud storage for structured and unstructured
data and also supports big data projects, persistent storage (for containers) and archival storage.

Analytics -- These services provide distributed analytics and storage, as well as features for real-time
analytics, big data analytics, data lakes, machine learning, business intelligence (BI), internet of things (IoT)
data streams and data warehousing.

Networking -- This group includes virtual networks, dedicated connections and gateways, as well as
services for traffic management and diagnostics, load balancing, domain name system (DNS) hosting, and
network protection against distributed denial-of-service (DDoS) attacks.

Media and content delivery network (CDN) -- These services include on-demand streaming, digital rights
protection, encoding and media playback and indexing.

Hybrid integration -- These are services for server backup, site recovery and connecting private and public
clouds.

Identity and access management (IAM) -- These offerings ensure only authorized users can access Azure
services, and help protect encryption keys and other sensitive information in the cloud. Services include
support for Azure Active Directory and multifactor authentication (MFA).

Internet of things -- These services help users capture, monitor and analyze IoT data from sensors and
other devices. Services include notifications, analytics, monitoring and support for coding and execution.

Development -- These services help application developers share code, test applications and track
potential issues. Azure supports a range of application programming languages, including JavaScript,
Python, .NET and Node.js. Tools in this category also include support for Visual Studio, software
development kits (SDKs) and blockchain.

Security -- These products provide capabilities to identify and respond to cloud security threats, as well
as manage encryption keys and other sensitive assets.

5|Page
Artificial intelligence (AI) and machine learning -- This is a wide range of services that a developer can
use to infuse machine learning, AI and cognitive computing capabilities into applications and data sets.

Containers -- These services help an enterprise create, register, orchestrate and manage huge volumes of
containers in the Azure cloud, using common platforms such as Docker and Kubernetes.

Databases -- This category includes Database as a Service (DBaaS) offerings for SQL and NoSQL, as well as
other database instances, such as Azure Cosmos DB and Azure Database for PostgreSQL. It also includes
SQL Data Warehouse support, caching, and hybrid database integration and migration features.

DevOps -- This group provides project and collaboration tools, such as Visual Studio Team Services, that
facilitate DevOps software development processes. It also offers features for application diagnostics,
DevOps tool integrations, and test labs for build tests and experimentation.

Migration -- This suite of tools helps an organization estimate workload migration costs, and perform the
actual migration of workloads from local data centers to the Azure cloud.

Mobile -- These products help a developer build cloud application for mobile devices, providing
notification services, support for back-end tasks, tools for building APIs and the ability to couple geospatial
(location) context with data.

Management -- These services provide a range of backup, recovery, compliance, automation, scheduling
and monitoring tools that can help a cloud administrator manage an Azure deployment.

Azure for DR and backup

Just as they can with other public cloud platforms, some organizations use Azure for data backup and
disaster recovery (DR). In addition, some organizations use Azure as an alternative to their own data
centre. Rather than invest in local servers and storage, these organizations choose to run some, or all, of
their business applications in Azure.

To ensure availability, Microsoft has Azure data centers located around the world. As of July 2018,
Microsoft Azure services are available in 54 regions, spread across 140 countries. As not all services are

6|Page
available in all regions, Azure users must ensure that workload and data storage locations comply with all
prevailing compliance requirements or other legislation.

Azure pricing and costs

As with other public cloud providers, Azure primarily uses a pay-as-you-go pricing model that charges
based on usage. However, if a single application uses multiple Azure services, each service might involve
multiple pricing tiers. In addition, if a user makes a long-term commitment to certain services, such as
compute instances, Microsoft offers a discounted rate.

Given the many factors involved in cloud service pricing, an organization should review and manage its
cloud usage to minimize costs. Azure-native tools, such as Azure Cost Management, can help to monitor,
visualize and optimize cloud spend. It's also possible to use third-party tools, such as Cloudability or
RightScale, to manage Azure resource usage and associated costs.

Azure competition

Microsoft Azure is one of several major public cloud service providers operating on a large global scale.
Other major providers include Google Cloud Platform (GCP), Amazon Web Services (AWS) and IBM.

Currently, there is a lack of standardization among cloud services or capabilities -- meaning no two cloud
providers offer the same service in the exact same way, using the same APIs or integrations. This makes
it difficult for a business to use more than one public cloud provider to pursue a multi-cloud strategy,
although, third-party cloud management tools can reduce some of these challenges.

7|Page
Azure Active Directory and Windows 10

Microsoft is also using Azure to extend Windows in some important ways. Traditionally, organizations that
wanted to have a central user directory and management of their PCs needed to run their own Microsoft
Active Directory server. Now, in addition to the traditional Active Directory software that can be installed
on a Windows server, an organization can use Azure Active Directory.

Azure AD is the same sort of thing—but hosted on Microsoft Azure. It allows organizations to have all
those centralized administration features without requiring them to host their own Active Directory server
(and set up the often-complicated infrastructure and access permissions needed to make it work
remotely).

These services aren’t identical, but Microsoft is clearly betting that Azure AD is the future. Windows 10
users can join an Azure Active Directory via the “Work Access” feature, and Microsoft’s Office 365
service uses Azure Active Directory to authenticate users.

8|Page
9|Page
10 | P a g e
11 | P a g e
12 | P a g e
13 | P a g e
14 | P a g e
15 | P a g e
REFERENCES

Francesco Ricci and Lior Rokach and Bracha Shapira, Introduction to Recommender Systems Handbook,
Recommender Systems Handbook, Springer, 2011, pp. 1-35

16 | P a g e
17 | P a g e

Das könnte Ihnen auch gefallen