<?xml version='1.0' encoding='UTF-8'?><?xml-stylesheet href="http://www.blogger.com/styles/atom.css" type="text/css"?><feed xmlns='http://www.w3.org/2005/Atom' xmlns:openSearch='http://a9.com/-/spec/opensearchrss/1.0/' xmlns:blogger='http://schemas.google.com/blogger/2008' xmlns:georss='http://www.georss.org/georss' xmlns:gd="http://schemas.google.com/g/2005" xmlns:thr='http://purl.org/syndication/thread/1.0'><id>tag:blogger.com,1999:blog-6765827543481033750</id><updated>2024-08-27T21:34:36.424-07:00</updated><category term="Cloud Papers"/><category term="Data Mining"/><category term="Videos"/><category term="Fun"/><title type='text'>Welcome to Sanket Gupte&#39;s Blog</title><subtitle type='html'>Content: Cloud Computing, Data-Mining, Technical Fun-stuff, Interesting Videos and much more.....</subtitle><link rel='http://schemas.google.com/g/2005#feed' type='application/atom+xml' href='http://guptesanket.blogspot.com/feeds/posts/default'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/6765827543481033750/posts/default?redirect=false'/><link rel='alternate' type='text/html' href='http://guptesanket.blogspot.com/'/><link rel='hub' href='http://pubsubhubbub.appspot.com/'/><author><name>Anonymous</name><uri>http://www.blogger.com/profile/14659637069515892997</uri><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='16' height='16' src='https://img1.blogblog.com/img/b16-rounded.gif'/></author><generator version='7.00' uri='http://www.blogger.com'>Blogger</generator><openSearch:totalResults>19</openSearch:totalResults><openSearch:startIndex>1</openSearch:startIndex><openSearch:itemsPerPage>25</openSearch:itemsPerPage><entry><id>tag:blogger.com,1999:blog-6765827543481033750.post-6343222167626083917</id><published>2011-05-01T18:42:00.000-07:00</published><updated>2011-05-01T18:43:48.443-07:00</updated><category scheme="http://www.blogger.com/atom/ns#" term="Videos"/><title type='text'>Super Sampling theory</title><content type='html'>&lt;div dir=&quot;ltr&quot; style=&quot;text-align: left;&quot; trbidi=&quot;on&quot;&gt;&lt;!--copy and paste--&gt;&lt;object width=&quot;334&quot; height=&quot;326&quot;&gt;&lt;param name=&quot;movie&quot; value=&quot;http://video.ted.com/assets/player/swf/EmbedPlayer.swf&quot;&gt;&lt;/param&gt;&lt;param name=&quot;allowFullScreen&quot; value=&quot;true&quot; /&gt;&lt;param name=&quot;allowScriptAccess&quot; value=&quot;always&quot;/&gt;&lt;param name=&quot;wmode&quot; value=&quot;transparent&quot;&gt;&lt;/param&gt;&lt;param name=&quot;bgColor&quot; value=&quot;#ffffff&quot;&gt;&lt;/param&gt;&lt;param name=&quot;flashvars&quot; value=&quot;vu=http://video.ted.com/talks/dynamic/BrianGreene_2005-medium.flv&amp;su=http://images.ted.com/images/ted/tedindex/embed-posters/BrianGreene-2005.embed_thumbnail.jpg&amp;vw=320&amp;vh=240&amp;ap=0&amp;ti=251&amp;lang=eng&amp;introDuration=15330&amp;adDuration=4000&amp;postAdDuration=830&amp;adKeys=talk=brian_greene_on_string_theory;year=2005;theme=peering_into_space;theme=unconventional_explanations;event=Unconventional+Explanations;tag=Science;tag=physics;tag=universe;&amp;preAdTag=tconf.ted/embed;tile=1;sz=512x288;&quot; /&gt;&lt;embed src=&quot;http://video.ted.com/assets/player/swf/EmbedPlayer.swf&quot; pluginspace=&quot;http://www.macromedia.com/go/getflashplayer&quot; type=&quot;application/x-shockwave-flash&quot; wmode=&quot;transparent&quot; bgColor=&quot;#ffffff&quot; width=&quot;334&quot; height=&quot;326&quot; allowFullScreen=&quot;true&quot; allowScriptAccess=&quot;always&quot; flashvars=&quot;vu=http://video.ted.com/talks/dynamic/BrianGreene_2005-medium.flv&amp;su=http://images.ted.com/images/ted/tedindex/embed-posters/BrianGreene-2005.embed_thumbnail.jpg&amp;vw=320&amp;vh=240&amp;ap=0&amp;ti=251&amp;lang=eng&amp;introDuration=15330&amp;adDuration=4000&amp;postAdDuration=830&amp;adKeys=talk=brian_greene_on_string_theory;year=2005;theme=peering_into_space;theme=unconventional_explanations;event=Unconventional+Explanations;tag=Science;tag=physics;tag=universe;&quot;&gt;&lt;/embed&gt;&lt;/object&gt;&lt;br /&gt;
&lt;/div&gt;</content><link rel='replies' type='application/atom+xml' href='http://guptesanket.blogspot.com/feeds/6343222167626083917/comments/default' title='Post Comments'/><link rel='replies' type='text/html' href='http://guptesanket.blogspot.com/2011/05/super-sampling-theory.html#comment-form' title='0 Comments'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/6765827543481033750/posts/default/6343222167626083917'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/6765827543481033750/posts/default/6343222167626083917'/><link rel='alternate' type='text/html' href='http://guptesanket.blogspot.com/2011/05/super-sampling-theory.html' title='Super Sampling theory'/><author><name>Anonymous</name><uri>http://www.blogger.com/profile/14659637069515892997</uri><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='16' height='16' src='https://img1.blogblog.com/img/b16-rounded.gif'/></author><thr:total>0</thr:total></entry><entry><id>tag:blogger.com,1999:blog-6765827543481033750.post-8441115945290958283</id><published>2010-05-20T21:05:00.001-07:00</published><updated>2010-05-20T21:15:31.466-07:00</updated><title type='text'>Moving to the Clouds</title><content type='html'>&lt;span xmlns=&quot;&quot;&gt;&lt;/span&gt;&lt;br /&gt;
&lt;span xmlns=&quot;&quot;&gt;&lt;div style=&quot;text-align: center;&quot;&gt;&lt;span style=&quot;font-size: 26pt;&quot;&gt;&lt;strong&gt;Moving to the Clouds&lt;br /&gt;
&lt;/strong&gt;&lt;/span&gt;&lt;/div&gt;&lt;div style=&quot;text-align: center;&quot;&gt;Sanket Gupte&lt;br /&gt;
&lt;/div&gt;&lt;div style=&quot;text-align: center;&quot;&gt;Technical Project Report for CMSC 601-Basic Research Skills&lt;br /&gt;
&lt;/div&gt;&lt;div style=&quot;text-align: center;&quot;&gt;CSEE- University of Maryland Baltimore County&lt;br /&gt;
&lt;/div&gt;&lt;div style=&quot;text-align: center;&quot;&gt;&lt;br /&gt;
&lt;/div&gt;&lt;br /&gt;
&lt;span style=&quot;font-size: 13pt;&quot;&gt;&lt;strong&gt;Abstract&lt;br /&gt;
&lt;/strong&gt;&lt;/span&gt;&lt;br /&gt;
&lt;div style=&quot;text-align: justify;&quot;&gt;&lt;span style=&quot;font-size: 10pt;&quot;&gt;Adopting Cloud Computing is creating a huge paradigm shift in the computing world. The research community has recently embarked its journey towards this contemporary technology. It is the convergence and evolution of several concepts from virtualization, distributed application design, grid, and enterprise IT management to enable a more flexible approach for deploying and scaling applications. This paper discusses how cloud computing transforms the way we design, build, and deliver applications, and the architectural considerations that enterprises must make when adopting and using cloud computing technology. Applications built on Cloud Architectures are such that the underlying computing infrastructure is used only when it is needed, draw the necessary resources on-demand, perform a specific job, then relinquish the unneeded resources and often dispose them, after the job is done. While in operation the application scales up or down elastically based on resource needs. For performing such tasks in the most optimized way there is a need for a perfect architecture, which takes into account all the constraints and delivers the best service. A better understanding of the technology would enable the scientific community in facilitating the adoption of this approach and expedite contributions and insights in this field.&lt;br /&gt;
&lt;/span&gt;&lt;/div&gt;&lt;br /&gt;
&lt;span style=&quot;font-size: 14pt;&quot;&gt;&lt;strong&gt;1.Introduction&lt;br /&gt;
&lt;/strong&gt;&lt;/span&gt;&lt;br /&gt;
&lt;br /&gt;
&lt;div style=&quot;text-align: justify;&quot;&gt;&lt;span style=&quot;font-size: 10pt;&quot;&gt;Cloud is a metaphor for &#39;internet&#39;. When we represent internet in network diagram, we represent it as a cloud. It is like the &#39;etc&#39; in the computer world - an area which is someone else&#39;s concern.&lt;br /&gt;
&lt;/span&gt;&lt;/div&gt;&lt;div style=&quot;text-align: justify;&quot;&gt;&lt;span style=&quot;font-size: 10pt;&quot;&gt;More precisely, it is used to access applications not on our computer. Cloud computing derives its roots from various technologies such as service oriented architecture, virtualization, distributed and grid computing. &lt;br /&gt;
&lt;/span&gt;&lt;/div&gt;&lt;br /&gt;
&lt;span style=&quot;font-size: 10pt;&quot;&gt;&lt;strong&gt;1.1 What is &#39;Cloud Computing&#39;?&lt;/strong&gt;&lt;br /&gt;
&lt;/span&gt;&lt;br /&gt;
&lt;div style=&quot;text-align: justify;&quot;&gt;&lt;span style=&quot;font-size: 10pt;&quot;&gt;In its broadest usage, the term &lt;em&gt;cloud computing &lt;/em&gt;refers to the delivery of scalable IT resources over the Internet, as opposed to hosting and operating those resources locally, such as on a college or university network. Those resources can include applications and services, as well as the infrastructure on which they operate. By deploying IT infrastructure and services over the network, an organization can purchase these resources on an as-needed basis and avoid the capital costs of software and hardware. With cloud computing, IT capacity can be adjusted quickly and easily to accommodate changes in demand. While remotely hosted, managed services have long been a part of the IT landscape, a heightened interest in cloud computing is being fueled by ubiquitous networks, maturing standards, the rise of hardware and software virtualization, and the push to make IT costs variable and transparent. [4] [10]&lt;br /&gt;
&lt;/span&gt;&lt;/div&gt;&lt;br /&gt;
&lt;br /&gt;
&lt;span style=&quot;font-size: 10pt;&quot;&gt;&lt;strong&gt;1.2 How is it different from other similar technologies?&lt;/strong&gt;&lt;br /&gt;
&lt;/span&gt;&lt;br /&gt;
&lt;ul&gt;&lt;li&gt;&lt;div style=&quot;text-align: justify;&quot;&gt;&lt;span style=&quot;font-size: 10pt;&quot;&gt;&lt;span style=&quot;text-decoration: underline;&quot;&gt;&lt;strong&gt;Autonomic computing&lt;/strong&gt;&lt;/span&gt; — Integrate computer technology which allows networks to manage themselves with little or no human intervention.&lt;br /&gt;
&lt;/span&gt;&lt;/div&gt;&lt;/li&gt;
&lt;li&gt;&lt;br /&gt;
&lt;div style=&quot;text-align: justify;&quot;&gt;&lt;span style=&quot;font-size: 10pt;&quot;&gt;&lt;span style=&quot;text-decoration: underline;&quot;&gt;&lt;strong&gt;Client-server&lt;/strong&gt;&lt;/span&gt; – Client-server computing refers broadly to any distributed application that has two logical parts: a server which provides information or service, and a client, which requests them.&lt;br /&gt;
&lt;/span&gt;&lt;/div&gt;&lt;/li&gt;
&lt;li&gt;&lt;br /&gt;
&lt;div style=&quot;text-align: justify;&quot;&gt;&lt;span style=&quot;font-size: 10pt;&quot;&gt;&lt;span style=&quot;text-decoration: underline;&quot;&gt;&lt;strong&gt;Grid computing&lt;/strong&gt;&lt;/span&gt; — It is a form of distributed computing and parallel computing, whereby a &#39;super and virtual computer&#39; is composed of a cluster of networked, loosely coupled computers acting in concert to perform very large tasks. Here, a large project is divided into smaller parts that work on different machines, in parallel, cost effective, fast, sharing of resources.&lt;br /&gt;
&lt;/span&gt;&lt;/div&gt;&lt;/li&gt;
&lt;li&gt;&lt;br /&gt;
&lt;div style=&quot;text-align: justify;&quot;&gt;&lt;span style=&quot;font-size: 10pt;&quot;&gt;&lt;span style=&quot;text-decoration: underline;&quot;&gt;&lt;strong&gt;Utility computing&lt;/strong&gt;&lt;/span&gt; — A form of computer service whereby the company providing the service charges you for how much you use it.&lt;br /&gt;
&lt;/span&gt;&lt;/div&gt;&lt;/li&gt;
&lt;li&gt;&lt;br /&gt;
&lt;div style=&quot;text-align: justify;&quot;&gt;&lt;span style=&quot;font-size: 10pt;&quot;&gt;&lt;span style=&quot;text-decoration: underline;&quot;&gt;&lt;strong&gt;Peer-to-peer&lt;/strong&gt;&lt;/span&gt; - systems in which data transfer utilizes the shared resources of every system attached to the Intranet, setup for a specific task or purpose.&lt;br /&gt;
&lt;/span&gt;&lt;/div&gt;&lt;/li&gt;
&lt;li&gt;&lt;br /&gt;
&lt;div style=&quot;text-align: justify;&quot;&gt;&lt;span style=&quot;font-size: 10pt;&quot;&gt;&lt;span style=&quot;text-decoration: underline;&quot;&gt;&lt;strong&gt;Cloud computing&lt;/strong&gt;&lt;/span&gt;- It is used to run multiple smaller applications at the same time. Cloud computing customers do not own the physical infrastructure, instead avoiding capital expenditure by renting usage from a third-party provider. They consume resources as a service and pay only for resources that they use.&lt;br /&gt;
&lt;/span&gt;&lt;/div&gt;&lt;div style=&quot;text-align: justify;&quot;&gt;&lt;br /&gt;
&lt;/div&gt;&lt;/li&gt;
&lt;/ul&gt;&lt;span style=&quot;font-size: 10pt;&quot;&gt;&lt;strong&gt;1.3 What are the Categories in Cloud Services?&lt;/strong&gt;&lt;/span&gt;&lt;br /&gt;
&lt;ul&gt;&lt;li&gt;&lt;br /&gt;
&lt;div&gt;&lt;span style=&quot;font-size: 10pt;&quot;&gt;SaaS – Software as a Service&lt;br /&gt;
&lt;/span&gt;&lt;/div&gt;&lt;ul&gt;&lt;li&gt;&lt;span style=&quot;font-size: 10pt;&quot;&gt;Network-hosted application. It is a model of software deployment whereby a provider licences an application to customers for use as a service on demand.&lt;br /&gt;
&lt;/span&gt;&lt;/li&gt;
&lt;/ul&gt;&lt;/li&gt;
&lt;li&gt;&lt;br /&gt;
&lt;div&gt;&lt;span style=&quot;font-size: 10pt;&quot;&gt;DaaS – Data as a Service&lt;br /&gt;
&lt;/span&gt;&lt;/div&gt;&lt;ul&gt;&lt;li&gt;&lt;span style=&quot;font-size: 10pt;&quot;&gt;Customer queries against provider&#39;s database&lt;br /&gt;
&lt;/span&gt;&lt;/li&gt;
&lt;/ul&gt;&lt;/li&gt;
&lt;li&gt;&lt;br /&gt;
&lt;div&gt;&lt;span style=&quot;font-size: 10pt;&quot;&gt;PaaS– Platform as a Service&lt;br /&gt;
&lt;/span&gt;&lt;/div&gt;&lt;ul&gt;&lt;li&gt;&lt;span style=&quot;font-size: 10pt;&quot;&gt;Network-hosted software development platform. It facilitates the deployment of applications without the cost and complexity of buying and managing the underlying hardware and software layers. PaaS provides the facilities required to support the complete lifecycle of building and delivering web applications and services.&lt;br /&gt;
&lt;/span&gt;&lt;/li&gt;
&lt;/ul&gt;&lt;/li&gt;
&lt;li&gt;&lt;br /&gt;
&lt;div&gt;&lt;span style=&quot;font-size: 10pt;&quot;&gt;IaaS – Infrastructure as a Service&lt;br /&gt;
&lt;/span&gt;&lt;/div&gt;&lt;ul&gt;&lt;li&gt;&lt;span style=&quot;font-size: 10pt;&quot;&gt;Provider hosts customer VMs or provides network storage. Rather than buying servers, software, data center space or network equipment, clients instead buy resources as a fully outsourced service.&lt;br /&gt;
&lt;/span&gt;&lt;/li&gt;
&lt;/ul&gt;&lt;/li&gt;
&lt;/ul&gt;&lt;span style=&quot;font-size: 10pt;&quot;&gt; Other similar terminology is &lt;br /&gt;
&lt;/span&gt;&lt;br /&gt;
&lt;ul&gt;&lt;li&gt;&lt;span style=&quot;font-size: 10pt;&quot;&gt;IPMaaS – Identity and Policy Management as a Service&lt;br /&gt;
&lt;/span&gt;&lt;/li&gt;
&lt;li&gt;&lt;span style=&quot;font-size: 10pt;&quot;&gt;NaaS – Network as a Service&lt;br /&gt;
&lt;/span&gt;&lt;/li&gt;
&lt;li&gt;&lt;span style=&quot;font-size: 10pt;&quot;&gt;XaaS - Everything as a service.&lt;br /&gt;
&lt;/span&gt;&lt;/li&gt;
&lt;/ul&gt;&lt;span style=&quot;font-size: 14pt;&quot;&gt;&lt;strong&gt;2.Motivation&lt;/strong&gt;&lt;/span&gt;&lt;br /&gt;
&lt;br /&gt;
&lt;div style=&quot;text-align: justify;&quot;&gt;&lt;span style=&quot;font-size: 10pt;&quot;&gt;The first high-profile usage of the term &#39;Cloud Computing&#39; was by Eric Schimdt of google in August 2006 in one of the conferences and the abbreviations SaaS, IaaS, PaaS etc are google&#39;s way of managing data-centers and infrastructures, but the first detailed explanation of &#39;Cloud Computing&#39; was given in the paper titled the same, by a team of IBM employees namely- Greg Boss, Padma Malladi, Dennis Quan, Linda Legregni and Harold Hall, in October 2007. The paper being the first ever in depth-description of cloud computing could be called &#39;seminal&#39;. It describes cloud computing, its business benefits and management considerations for the cloud. Giving a detailed description of architecture and infrastructure for the cloud, it shows a clear and concise understanding of the cloud, but in the perspective of management. This paper has its roots in &quot;Introducing HiGIG: The HiPODS Global Innovation Grid&quot; a paper by a different team of IBM, that describes –&quot;&lt;/span&gt;&lt;br /&gt;
&lt;span style=&quot;font-size: 10pt;&quot;&gt;High Performance On Demand Solutions (HiPODS) global innovation grid (HiGIG)&quot; which is based on a composite service-oriented architecture pattern and provides IT infrastructure management services for multiple, globally distributed IT infrastructures.&lt;br /&gt;
&lt;/span&gt;&lt;/div&gt;&lt;br /&gt;
&lt;div style=&quot;text-align: justify;&quot;&gt;&lt;span style=&quot;font-size: 10pt;&quot;&gt;&#39;Above the Clouds:A Berkley View of Cloud Computing&#39;[3] is a phenomenal paper written in early 2009 which describes in detail from the beginning of cloud computing and where it is going to lead in a few years. Although it very lightly touches the technicality of &#39;cloud computing&#39; but it concentrates more on the qualities and characteristics of it. It starts with how the idea began and why &#39;now&#39; is the perfect time for bringing out the concept. It then describes in detail 10 problems which would be faced it embracing it, and ways to deal with it. It is a very significant paper and forms the basis for many related research, and is cited in more than 240 papers.&lt;br /&gt;
&lt;/span&gt;&lt;/div&gt;&lt;br /&gt;
&lt;div style=&quot;text-align: justify;&quot;&gt;&lt;span style=&quot;font-size: 10pt;&quot;&gt;&#39;A Tale of Clouds: Paradigm Comparisions and some thoughts on Research Issues&quot;[12] is a significant paper written by Mei,Chan and Tse, which compares service computing and pervasive computing with cloud computing and gives out the major differences between them. Since it is a short paper, is fails to go into the full details of differences between them and only does a qualitative comparison based on the classic model of computer architecture. Finally it mentions a few research questions in cloud computing, such as storing and accessing large scale data by the clouds, adaptability to internal and external changes, plugging on the clouds, discovering of their entity by the clouds etc. It describes the significance of addressing these questions but does not mention any means of solving them.&lt;br /&gt;
&lt;/span&gt;&lt;/div&gt;&lt;br /&gt;
&lt;div style=&quot;text-align: justify;&quot;&gt;&lt;span style=&quot;font-size: 10pt;&quot;&gt;A paper written by the developers of &#39;Eucalyptus – an open sourced software framework for cloud computing&#39;,[2] describes their infrastructure in a detailed way. It is an in-depth report of their developed framework which could be used for cloud computing users and developers in various ways. &#39;Eucalyptus&#39; employs a hierarchical design, and is divided into Node Controller, Cluster controller, Storage controller and Cloud controller. The node controller runs on the host and controls its execution, inspection and termination of VM instances. The cluster controller is responsible got collecting information of VM execution on specific node controllers and their scheduling. Storage controller provides storing mechanism for storing and accessing VM images and user data, using Amazon&#39;s S3 interface. Cloud controller is the point where users and administrators could enter the cloud. It makes requests to cluster controllers to implement high level scheduling decisions. &lt;br /&gt;
&lt;/span&gt;&lt;/div&gt;&lt;br /&gt;
&lt;div style=&quot;text-align: justify;&quot;&gt;&lt;span style=&quot;font-size: 10pt;&quot;&gt;In a very well written technical white paper published by the collaborated efforts from contributors of Amazon web services, RightScale and r-Path, it is described that although there can be significant similarities between normal applications and cloud applications, but there are huge number of things which have to be taken care of. A very careful attention to the design will ensure a successful deployment. All cloud based applications need to be deployed as virtual appliances so they contain all the components needed to operate, update and manage them. Simple design would help in scalability and planning for failure could avoid the worst things from happening.&lt;br /&gt;
&lt;/span&gt;&lt;/div&gt;&lt;br /&gt;
&lt;div style=&quot;text-align: justify;&quot;&gt;&lt;span style=&quot;font-size: 10pt;&quot;&gt;Sun Microsystems published an elaborate white paper [23] on the architecture of cloud computing. The paper gives an explanation of cloud computing and what all components are present in it. It shows that the cloud can be divided into a very precise and distinct architectural layers such as PaaS, IaaS, SaaS etc. It then mentions the benefits of using cloud computing over normal computing and applications. The main emphasis of the paper is given on IaaS. It mentions what all changes have to be done in order to develop an Infrastructure for the cloud and all the characteristics that the architecture should possess. At the end it gives details on physics and management of data for the cloud. The concluding chapter is about the approach and innovations of &#39;Sun Microsystems&#39; towards cloud computing.&lt;br /&gt;
&lt;/span&gt;&lt;/div&gt;&lt;br /&gt;
&lt;div style=&quot;text-align: justify;&quot;&gt;&lt;span style=&quot;font-size: 10pt;&quot;&gt;In March this year, CPNI published a Cloud Computing briefing. [38] It gives a detailed overview of cloud computing in a security perspective. It concentrates on the potential benefits and risks as well as identifying mitigation advice to reduce vulnerability. It tries to target the conflicting opinions about the concept of cloud computing, but does not provide a clear definition either. Many of the details given are focused on satisfying the customers of the cloud services. It shows the significance of some accepted standard for cloud computing. While mentioning various security issues it also gives recommendations for customers about how they should manage security from their side, and what all things they should ensure in order to get good and standard cloud facilities.&lt;br /&gt;
&lt;/span&gt;&lt;/div&gt;&lt;br /&gt;
&lt;strong&gt;2.1 Current Scenario: How different companies/Organizations are implementing &#39;Cloud Computing&#39;&lt;/strong&gt;&lt;span style=&quot;font-size: 10pt;&quot;&gt;&lt;br /&gt;
&lt;/span&gt;&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;span style=&quot;font-size: 10pt;&quot;&gt;The following is a short list of different organizations implementing &#39;cloud computing&#39;. [25][26][28][30][33][34][35][36][37]&lt;br /&gt;
&lt;/span&gt;&lt;br /&gt;
&lt;div style=&quot;text-align: center;&quot;&gt;&lt;span style=&quot;font-size: 10pt;&quot;&gt;&lt;strong&gt;Table 1:&lt;br /&gt;
&lt;/strong&gt;&lt;/span&gt;&lt;/div&gt;&lt;br /&gt;
&lt;br /&gt;
&lt;div&gt;&lt;table border=&quot;0&quot; style=&quot;border-collapse: collapse;&quot;&gt;&lt;colgroup&gt;&lt;col style=&quot;width: 160px;&quot;&gt;&lt;/col&gt;&lt;col style=&quot;width: 160px;&quot;&gt;&lt;/col&gt;&lt;col style=&quot;width: 160px;&quot;&gt;&lt;/col&gt;&lt;col style=&quot;width: 160px;&quot;&gt;&lt;/col&gt;&lt;/colgroup&gt;&lt;tbody valign=&quot;top&quot;&gt;
&lt;tr&gt;&lt;td style=&quot;border-bottom: solid black 0.5pt; border-left: solid black 0.5pt; border-right: solid black 0.5pt; border-top: solid black 0.5pt; padding-left: 7px; padding-right: 7px;&quot;&gt;&lt;span style=&quot;font-size: 9pt;&quot;&gt;&lt;strong&gt;Organization&lt;/strong&gt;&lt;/span&gt;&lt;/td&gt;&lt;td style=&quot;border-bottom: solid black 0.5pt; border-left: none; border-right: solid black 0.5pt; border-top: solid black 0.5pt; padding-left: 7px; padding-right: 7px;&quot;&gt;&lt;span style=&quot;font-size: 9pt;&quot;&gt;&lt;strong&gt;Service&lt;/strong&gt;&lt;/span&gt;&lt;/td&gt;&lt;td style=&quot;border-bottom: solid black 0.5pt; border-left: none; border-right: solid black 0.5pt; border-top: solid black 0.5pt; padding-left: 7px; padding-right: 7px;&quot;&gt;&lt;span style=&quot;font-size: 9pt;&quot;&gt;&lt;strong&gt;Name&lt;/strong&gt;&lt;/span&gt;&lt;/td&gt;&lt;td style=&quot;border-bottom: solid black 0.5pt; border-left: none; border-right: solid black 0.5pt; border-top: solid black 0.5pt; padding-left: 7px; padding-right: 7px;&quot;&gt;&lt;span style=&quot;font-size: 9pt;&quot;&gt;&lt;strong&gt;Description&lt;/strong&gt;&lt;/span&gt;&lt;/td&gt;&lt;/tr&gt;
&lt;tr style=&quot;height: 2px;&quot;&gt;&lt;td rowspan=&quot;7&quot; style=&quot;border-bottom: solid black 0.5pt; border-left: solid black 0.5pt; border-right: solid black 0.5pt; border-top: none; padding-left: 7px; padding-right: 7px;&quot;&gt;&lt;span style=&quot;font-size: 9pt;&quot;&gt;Amazon&lt;/span&gt;&lt;/td&gt;&lt;td rowspan=&quot;6&quot; style=&quot;border-bottom: solid black 0.5pt; border-left: none; border-right: solid black 0.5pt; border-top: none; padding-left: 7px; padding-right: 7px;&quot;&gt;&lt;span style=&quot;font-size: 9pt;&quot;&gt;IaaS&lt;/span&gt;&lt;/td&gt;&lt;td style=&quot;border-bottom: solid black 0.5pt; border-left: none; border-right: solid black 0.5pt; border-top: none; padding-left: 7px; padding-right: 7px;&quot;&gt;&lt;span style=&quot;font-size: 9pt;&quot;&gt;Elastic Compute Cloud(EC2)&lt;/span&gt;&lt;/td&gt;&lt;td style=&quot;border-bottom: solid black 0.5pt; border-left: none; border-right: solid black 0.5pt; border-top: none; padding-left: 7px; padding-right: 7px;&quot;&gt;&lt;span style=&quot;font-size: 9pt;&quot;&gt;Virtual Servers&lt;/span&gt;&lt;/td&gt;&lt;/tr&gt;
&lt;tr style=&quot;height: 2px;&quot;&gt;&lt;td style=&quot;border-bottom: solid black 0.5pt; border-left: solid black 0.5pt; border-right: solid black 0.5pt; border-top: none; padding-left: 7px; padding-right: 7px;&quot;&gt;&lt;span style=&quot;font-size: 9pt;&quot;&gt;Dynamo&lt;/span&gt;&lt;/td&gt;&lt;td style=&quot;border-bottom: solid black 0.5pt; border-left: none; border-right: solid black 0.5pt; border-top: none; padding-left: 7px; padding-right: 7px;&quot;&gt;&lt;span style=&quot;font-size: 9pt;&quot;&gt;Key-value Storage system&lt;/span&gt;&lt;/td&gt;&lt;/tr&gt;
&lt;tr style=&quot;height: 2px;&quot;&gt;&lt;td style=&quot;border-bottom: solid black 0.5pt; border-left: solid black 0.5pt; border-right: solid black 0.5pt; border-top: none; padding-left: 7px; padding-right: 7px;&quot;&gt;&lt;span style=&quot;font-size: 9pt;&quot;&gt;Simple Storage Service(S3)&lt;/span&gt;&lt;/td&gt;&lt;td style=&quot;border-bottom: solid black 0.5pt; border-left: none; border-right: solid black 0.5pt; border-top: none; padding-left: 7px; padding-right: 7px;&quot;&gt;&lt;span style=&quot;font-size: 9pt;&quot;&gt;Storage buckets&lt;/span&gt;&lt;/td&gt;&lt;/tr&gt;
&lt;tr style=&quot;height: 2px;&quot;&gt;&lt;td style=&quot;border-bottom: solid black 0.5pt; border-left: solid black 0.5pt; border-right: solid black 0.5pt; border-top: none; padding-left: 7px; padding-right: 7px;&quot;&gt;&lt;span style=&quot;font-size: 9pt;&quot;&gt;Simple DB&lt;/span&gt;&lt;/td&gt;&lt;td style=&quot;border-bottom: solid black 0.5pt; border-left: none; border-right: solid black 0.5pt; border-top: none; padding-left: 7px; padding-right: 7px;&quot;&gt;&lt;span style=&quot;font-size: 9pt;&quot;&gt;Database as a service&lt;/span&gt;&lt;/td&gt;&lt;/tr&gt;
&lt;tr style=&quot;height: 2px;&quot;&gt;&lt;td style=&quot;border-bottom: solid black 0.5pt; border-left: solid black 0.5pt; border-right: solid black 0.5pt; border-top: none; padding-left: 7px; padding-right: 7px;&quot;&gt;&lt;span style=&quot;font-size: 9pt;&quot;&gt;CloudFront&lt;/span&gt;&lt;/td&gt;&lt;td style=&quot;border-bottom: solid black 0.5pt; border-left: none; border-right: solid black 0.5pt; border-top: none; padding-left: 7px; padding-right: 7px;&quot;&gt;&lt;span style=&quot;font-size: 9pt;&quot;&gt;Content Delivery&lt;/span&gt;&lt;/td&gt;&lt;/tr&gt;
&lt;tr style=&quot;height: 2px;&quot;&gt;&lt;td style=&quot;border-bottom: solid black 0.5pt; border-left: solid black 0.5pt; border-right: solid black 0.5pt; border-top: none; padding-left: 7px; padding-right: 7px;&quot;&gt;&lt;span style=&quot;font-size: 9pt;&quot;&gt;SQS&lt;/span&gt;&lt;/td&gt;&lt;td style=&quot;border-bottom: solid black 0.5pt; border-left: none; border-right: solid black 0.5pt; border-top: none; padding-left: 7px; padding-right: 7px;&quot;&gt;&lt;span style=&quot;font-size: 9pt;&quot;&gt;Queuing services&lt;/span&gt;&lt;/td&gt;&lt;/tr&gt;
&lt;tr style=&quot;height: 5px;&quot;&gt;&lt;td style=&quot;border-bottom: solid black 0.5pt; border-left: solid black 0.5pt; border-right: solid black 0.5pt; border-top: none; padding-left: 7px; padding-right: 7px;&quot;&gt;&lt;span style=&quot;font-size: 9pt;&quot;&gt;HaaS&lt;/span&gt;&lt;/td&gt;&lt;td style=&quot;border-bottom: solid black 0.5pt; border-left: none; border-right: solid black 0.5pt; border-top: none; padding-left: 7px; padding-right: 7px;&quot;&gt;&lt;span style=&quot;font-size: 9pt;&quot;&gt;Mechanical Turk&lt;/span&gt;&lt;/td&gt;&lt;td style=&quot;border-bottom: solid black 0.5pt; border-left: none; border-right: solid black 0.5pt; border-top: none; padding-left: 7px; padding-right: 7px;&quot;&gt;&lt;span style=&quot;font-size: 9pt;&quot;&gt;Scalable Workforce&lt;/span&gt;&lt;/td&gt;&lt;/tr&gt;
&lt;tr style=&quot;height: 5px;&quot;&gt;&lt;td rowspan=&quot;6&quot; style=&quot;border-bottom: solid black 0.5pt; border-left: solid black 0.5pt; border-right: solid black 0.5pt; border-top: none; padding-left: 7px; padding-right: 7px;&quot;&gt;&lt;span style=&quot;font-size: 9pt;&quot;&gt;Google&lt;/span&gt;&lt;/td&gt;&lt;td rowspan=&quot;2&quot; style=&quot;border-bottom: solid black 0.5pt; border-left: none; border-right: solid black 0.5pt; border-top: none; padding-left: 7px; padding-right: 7px;&quot;&gt;&lt;span style=&quot;font-size: 9pt;&quot;&gt;IaaS&lt;/span&gt;&lt;/td&gt;&lt;td style=&quot;border-bottom: solid black 0.5pt; border-left: none; border-right: solid black 0.5pt; border-top: none; padding-left: 7px; padding-right: 7px;&quot;&gt;&lt;span style=&quot;font-size: 9pt;&quot;&gt;Google Big Table&lt;/span&gt;&lt;/td&gt;&lt;td style=&quot;border-bottom: solid black 0.5pt; border-left: none; border-right: solid black 0.5pt; border-top: none; padding-left: 7px; padding-right: 7px;&quot;&gt;&lt;span style=&quot;font-size: 9pt;&quot;&gt;Distributed storage system&lt;/span&gt;&lt;/td&gt;&lt;/tr&gt;
&lt;tr style=&quot;height: 5px;&quot;&gt;&lt;td style=&quot;border-bottom: solid black 0.5pt; border-left: solid black 0.5pt; border-right: solid black 0.5pt; border-top: none; padding-left: 7px; padding-right: 7px;&quot;&gt;&lt;span style=&quot;font-size: 9pt;&quot;&gt;Google File System&lt;/span&gt;&lt;/td&gt;&lt;td style=&quot;border-bottom: solid black 0.5pt; border-left: none; border-right: solid black 0.5pt; border-top: none; padding-left: 7px; padding-right: 7px;&quot;&gt;&lt;span style=&quot;font-size: 9pt;&quot;&gt;Distributed Files System&lt;/span&gt;&lt;/td&gt;&lt;/tr&gt;
&lt;tr style=&quot;height: 4px;&quot;&gt;&lt;td style=&quot;border-bottom: solid black 0.5pt; border-left: solid black 0.5pt; border-right: solid black 0.5pt; border-top: none; padding-left: 7px; padding-right: 7px;&quot;&gt;&lt;span style=&quot;font-size: 9pt;&quot;&gt;PaaS&lt;/span&gt;&lt;/td&gt;&lt;td style=&quot;border-bottom: solid black 0.5pt; border-left: none; border-right: solid black 0.5pt; border-top: none; padding-left: 7px; padding-right: 7px;&quot;&gt;&lt;span style=&quot;font-size: 9pt;&quot;&gt;App Engine&lt;/span&gt;&lt;/td&gt;&lt;td style=&quot;border-bottom: solid black 0.5pt; border-left: none; border-right: solid black 0.5pt; border-top: none; padding-left: 7px; padding-right: 7px;&quot;&gt;&lt;span style=&quot;font-size: 9pt;&quot;&gt;Scalable Runtime environment for python web applications&lt;/span&gt;&lt;/td&gt;&lt;/tr&gt;
&lt;tr style=&quot;height: 4px;&quot;&gt;&lt;td rowspan=&quot;3&quot; style=&quot;border-bottom: solid black 0.5pt; border-left: solid black 0.5pt; border-right: solid black 0.5pt; border-top: none; padding-left: 7px; padding-right: 7px;&quot;&gt;&lt;span style=&quot;font-size: 9pt;&quot;&gt;SaaS&lt;/span&gt;&lt;/td&gt;&lt;td style=&quot;border-bottom: solid black 0.5pt; border-left: none; border-right: solid black 0.5pt; border-top: none; padding-left: 7px; padding-right: 7px;&quot;&gt;&lt;span style=&quot;font-size: 9pt;&quot;&gt;Google Docs&lt;/span&gt;&lt;/td&gt;&lt;td style=&quot;border-bottom: solid black 0.5pt; border-left: none; border-right: solid black 0.5pt; border-top: none; padding-left: 7px; padding-right: 7px;&quot;&gt;&lt;span style=&quot;font-size: 9pt;&quot;&gt;Online office suite&lt;/span&gt;&lt;/td&gt;&lt;/tr&gt;
&lt;tr style=&quot;height: 4px;&quot;&gt;&lt;td style=&quot;border-bottom: solid black 0.5pt; border-left: solid black 0.5pt; border-right: solid black 0.5pt; border-top: none; padding-left: 7px; padding-right: 7px;&quot;&gt;&lt;span style=&quot;font-size: 9pt;&quot;&gt;Google Maps API&lt;/span&gt;&lt;/td&gt;&lt;td style=&quot;border-bottom: solid black 0.5pt; border-left: none; border-right: solid black 0.5pt; border-top: none; padding-left: 7px; padding-right: 7px;&quot;&gt;&lt;span style=&quot;font-size: 9pt;&quot;&gt;To Embed Google Maps in their own Web-pages&lt;/span&gt;&lt;/td&gt;&lt;/tr&gt;
&lt;tr style=&quot;height: 4px;&quot;&gt;&lt;td style=&quot;border-bottom: solid black 0.5pt; border-left: solid black 0.5pt; border-right: solid black 0.5pt; border-top: none; padding-left: 7px; padding-right: 7px;&quot;&gt;&lt;span style=&quot;font-size: 9pt;&quot;&gt;OpenSocial&lt;/span&gt;&lt;/td&gt;&lt;td style=&quot;border-bottom: solid black 0.5pt; border-left: none; border-right: solid black 0.5pt; border-top: none; padding-left: 7px; padding-right: 7px;&quot;&gt;&lt;span style=&quot;font-size: 9pt;&quot;&gt;Common API for social applications across multiple websites&lt;/span&gt;&lt;/td&gt;&lt;/tr&gt;
&lt;tr style=&quot;height: 5px;&quot;&gt;&lt;td rowspan=&quot;3&quot; style=&quot;border-bottom: solid black 0.5pt; border-left: solid black 0.5pt; border-right: solid black 0.5pt; border-top: none; padding-left: 7px; padding-right: 7px;&quot;&gt;&lt;span style=&quot;font-size: 9pt;&quot;&gt;Microsoft&lt;/span&gt;&lt;/td&gt;&lt;td rowspan=&quot;2&quot; style=&quot;border-bottom: solid black 0.5pt; border-left: none; border-right: solid black 0.5pt; border-top: none; padding-left: 7px; padding-right: 7px;&quot;&gt;&lt;span style=&quot;font-size: 9pt;&quot;&gt;PaaS&lt;/span&gt;&lt;/td&gt;&lt;td style=&quot;border-bottom: solid black 0.5pt; border-left: none; border-right: solid black 0.5pt; border-top: none; padding-left: 7px; padding-right: 7px;&quot;&gt;&lt;span style=&quot;font-size: 9pt;&quot;&gt;Azure&lt;/span&gt;&lt;/td&gt;&lt;td style=&quot;border-bottom: solid black 0.5pt; border-left: none; border-right: solid black 0.5pt; border-top: none; padding-left: 7px; padding-right: 7px;&quot;&gt;&lt;span style=&quot;font-size: 9pt;&quot;&gt;Development environment and &lt;br /&gt;
&lt;/span&gt;&lt;br /&gt;
&lt;span style=&quot;font-size: 9pt;&quot;&gt;runtime for Microsoft applications&lt;/span&gt;&lt;/td&gt;&lt;/tr&gt;
&lt;tr style=&quot;height: 5px;&quot;&gt;&lt;td style=&quot;border-bottom: solid black 0.5pt; border-left: solid black 0.5pt; border-right: solid black 0.5pt; border-top: none; padding-left: 7px; padding-right: 7px;&quot;&gt;&lt;span style=&quot;font-size: 9pt;&quot;&gt;Live Mesh&lt;/span&gt;&lt;/td&gt;&lt;td style=&quot;border-bottom: solid black 0.5pt; border-left: none; border-right: solid black 0.5pt; border-top: none; padding-left: 7px; padding-right: 7px;&quot;&gt;&lt;span style=&quot;font-size: 9pt;&quot;&gt;Platform to sync, share and access a &lt;br /&gt;
&lt;/span&gt;&lt;br /&gt;
&lt;span style=&quot;font-size: 9pt;&quot;&gt;wide range of devices with &lt;br /&gt;
&lt;/span&gt;&lt;br /&gt;
&lt;span style=&quot;font-size: 9pt;&quot;&gt;Microsoft operating systems&lt;/span&gt;&lt;/td&gt;&lt;/tr&gt;
&lt;tr style=&quot;height: 5px;&quot;&gt;&lt;td style=&quot;border-bottom: solid black 0.5pt; border-left: solid black 0.5pt; border-right: solid black 0.5pt; border-top: none; padding-left: 7px; padding-right: 7px;&quot;&gt;&lt;span style=&quot;font-size: 9pt;&quot;&gt;SaaS&lt;/span&gt;&lt;/td&gt;&lt;td style=&quot;border-bottom: solid black 0.5pt; border-left: none; border-right: solid black 0.5pt; border-top: none; padding-left: 7px; padding-right: 7px;&quot;&gt;&lt;span style=&quot;font-size: 9pt;&quot;&gt;Office Live&lt;/span&gt;&lt;/td&gt;&lt;td style=&quot;border-bottom: solid black 0.5pt; border-left: none; border-right: solid black 0.5pt; border-top: none; padding-left: 7px; padding-right: 7px;&quot;&gt;&lt;span style=&quot;font-size: 9pt;&quot;&gt;Online office suite&lt;/span&gt;&lt;/td&gt;&lt;/tr&gt;
&lt;/tbody&gt;&lt;/table&gt;&lt;/div&gt;&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;strong&gt;2.1.1 Amazon Web-Services &lt;br /&gt;
&lt;/strong&gt;&lt;br /&gt;
&lt;span style=&quot;font-size: 10pt;&quot;&gt;Amazon was one of the first companies who took an initiative in launching a cloud product for the general public. [26][30][36]&lt;br /&gt;
&lt;/span&gt;&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;div style=&quot;text-align: justify;&quot;&gt;&lt;span style=&quot;font-size: 10pt;&quot;&gt;If you need CPU cycles, you can spin up virtual machines with Elastic Compute Cloud (EC2). If it&#39;s data you want to store, you can park objects of up to 5GB in the Simple Storage Service (S3). Amazon has also built a limited database on top of the S3, which has still not been released. Your machines can talk among themselves with the Simple Queue Service (SQS), a message-passing API.&lt;br /&gt;
&lt;/span&gt;&lt;/div&gt;&lt;div style=&quot;text-align: justify;&quot;&gt;&lt;span style=&quot;font-size: 10pt;&quot;&gt;Amazon is thoroughly committed to the cloud paradigm, rethinking how we design these systems, producing some innovative tools and the most extensive solutions.&lt;/span&gt;&lt;/div&gt;&lt;br /&gt;
&lt;div style=&quot;text-align: justify;&quot;&gt;&lt;span style=&quot;font-size: 10pt;&quot;&gt;Amazon web-services  are a collection of remote computing services that together make up  a cloud computing platform. The following are a list of Amazon services, in no specific order.&lt;br /&gt;
&lt;/span&gt;&lt;/div&gt;&lt;br /&gt;
&lt;br /&gt;
&lt;ul&gt;&lt;li&gt;&lt;br /&gt;
&lt;div style=&quot;text-align: justify;&quot;&gt;&lt;span style=&quot;font-size: 10pt;&quot;&gt;&lt;strong&gt;Amazon Associates Web Service&lt;/strong&gt;&amp;nbsp;(A2S, formerly Amazon E-Commerce Service or ECS), providing access to Amazon&#39;s product data and electronic commerce functionality.&lt;br /&gt;
&lt;/span&gt;&lt;/div&gt;&lt;/li&gt;
&lt;li&gt;&lt;br /&gt;
&lt;div style=&quot;text-align: justify;&quot;&gt;&lt;span style=&quot;font-size: 10pt;&quot;&gt;&lt;strong&gt;Amazon AWS Authentication&lt;/strong&gt;&amp;nbsp;is an implicit service, the authentication infrastructure used to authenticate access to the various services.&lt;br /&gt;
&lt;/span&gt;&lt;/div&gt;&lt;/li&gt;
&lt;li&gt;&lt;br /&gt;
&lt;div style=&quot;text-align: justify;&quot;&gt;&lt;span style=&quot;font-size: 10pt;&quot;&gt;&lt;strong&gt;Amazon CloudFront&lt;/strong&gt;, a&amp;nbsp;content delivery network&amp;nbsp;(CDN) for distributing objects stored in S3 to so-called &quot;edge locations&quot; near the requester.&lt;br /&gt;
&lt;/span&gt;&lt;/div&gt;&lt;/li&gt;
&lt;li&gt;&lt;br /&gt;
&lt;div style=&quot;text-align: justify;&quot;&gt;&lt;span style=&quot;font-size: 10pt;&quot;&gt;&lt;strong&gt;Amazon DevPay&lt;/strong&gt;, currently in limited beta, is a billing and account management system for applications that developers have built atop Amazon Web Services.&lt;br /&gt;
&lt;/span&gt;&lt;/div&gt;&lt;/li&gt;
&lt;li&gt;&lt;br /&gt;
&lt;div style=&quot;text-align: justify;&quot;&gt;&lt;span style=&quot;font-size: 10pt;&quot;&gt;&lt;strong&gt;Amazon Elastic Block Store&amp;nbsp;(EBS)&lt;/strong&gt;, providing persistent block level storage volumes for EC2.&lt;br /&gt;
&lt;/span&gt;&lt;/div&gt;&lt;/li&gt;
&lt;li&gt;&lt;br /&gt;
&lt;div style=&quot;text-align: justify;&quot;&gt;&lt;span style=&quot;font-size: 10pt;&quot;&gt;&lt;strong&gt;Amazon Elastic Compute Cloud&amp;nbsp;(EC2)&lt;/strong&gt;, providing scalable virtual private servers using&amp;nbsp;Xen.&lt;br /&gt;
&lt;/span&gt;&lt;/div&gt;&lt;/li&gt;
&lt;li&gt;&lt;br /&gt;
&lt;div style=&quot;text-align: justify;&quot;&gt;&lt;span style=&quot;font-size: 10pt;&quot;&gt;&lt;strong&gt;Amazon Elastic MapReduce&lt;/strong&gt;, a web service that enables businesses, researchers, data analysts, and developers to easily and cost-effectively process vast amounts of data. It utilizes a hostedHadoop&amp;nbsp;framework running on the web-scale infrastructure of&amp;nbsp;EC2&amp;nbsp;and&amp;nbsp;Amazon S3.&lt;br /&gt;
&lt;/span&gt;&lt;/div&gt;&lt;/li&gt;
&lt;li&gt;&lt;br /&gt;
&lt;div style=&quot;text-align: justify;&quot;&gt;&lt;span style=&quot;font-size: 10pt;&quot;&gt;&lt;strong&gt;Amazon Flexible Payments Service&amp;nbsp;(FPS)&lt;/strong&gt;, provides an interface for&amp;nbsp;micropayments.&lt;br /&gt;
&lt;/span&gt;&lt;/div&gt;&lt;/li&gt;
&lt;li&gt;&lt;br /&gt;
&lt;div style=&quot;text-align: justify;&quot;&gt;&lt;span style=&quot;font-size: 10pt;&quot;&gt;&lt;strong&gt;Amazon Fulfillment Web Service&lt;/strong&gt;&amp;nbsp;provides a programmatic&amp;nbsp;web service&amp;nbsp;for sellers to ship items to and from Amazon using&amp;nbsp;Fulfillment by Amazon.&lt;br /&gt;
&lt;/span&gt;&lt;/div&gt;&lt;/li&gt;
&lt;li&gt;&lt;br /&gt;
&lt;div style=&quot;text-align: justify;&quot;&gt;&lt;span style=&quot;font-size: 10pt;&quot;&gt;&lt;strong&gt;Amazon Historical Pricing&lt;/strong&gt;, providing access to Amazon&#39;s historical sales data from its affiliates. (Appears this service has been discontinued)&lt;br /&gt;
&lt;/span&gt;&lt;/div&gt;&lt;/li&gt;
&lt;li&gt;&lt;br /&gt;
&lt;div style=&quot;text-align: justify;&quot;&gt;&lt;span style=&quot;font-size: 10pt;&quot;&gt;&lt;strong&gt;Amazon Mechanical&amp;nbsp;Turk&amp;nbsp;(Mturk)&lt;/strong&gt;, managing small units of work distributed amongst many people.&lt;br /&gt;
&lt;/span&gt;&lt;/div&gt;&lt;/li&gt;
&lt;li&gt;&lt;span style=&quot;font-size: 10pt;&quot;&gt;&lt;strong&gt;Amazon Relational Database Service&amp;nbsp;(RDS)&lt;/strong&gt;, providing a scalable MySQL compatible database server. &lt;br /&gt;
&lt;/span&gt;&lt;/li&gt;
&lt;li&gt;&lt;br /&gt;
&lt;div style=&quot;text-align: justify;&quot;&gt;&lt;span style=&quot;font-size: 10pt;&quot;&gt;&lt;strong&gt;Amazon Simple Storage Service&amp;nbsp;(S3)&lt;/strong&gt;, providing Web Service based storage.&lt;br /&gt;
&lt;/span&gt;&lt;/div&gt;&lt;/li&gt;
&lt;li&gt;&lt;br /&gt;
&lt;div style=&quot;text-align: justify;&quot;&gt;&lt;span style=&quot;font-size: 10pt;&quot;&gt;&lt;strong&gt;Amazon Simple Queue Service&amp;nbsp;(SQS)&lt;/strong&gt;, providing a hosted message queue for web applications.&lt;br /&gt;
&lt;/span&gt;&lt;/div&gt;&lt;/li&gt;
&lt;li&gt;&lt;br /&gt;
&lt;div style=&quot;text-align: justify;&quot;&gt;&lt;span style=&quot;font-size: 10pt;&quot;&gt;&lt;strong&gt;Amazon Simple Notification Service&amp;nbsp;(SNS)&lt;/strong&gt;, providing a hosted multiprotocol &quot;push&quot; messaging for web applications.&lt;br /&gt;
&lt;/span&gt;&lt;/div&gt;&lt;/li&gt;
&lt;li&gt;&lt;br /&gt;
&lt;div style=&quot;text-align: justify;&quot;&gt;&lt;span style=&quot;font-size: 10pt;&quot;&gt;&lt;strong&gt;Amazon SimpleDB&lt;/strong&gt;, allows developers to run queries on structured data. It operates in concert with EC2 and S3 to provide &quot;the core functionality of a database.&quot;&lt;br /&gt;
&lt;/span&gt;&lt;/div&gt;&lt;/li&gt;
&lt;li&gt;&lt;br /&gt;
&lt;div style=&quot;text-align: justify;&quot;&gt;&lt;span style=&quot;font-size: 10pt;&quot;&gt;&lt;strong&gt;Amazon Virtual Private Cloud&amp;nbsp;(VPC),&lt;/strong&gt; a web service that creates a logically isolated set of Amazon EC2 instances to be connected to an existing network using a&amp;nbsp;VPN&amp;nbsp;connection.&lt;br /&gt;
&lt;/span&gt;&lt;/div&gt;&lt;/li&gt;
&lt;li&gt;&lt;br /&gt;
&lt;div style=&quot;text-align: justify;&quot;&gt;&lt;span style=&quot;font-size: 10pt;&quot;&gt;&lt;strong&gt;AWS Management Console&amp;nbsp;(AWS Console)&lt;/strong&gt;, A web-based point and click interface to manage and monitor the Amazon infrastructure suite including EC2, EBS, Amazon Elastic MapReduce, and Amazon CloudFront.&lt;br /&gt;
&lt;/span&gt;&lt;/div&gt;&lt;/li&gt;
&lt;li&gt;&lt;br /&gt;
&lt;div style=&quot;text-align: justify;&quot;&gt;&lt;span style=&quot;font-size: 10pt;&quot;&gt;&lt;strong&gt;AWS Simple Monthly Calculator&lt;/strong&gt;&amp;nbsp;helps you estimate your AWS monthly cost&lt;span class=&quot;Apple-style-span&quot; style=&quot;font-size: medium;&quot;&gt;&amp;nbsp;&lt;/span&gt;&lt;/span&gt;&lt;/div&gt;&lt;/li&gt;
&lt;/ul&gt;&lt;div style=&quot;text-align: justify;&quot;&gt;&lt;span style=&quot;font-size: 10pt;&quot;&gt;The most central and widely used of these services is the Amazon Elastic Compute cloud (EC2).&lt;br /&gt;
&lt;/span&gt;&lt;/div&gt;&lt;div style=&quot;text-align: justify;&quot;&gt;&lt;br /&gt;
&lt;/div&gt;&lt;div style=&quot;text-align: justify;&quot;&gt;&lt;span style=&quot;font-size: 10pt;&quot;&gt;&lt;strong&gt;2.1.2 Google App Engine&lt;/strong&gt;&lt;br /&gt;
&lt;/span&gt;&lt;/div&gt;&lt;div style=&quot;text-align: justify;&quot;&gt;&lt;span style=&quot;font-size: 10pt;&quot;&gt;A totally opposite product to Amazon&#39;s offerings is the Google&#39;s App Engine [25]. While it is possible to get root privileges on Amazon, it is impossible to write a file in your own directory with App Engine. It is unclear whether we are even offered our own directory. In order to avoid security loop holes with quick implementation, google has taken the file write feature from Python. For storing data we must use Google&#39;s database.&lt;br /&gt;
&lt;/span&gt;&lt;/div&gt;&lt;div style=&quot;text-align: justify;&quot;&gt;&lt;span style=&quot;font-size: 10pt;&quot;&gt;Google has stripped Web applications down to a core set of features and built up a pretty good framework for delivering them. Writing applications is quite simple and quick. Google offers some nice tools for debugging the applications on our own machine. Deploying applications into the cloud can be done in very less time.&lt;br /&gt;
&lt;/span&gt;&lt;/div&gt;&lt;div style=&quot;text-align: justify;&quot;&gt;&lt;span style=&quot;font-size: 10pt;&quot;&gt;Google App Engine is a platform for developing and hosting web applications, which virtualizes applications across multiple servers and data centers.&lt;br /&gt;
&lt;/span&gt;&lt;/div&gt;&lt;div style=&quot;text-align: justify;&quot;&gt;&lt;span style=&quot;font-size: 10pt;&quot;&gt;It currently supports programming languages like Python, Java and other JVM languages.  App Engine provides more infrastructure to make it easy to write scalable applications. Google handles deploying code to a cluster, monitoring, failover and launching application instances as necessary. App Engine requires its developers to use only its supported languages, APIs and frameworks. Current APIs allow storing and retrieving data from a BigTable non-relational database; making HTTP requests; sending e-mail; manipulations images; and caching. Most existing web applications cannot run on App Engine without modifications since they need a relational database.&lt;br /&gt;
&lt;/span&gt;&lt;/div&gt;&lt;div style=&quot;text-align: justify;&quot;&gt;&lt;span style=&quot;font-size: 10pt;&quot;&gt;The Google App Engine&#39;s datastore has a SQL-like syntax called &#39;GQL&#39;. GQL has many differences and variations from the normal SQL and other relational databases. The Datastore API is not relational in the SQL sense.&lt;br /&gt;
&lt;/span&gt;&lt;/div&gt;&lt;div style=&quot;text-align: justify;&quot;&gt;&lt;span style=&quot;font-size: 10pt;&quot;&gt;There are many restrictions with App Engine like only read-access to filesystem, execute only HTTP requested code, usage of only pure python modules, inability to create new threads, not supportive for naked domains (without www), etc.&lt;br /&gt;
&lt;/span&gt;&lt;/div&gt;&lt;div style=&quot;text-align: justify;&quot;&gt;&lt;br /&gt;
&amp;nbsp;&lt;/div&gt;&lt;br /&gt;
&lt;div style=&quot;text-align: center;&quot;&gt;&lt;strong&gt;Fig 1: Comparison between Amazon and Google Clouds&lt;br /&gt;
&lt;/strong&gt;&lt;/div&gt;&lt;br /&gt;
&amp;nbsp;&lt;br /&gt;
&lt;br /&gt;
&lt;div style=&quot;text-align: justify;&quot;&gt;&lt;span style=&quot;font-size: 10pt;&quot;&gt;&lt;strong&gt;2.1.3 Windows Azure&lt;br /&gt;
&lt;/strong&gt;&lt;/span&gt;&lt;/div&gt;&lt;div style=&quot;text-align: justify;&quot;&gt;&lt;span style=&quot;font-size: 10pt;&quot;&gt;Windows Azure [34] is a service which is a part of the larger Azure Services Platform. Microsoft customers can use this service to run applications and store data on Internet-accessible machines. Windows Azure has three main parts: the compute service, the storage service, and the fabric.&lt;/span&gt;&lt;/div&gt;&lt;div style=&quot;text-align: justify;&quot;&gt; &amp;nbsp;&lt;/div&gt;&lt;div style=&quot;text-align: justify;&quot;&gt;&lt;span style=&quot;font-size: 10pt;&quot;&gt;&lt;strong&gt;The Compute Service&lt;/strong&gt;: The primary goal of this platform is to support applications that have a large number of simultaneous users. It does this by scaling out (instead of scaling up), by running multiple copies of the same code across many servers.&lt;br /&gt;
&lt;/span&gt;&lt;/div&gt;&lt;div style=&quot;text-align: justify;&quot;&gt;&lt;span style=&quot;font-size: 10pt;&quot;&gt;For this an application can have multiple instances, each executing in its own virtual machine. These VMs run a server and are provided by a hypervisor which is modified for the Microsoft&#39;s cloud.&amp;nbsp;&lt;/span&gt;&lt;/div&gt;&lt;div style=&quot;text-align: justify;&quot;&gt; &amp;nbsp;&lt;/div&gt;&lt;div style=&quot;text-align: justify;&quot;&gt;&lt;span style=&quot;font-size: 10pt;&quot;&gt;&lt;strong&gt;The Storage Service: &lt;/strong&gt;Windows Azure has mainly three types of storage. The simplest one being, a &#39;&lt;em&gt;blob&lt;/em&gt;&#39; which contains binary data and a simple hierarchy. A storage account can have one or more containers, each containing one or more blobs. To allow applications to work with data in a more fine-grained way, there are &#39;&lt;em&gt;tables&#39;&lt;/em&gt;. Unlike normal tables, the tables here store data in a simple hierarchy of entities that contain properties. Applications access data with ADO.NET Data services. This helps in scaling-out in a much easier way. Another form of data storage is &#39;&lt;em&gt;queue&lt;/em&gt;&#39;. A primary function of queues is to provide a way for web role instances to communicate with worker role instances. No matter in what form the data is stored in Azure, the data is replicated three times, which gives fault tolerance. &lt;br /&gt;
&lt;/span&gt;&lt;/div&gt;&lt;div style=&quot;text-align: justify;&quot;&gt;&lt;br /&gt;
&lt;/div&gt;&lt;div style=&quot;text-align: justify;&quot;&gt;&lt;span style=&quot;font-size: 10pt;&quot;&gt;&lt;strong&gt;The Fabric&lt;/strong&gt;: All Azure applications and data live in some Microsoft data center. Within that data center, the set of machines dedicated to windows Azure is organized into a fabric. The fabric contains a large group of machines, all of which are managed by a software called the &#39;fabric controller&#39;. The fabric controller is replicated across a group of five to seven machines, and it owns all the resources in the fabric: computers, switches, load balancers and more. It monitors all running applications and manages operations systems, decides where new applications should run and chooses physical servers to optimize hardware utilization.&lt;br /&gt;
&lt;/span&gt;&lt;/div&gt;&lt;div style=&quot;text-align: justify;&quot;&gt;&lt;br /&gt;
&lt;/div&gt;&lt;div style=&quot;text-align: justify;&quot;&gt;&lt;span style=&quot;font-size: 10pt;&quot;&gt;&lt;strong&gt;2.1.4 Resin 4.0&lt;br /&gt;
&lt;/strong&gt;&lt;/span&gt;&lt;/div&gt;&lt;div style=&quot;text-align: justify;&quot;&gt;&lt;span style=&quot;font-size: 10pt;&quot;&gt;Based on the technical White paper [22] Resin 4.0 is a very good environment for deploying and scaling JAVA and PHP web applications for the web. Resin has its own unique architecture for sophisticated clustering, providing fast and distributed sessions, distributed object caching and cloud-wide applications deployment. The Resin 4.0 has the following underlying architecture.&lt;br /&gt;
&lt;/span&gt;&lt;/div&gt;&lt;div style=&quot;text-align: justify;&quot;&gt;&lt;br /&gt;
&lt;/div&gt;&lt;div style=&quot;text-align: justify;&quot;&gt;&lt;span style=&quot;font-size: 10pt;&quot;&gt;The &lt;strong&gt;Triad&lt;/strong&gt; is a set of three servers that provide the central repository for persistent data and maintain up-to-date record of dynamic servers in the system. It provides a point of stability and persistence to reduce management complexity.&lt;br /&gt;
&lt;/span&gt;&lt;/div&gt;&lt;div style=&quot;text-align: justify;&quot;&gt;&lt;br /&gt;
&lt;/div&gt;&lt;div style=&quot;text-align: justify;&quot;&gt;&lt;span style=&quot;font-size: 10pt;&quot;&gt;There are &lt;strong&gt;dynamic servers&lt;/strong&gt;, which can be started and stopped at will, providing elastic scaling.&lt;br /&gt;
&lt;/span&gt;&lt;/div&gt;&lt;div style=&quot;text-align: justify;&quot;&gt;&lt;span style=&quot;font-size: 10pt;&quot;&gt;Each dynamic server has access to the shared data within the system. The cost of starting a new dynamic server is simply to start a new virtual machine.  When a new dynamic server is brought online, it contacts one of the triad servers to announce its availability and import all application data.  As applications are updated on the triad, the changes are pushed out to all the dynamic servers by the triad to keep them updated.&lt;br /&gt;
&lt;/span&gt;&lt;/div&gt;&lt;div style=&quot;text-align: justify;&quot;&gt;&lt;span style=&quot;font-size: 10pt;&quot;&gt;The dynamic servers use the triad as their persistent store for session and object cache data. At the same time, optimizations keep frequently used data in memory on the dynamic servers to improve application performance and reduce network load.  The triad servers and the dynamic servers together form a &lt;strong&gt;cluster&lt;/strong&gt;.&lt;br /&gt;
&lt;/span&gt;&lt;/div&gt;&lt;div style=&quot;text-align: justify;&quot;&gt;&lt;br /&gt;
&lt;/div&gt;&lt;div style=&quot;text-align: justify;&quot;&gt;&lt;span style=&quot;font-size: 10pt;&quot;&gt;Using a combination of triad servers and dynamic servers minimizes the complexity of managing an application deployment.  The triad servers are brought up first on system start up and at least one should be available at any time during the life of the system.  Thus these three servers can be the main focus of administration time and effort because all of the other servers may go up or down at any time without affecting the functional performance visible to clients.  Assuming a virtualized environment, if one or more triad servers become faulty at any time, a replacement or replacements can be brought into place quickly.  Having three servers in a triad avoids a single point of failure, allows up to two servers to fail at any given time, and allows normal maintenance of a single server without downtime. &lt;br /&gt;
&lt;/span&gt;&lt;/div&gt;&lt;div style=&quot;text-align: justify;&quot;&gt;&lt;span style=&quot;font-size: 10pt;&quot;&gt;Resin 4.0 includes a &lt;strong&gt;software load balancer&lt;/strong&gt; that distributes HTTP requests for web application clients.  The triad server keeps track of the current members of the cluster and communicates with the load balancer to update it on which dynamic servers are available to handle requests.  When choosing a server to handle new requests, the load balancer takes into account the CPU load of a server as well as the number of simultaneous requests that server is already handling.  Depending on the algorithm selected by the administrator, the load balancer can either direct the request to the least loaded server to keep load even or to the same set of servers until they are fully loaded to avoid starting new servers.  Once a server has been selected for a new request, subsequent requests from the same client will go to the same server to avoid unnecessary load times.&lt;br /&gt;
&lt;/span&gt;&lt;/div&gt;&lt;br /&gt;
&lt;span style=&quot;font-size: 13pt;&quot;&gt;&lt;strong&gt;3.Architecture and characteristics of a cloud:&lt;br /&gt;
&lt;/strong&gt;&lt;/span&gt;&lt;br /&gt;
&lt;br /&gt;
&lt;strong&gt;&lt;span style=&quot;text-decoration: underline;&quot;&gt;3.1 Physical Structure of a Cloud&lt;/span&gt;  [1]&lt;br /&gt;
&lt;/strong&gt;&lt;br /&gt;
&lt;br /&gt;
&lt;div style=&quot;text-align: justify;&quot;&gt;&lt;span style=&quot;font-size: 10pt;&quot;&gt;- &lt;strong&gt;Surface Layer or Application Layer (SAAS)&lt;br /&gt;
&lt;/strong&gt;&lt;/span&gt;&lt;/div&gt;&lt;div style=&quot;text-align: justify;&quot;&gt;&lt;span style=&quot;font-size: 10pt;&quot;&gt;This layer forms the most visible part of the infrastructure. Services to users would be provided through web-portals. It alleviates the burden of software maintenance and the operation and support costs. On the users&#39; side it would reduce the restrictions on the hardware requirements. An application for the cloud is deployed on the provider&#39;s infrastructure, so the developers of applications can just add small patches and new features to the system without disturbing the users with requests for updating. Configuring and testing applications is quite less complicated since the deployment environment is quite restricted. The cloud applications can be developed on the cloud software environments and they can be composed as a service from other cloud services offered by other cloud systems, using SOA concepts. The applications for the higher layer of the stack are quite simple to develop , have a short time-to-market and are less error-prone.&lt;br /&gt;
&lt;/span&gt;&lt;/div&gt;&lt;div style=&quot;text-align: justify;&quot;&gt;&lt;span style=&quot;font-size: 10pt;&quot;&gt;There are several issues which hinder in the wide acceptance and adoption of the cloud model. Security and availability are major areas, which are currently avoided by lenient service level agreements. Coping with network outage and system failures is another major concern in this area.&lt;/span&gt;&lt;/div&gt;&lt;div style=&quot;text-align: justify;&quot;&gt; &amp;nbsp;&lt;/div&gt;&lt;div style=&quot;text-align: justify;&quot;&gt;&lt;span style=&quot;font-size: 10pt;&quot;&gt;- &lt;strong&gt;Software Platform Layer (PAAS)&lt;br /&gt;
&lt;/strong&gt;&lt;/span&gt;&lt;/div&gt;&lt;div style=&quot;text-align: justify;&quot;&gt;&lt;span style=&quot;font-size: 10pt;&quot;&gt;Cloud applications&#39; developers implement and deploy their applications on this layer. The providers of this layer supply the developers with a programming-language-level environment. The service is therefore called as Platform as a service (PaaS). The main benefits of developing cloud applications on the cloud programming environment are automatic scaling, load balancing and integration with other services, provided by the PaaS provider. Also, the developers can integrate other additional services on demand, which not only makes the task simple but also accelerates the deployment time and minimizes logic faults in the application.&lt;br /&gt;
&lt;/span&gt;&lt;/div&gt;&lt;div style=&quot;text-align: justify;&quot;&gt;&lt;br /&gt;
&lt;/div&gt;&lt;div style=&quot;text-align: justify;&quot;&gt;&lt;span style=&quot;font-size: 10pt;&quot;&gt;- &lt;strong&gt;Software-Infrastructure Layer(IAAS+DAAS+CAAS)&lt;br /&gt;
&lt;/strong&gt;&lt;/span&gt;&lt;/div&gt;&lt;div style=&quot;text-align: justify;&quot;&gt;&lt;span style=&quot;font-size: 10pt;&quot;&gt;It provides the fundamental resources to the other higher layers. This layer can be by-passed to form a combined platform + infrastructure layer, which could enhance the efficiency but would require more development efforts and involve complexity.&lt;br /&gt;
&lt;/span&gt;&lt;/div&gt;&lt;div style=&quot;text-align: justify;&quot;&gt;&lt;br /&gt;
&lt;/div&gt;&lt;div style=&quot;text-align: justify;&quot;&gt;&lt;span style=&quot;font-size: 10pt;&quot;&gt;This layer can be categorized into the following three ways.&lt;/span&gt;&lt;/div&gt;&lt;div style=&quot;margin-left: 18pt; text-align: justify;&quot;&gt;&lt;span style=&quot;font-size: 10pt;&quot;&gt;&lt;strong&gt;1)Computational Resources: &lt;br /&gt;
&lt;/strong&gt;&lt;/span&gt;&lt;/div&gt;&lt;div style=&quot;margin-left: 18pt; text-align: justify;&quot;&gt;&lt;span style=&quot;font-size: 10pt;&quot;&gt;The most common and important form to provide computational resources is through Virtual Machines (VMs). Such a service is often referred as Infrastructure as a Service (IaaS). Virtualization allows users a lot of flexibility in configuring their settings while protecting the physical infrastructure of the provider&#39;s data center. Recent advancements in Operating System Virtualization techniques has made IaaS quite plausible. &lt;br /&gt;
&lt;/span&gt;&lt;/div&gt;&lt;div style=&quot;margin-left: 18pt; text-align: justify;&quot;&gt;&lt;br /&gt;
&lt;/div&gt;&lt;div style=&quot;margin-left: 18pt; text-align: justify;&quot;&gt;&lt;span style=&quot;font-size: 10pt;&quot;&gt;&lt;strong&gt;2)Data Storage:&lt;br /&gt;
&lt;/strong&gt;&lt;/span&gt;&lt;/div&gt;&lt;div style=&quot;margin-left: 18pt; text-align: justify;&quot;&gt;&lt;span style=&quot;font-size: 10pt;&quot;&gt; This allows users to store data remotely and access it from any place. This service is referred to as Data Storage as a service (DaaS). Data storage systems require to meet several rigorous requirements for maintaining users&#39; data and information, including high availability, reliability, performance, replication and data consistency. Due to the conflicting nature of these requirements it is impossible to fulfill all of them together. So, DaaS providers have their own liberty to implement and favor a few features over others, while indicating their choice through SLA.&lt;br /&gt;
&lt;/span&gt;&lt;/div&gt;&lt;div style=&quot;margin-left: 18pt; text-align: justify;&quot;&gt;&lt;br /&gt;
&amp;nbsp;&amp;nbsp;&lt;/div&gt;&lt;div style=&quot;margin-left: 18pt; text-align: justify;&quot;&gt;&lt;br /&gt;
&lt;/div&gt;&lt;div style=&quot;margin-left: 18pt; text-align: center;&quot;&gt;&lt;span style=&quot;font-size: 10pt; text-decoration: underline;&quot;&gt;&lt;strong&gt;Fig 2: The Architecture&lt;br /&gt;
&lt;/strong&gt;&lt;/span&gt;&lt;/div&gt;&lt;div style=&quot;margin-left: 18pt; text-align: center;&quot;&gt;&lt;span style=&quot;font-size: 10pt;&quot;&gt;&lt;strong&gt;&lt;br /&gt;
&lt;/strong&gt;&lt;/span&gt;&lt;/div&gt;&lt;div style=&quot;margin-left: 18pt; text-align: center;&quot;&gt;&lt;br /&gt;
&lt;/div&gt;&lt;div style=&quot;margin-left: 18pt; text-align: justify;&quot;&gt;&lt;span style=&quot;font-size: 10pt;&quot;&gt;&lt;strong&gt;3)Communication:&lt;br /&gt;
&lt;/strong&gt;&lt;/span&gt;&lt;/div&gt;&lt;div style=&quot;margin-left: 18pt; text-align: justify;&quot;&gt;&lt;span style=&quot;font-size: 10pt;&quot;&gt;Communication is a very important part of any cloud infrastructure. It must be service-oriented, configurable, schedulable, predictable and reliable. Communication as a Service (CaaS) came up, supporting such requirements , as well as network security, dynamic provisioning of virtual overlays for traffic isolation or dedicated bandwidth, guaranteed message delay, communication encryption, and network monitoring.&lt;/span&gt;&lt;/div&gt;&lt;div style=&quot;margin-left: 18pt; text-align: justify;&quot;&gt;&lt;span style=&quot;font-size: 10pt;&quot;&gt;&lt;br /&gt;
&lt;/span&gt;&lt;/div&gt;&lt;div style=&quot;text-align: justify;&quot;&gt;&lt;span style=&quot;font-size: 10pt;&quot;&gt;There are several design features which can be common between the three infrastructural components, such as security, availability, quality etc. &lt;br /&gt;
&lt;/span&gt;&lt;/div&gt;&lt;div style=&quot;margin-left: 18pt;&quot;&gt;&lt;br /&gt;
&lt;/div&gt;&lt;div style=&quot;text-align: justify;&quot;&gt;&lt;span style=&quot;font-size: 10pt;&quot;&gt;- &lt;strong&gt;Software Kernel Layer&lt;br /&gt;
&lt;/strong&gt;&lt;/span&gt;&lt;/div&gt;&lt;div style=&quot;text-align: justify;&quot;&gt;&lt;span style=&quot;font-size: 10pt;&quot;&gt;It provides the basic software management for the physical servers that compose the cloud. Software kernels at this level can be implemented as OS Kernel, hypervisor, virtual machine monitor and/or clustering middleware. Grid Computing applications can be very suitable to be deployed and run on this layer. But due to the absence of virtualization abstraction in grid computing, jobs would be closely tied to actual hardware infrastructure, so providing migration, checkpointing and load balancing to the applications at this level is quite complicated. The amount of research done in Grid computing is quite huge and grid development concepts are realized in cloud computing. However, additional grid computing research can be potentially integrated to the research area of the cloud.&lt;br /&gt;
&lt;/span&gt;&lt;/div&gt;&lt;div style=&quot;text-align: justify;&quot;&gt;&lt;br /&gt;
&lt;/div&gt;&lt;div style=&quot;text-align: justify;&quot;&gt;&lt;span style=&quot;font-size: 10pt;&quot;&gt;- &lt;strong&gt;Hardware Layer (HAAS)&lt;/strong&gt;&lt;br /&gt;
&lt;/span&gt;&lt;/div&gt;&lt;div style=&quot;text-align: justify;&quot;&gt;&lt;span style=&quot;font-size: 10pt;&quot;&gt;The lowest layer of the cloud stack is the actual physical hardware and switches. The users of this layer are usually big enterprises with huge IT requirements in need of subleasing Hardware as a Service (HaaS). The HaaS provider operates, manages and upgrades the hardware on behalf of its customers, for the life-time of the sublease. They have the technical expertise and cost effective infrastructure to host the systems. There are several challenges that HaaS providers have to face, such as Efficiency, ease and speed of provisioning large scale systems etc.&lt;br /&gt;
&lt;/span&gt;&lt;/div&gt;&lt;div style=&quot;text-align: justify;&quot;&gt;&lt;br /&gt;
&lt;/div&gt;&lt;span style=&quot;font-size: 10pt;&quot;&gt;&lt;strong&gt;3.2 Architecture of Platform and Infrastructure Layer &lt;br /&gt;
&lt;/strong&gt;&lt;/span&gt;&lt;br /&gt;
&lt;br /&gt;
&lt;div style=&quot;text-align: justify;&quot;&gt;&lt;span style=&quot;font-size: 10pt;&quot;&gt;These two layers can be combined together and with respect to infrastructure can then be divided into four parts: [2]&lt;br /&gt;
&lt;/span&gt;&lt;/div&gt;&lt;div style=&quot;text-align: justify;&quot;&gt;&lt;br /&gt;
&lt;/div&gt;&lt;div style=&quot;margin-left: 18pt; text-align: justify;&quot;&gt;&lt;span style=&quot;font-size: 10pt;&quot;&gt;-&lt;strong&gt;Node Manager&lt;br /&gt;
&lt;/strong&gt;&lt;/span&gt;&lt;/div&gt;&lt;div style=&quot;margin-left: 18pt; text-align: justify;&quot;&gt;&lt;span style=&quot;font-size: 10pt;&quot;&gt;There is a Node Manager for every Node which hosts VM instances. It queries and controls the software on its node. It makes queries to discover the node&#39;s physical resources and to learn about the state of VM instances on the node. All the information collected is sent up to the cluster manager. Cluster managers control the VM instances on a node. After verifying the authorization and confirming resource availability, the Node manager executes the request with the help of hypervisor. To start an instance, the Node manager makes a node-local copy of the instance image files, either from a remote image repository or from the local cache, creates a new end point in the virtual network overlay and instructs the hypervisor to boot the instance. To stop an instance, it instructs the hypervisor to terminate the VM, tears down the virtual network endpoint, and cleans up the associated files.&lt;br /&gt;
&lt;/span&gt;&lt;/div&gt;&lt;div style=&quot;margin-left: 18pt; text-align: center;&quot;&gt;&lt;br /&gt;
&lt;/div&gt;&lt;div style=&quot;margin-left: 18pt; text-align: center;&quot;&gt;&lt;br /&gt;
&amp;nbsp;&lt;/div&gt;&lt;div style=&quot;margin-left: 18pt; text-align: center;&quot;&gt;&lt;span style=&quot;font-size: 10pt;&quot;&gt;&lt;strong&gt;Fig 3: Detailed Platform + Infrastructure&lt;br /&gt;
&lt;/strong&gt;&lt;/span&gt;&lt;/div&gt;&lt;div style=&quot;margin-left: 18pt; text-align: center;&quot;&gt;&lt;br /&gt;
&amp;nbsp;&lt;/div&gt;&lt;div style=&quot;margin-left: 18pt; text-align: center;&quot;&gt;&lt;/div&gt;&lt;div style=&quot;margin-left: 18pt; text-align: justify;&quot;&gt;&lt;span style=&quot;font-size: 10pt;&quot;&gt;&lt;strong&gt;-Cluster manager&lt;br /&gt;
&lt;/strong&gt;&lt;/span&gt;&lt;/div&gt;&lt;div style=&quot;margin-left: 18pt; text-align: justify;&quot;&gt;&lt;span style=&quot;font-size: 10pt;&quot;&gt;It runs on a machine which has connectivity with the Node Manager and the Interface Manager. It schedules incoming instance run requests to specific Node managers, controls the instance virtual network overlay and collects information about a set of Node managers. When a cluster manager receives a set of instances to run, it contacts each Node manager component and sends request to host the instances to the first Node manager which has free resources.  With the list of resource characteristics that it receives it calculates how many simultaneous instances of the specific type can execute on its collection of Node managers and reports that to the Interface Manager.&lt;br /&gt;
&lt;/span&gt;&lt;/div&gt;&lt;div style=&quot;margin-left: 18pt; text-align: justify;&quot;&gt;&lt;br /&gt;
&lt;/div&gt;&lt;div style=&quot;margin-left: 18pt; text-align: justify;&quot;&gt;&lt;span style=&quot;font-size: 10pt;&quot;&gt;&lt;strong&gt;-Data-Store Manager&lt;br /&gt;
&lt;/strong&gt;&lt;/span&gt;&lt;/div&gt;&lt;div style=&quot;margin-left: 18pt; text-align: justify;&quot;&gt;&lt;span style=&quot;font-size: 10pt;&quot;&gt;A Data store manager would have special functionalities like allowing users to stream data in and out of the cloud and also from instances that they have started on nodes. It also acts as a storage and management service for VM images and other images used to instantiate VMs. The images are compressed and encrypted and split into parts. It also decrypts and verifies images uploaded by users. For performance optimization a cache is used to keep track of images that have already been decrypted. It supports concurrent and serial data transfers. Users are guaranteed that a consistent copy of the object will be saved in the case of concurrent writes on the same object. &lt;br /&gt;
&lt;/span&gt;&lt;/div&gt;&lt;div style=&quot;margin-left: 18pt; text-align: justify;&quot;&gt;&lt;br /&gt;
&lt;/div&gt;&lt;div style=&quot;margin-left: 18pt; text-align: justify;&quot;&gt;&lt;span style=&quot;font-size: 10pt;&quot;&gt;&lt;strong&gt;-Interface Manager&lt;br /&gt;
&lt;/strong&gt;&lt;/span&gt;&lt;/div&gt;&lt;div style=&quot;margin-left: 18pt; text-align: justify;&quot;&gt;&lt;span style=&quot;font-size: 10pt;&quot;&gt;Interface manager is the entry-point into the cloud for users and administrators. It queries node managers for information about resources, makes high level scheduling decisions, and implements them by making requests to cluster controllers. The services of an interface manager can be grouped into three categories.&lt;br /&gt;
&lt;/span&gt;&lt;/div&gt;&lt;div style=&quot;margin-left: 18pt; text-align: justify;&quot;&gt;&lt;span style=&quot;font-size: 10pt;&quot;&gt;&lt;em&gt;Resource Services&lt;/em&gt; perform system wide arbitration of resource allocations, let users manipulate properties of the VMs and networks, and monitor both system components and virtual resources.&lt;br /&gt;
&lt;/span&gt;&lt;/div&gt;&lt;div style=&quot;margin-left: 18pt; text-align: justify;&quot;&gt;&lt;span style=&quot;font-size: 10pt;&quot;&gt;&lt;em&gt;Data Services&lt;/em&gt; govern persistent user and system data and provide for a conﬁgurable user environment for formulating resource allocation request properties.&lt;br /&gt;
&lt;/span&gt;&lt;/div&gt;&lt;div style=&quot;margin-left: 18pt; text-align: justify;&quot;&gt;&lt;span style=&quot;font-size: 10pt;&quot;&gt;&lt;em&gt;Interface Services&lt;/em&gt; present user-visible interfaces, handling authentication &amp;amp; protocol translation, and expose system management tools providing.&lt;br /&gt;
&lt;/span&gt;&lt;/div&gt;&lt;div style=&quot;text-align: justify;&quot;&gt;&lt;br /&gt;
&lt;/div&gt;&lt;div style=&quot;text-align: justify;&quot;&gt;&lt;span style=&quot;font-size: 10pt;&quot;&gt;&lt;strong&gt;3.3 &lt;span style=&quot;text-decoration: underline;&quot;&gt;Virtualization and cloud computing&lt;br /&gt;
&lt;/span&gt;&lt;/strong&gt;&lt;/span&gt;&lt;/div&gt;&lt;div style=&quot;text-align: justify;&quot;&gt;&lt;span style=&quot;font-size: 10pt;&quot;&gt;Virtualization is the notion that compute resources can be made available with a large degree of agility and flexibility without requiring that users have detailed knowledge of underlying physical resources.  In a virtualized environment, computing environments can be dynamically created, expanded, shrunk, or moved as demand varies. Virtualization provides important advantages in sharing, manageability, and isolation (the ability for multiple users and applications to share physical resources without affecting each other) in a cloud environment. Virtualization allows a set of underutilized physical servers to be consolidated into a smaller number of more fully utilized physical servers, contributing to significant cost savings and providing tremendous advantages in a new enterprise data center cloud environment.&lt;br /&gt;
&lt;/span&gt;&lt;/div&gt;&lt;div style=&quot;text-align: justify;&quot;&gt;&lt;span style=&quot;font-size: 10pt;&quot;&gt;Cloud infrastructure commonly relies on virtualization. Customers can provide their own VMs, and the cloud provider would run them often without knowledge of the guest OSes or their conﬁgurations. &lt;br /&gt;
&lt;/span&gt;&lt;/div&gt;&lt;div style=&quot;text-align: justify;&quot;&gt;&lt;span style=&quot;font-size: 10pt;&quot;&gt;Virtual cloud computing is emerging as a promising solution to Information Technology (IT) management&lt;br /&gt;
to both ease the provisioning and administration of complex hardware and software systems and reduce the operational costs. Several industry and university leaders have presented recently possible implementations. As more Virtual Machines (VMs) are being used, particularly because VMs are easy to be cloned and snapshot, it is unavoidable to have a large number of VMs. &lt;br /&gt;
&lt;/span&gt;&lt;/div&gt;&lt;div style=&quot;text-align: justify;&quot;&gt;&lt;span style=&quot;font-size: 10pt;&quot;&gt;Virtualization provides a coarse-grained isolation mechanism that results in large systems, with full operating systems and a complete software stack as their foundation. Though much of this foundation is not strictly necessary, the programmatic burden of building systems at a finer-granularity, on a smaller foundation, has previously been shown to be prohibitive. &lt;br /&gt;
&lt;/span&gt;&lt;/div&gt;&lt;div style=&quot;text-align: justify;&quot;&gt;&lt;span style=&quot;font-size: 10pt;&quot;&gt;Here we present an alternative, lightweight and composite approach to virtualization for cloud computing that we call Macro-Components—software components that offer a lightweight container for software components that run in isolation from the rest of the system, but without the full foundations of their more traditionally virtualized counterparts.  By reducing the foundation upon which virtualization is built, and by incorporating first principles of component based software development, this approach can provide a more scalable and sustainable approach for composing robust services in cloud environments, both in terms of dynamic system properties and software engineering qualities. [18]&lt;br /&gt;
&lt;/span&gt;&lt;/div&gt;&lt;div style=&quot;text-align: justify;&quot;&gt;&lt;br /&gt;
&lt;/div&gt;&lt;div style=&quot;text-align: justify;&quot;&gt;&lt;span style=&quot;font-size: 10pt;&quot;&gt;These component systems would allow developers to build programs from scratch from compositions of components which they would further customize. Due to component systems it would be easy to replace existing parts without requiring major changes to the rest of the program. A virtualized component model would need the following characteristics, to function effectively.&lt;br /&gt;
&lt;/span&gt;&lt;/div&gt;&lt;div style=&quot;text-align: justify;&quot;&gt;&lt;span style=&quot;font-size: 10pt;&quot;&gt;&lt;strong&gt;Componentization&lt;br /&gt;
&lt;/strong&gt;&lt;/span&gt;&lt;/div&gt;&lt;div style=&quot;text-align: justify;&quot;&gt;&lt;span style=&quot;font-size: 10pt;&quot;&gt;Granularity of the system, i.e. the appropriate component size is a very important factor for component design. The component size would be relatively small compared to a VM running a full OS. Two major factors that would affect the component size are 1) Computational overhead of the components and 2) The development burden of the components. Moreover, a few pragmatic concerns such as, the way of component packing, the way of sharing resources and information between components must be addressed.&lt;br /&gt;
&lt;/span&gt;&lt;/div&gt;&lt;div style=&quot;text-align: justify;&quot;&gt;&lt;br /&gt;
&lt;/div&gt;&lt;div style=&quot;text-align: justify;&quot;&gt;&lt;span style=&quot;font-size: 10pt;&quot;&gt;&lt;strong&gt;Composition&lt;br /&gt;
&lt;/strong&gt;&lt;/span&gt;&lt;/div&gt;&lt;div style=&quot;text-align: justify;&quot;&gt;&lt;span style=&quot;font-size: 10pt;&quot;&gt;The way in which a working system is formed by combining components is an important characteristic for a component system. Most of the component systems have a simple programmatic way in which you can reference and invoke a component. Some systems have a dynamic model in which the components can be invoked after finding them at runtime. Ideally a system should have programmatic dynamic composition of components. The design points to consider for such a model are:&lt;br /&gt;
&lt;/span&gt;&lt;/div&gt;&lt;ul&gt;&lt;li&gt;&lt;span style=&quot;font-size: 10pt;&quot;&gt;The means by which components are referenced,&lt;br /&gt;
&lt;/span&gt;&lt;/li&gt;
&lt;li&gt;&lt;span style=&quot;font-size: 10pt;&quot;&gt;The control of the life-cycle of the components &lt;br /&gt;
&lt;/span&gt;&lt;/li&gt;
&lt;li&gt;&lt;span style=&quot;font-size: 10pt;&quot;&gt;Their customization within anticipated parameters&lt;br /&gt;
&lt;/span&gt;&lt;/li&gt;
&lt;/ul&gt;&lt;div style=&quot;text-align: justify;&quot;&gt;&lt;span style=&quot;font-size: 10pt;&quot;&gt;In modern virtual architectures the control and creation of VMs happens outside of the normal system in a special &#39;privileged&#39; area.  This mismatch in the location of control has to be address in a component system design&lt;br /&gt;
&lt;/span&gt;&lt;/div&gt;&lt;br /&gt;
&lt;span style=&quot;font-size: 10pt;&quot;&gt;&lt;strong&gt;Communication&lt;br /&gt;
&lt;/strong&gt;&lt;/span&gt;&lt;br /&gt;
&lt;div style=&quot;text-align: justify;&quot;&gt;&lt;span style=&quot;font-size: 10pt;&quot;&gt;Communication can be as simple as a function call, since most component systems are designed to run in a single address space. A virtual component model would definitely have Inter-process communication and middleware, more so because they send communication through some sort of shared medium like shared memory or network instead of direct invocation of function or data access. Some of the design points to be taken care with respect to communication are:&lt;br /&gt;
&lt;/span&gt;&lt;/div&gt;&lt;ul style=&quot;margin-left: 45pt;&quot;&gt;&lt;li&gt;&lt;span style=&quot;font-size: 10pt;&quot;&gt;The medium used communicate between VMs,&lt;br /&gt;
&lt;/span&gt;&lt;/li&gt;
&lt;li&gt;&lt;span style=&quot;font-size: 10pt;&quot;&gt;The way entities in the system named and registered,&lt;br /&gt;
&lt;/span&gt;&lt;/li&gt;
&lt;li&gt;&lt;span style=&quot;font-size: 10pt;&quot;&gt;The interface if typed communication is required, communication semantics &lt;br /&gt;
&lt;/span&gt;&lt;/li&gt;
&lt;li&gt;&lt;span style=&quot;font-size: 10pt;&quot;&gt;The identification of essential services.&lt;/span&gt;&lt;/li&gt;
&lt;/ul&gt;&lt;span style=&quot;font-size: 10pt;&quot;&gt;&lt;strong&gt;Control&lt;br /&gt;
&lt;/strong&gt;&lt;/span&gt;&lt;br /&gt;
&lt;div style=&quot;text-align: justify;&quot;&gt;&lt;span style=&quot;font-size: 10pt;&quot;&gt;The mechanisms for controlling the communication and behavior of components should follow the key design principle aligned with the separation of policy and mechanism. An application designer should be allowed to specify component&#39;s policy and have the system follow through that policy with mechanism. So the design points with respect to control for fine grained decomposition are:&lt;br /&gt;
&lt;/span&gt;&lt;/div&gt;&lt;ul style=&quot;margin-left: 45pt;&quot;&gt;&lt;li&gt;&lt;span style=&quot;font-size: 10pt;&quot;&gt;Definition of the mechanisms necessary to correctly control a component,&lt;br /&gt;
&lt;/span&gt;&lt;/li&gt;
&lt;li&gt;&lt;span style=&quot;font-size: 10pt;&quot;&gt;How and where are these mechanisms controlled from, in terms of system decomposition and&lt;br /&gt;
&lt;/span&gt;&lt;/li&gt;
&lt;li&gt;&lt;span style=&quot;font-size: 10pt;&quot;&gt;Where the policies of components is implemented.&lt;/span&gt;&lt;/li&gt;
&lt;/ul&gt;&lt;span style=&quot;font-size: 10pt;&quot;&gt;&lt;strong&gt;Major Challenges in Using Virtualization as a composition mechanism&lt;br /&gt;
&lt;/strong&gt;&lt;/span&gt;&lt;br /&gt;
&lt;ul style=&quot;margin-left: 45pt;&quot;&gt;&lt;li&gt;&lt;span style=&quot;font-size: 10pt;&quot;&gt;Changing the centralized control mechanisms employed in current virtualization platforms.&lt;br /&gt;
&lt;/span&gt;&lt;/li&gt;
&lt;li&gt;&lt;span style=&quot;font-size: 10pt;&quot;&gt;The scale of the system in terms of the number of VMs and the amount of inter-VM communication may need to be addressed.&lt;br /&gt;
&lt;/span&gt;&lt;/li&gt;
&lt;li&gt;&lt;span style=&quot;font-size: 10pt;&quot;&gt;The speed with which VMs can be created, and the latency of inter-VM communication needs to be addressed.&lt;br /&gt;
&lt;/span&gt;&lt;/li&gt;
&lt;/ul&gt;&lt;br /&gt;
&lt;span style=&quot;font-size: 13pt;&quot;&gt;&lt;strong&gt;4. Characteristics of a cloud application:  &lt;/strong&gt;&lt;/span&gt;[8][13][19]&lt;span style=&quot;font-size: 13pt;&quot;&gt;&lt;strong&gt;&lt;br /&gt;
&lt;/strong&gt;&lt;/span&gt;&lt;br /&gt;
&lt;div style=&quot;text-align: justify;&quot;&gt;&lt;span style=&quot;font-size: 10pt;&quot;&gt;The greatest advantage of cloud computing is &#39;flexibility&#39; which distinguishes it from other similar technologies such as Grid and utility computing. There are many important features that a cloud application must have, of which the ability to launch new instances of an application with minimal labor and expense is quite important. Once the application has been offered in a cloud computing environment, it is important to avoid the &#39;success disaster&#39;. That is, when the application becomes an overnight success. The following should be important characteristics of an ideal cloud application.&lt;br /&gt;
&lt;/span&gt;&lt;/div&gt;&lt;br /&gt;
&lt;strong&gt;&lt;span style=&quot;font-size: 10pt;&quot;&gt;-&lt;/span&gt;&lt;span style=&quot;font-size: 10pt;&quot;&gt;Ability to scale&lt;/span&gt;&lt;span style=&quot;font-size: 10pt;&quot;&gt;&lt;br /&gt;
&lt;/span&gt;&lt;/strong&gt;&lt;br /&gt;
&lt;div style=&quot;text-align: justify;&quot;&gt;&lt;span style=&quot;font-size: 10pt;&quot;&gt;Cloud computing applications require huge scalability, and for achieving it, there are some simple design guidelines which can be followed.&lt;br /&gt;
&lt;/span&gt;&lt;/div&gt;&lt;div style=&quot;text-align: justify;&quot;&gt;&lt;span style=&quot;font-size: 10pt;&quot;&gt;&lt;strong&gt;Simplicity&lt;/strong&gt;:- Avoid complex design and enhancements. It is better to start with a simple application and depend on the cloud to ensure good performance. The improvement in efficiency can be done as and when you get traction and demand grows, which would allow serving more users but same number of servers, while maintaining performance. Although caching, server affinity, multi-threading and tight data sharing would make it difficult to distribute application across many servers, but it can improve performance. Which is the reason it is recommended to bring these characteristics later and not in the beginning, to ensure that you don&#39;t break horizontal scalability.&lt;/span&gt;&lt;/div&gt;&lt;div style=&quot;text-align: justify;&quot;&gt; &amp;nbsp;&lt;/div&gt;&lt;div style=&quot;text-align: justify;&quot;&gt;&lt;span style=&quot;font-size: 10pt;&quot;&gt;&lt;strong&gt;Splitting functions and Loose Coupling&lt;/strong&gt;:- Use separate systems for different functionalities and avoid synchronous connection between them. So, as the demand grows each individual unit can be scaled independently instead of the whole application.&lt;/span&gt;&lt;/div&gt;&lt;div style=&quot;text-align: justify;&quot;&gt; &amp;nbsp;&lt;/div&gt;&lt;div style=&quot;text-align: justify;&quot;&gt;&lt;span style=&quot;font-size: 10pt;&quot;&gt;&lt;strong&gt;Network Communication&lt;/strong&gt;:- Design the application to use network based interfaces instead of interprocess communication or file-based communication paradigms. Since each piece of application can be separated into distinct systems, it helps in scaling.&lt;/span&gt;&lt;/div&gt;&lt;div style=&quot;text-align: justify;&quot;&gt; &amp;nbsp;&lt;/div&gt;&lt;div style=&quot;text-align: justify;&quot;&gt;&lt;span style=&quot;font-size: 10pt;&quot;&gt;&lt;strong&gt;Clustering&lt;/strong&gt;:- Instead of scaling a single system for all the servers, consider splitting the system into multiple small clusters, each serving a fraction of the application load. Different services can be split up along one dimension and requests can be directed to an appropriate cluster. To deploy a clustered system determine the right collection of servers that yield efficient application performance, taking into account the required functional redundancy. The scaling can then be done by replicating the ideal cluster size and splitting the system load across the servers in the clusters.&lt;br /&gt;
&lt;/span&gt;&lt;/div&gt;&lt;span style=&quot;font-size: 10pt;&quot;&gt;The following are the advantages of scaling in the above mentioned way.&lt;br /&gt;
&lt;/span&gt;&lt;br /&gt;
&lt;ul&gt;&lt;li&gt;&lt;span style=&quot;font-size: 10pt;&quot;&gt;Testing can be done against a test cluster without risking the performance or integrity of the entire system. Cluster performance can also be done using artificial users to generate load in the cloud.&lt;br /&gt;
&lt;/span&gt;&lt;/li&gt;
&lt;li&gt;&lt;span style=&quot;font-size: 10pt;&quot;&gt;Perform testing on an instance of the cluster first, and one cluster at a time. If the tests do not succeed then just roll back.&lt;br /&gt;
&lt;/span&gt;&lt;/li&gt;
&lt;li&gt;&lt;span style=&quot;font-size: 10pt;&quot;&gt;Separate clusters on the basis of varying customer demands.&lt;br /&gt;
&lt;/span&gt;&lt;/li&gt;
&lt;li&gt;&lt;span style=&quot;font-size: 10pt;&quot;&gt;With the readily available resources, the applications can be built to recognize the need to scale when the limits of the current configuration have been reached. &lt;br /&gt;
&lt;/span&gt;&lt;/li&gt;
&lt;/ul&gt;&lt;strong&gt;&lt;span style=&quot;font-size: 10pt;&quot;&gt;-&lt;/span&gt;&lt;span style=&quot;font-size: 10pt;&quot;&gt;Ability to handle failure&lt;/span&gt;&lt;span style=&quot;font-size: 10pt;&quot;&gt;&lt;br /&gt;
&lt;/span&gt;&lt;/strong&gt;&lt;br /&gt;
&lt;div style=&quot;text-align: justify;&quot;&gt;&lt;span style=&quot;font-size: 10pt;&quot;&gt;An application is doomed to fail, no matter what characteristics it has. Same is the case with any cloud application.&lt;br /&gt;
&lt;/span&gt;&lt;/div&gt;&lt;div style=&quot;text-align: justify;&quot;&gt;&lt;br /&gt;
&lt;/div&gt;&lt;div style=&quot;text-align: justify;&quot;&gt;&lt;span style=&quot;font-size: 10pt;&quot;&gt;&lt;strong&gt;Resilience and Fault tolerance&lt;/strong&gt;:-  To be able to tolerate failures any application must operate as a part of a group, but loosely coupled to their peers. Each application piece should be able to continue execution despite the loss of other functions. Asynchronous interfaces for components are ideal mechanism to tolerate failures.&lt;br /&gt;
&lt;/span&gt;&lt;/div&gt;&lt;div style=&quot;text-align: justify;&quot;&gt;&lt;br /&gt;
&lt;/div&gt;&lt;div style=&quot;text-align: justify;&quot;&gt;&lt;span style=&quot;font-size: 10pt;&quot;&gt;&lt;strong&gt;Distribute failure impact&lt;/strong&gt;:- In a cloud application the failure of one application cluster would affect only a portion of the application. By spreading the load across multiple clusters, it would be easy to isolate individual clusters against failure in another cluster.&lt;br /&gt;
&lt;/span&gt;&lt;/div&gt;&lt;div style=&quot;text-align: justify;&quot;&gt;&lt;br /&gt;
&lt;/div&gt;&lt;div style=&quot;text-align: justify;&quot;&gt;&lt;span style=&quot;font-size: 10pt;&quot;&gt;&lt;strong&gt;Quick Recovery&lt;/strong&gt;:- Application components must be able to come up automatically, configure and join the application cluster, in order to have proper and quick recovery.&lt;br /&gt;
&lt;/span&gt;&lt;/div&gt;&lt;div style=&quot;text-align: justify;&quot;&gt;&lt;br /&gt;
&lt;/div&gt;&lt;div style=&quot;text-align: justify;&quot;&gt;&lt;span style=&quot;font-size: 10pt;&quot;&gt;&lt;strong&gt;Data Preservation&lt;/strong&gt;:- Keep all data on persistent storage and make sure that it is replicated and distributed in the correct manner. System can be restarted from the point of failure by storing the system state.&lt;br /&gt;
&lt;/span&gt;&lt;/div&gt;&lt;div style=&quot;text-align: justify;&quot;&gt;&lt;br /&gt;
&lt;/div&gt;&lt;div style=&quot;text-align: justify;&quot;&gt;&lt;span style=&quot;font-size: 10pt;&quot;&gt;&lt;strong&gt;Test Failure scenario&lt;/strong&gt;:- It is easy to bring up an instance of the application and test various failure scenarios, in very reasonable cost due to the flexibility of cloud computing. Single application instances can be taken offline to check the effects of it on the rest of the application. Similarly multiple recovery scenarios can be planned and executed for any type of failure.&lt;br /&gt;
&lt;/span&gt;&lt;/div&gt;&lt;div style=&quot;text-align: justify;&quot;&gt;&lt;span style=&quot;font-size: 10pt;&quot;&gt;Also, the application should be built after comparing the costs for developing fail-proof application and the costs for recovering from a failure, and choosing the better of the two.&lt;br /&gt;
&lt;/span&gt;&lt;/div&gt;&lt;div style=&quot;text-align: justify;&quot;&gt;&lt;br /&gt;
&lt;/div&gt;&lt;div style=&quot;text-align: justify;&quot;&gt;&lt;strong&gt;&lt;span style=&quot;font-size: 10pt;&quot;&gt;-&lt;/span&gt;&lt;span style=&quot;font-size: 10pt;&quot;&gt;Ability to manage applications&lt;/span&gt;&lt;span style=&quot;font-size: 10pt;&quot;&gt;&lt;br /&gt;
&lt;/span&gt;&lt;/strong&gt;&lt;/div&gt;&lt;div style=&quot;text-align: justify;&quot;&gt;&lt;span style=&quot;font-size: 10pt;&quot;&gt;It is quite easy to manage applications if they are deployed as virtual appliances. The appliances should bring with them the entire software needed for the lifecycle in the cloud. They should be built systematically so that there is consistency of creating and re-creating images. Rapid provisioning of new systems, for scaling and failure recovery, can be done only if the images to be provisioned are consistent and repeatable.&lt;br /&gt;
&lt;/span&gt;&lt;/div&gt;&lt;div style=&quot;text-align: justify;&quot;&gt;&lt;span style=&quot;font-size: 10pt;&quot;&gt;The appliance configuration and updates should be automated so that the management overhead does not grow in proportion when the application grows. In this way the appliances can stay in the cloud for any length if time with minimum management overhead.&lt;br /&gt;
&lt;/span&gt;&lt;/div&gt;&lt;div style=&quot;text-align: justify;&quot;&gt;&lt;span style=&quot;font-size: 10pt;&quot;&gt;When appliances are instantiated in the cloud they should plug into a monitoring and management system. This system will allow tracking the application running in the cloud, mitigate or shutdown instances as needed, and gather logs and other information that is necessary. Without a management system the application could slowly sprawl across the cloud and waste resources and money.&lt;br /&gt;
&lt;/span&gt;&lt;/div&gt;&lt;div style=&quot;text-align: justify;&quot;&gt;&lt;span style=&quot;font-size: 10pt;&quot;&gt;A management system plays a major role in testing and deployment process. Including testing the management system would allow us to bring up a test cluster, conduct the required testing and then migrate the application into production. Updated features and functions can be delivered faster due to the uniform resources helping a rapid release to the production process. By automating creation and management of these appliances and producing a consistent appliance image and managing it effectively would mean that we have removed variability from the release management and deployment process hence reduces the chances of mistakes.&lt;br /&gt;
&lt;/span&gt;&lt;/div&gt;&lt;span style=&quot;font-size: 10pt;&quot;&gt;The following are the advantages of developing application for management in the cloud.&lt;br /&gt;
&lt;/span&gt;&lt;br /&gt;
&lt;ul&gt;&lt;li&gt;&lt;span style=&quot;font-size: 10pt;&quot;&gt;Reducing cost and overhead of preparing the application for the cloud&lt;br /&gt;
&lt;/span&gt;&lt;/li&gt;
&lt;li&gt;&lt;span style=&quot;font-size: 10pt;&quot;&gt;Reducing the overhead of bringing up new instances of the application&lt;br /&gt;
&lt;/span&gt;&lt;/li&gt;
&lt;li&gt;&lt;span style=&quot;font-size: 10pt;&quot;&gt;Eliminating application sprawl&lt;br /&gt;
&lt;/span&gt;&lt;/li&gt;
&lt;li&gt;&lt;span style=&quot;font-size: 10pt;&quot;&gt;Reducing the chance for mistakes as the application is scaled out, failed over, upgraded etc&lt;br /&gt;
&lt;/span&gt;&lt;/li&gt;
&lt;/ul&gt;&lt;span class=&quot;Apple-style-span&quot; style=&quot;font-size: 13px;&quot;&gt;&lt;strong&gt;Automating Cloud services&lt;/strong&gt;&lt;/span&gt;&lt;br /&gt;
&lt;span style=&quot;font-size: 10pt;&quot;&gt;[11]&lt;br /&gt;
&lt;/span&gt;&lt;br /&gt;
&lt;div style=&quot;text-align: justify;&quot;&gt;&lt;span style=&quot;font-size: 10pt;&quot;&gt;Cloud services in particular to automate. Most cloud applications are specific to one vendor&#39;s API, whereas applications valuable for an enterprise need access and control across heterogeneous systems. Since cloud services are essentially extensions of data centers, developing cloud automation applications have the same issues as system applications with the added complexity of dealing with multiple vendor interfaces.&lt;br /&gt;
&lt;/span&gt;&lt;/div&gt;&lt;ul&gt;&lt;li&gt;&lt;div style=&quot;text-align: justify;&quot;&gt;&lt;span style=&quot;font-size: 10pt;&quot;&gt;&lt;strong&gt;Automating recovery of cloud resources&lt;/strong&gt;:- An important advantage of cloud compute services is that they can be started under program control. Virtualized systems allow resources to be assigned dynamically. Automating recovery requires interaction between the monitoring system, which should be aware of system alerts, and the cloud services APIs to restart the resource. Also, creating problem tickets and notifying operations personnel when recovery occurs in order to track service levels can be a part of automation.&lt;br /&gt;
&lt;/span&gt;&lt;/div&gt;&lt;/li&gt;
&lt;li&gt;&lt;br /&gt;
&lt;div style=&quot;text-align: justify;&quot;&gt;&lt;span style=&quot;font-size: 10pt;&quot;&gt;&lt;strong&gt;Auto-scaling&lt;/strong&gt;:- In this scenario the auto-scaling depends on the load on the application. The load calculation is explicitly or implicitly derived from the monitoring system metrics, which triggers the process to start a compute instance using the cloud API.  The additional complexity comes from integrating interaction with other application components.&lt;br /&gt;
&lt;/span&gt;&lt;/div&gt;&lt;/li&gt;
&lt;li&gt;&lt;br /&gt;
&lt;div style=&quot;text-align: justify;&quot;&gt;&lt;span style=&quot;font-size: 10pt;&quot;&gt;&lt;strong&gt;Storage backup&lt;/strong&gt;:- Most cloud service providers provide theoretically &#39;unlimited&#39; backup, so it becomes important to have backup. The automation application must coordinate the storage capacity triggering alert from the monitoring system, the application control commands, the cloud API action to initiate transfer to the cloud storage. Data storage applications that track critical application data would need to be notified.&lt;br /&gt;
&lt;/span&gt;&lt;/div&gt;&lt;/li&gt;
&lt;li&gt;&lt;br /&gt;
&lt;div style=&quot;text-align: justify;&quot;&gt;&lt;span style=&quot;font-size: 10pt;&quot;&gt;&lt;strong&gt;Hybrid Applications&lt;/strong&gt;:- Many a times there are applications which have their resources on the cloud but their own datacenter. The interaction between cloud and non-cloud components can be governed by an automation application.&lt;br /&gt;
&lt;/span&gt;&lt;/div&gt;&lt;/li&gt;
&lt;li&gt;&lt;br /&gt;
&lt;div style=&quot;text-align: justify;&quot;&gt;&lt;span style=&quot;font-size: 10pt;&quot;&gt;&lt;strong&gt;Cross vendor services&lt;/strong&gt;:- When a single vendor&#39;s service is used, it is bound to have a single point of failure. One of the ways to mitigate it is by spreading the services across multiple vendors. For doing this, the following automations must be done&lt;br /&gt;
&lt;/span&gt;&lt;/div&gt;&lt;ul&gt;&lt;li&gt;&lt;span style=&quot;font-size: 10pt;&quot;&gt;Interfacing to multiple cloud APIs.&lt;br /&gt;
&lt;/span&gt;&lt;/li&gt;
&lt;li&gt;&lt;span style=&quot;font-size: 10pt;&quot;&gt;Recognizing vendor failures versus network or component failures&lt;br /&gt;
&lt;/span&gt;&lt;/li&gt;
&lt;li&gt;&lt;span style=&quot;font-size: 10pt;&quot;&gt;Reconfiguring components to work with either redundant cloud service&lt;br /&gt;
&lt;/span&gt;&lt;/li&gt;
&lt;li&gt;&lt;span style=&quot;font-size: 10pt;&quot;&gt;Planning for and handling changes and failure scenarios in both sets of services&lt;br /&gt;
&lt;/span&gt;&lt;/li&gt;
&lt;/ul&gt;&lt;div style=&quot;margin-left: 18pt;&quot;&gt;&lt;br /&gt;
&lt;/div&gt;&lt;/li&gt;
&lt;/ul&gt;&lt;span style=&quot;font-size: 14pt;&quot;&gt;&lt;strong&gt;Conclusion&lt;br /&gt;
&lt;/strong&gt;&lt;/span&gt;&lt;br /&gt;
&lt;div style=&quot;text-align: justify;&quot;&gt;&lt;span style=&quot;font-size: 10pt;&quot;&gt;Cloud computing offers great potential to improve productivity and reduce costs. In spite of its numerous advantages, there are still fears and unanswered questions, which hinder the adoption of Cloud computing by everyone. This paper was written with a goal of explaining and comprehending the architecture of an ideal cloud for a more rapid adoption by the scientific community. This paper demonstrates ontology of a cloud which is dissected into five main layers. A detailed examination of the layers and their inter-relation as well as inter-dependency between these layers is illustrated. We further go in depth into the most important layers, to understand the detailed analysis of them, giving a more comprehensive and detailed analysis of the cloud computing knowledge domain. We used composability as our methodology in constructing our cloud ontology which allowed us to capture the inter-relations between the different cloud components.&lt;br /&gt;
&lt;/span&gt;&lt;/div&gt;&lt;div style=&quot;text-align: justify;&quot;&gt;&lt;br /&gt;
&lt;/div&gt;&lt;div style=&quot;text-align: justify;&quot;&gt;&lt;span style=&quot;font-size: 10pt;&quot;&gt;We also proposed using macro-components for virtualization in cloud computing in order to facilitate easy development and deployment. At the end we mention the characteristics which every cloud application should have in order to make use of the full potential of the proposed cloud architecture. These characteristics are very important and are inevitable in any cloud application. &lt;br /&gt;
&lt;/span&gt;&lt;/div&gt;&lt;div style=&quot;text-align: justify;&quot;&gt;&lt;span style=&quot;font-size: 10pt;&quot;&gt;Better comprehension of the technology would enable the community to design more efficient portals and gateways for the cloud, and facilitate the adoption of this novel computing approach in scientific environments. In turn, this will assist the scientific community to expedite its contributions and insights into this evolving computing field.&lt;br /&gt;
&lt;/span&gt;&lt;/div&gt;&lt;br /&gt;
&lt;span style=&quot;font-size: 16pt;&quot;&gt;&lt;strong&gt;References&lt;br /&gt;
&lt;/strong&gt;&lt;/span&gt;&lt;br /&gt;
&lt;ol&gt;&lt;li&gt;&lt;div style=&quot;text-align: justify;&quot;&gt;&lt;span style=&quot;font-size: 10pt;&quot;&gt;L. Youse , M. Butrico, and D. Da Silva, &quot;Toward a unified ontology of cloud computing,&quot; in Grid Computing Environments Workshop, 2008. GCE &#39;08, pp. 1{10, 2008.&amp;nbsp;&lt;span class=&quot;Apple-style-span&quot; style=&quot;font-size: medium;&quot;&gt;&amp;nbsp;&lt;/span&gt;&lt;/span&gt;&lt;/div&gt;&lt;/li&gt;
&lt;/ol&gt;&lt;ol&gt;&lt;li&gt;&lt;br /&gt;
&lt;div style=&quot;text-align: justify;&quot;&gt;&lt;span style=&quot;font-size: 10pt;&quot;&gt;D. Nurmi, R. Wolski, C. Grzegorczyk, G. Obertelli, S. Soman, L. Youse, and D. Zagorodnov, &quot;The eucalyptus open-source cloud-computing system,&quot; in CCGRID &#39;09: Proceedings of the 2009 9th IEEE/ACM International Symposium on Cluster Computing and the Grid, (Washington, DC, USA), pp. 124{131, IEEE Computer Society, 2009.&lt;/span&gt;&lt;/div&gt;&lt;/li&gt;
&lt;/ol&gt;&lt;ol&gt;&lt;li&gt;&lt;br /&gt;
&lt;div style=&quot;text-align: justify;&quot;&gt;&lt;span style=&quot;font-size: 10pt;&quot;&gt;M. Armbrust, A. Fox, R. Griffith, A. D. Joseph, R. Katz, A. Konwinski, G. Lee, D. Patterson, A. Rabkin, I. Stoica, and M. Zaharia, &quot;Above the clouds: A berkeley view of cloud computing,&quot; tech. rep., February 2009.&lt;/span&gt;&lt;/div&gt;&lt;/li&gt;
&lt;/ol&gt;&lt;ol&gt;&lt;li&gt;&lt;br /&gt;
&lt;div style=&quot;text-align: justify;&quot;&gt;&lt;span style=&quot;font-size: 10pt;&quot;&gt;R. Buyya, C. S. Yeo, S. Venugopal, J. Broberg, and I. Brandic, &quot;Cloud computing and emerging it platforms: Vision, hype, and reality for delivering computing as the 5th utility,&quot; Future Generation Computer Systems, vol. 25, pp. 599{616, 2009.&lt;/span&gt;&lt;/div&gt;&lt;/li&gt;
&lt;/ol&gt;&lt;ol&gt;&lt;li&gt;&lt;br /&gt;
&lt;div style=&quot;text-align: justify;&quot;&gt;&lt;span style=&quot;font-size: 10pt;&quot;&gt;B. Hayes, &quot;Cloud computing,&quot; Commun. ACM, vol. 51, pp. 9{11, 2008.&amp;nbsp;&lt;/span&gt;&lt;/div&gt;&lt;/li&gt;
&lt;/ol&gt;&lt;ol&gt;&lt;li&gt;&lt;br /&gt;
&lt;div style=&quot;text-align: justify;&quot;&gt;&lt;span style=&quot;font-size: 10pt;&quot;&gt;S. Pearson, &quot;Taking account of privacy when designing cloud computing services,&quot; in CLOUD &#39;09: Proceedings of the 2009 ICSE Workshop on Software Engineering Challenges of Cloud Computing, pp. 44{52, IEEE Computer Society, 2009.&lt;/span&gt;&lt;/div&gt;&lt;/li&gt;
&lt;/ol&gt;&lt;ol&gt;&lt;li&gt;&lt;br /&gt;
&lt;div style=&quot;text-align: justify;&quot;&gt;&lt;span style=&quot;font-size: 10pt;&quot;&gt;M. Jensen, J. Schwenk, N. Gruschka, and L. Lo Iacono, &quot;On technical security issues in cloud computing,&quot; Cloud Computing, IEEE International Conference on, vol. 0, pp. 109{116, 2009.&lt;br /&gt;
&lt;/span&gt;&lt;/div&gt;&lt;div style=&quot;text-align: justify;&quot;&gt;&lt;br /&gt;
&lt;/div&gt;&lt;/li&gt;
&lt;li&gt;&lt;br /&gt;
&lt;div style=&quot;text-align: justify;&quot;&gt;&lt;span style=&quot;font-size: 10pt;&quot;&gt;A. Lenk, M. Klems, J. Nimis, S. Tai, and T. Sandholm, &quot;What&#39;s inside the cloud? an architectural map of the cloud landscape,&quot; in CLOUD &#39;09: Proceedings of the 2009 ICSE Workshop on Software Engineering Challenges of Cloud Computing, vol. 0, (Washington, DC, USA), pp. 23{31, IEEE Computer Society, 2009.&lt;/span&gt;&lt;/div&gt;&lt;/li&gt;
&lt;/ol&gt;&lt;ol&gt;&lt;li&gt;&lt;br /&gt;
&lt;div style=&quot;text-align: justify;&quot;&gt;&lt;span style=&quot;font-size: 10pt;&quot;&gt;J. J. Rehr, J. P. Gardner, M. Prange, L. Svec, and F. Vila, &quot;Scientific computing in the cloud,&quot; 2008.&lt;br /&gt;
&lt;/span&gt;&lt;/div&gt;&lt;/li&gt;
&lt;/ol&gt;&lt;ol&gt;&lt;li&gt;&lt;div style=&quot;text-align: justify;&quot;&gt;&lt;span style=&quot;font-size: 10pt;&quot;&gt;L. M. Vaquero, L. R. Merino, J. Caceres, and M. Lindner, &quot;A break in the clouds: towards a cloud definition,&quot; SIGCOMM Comput. Commun. Rev.,vol. 39, pp. 50{55, 2009.&lt;br /&gt;
&lt;/span&gt;&lt;/div&gt;&lt;/li&gt;
&lt;/ol&gt;&lt;ol&gt;&lt;li&gt;&lt;div style=&quot;text-align: justify;&quot;&gt;&lt;span style=&quot;font-size: 10pt;&quot;&gt;H. C. Lim, S. Babu, J. S. Chase, and S. S. Parekh, &quot;Automated control in cloud computing: challenges and opportunities,&quot; in ACDC &#39;09: Proceedings of the 1st workshop on Automated control for datacenters and clouds, (New York, NY, USA), pp. 13{18, ACM, 2009.&lt;br /&gt;
&lt;/span&gt;&lt;/div&gt;&lt;/li&gt;
&lt;/ol&gt;&lt;ol&gt;&lt;li&gt;&lt;div style=&quot;text-align: justify;&quot;&gt;&lt;span style=&quot;font-size: 10pt;&quot;&gt;L. Mei, W. K. Chan, and T. H. Tse, &quot;A tale of clouds: Paradigm comparisons and some thoughts on research issues,&quot; Asia-Pacific Conference on Services Computing. 2006 IEEE, vol. 0, pp. 464{469, 2008.&lt;br /&gt;
&lt;/span&gt;&lt;/div&gt;&lt;/li&gt;
&lt;/ol&gt;&lt;ol&gt;&lt;li&gt;&lt;div style=&quot;text-align: justify;&quot;&gt;&lt;span style=&quot;font-size: 10pt;&quot;&gt;G. Reese and R. George, Cloud Application Architectures: Building Applications and Infrastructure in the Cloud. O&#39;Reilly Media, 1 ed., 2009.&lt;br /&gt;
&lt;/span&gt;&lt;/div&gt;&lt;/li&gt;
&lt;/ol&gt;&lt;ol&gt;&lt;li&gt;&lt;div style=&quot;text-align: justify;&quot;&gt;&lt;span style=&quot;font-size: 10pt;&quot;&gt;GridBatch: Cloud Computing for Large-Scale Data-Intensive Batch Applications, 2008.&lt;br /&gt;
&lt;/span&gt;&lt;/div&gt;&lt;/li&gt;
&lt;/ol&gt;&lt;ol&gt;&lt;li&gt;&lt;div style=&quot;text-align: justify;&quot;&gt;&lt;span style=&quot;font-size: 10pt;&quot;&gt;C. Vecchiola, S. Pandey, and R. Buyya, &quot;High-performance cloud computing: A view of scientific applications,&quot; 2009.&lt;br /&gt;
&lt;/span&gt;&lt;/div&gt;&lt;/li&gt;
&lt;/ol&gt;&lt;ol&gt;&lt;li&gt;&lt;div style=&quot;text-align: justify;&quot;&gt;&lt;span style=&quot;font-size: 10pt;&quot;&gt;R. Buyya, C. S. Yeo, and S. Venugopal, &quot;Market-oriented cloud computing: Vision, hype, and reality for delivering it services as computing utilities,&quot; Aug 2008.&lt;br /&gt;
&lt;/span&gt;&lt;/div&gt;&lt;/li&gt;
&lt;/ol&gt;&lt;ol&gt;&lt;li&gt;&lt;div style=&quot;text-align: justify;&quot;&gt;&lt;span style=&quot;font-size: 10pt;&quot;&gt;P. C.-Y. Sheu, S. Wang, Q. Wang, K. Hao, and R. Paul, &quot;Semantic computing, cloud computing, and semantic search engine,&quot; International Conference on Semantic Computing, vol. 0, pp. 654{657, 2009.&lt;br /&gt;
&lt;/span&gt;&lt;/div&gt;&lt;/li&gt;
&lt;/ol&gt;&lt;ol&gt;&lt;li&gt;&lt;div style=&quot;text-align: justify;&quot;&gt;&lt;span style=&quot;font-size: 10pt;&quot;&gt;C. Matthews and Y. Coady, &quot;Virtualized recomposition: Cloudy or clear?,&quot; Software Engineering Challenges of Cloud Computing, ICSE Workshop on, vol. 0, pp. 38{43, 2009.&lt;br /&gt;
&lt;/span&gt;&lt;/div&gt;&lt;/li&gt;
&lt;/ol&gt;&lt;ol&gt;&lt;li&gt;&lt;div style=&quot;text-align: justify;&quot;&gt;&lt;span style=&quot;font-size: 10pt;&quot;&gt;J. S. Rellermeyer, M. Duller, and G. Alonso, &quot;Engineering the cloud from software modules,&quot; in CLOUD &#39;09: Proceedings of the 2009 ICSE Workshop on Software Engineering Challenges of Cloud Computing, (Washington, DC, USA), pp. 32{37, IEEE Computer Society, 2009.&lt;br /&gt;
&lt;/span&gt;&lt;/div&gt;&lt;/li&gt;
&lt;/ol&gt;&lt;ol&gt;&lt;li&gt;&lt;div style=&quot;text-align: justify;&quot;&gt;&lt;span style=&quot;font-size: 10pt;&quot;&gt;R. Chow, P. Golle, M. Jakobsson, E. Shi, J. Staddon, R. Masuoka, and J.Molina, &quot;Controlling data in the cloud: outsourcing computation without outsourcing control,&quot; in CCSW &#39;09: Proceedings of the 2009 ACM workshop on Cloud computing security, (New York, NY, USA), pp. 85{90, ACM, 2009.&lt;br /&gt;
&lt;/span&gt;&lt;/div&gt;&lt;/li&gt;
&lt;/ol&gt;&lt;span class=&quot;Apple-style-span&quot; style=&quot;font-size: 19px;&quot;&gt;&lt;strong&gt;Other References&lt;/strong&gt;&lt;/span&gt;&lt;br /&gt;
&lt;br /&gt;
&lt;ol&gt;&lt;li&gt;&lt;br /&gt;
&lt;div style=&quot;text-align: justify;&quot;&gt;&lt;span style=&quot;font-size: 10pt;&quot;&gt;P. Loh, &quot;Automating cloud services,&quot; TapInSystems WhitePaper vol. 0, 2009.&lt;br /&gt;
&lt;/span&gt;&lt;/div&gt;&lt;/li&gt;
&lt;/ol&gt;&lt;ol&gt;&lt;li&gt;&lt;div style=&quot;text-align: justify;&quot;&gt;&lt;span style=&quot;font-size: 10pt;&quot;&gt;E. Ong, &quot;Scaling web applications in a cloud environment using resin 4.0,&quot; Caucho-WhitePaper vol. 0, pp. 38{43, 2009.&lt;br /&gt;
&lt;/span&gt;&lt;/div&gt;&lt;/li&gt;
&lt;/ol&gt;&lt;ol&gt;&lt;li&gt;&lt;div style=&quot;text-align: justify;&quot;&gt;&lt;span style=&quot;font-size: 10pt;&quot;&gt;W. Paper, &quot;Introduction to cloud computing architecture,&quot; Sun Microsystems-WhitePaper vol. 0, 2009. &lt;br /&gt;
&lt;/span&gt;&lt;/div&gt;&lt;/li&gt;
&lt;/ol&gt;&lt;ol&gt;&lt;li&gt;&lt;div style=&quot;text-align: justify;&quot;&gt;&lt;span style=&quot;font-size: 10pt;&quot;&gt;W. P. in Enterprise architecture, &quot;Architectural strategies for cloud computing,&quot; Oracle- WhitePaper vol. 0, 2009.&lt;br /&gt;
&lt;/span&gt;&lt;/div&gt;&lt;/li&gt;
&lt;/ol&gt;&lt;ol&gt;&lt;li&gt;&lt;div&gt;&lt;span style=&quot;font-size: 10pt;&quot;&gt;&quot;GOOGLE App Engine,&quot; http://code.google.com/appengine&lt;br /&gt;
&lt;/span&gt;&lt;/div&gt;&lt;br /&gt;
&lt;/li&gt;
&lt;li&gt;&lt;br /&gt;
&lt;div&gt;&lt;span style=&quot;font-size: 10pt;&quot;&gt;&quot;Amazon elastic compute cloud,&quot; http://aws.amazon.com/ec2/&lt;/span&gt;&lt;br /&gt;
&lt;/div&gt;&lt;/li&gt;
&lt;li&gt;&lt;br /&gt;
&lt;div&gt;&lt;span style=&quot;font-size: 10pt;&quot;&gt; &quot;Salesforce Customer Relationships Management (CRM) system,&quot; http://www.salesforce.com/&lt;br /&gt;
&lt;/span&gt;&lt;/div&gt;&lt;br /&gt;
&lt;/li&gt;
&lt;li&gt;&lt;br /&gt;
&lt;div&gt;&lt;span style=&quot;font-size: 10pt;&quot;&gt; &quot;GOOGLE Apps,&quot; http://www.google.com/apps/business/index.html&lt;/span&gt;&lt;br /&gt;
&lt;/div&gt;&lt;/li&gt;
&lt;li&gt;&lt;br /&gt;
&lt;div&gt;&lt;span style=&quot;font-size: 10pt;&quot;&gt; &quot;Eucalyptus home page,&quot; http://eucalyptus.cs.ucsb.edu/&lt;br /&gt;
&lt;/span&gt;&lt;/div&gt;&lt;br /&gt;
&lt;/li&gt;
&lt;li&gt;&lt;br /&gt;
&lt;div&gt;&lt;span style=&quot;font-size: 10pt;&quot;&gt; &quot;Amazon simple storage service,&quot; http://aws.amazon.com/s3/&lt;br /&gt;
&lt;/span&gt;&lt;/div&gt;&lt;br /&gt;
&lt;/li&gt;
&lt;li&gt;&lt;br /&gt;
&lt;div style=&quot;text-align: justify;&quot;&gt;&lt;span style=&quot;font-size: 10pt;&quot;&gt; &quot;Microsoft Connected Service Framework,&quot; http://www.microsoft.com/serviceproviders/solutions/connectedservicesframework.mspx&lt;/span&gt;&lt;br /&gt;
&lt;span style=&quot;font-size: 10pt;&quot;&gt;&lt;br /&gt;
&lt;/span&gt;&lt;/div&gt;&lt;/li&gt;
&lt;li&gt;&lt;br /&gt;
&lt;div&gt;&lt;span style=&quot;font-size: 10pt;&quot;&gt; &quot;GoGrid,&quot; http://www.gogrid.com&lt;/span&gt;&lt;/div&gt;&lt;br /&gt;
&lt;/li&gt;
&lt;li&gt;&lt;br /&gt;
&lt;div&gt;&lt;span style=&quot;font-size: 10pt;&quot;&gt; &quot;Amazon S3 Availability,&quot; http://status.aws.amazon.com/s3-20080720.html&lt;br /&gt;
&lt;/span&gt;&lt;/div&gt;&lt;br /&gt;
&lt;/li&gt;
&lt;li&gt;&lt;br /&gt;
&lt;div&gt;&lt;span style=&quot;font-size: 10pt;&quot;&gt; Microsoft Azure. http://www.microsoft.com/azure/ &lt;br /&gt;
&lt;/span&gt;&lt;/div&gt;&lt;br /&gt;
&lt;/li&gt;
&lt;li&gt;&lt;br /&gt;
&lt;div&gt;&lt;span style=&quot;font-size: 10pt;&quot;&gt; Sun network.com (Sun Grid). http://www.network.com&lt;br /&gt;
&lt;/span&gt;&lt;/div&gt;&lt;br /&gt;
&lt;/li&gt;
&lt;li&gt;&lt;span style=&quot;font-size: 10pt;&quot;&gt; Amazon Elastic Compute Cloud (EC2). http://www.amazon.com/ec2/&lt;br /&gt;
&lt;/span&gt;&lt;/li&gt;
&lt;/ol&gt;&lt;ol&gt;&lt;li&gt;&lt;span style=&quot;font-size: 10pt;&quot;&gt;Morgan Stanley. Technology Trends. 12 June 2008.   http://www.morganstanley.com/institutional/techresearch/pdfs/TechTrends062008.pdf&lt;br /&gt;
&lt;/span&gt;&lt;/li&gt;
&lt;/ol&gt;&lt;ol&gt;&lt;li&gt;&lt;div&gt;&lt;span style=&quot;font-size: 10pt;&quot;&gt;Security Guidance for Critical Areas of Focus in Cloud Computing. April 2009. Available at http://www.cloudsecurityalliance.org/guidance/casguide.pdf&lt;/span&gt;&lt;/div&gt;&lt;/li&gt;
&lt;/ol&gt;&lt;span style=&quot;font-size: 10pt;&quot;&gt;Top threats to Cloud Computing V1.0. March 2010. Available at www.cloudsecurityalliance.org/topthreats/csathreats.v1.0.pdf&lt;/span&gt;&lt;/span&gt;</content><link rel='replies' type='application/atom+xml' href='http://guptesanket.blogspot.com/feeds/8441115945290958283/comments/default' title='Post Comments'/><link rel='replies' type='text/html' href='http://guptesanket.blogspot.com/2010/05/moving-to-clouds.html#comment-form' title='0 Comments'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/6765827543481033750/posts/default/8441115945290958283'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/6765827543481033750/posts/default/8441115945290958283'/><link rel='alternate' type='text/html' href='http://guptesanket.blogspot.com/2010/05/moving-to-clouds.html' title='Moving to the Clouds'/><author><name>Anonymous</name><uri>http://www.blogger.com/profile/14659637069515892997</uri><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='16' height='16' src='https://img1.blogblog.com/img/b16-rounded.gif'/></author><thr:total>0</thr:total></entry><entry><id>tag:blogger.com,1999:blog-6765827543481033750.post-2668391273722324590</id><published>2010-04-22T21:36:00.000-07:00</published><updated>2010-04-22T22:10:31.331-07:00</updated><category scheme="http://www.blogger.com/atom/ns#" term="Fun"/><title type='text'>Life Before the Computer</title><content type='html'>An application was for employment&lt;br /&gt;
A program was a TV show&lt;br /&gt;
A cursor used profanity&lt;br /&gt;
A keyboard was a piano!&lt;br /&gt;
Memory was something that you lost with age&lt;br /&gt;
A CD was a bank account&lt;br /&gt;
And if you had a 3 1/2 inch floppy&lt;br /&gt;
You hoped nobody found out!&lt;br /&gt;
Compress was something you did to garbage&lt;br /&gt;
Not something you did to a file&lt;br /&gt;
And if you unzipped anything in public&lt;br /&gt;
You&#39;d be in jail for awhile!&lt;br /&gt;
Log on was adding wood to a fire&lt;br /&gt;
Hard drive was a long trip on the road&lt;br /&gt;
A mouse pad was where a mouse lived&lt;br /&gt;
And a backup happened to your commode!&lt;br /&gt;
Cut - you did with a pocket knife&lt;br /&gt;
Paste you did with glue&lt;br /&gt;
A web was a spider&#39;s home&lt;br /&gt;
And a virus was the flue!&lt;br /&gt;
I guess I&#39;ll stick to my pad and paper&lt;br /&gt;
And the memory in my head&lt;br /&gt;
I hear nobody&#39;s been killed in a computer crash&lt;br /&gt;
But when it happens they wish they were dead!&lt;br /&gt;
&lt;br /&gt;
&lt;span class=&quot;Apple-style-span&quot; style=&quot;font-size: x-small;&quot;&gt;Courtesy:&amp;nbsp;http://www.jimgibb.com&lt;/span&gt;</content><link rel='replies' type='application/atom+xml' href='http://guptesanket.blogspot.com/feeds/2668391273722324590/comments/default' title='Post Comments'/><link rel='replies' type='text/html' href='http://guptesanket.blogspot.com/2010/04/life-before-computer.html#comment-form' title='1 Comments'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/6765827543481033750/posts/default/2668391273722324590'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/6765827543481033750/posts/default/2668391273722324590'/><link rel='alternate' type='text/html' href='http://guptesanket.blogspot.com/2010/04/life-before-computer.html' title='Life Before the Computer'/><author><name>Anonymous</name><uri>http://www.blogger.com/profile/14659637069515892997</uri><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='16' height='16' src='https://img1.blogblog.com/img/b16-rounded.gif'/></author><thr:total>1</thr:total></entry><entry><id>tag:blogger.com,1999:blog-6765827543481033750.post-5537448979477544489</id><published>2010-04-22T21:21:00.000-07:00</published><updated>2010-04-22T21:21:54.608-07:00</updated><category scheme="http://www.blogger.com/atom/ns#" term="Fun"/><title type='text'>Poem for Computer Geeks</title><content type='html'>&lt;span class=&quot;Apple-style-span&quot; style=&quot;font-size: x-large;&quot;&gt;&lt;b&gt;What if Dr. Seuss Wrote Computer Manuals?&lt;/b&gt;&lt;/span&gt;&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
If a packet hits a pocket on a socket on a port,&lt;br /&gt;
&lt;br /&gt;
and the bus is interrupted as a very last resort,&lt;br /&gt;
&lt;br /&gt;
and the address of the memory makes your floppy disk abort,&lt;br /&gt;
&lt;br /&gt;
Then the socket packet pocket has an error to report.&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
If your cursor finds a menu item followed by a dash&lt;br /&gt;
&lt;br /&gt;
and the double-clicking icons put your window in the trash&lt;br /&gt;
&lt;br /&gt;
and your data is corrupted &#39;cause the index doesn&#39;t hash,&lt;br /&gt;
&lt;br /&gt;
Then your stiuation&#39;s hopeless, and your system&#39;s gonna crash.&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
If the label on your cable on the gable at your house,&lt;br /&gt;
&lt;br /&gt;
says the network is connected to the button on your mouse,&lt;br /&gt;
&lt;br /&gt;
But your packets want to tunnel to another protocol,&lt;br /&gt;
&lt;br /&gt;
That&#39;s repeatedly rejected by the printer down the hall.&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
And your screen is all distorted by the side effects of gauss,&lt;br /&gt;
&lt;br /&gt;
so your icons in the window are as wavy as a souse,&lt;br /&gt;
&lt;br /&gt;
Then you may as well reboot and go out with a bang,&lt;br /&gt;
&lt;br /&gt;
Cause as sure as I&#39;m a poet, the sucker&#39;s gonna hang.&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
When the copy of your floppy&#39;s getting sloppy on the disk,&lt;br /&gt;
&lt;br /&gt;
And the microcode instructions cause unnecessary RISC,&lt;br /&gt;
&lt;br /&gt;
then you have to flash your memory and you&#39;ll want to RAM your ROM,&lt;br /&gt;
&lt;br /&gt;
Quickly turn off your computer and be sure to tell your mom!&lt;br /&gt;
&lt;br /&gt;
&lt;span class=&quot;Apple-style-span&quot; style=&quot;font-size: x-small;&quot;&gt;Courtesy:&amp;nbsp;http://www.jimgibb.com&lt;/span&gt;</content><link rel='replies' type='application/atom+xml' href='http://guptesanket.blogspot.com/feeds/5537448979477544489/comments/default' title='Post Comments'/><link rel='replies' type='text/html' href='http://guptesanket.blogspot.com/2010/04/poem-for-computer-geeks.html#comment-form' title='0 Comments'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/6765827543481033750/posts/default/5537448979477544489'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/6765827543481033750/posts/default/5537448979477544489'/><link rel='alternate' type='text/html' href='http://guptesanket.blogspot.com/2010/04/poem-for-computer-geeks.html' title='Poem for Computer Geeks'/><author><name>Anonymous</name><uri>http://www.blogger.com/profile/14659637069515892997</uri><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='16' height='16' src='https://img1.blogblog.com/img/b16-rounded.gif'/></author><thr:total>0</thr:total></entry><entry><id>tag:blogger.com,1999:blog-6765827543481033750.post-1351728569729620457</id><published>2010-04-21T21:11:00.000-07:00</published><updated>2010-04-21T21:11:31.466-07:00</updated><category scheme="http://www.blogger.com/atom/ns#" term="Videos"/><title type='text'>Interesting .. How stats can go Wrong. !</title><content type='html'>&lt;b&gt;Impressive .. Stats and Probability&lt;/b&gt;&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;object height=&quot;326&quot; width=&quot;334&quot;&gt;&lt;param name=&quot;movie&quot; value=&quot;http://video.ted.com/assets/player/swf/EmbedPlayer.swf&quot;&gt;&lt;/param&gt;&lt;param name=&quot;allowFullScreen&quot; value=&quot;true&quot; /&gt;&lt;param name=&quot;wmode&quot; value=&quot;transparent&quot;&gt;&lt;/param&gt;&lt;param name=&quot;bgColor&quot; value=&quot;#ffffff&quot;&gt;&lt;/param&gt;&lt;param name=&quot;flashvars&quot; value=&quot;vu=http://video.ted.com/talks/dynamic/PeterDonnelly_2005G-medium.flv&amp;su=http://images.ted.com/images/ted/tedindex/embed-posters/PeterDonnelly-2005G.embed_thumbnail.jpg&amp;vw=320&amp;vh=240&amp;ap=0&amp;ti=67&amp;introDuration=16500&amp;adDuration=4000&amp;postAdDuration=2000&amp;adKeys=talk=peter_donnelly_shows_how_stats_fool_juries;year=2005;theme=presentation_innovation;theme=unconventional_explanations;theme=how_we_learn;theme=numbers_at_play;theme=how_the_mind_works;event=TEDGlobal+2005;&amp;preAdTag=tconf.ted/embed;tile=1;sz=512x288;&quot; /&gt;&lt;embed src=&quot;http://video.ted.com/assets/player/swf/EmbedPlayer.swf&quot; pluginspace=&quot;http://www.macromedia.com/go/getflashplayer&quot; type=&quot;application/x-shockwave-flash&quot; wmode=&quot;transparent&quot; bgColor=&quot;#ffffff&quot; width=&quot;334&quot; height=&quot;326&quot; allowFullScreen=&quot;true&quot; flashvars=&quot;vu=http://video.ted.com/talks/dynamic/PeterDonnelly_2005G-medium.flv&amp;su=http://images.ted.com/images/ted/tedindex/embed-posters/PeterDonnelly-2005G.embed_thumbnail.jpg&amp;vw=320&amp;vh=240&amp;ap=0&amp;ti=67&amp;introDuration=16500&amp;adDuration=4000&amp;postAdDuration=2000&amp;adKeys=talk=peter_donnelly_shows_how_stats_fool_juries;year=2005;theme=presentation_innovation;theme=unconventional_explanations;theme=how_we_learn;theme=numbers_at_play;theme=how_the_mind_works;event=TEDGlobal+2005;&quot;&gt;&lt;/embed&gt;&lt;/object&gt;</content><link rel='replies' type='application/atom+xml' href='http://guptesanket.blogspot.com/feeds/1351728569729620457/comments/default' title='Post Comments'/><link rel='replies' type='text/html' href='http://guptesanket.blogspot.com/2010/04/interesting-how-stats-can-go-wrong.html#comment-form' title='0 Comments'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/6765827543481033750/posts/default/1351728569729620457'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/6765827543481033750/posts/default/1351728569729620457'/><link rel='alternate' type='text/html' href='http://guptesanket.blogspot.com/2010/04/interesting-how-stats-can-go-wrong.html' title='Interesting .. How stats can go Wrong. !'/><author><name>Anonymous</name><uri>http://www.blogger.com/profile/14659637069515892997</uri><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='16' height='16' src='https://img1.blogblog.com/img/b16-rounded.gif'/></author><thr:total>0</thr:total></entry><entry><id>tag:blogger.com,1999:blog-6765827543481033750.post-5583653377326564401</id><published>2010-04-21T20:42:00.001-07:00</published><updated>2010-04-21T20:44:14.978-07:00</updated><category scheme="http://www.blogger.com/atom/ns#" term="Videos"/><title type='text'>MatheMagic</title><content type='html'>&lt;b&gt;Whoa... True Mathematical Genius.. &amp;nbsp;Awesomeness Redefined&lt;/b&gt;&lt;br /&gt;
&lt;object height=&quot;326&quot; width=&quot;334&quot;&gt;&lt;param name=&quot;movie&quot; value=&quot;http://video.ted.com/assets/player/swf/EmbedPlayer.swf&quot;&gt;&lt;/param&gt;&lt;param name=&quot;allowFullScreen&quot; value=&quot;true&quot; /&gt;&lt;param name=&quot;wmode&quot; value=&quot;transparent&quot;&gt;&lt;/param&gt;&lt;param name=&quot;bgColor&quot; value=&quot;#ffffff&quot;&gt;&lt;/param&gt;&lt;param name=&quot;flashvars&quot; value=&quot;vu=http://video.ted.com/talks/dynamic/ArthurBenjamin_2005-medium.flv&amp;su=http://images.ted.com/images/ted/tedindex/embed-posters/ArthurBenjamin-2005.embed_thumbnail.jpg&amp;vw=320&amp;vh=240&amp;ap=0&amp;ti=199&amp;introDuration=16500&amp;adDuration=4000&amp;postAdDuration=2000&amp;adKeys=talk=arthur_benjamin_does_mathemagic;year=2005;theme=top_10_tedtalks;theme=how_the_mind_works;theme=speaking_at_ted2009;theme=spectacular_performance;theme=how_we_learn;theme=presentation_innovation;theme=numbers_at_play;event=TED2005;&amp;preAdTag=tconf.ted/embed;tile=1;sz=512x288;&quot; /&gt;&lt;embed src=&quot;http://video.ted.com/assets/player/swf/EmbedPlayer.swf&quot; pluginspace=&quot;http://www.macromedia.com/go/getflashplayer&quot; type=&quot;application/x-shockwave-flash&quot; wmode=&quot;transparent&quot; bgColor=&quot;#ffffff&quot; width=&quot;334&quot; height=&quot;326&quot; allowFullScreen=&quot;true&quot; flashvars=&quot;vu=http://video.ted.com/talks/dynamic/ArthurBenjamin_2005-medium.flv&amp;su=http://images.ted.com/images/ted/tedindex/embed-posters/ArthurBenjamin-2005.embed_thumbnail.jpg&amp;vw=320&amp;vh=240&amp;ap=0&amp;ti=199&amp;introDuration=16500&amp;adDuration=4000&amp;postAdDuration=2000&amp;adKeys=talk=arthur_benjamin_does_mathemagic;year=2005;theme=top_10_tedtalks;theme=how_the_mind_works;theme=speaking_at_ted2009;theme=spectacular_performance;theme=how_we_learn;theme=presentation_innovation;theme=numbers_at_play;event=TED2005;&quot;&gt;&lt;/embed&gt;&lt;/object&gt;</content><link rel='replies' type='application/atom+xml' href='http://guptesanket.blogspot.com/feeds/5583653377326564401/comments/default' title='Post Comments'/><link rel='replies' type='text/html' href='http://guptesanket.blogspot.com/2010/04/mathemagic.html#comment-form' title='0 Comments'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/6765827543481033750/posts/default/5583653377326564401'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/6765827543481033750/posts/default/5583653377326564401'/><link rel='alternate' type='text/html' href='http://guptesanket.blogspot.com/2010/04/mathemagic.html' title='MatheMagic'/><author><name>Anonymous</name><uri>http://www.blogger.com/profile/14659637069515892997</uri><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='16' height='16' src='https://img1.blogblog.com/img/b16-rounded.gif'/></author><thr:total>0</thr:total></entry><entry><id>tag:blogger.com,1999:blog-6765827543481033750.post-8192531725027963428</id><published>2010-04-20T16:05:00.001-07:00</published><updated>2010-04-20T16:11:59.307-07:00</updated><title type='text'>Search Results</title><content type='html'>&lt;div id=&quot;cse-search-results&quot;&gt;&lt;/div&gt;&lt;script type=&quot;text/javascript&quot;&gt;
  var googleSearchIframeName = &quot;cse-search-results&quot;;
  var googleSearchFormName = &quot;cse-search-box&quot;;
  var googleSearchFrameWidth = 800;
  var googleSearchDomain = &quot;www.google.com&quot;;
  var googleSearchPath = &quot;/cse&quot;;
&lt;/script&gt;&lt;br /&gt;
&lt;script type=&quot;text/javascript&quot; src=&quot;http://www.google.com/afsonline/show_afs_search.js&quot;&gt;&lt;/script&gt;</content><link rel='replies' type='application/atom+xml' href='http://guptesanket.blogspot.com/feeds/8192531725027963428/comments/default' title='Post Comments'/><link rel='replies' type='text/html' href='http://guptesanket.blogspot.com/2010/04/search-results.html#comment-form' title='0 Comments'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/6765827543481033750/posts/default/8192531725027963428'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/6765827543481033750/posts/default/8192531725027963428'/><link rel='alternate' type='text/html' href='http://guptesanket.blogspot.com/2010/04/search-results.html' title='Search Results'/><author><name>Anonymous</name><uri>http://www.blogger.com/profile/14659637069515892997</uri><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='16' height='16' src='https://img1.blogblog.com/img/b16-rounded.gif'/></author><thr:total>0</thr:total></entry><entry><id>tag:blogger.com,1999:blog-6765827543481033750.post-7077975125331446685</id><published>2010-04-16T15:08:00.000-07:00</published><updated>2010-04-20T16:20:11.675-07:00</updated><category scheme="http://www.blogger.com/atom/ns#" term="Cloud Papers"/><title type='text'>High Performance Cloud Computing</title><content type='html'>http://www.buyya.com/papers/HPCC-ISPAN2009-Keynote.pdf&lt;br /&gt;
&lt;br /&gt;
&lt;embed height=&quot;920&quot; src=&quot;http://www.buyya.com/papers/HPCC-ISPAN2009-Keynote.pdf#toolbar=0&amp;amp;navpanes=0&quot; width=&quot;800&quot;&gt;&lt;/embed&gt;</content><link rel='replies' type='application/atom+xml' href='http://guptesanket.blogspot.com/feeds/7077975125331446685/comments/default' title='Post Comments'/><link rel='replies' type='text/html' href='http://guptesanket.blogspot.com/2010/04/high-performance-cloud-computing.html#comment-form' title='0 Comments'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/6765827543481033750/posts/default/7077975125331446685'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/6765827543481033750/posts/default/7077975125331446685'/><link rel='alternate' type='text/html' href='http://guptesanket.blogspot.com/2010/04/high-performance-cloud-computing.html' title='High Performance Cloud Computing'/><author><name>Anonymous</name><uri>http://www.blogger.com/profile/14659637069515892997</uri><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='16' height='16' src='https://img1.blogblog.com/img/b16-rounded.gif'/></author><thr:total>0</thr:total></entry><entry><id>tag:blogger.com,1999:blog-6765827543481033750.post-5442139733547294702</id><published>2010-04-16T15:05:00.000-07:00</published><updated>2010-04-20T16:20:55.659-07:00</updated><category scheme="http://www.blogger.com/atom/ns#" term="Cloud Papers"/><title type='text'>Cloud Computing Briefing - Jan&#39;10</title><content type='html'>http://www.cpni.gov.uk/Docs/cloud-computing-briefing.pdf&lt;br /&gt;
&lt;br /&gt;
&lt;embed height=&quot;920&quot; src=&quot;http://www.cpni.gov.uk/Docs/cloud-computing-briefing.pdf#toolbar=0&amp;amp;navpanes=0&quot; width=&quot;800&quot;&gt;&lt;/embed&gt;</content><link rel='replies' type='application/atom+xml' href='http://guptesanket.blogspot.com/feeds/5442139733547294702/comments/default' title='Post Comments'/><link rel='replies' type='text/html' href='http://guptesanket.blogspot.com/2010/04/cloud-computing-briefing-jan10.html#comment-form' title='0 Comments'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/6765827543481033750/posts/default/5442139733547294702'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/6765827543481033750/posts/default/5442139733547294702'/><link rel='alternate' type='text/html' href='http://guptesanket.blogspot.com/2010/04/cloud-computing-briefing-jan10.html' title='Cloud Computing Briefing - Jan&#39;10'/><author><name>Anonymous</name><uri>http://www.blogger.com/profile/14659637069515892997</uri><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='16' height='16' src='https://img1.blogblog.com/img/b16-rounded.gif'/></author><thr:total>0</thr:total></entry><entry><id>tag:blogger.com,1999:blog-6765827543481033750.post-1657149617410979817</id><published>2010-04-16T14:56:00.000-07:00</published><updated>2010-04-20T16:21:48.855-07:00</updated><category scheme="http://www.blogger.com/atom/ns#" term="Cloud Papers"/><title type='text'>Introduction to Cloud Platforms-Enterprise Oriented View</title><content type='html'>&lt;span class=&quot;Apple-style-span&quot; style=&quot;font-size: small;&quot;&gt;http://www.davidchappell.com/CloudPlatforms--Chappell.pdf&lt;/span&gt;&lt;br /&gt;
&lt;br /&gt;
&lt;embed height=&quot;920&quot; src=&quot;http://www.davidchappell.com/CloudPlatforms--Chappell.pdf#toolbar=0&amp;amp;navpanes=0&quot; width=&quot;800&quot;&gt;&lt;/embed&gt;</content><link rel='replies' type='application/atom+xml' href='http://guptesanket.blogspot.com/feeds/1657149617410979817/comments/default' title='Post Comments'/><link rel='replies' type='text/html' href='http://guptesanket.blogspot.com/2010/04/introduction-to-cloud-platforms.html#comment-form' title='0 Comments'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/6765827543481033750/posts/default/1657149617410979817'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/6765827543481033750/posts/default/1657149617410979817'/><link rel='alternate' type='text/html' href='http://guptesanket.blogspot.com/2010/04/introduction-to-cloud-platforms.html' title='Introduction to Cloud Platforms-Enterprise Oriented View'/><author><name>Anonymous</name><uri>http://www.blogger.com/profile/14659637069515892997</uri><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='16' height='16' src='https://img1.blogblog.com/img/b16-rounded.gif'/></author><thr:total>0</thr:total></entry><entry><id>tag:blogger.com,1999:blog-6765827543481033750.post-8054952011479193621</id><published>2010-04-16T14:51:00.000-07:00</published><updated>2010-04-20T16:22:35.326-07:00</updated><category scheme="http://www.blogger.com/atom/ns#" term="Cloud Papers"/><title type='text'>Cloud Ontology</title><content type='html'>&lt;span class=&quot;Apple-style-span&quot;&gt;&lt;span class=&quot;Apple-style-span&quot; style=&quot;font-size: small;&quot;&gt;http://www.cs.ucsb.edu/~lyouseff/CCOntology/CloudOntology.pdf&lt;/span&gt; &lt;/span&gt;&lt;br /&gt;
&lt;br /&gt;
&lt;embed height=&quot;920&quot; src=&quot;http://www.cs.ucsb.edu/~lyouseff/CCOntology/CloudOntology.pdf#toolbar=0&amp;amp;navpanes=0&quot; width=&quot;800&quot;&gt;&lt;/embed&gt;</content><link rel='replies' type='application/atom+xml' href='http://guptesanket.blogspot.com/feeds/8054952011479193621/comments/default' title='Post Comments'/><link rel='replies' type='text/html' href='http://guptesanket.blogspot.com/2010/04/cloud-ontology.html#comment-form' title='0 Comments'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/6765827543481033750/posts/default/8054952011479193621'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/6765827543481033750/posts/default/8054952011479193621'/><link rel='alternate' type='text/html' href='http://guptesanket.blogspot.com/2010/04/cloud-ontology.html' title='Cloud Ontology'/><author><name>Anonymous</name><uri>http://www.blogger.com/profile/14659637069515892997</uri><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='16' height='16' src='https://img1.blogblog.com/img/b16-rounded.gif'/></author><thr:total>0</thr:total></entry><entry><id>tag:blogger.com,1999:blog-6765827543481033750.post-4678542961586214410</id><published>2010-04-13T16:42:00.000-07:00</published><updated>2010-04-20T21:19:12.111-07:00</updated><category scheme="http://www.blogger.com/atom/ns#" term="Cloud Papers"/><title type='text'>A Tale of Clouds</title><content type='html'>&lt;a href=&quot;http://www.cs.pitt.edu/~ezegarra/Grid_computing/papers/A%20Tale%20of%20Clouds%20Paradigm%20Comparisons%20and%20Some%20Thoughts%20on%20Research%20Issues.pdf&quot;&gt;http://www.cs.pitt.edu/~ezegarra/Grid_computing/papers/A%20Tale%20of%20Clouds%20Paradigm%20Comparisons%20and%20Some%20Thoughts%20on%20Research%20Issues.pdf&lt;/a&gt;&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;embed height=&quot;920&quot; src=&quot;http://www.cs.pitt.edu/~ezegarra/Grid_computing/papers/A%20Tale%20of%20Clouds%20Paradigm%20Comparisons%20and%20Some%20Thoughts%20on%20Research%20Issues.pdf#toolbar=0&amp;amp;navpanes=0&quot; width=&quot;800&quot;&gt;&lt;/embed&gt;</content><link rel='replies' type='application/atom+xml' href='http://guptesanket.blogspot.com/feeds/4678542961586214410/comments/default' title='Post Comments'/><link rel='replies' type='text/html' href='http://guptesanket.blogspot.com/2010/04/tale-of-clouds.html#comment-form' title='0 Comments'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/6765827543481033750/posts/default/4678542961586214410'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/6765827543481033750/posts/default/4678542961586214410'/><link rel='alternate' type='text/html' href='http://guptesanket.blogspot.com/2010/04/tale-of-clouds.html' title='A Tale of Clouds'/><author><name>Anonymous</name><uri>http://www.blogger.com/profile/14659637069515892997</uri><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='16' height='16' src='https://img1.blogblog.com/img/b16-rounded.gif'/></author><thr:total>0</thr:total></entry><entry><id>tag:blogger.com,1999:blog-6765827543481033750.post-8290146601814750760</id><published>2010-04-13T16:34:00.000-07:00</published><updated>2010-04-20T16:23:37.131-07:00</updated><category scheme="http://www.blogger.com/atom/ns#" term="Cloud Papers"/><title type='text'>Cloud Computing and Emerging IT Platforms</title><content type='html'>http://www.buyya.com/gridbus/reports/CloudITPlatforms2008.pdf&lt;br /&gt;
&lt;br /&gt;
&lt;embed height=&quot;920&quot; src=&quot;http://www.buyya.com/gridbus/reports/CloudITPlatforms2008.pdf#toolbar=0&amp;amp;navpanes=0&quot; width=&quot;800&quot;&gt;&lt;/embed&gt;</content><link rel='replies' type='application/atom+xml' href='http://guptesanket.blogspot.com/feeds/8290146601814750760/comments/default' title='Post Comments'/><link rel='replies' type='text/html' href='http://guptesanket.blogspot.com/2010/04/cloud-computing-and-emerging-it.html#comment-form' title='0 Comments'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/6765827543481033750/posts/default/8290146601814750760'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/6765827543481033750/posts/default/8290146601814750760'/><link rel='alternate' type='text/html' href='http://guptesanket.blogspot.com/2010/04/cloud-computing-and-emerging-it.html' title='Cloud Computing and Emerging IT Platforms'/><author><name>Anonymous</name><uri>http://www.blogger.com/profile/14659637069515892997</uri><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='16' height='16' src='https://img1.blogblog.com/img/b16-rounded.gif'/></author><thr:total>0</thr:total></entry><entry><id>tag:blogger.com,1999:blog-6765827543481033750.post-104439589499476392</id><published>2010-04-11T17:52:00.000-07:00</published><updated>2010-04-11T17:55:31.266-07:00</updated><category scheme="http://www.blogger.com/atom/ns#" term="Cloud Papers"/><title type='text'>A Break in the Clouds: Towards a Cloud Definition</title><content type='html'>&lt;span class=&quot;Apple-style-span&quot; style=&quot;font-size: x-large;&quot;&gt;&lt;b&gt;A Break in the Clouds: Towards a Cloud Definition&lt;/b&gt;&lt;/span&gt;&lt;br /&gt;
&lt;br /&gt;
&lt;a href=&quot;http://ccr.sigcomm.org/drupal/files/p50-v39n1l-vaqueroA.pdf&quot;&gt;http://ccr.sigcomm.org/drupal/files/p50-v39n1l-vaqueroA.pdf&lt;/a&gt;&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;embed height=&quot;920&quot; src=&quot;http://ccr.sigcomm.org/drupal/files/p50-v39n1l-vaqueroA.pdf#toolbar=0&amp;amp;navpanes=0&quot; width=&quot;800&quot;&gt;&lt;/embed&gt;</content><link rel='replies' type='application/atom+xml' href='http://guptesanket.blogspot.com/feeds/104439589499476392/comments/default' title='Post Comments'/><link rel='replies' type='text/html' href='http://guptesanket.blogspot.com/2010/04/break-in-clouds-towards-cloud.html#comment-form' title='0 Comments'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/6765827543481033750/posts/default/104439589499476392'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/6765827543481033750/posts/default/104439589499476392'/><link rel='alternate' type='text/html' href='http://guptesanket.blogspot.com/2010/04/break-in-clouds-towards-cloud.html' title='A Break in the Clouds: Towards a Cloud Definition'/><author><name>Anonymous</name><uri>http://www.blogger.com/profile/14659637069515892997</uri><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='16' height='16' src='https://img1.blogblog.com/img/b16-rounded.gif'/></author><thr:total>0</thr:total></entry><entry><id>tag:blogger.com,1999:blog-6765827543481033750.post-8617644859350806927</id><published>2010-04-11T17:40:00.000-07:00</published><updated>2010-04-16T15:09:57.295-07:00</updated><category scheme="http://www.blogger.com/atom/ns#" term="Cloud Papers"/><title type='text'>A Berkley View of Cloud Computing</title><content type='html'>&lt;span class=&quot;Apple-style-span&quot; style=&quot;font-size: x-large;&quot;&gt;Above the Clouds: A Berkley View of Cloud Computing&lt;/span&gt;&lt;br /&gt;
&lt;br /&gt;
&lt;a href=&quot;http://www.eecs.berkeley.edu/Pubs/TechRpts/2009/EECS-2009-28.pdf&quot;&gt;http://www.eecs.berkeley.edu/Pubs/TechRpts/2009/EECS-2009-28.pdf&lt;/a&gt;&lt;br /&gt;
&lt;br /&gt;
&lt;embed height=&quot;950&quot; src=&quot;http://www.eecs.berkeley.edu/Pubs/TechRpts/2009/EECS-2009-28.pdf#toolbar=0&amp;amp;navpanes=0&quot; width=&quot;800&quot;&gt;&lt;/embed&gt;</content><link rel='replies' type='application/atom+xml' href='http://guptesanket.blogspot.com/feeds/8617644859350806927/comments/default' title='Post Comments'/><link rel='replies' type='text/html' href='http://guptesanket.blogspot.com/2010/04/above-clouds-berkley-view-of-cloud.html#comment-form' title='0 Comments'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/6765827543481033750/posts/default/8617644859350806927'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/6765827543481033750/posts/default/8617644859350806927'/><link rel='alternate' type='text/html' href='http://guptesanket.blogspot.com/2010/04/above-clouds-berkley-view-of-cloud.html' title='A Berkley View of Cloud Computing'/><author><name>Anonymous</name><uri>http://www.blogger.com/profile/14659637069515892997</uri><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='16' height='16' src='https://img1.blogblog.com/img/b16-rounded.gif'/></author><thr:total>0</thr:total></entry><entry><id>tag:blogger.com,1999:blog-6765827543481033750.post-3902120183501284004</id><published>2010-04-11T14:46:00.000-07:00</published><updated>2010-04-13T16:43:53.880-07:00</updated><category scheme="http://www.blogger.com/atom/ns#" term="Cloud Papers"/><title type='text'>A Walk in the Clouds</title><content type='html'>&lt;b&gt;&lt;span class=&quot;Apple-style-span&quot; style=&quot;font-size: x-large;&quot;&gt;A Walk in the Clouds: Broadband Computing and Communication&lt;/span&gt;&lt;/b&gt;&lt;br /&gt;
&lt;br /&gt;
http://www.online-pr.com/Holding/Cloud_Computing.pdf&lt;br /&gt;
&lt;br /&gt;
&lt;embed height=&quot;920&quot; src=&quot;http://www.online-pr.com/Holding/Cloud_Computing.pdf#toolbar=0&amp;amp;navpanes=0&quot; width=&quot;800&quot;&gt;&lt;/embed&gt;</content><link rel='replies' type='application/atom+xml' href='http://guptesanket.blogspot.com/feeds/3902120183501284004/comments/default' title='Post Comments'/><link rel='replies' type='text/html' href='http://guptesanket.blogspot.com/2010/04/testing-tested.html#comment-form' title='0 Comments'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/6765827543481033750/posts/default/3902120183501284004'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/6765827543481033750/posts/default/3902120183501284004'/><link rel='alternate' type='text/html' href='http://guptesanket.blogspot.com/2010/04/testing-tested.html' title='A Walk in the Clouds'/><author><name>Anonymous</name><uri>http://www.blogger.com/profile/14659637069515892997</uri><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='16' height='16' src='https://img1.blogblog.com/img/b16-rounded.gif'/></author><thr:total>0</thr:total></entry><entry><id>tag:blogger.com,1999:blog-6765827543481033750.post-769162444208757364</id><published>2010-04-08T23:53:00.001-07:00</published><updated>2010-04-09T00:03:20.339-07:00</updated><category scheme="http://www.blogger.com/atom/ns#" term="Data Mining"/><title type='text'>Incomplete DM-Project</title><content type='html'>&lt;span xmlns=&quot;&quot;&gt;&lt;/span&gt;&lt;br /&gt;
&lt;span xmlns=&quot;&quot;&gt;&lt;w:sdt id=&quot;138905735&quot; prefixmappings=&quot;xmlns:ns0=&#39;http://schemas.openxmlformats.org/package/2006/metadata/core-properties&#39; xmlns:ns1=&#39;http://purl.org/dc/elements/1.1/&#39;&quot; storeitemid=&quot;X_6C3C8BC8-F283-45AE-878A-BAB7291924A1&quot; text=&quot;t&quot; title=&quot;Title&quot; xpath=&quot;/ns0:coreProperties[1]/ns1:title[1]&quot;&gt;  &lt;/w:sdt&gt;&lt;/span&gt;&lt;br /&gt;
&lt;span xmlns=&quot;&quot;&gt;&lt;/span&gt;&lt;br /&gt;
&lt;span xmlns=&quot;&quot;&gt;&lt;div style=&quot;text-align: center;&quot;&gt;&lt;b&gt;&lt;span style=&quot;color: #1f497d; font-size: 28pt; line-height: 115%;&quot;&gt;High-dimensional  Clustering of Web-based text documents using iterative PCA based approach&lt;/span&gt;&lt;/b&gt;&amp;nbsp;&lt;/div&gt;&lt;div style=&quot;text-align: center;&quot;&gt;&lt;span style=&quot;font-size: 14pt;&quot;&gt;&lt;strong&gt;&lt;br /&gt;
&lt;/strong&gt;&lt;/span&gt;&lt;/div&gt;&lt;div style=&quot;text-align: center;&quot;&gt;&lt;span style=&quot;font-size: 14pt;&quot;&gt;&lt;strong&gt;PROLOGUE&lt;br /&gt;
&lt;/strong&gt;&lt;/span&gt;&lt;/div&gt;&lt;br /&gt;
Clustering high-dimensional data is the cluster analysis of data with anywhere from a few dozen to many thousands of dimensions. Such high-dimensional data spaces are often encountered in areas such as medicine, where DNA microarray technology can produce a large number of measurements at once, and the clustering of text documents, where, if a word-frequency vector is used, the number of dimensions equals the size of the dictionary.&lt;br /&gt;
&lt;br /&gt;
According to Kriegel, Kröger &amp;amp; Zimek (2009), four problems need to be overcome for clustering in high-dimensional data:&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;ul&gt;&lt;li&gt;Multiple dimensions are hard to think in, impossible to visualize, and, due to the exponential growth of the number of possible values with each dimension, impossible to enumerate. This problem is known as the curse of dimensionality.&lt;br /&gt;
&lt;/li&gt;
&lt;li&gt;&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;div&gt;For spatial data, the concept of distance becomes less precise as the number of dimensions grows, since the distance between any two points in a given dataset converges. The discrimination of the nearest and farthest point in particular becomes meaningless:&lt;/div&gt;&lt;br /&gt;
&lt;br /&gt;
&lt;/li&gt;
&lt;li&gt;A cluster is intended to group objects that are related, based on observations of their attribute&#39;s values. However, given a large number of attributes some of the attributes will usually not be meaningful for a given cluster. For example, in newborn screening a cluster of samples might identify newborns that share similar blood values, which might lead to insights about the relevance of certain blood values for a disease. But for different diseases, different blood values might form a cluster, and other values might be uncorrelated. This is known as the local feature relevance problem: different clusters might be found in different subspaces, so a global filtering of attributes is not sufficient.&lt;br /&gt;
&lt;/li&gt;
&lt;li&gt;Given a large number of attributes, it is likely that some attributes are correlated. Hence, clusters might exist in arbitrarily oriented affine subspaces.&lt;br /&gt;
&lt;/li&gt;
&lt;/ul&gt;&lt;br /&gt;
&lt;br /&gt;
The traditional problem of clustering high dimensional data arises due to the fact that different subspaces contain meaningful clusters which do not span across all the dimensions. This has led to different subspace clustering techniques like PROCLUS [1], ORCLUS [2] or CLIQUE [3] based on selection of corresponding subset of features to find meaningful groups of clusters in high dimensional data. Most of these algorithms considers different feature subset selection methods to clustering but ignores the feature transformation aspect. In this iterative PCA approach, we are trying to use the feature transformation as a potential technique to find out features from high dimensional data, rather than using it for dimensionality reduction purpose. Since this concept may find good application in text document clustering based on document category, we may try to extend this concept in future for web document classifications.&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;div style=&quot;text-align: center;&quot;&gt;&lt;span style=&quot;font-size: 14pt;&quot;&gt;&lt;strong&gt;ABSTRACT&lt;br /&gt;
&lt;/strong&gt;&lt;/span&gt;&lt;/div&gt;Principal component analysis is a ubiquitous technique for data analysis and processing, but it is not based on a probability model, due to which its effectiveness is limited by its global linearity. Here we try to demonstrate how the principal axes of a set of observed data vectors may be determined through maximum-likelihood estimation of parameters in a latent variable model closely related to factor analysis.  The result would be a mixture of probabilistic principal component analyzers whose parameters can be determined using an Expectation Maximization algorithm, to estimate the principal subspace iteratively. The advantages of this model are explained with respect to clustering and dimensionality reduction.&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;div style=&quot;text-align: center;&quot;&gt;&lt;span style=&quot;font-size: 14pt;&quot;&gt;&lt;strong&gt;INTRODUCTION&lt;br /&gt;
&lt;/strong&gt;&lt;/span&gt;&lt;/div&gt;Principal Component Analysis is a popular technique for dimensionality reduction.  The most common derivation of PCA is in terms of standardized linear projection which maximized the variance in the projected space (Hotelling 1933). For a set of observed d-dimensional data vectors {}, , the &lt;em&gt;q&lt;/em&gt; principal axes  are those orthonormal axes onto which the retained variance under projection is maximal. It can be shown that the vectors  are given by the q dominant eigenvectors of the sample covariance matrix , where  is the data sample mean such that . The q principal components of the observed vector  are given by the vector , where . The variables  are then uncorrelated such that the covariance matrix  is diagonal with elements: .      [7]&lt;br /&gt;
&lt;br /&gt;
However, any method of PCA, as remarked in many texts, does not mention the presence of an associated probabilistic model for the observed data. It is possible to obtain a probabilistic formulation of PCA which can be closely associated with statistical factor analysis. The latent variable formulation would give us an algorithm which would be iterative, computationally efficient and be an Expectation Maximization algorithm.  [7]&lt;br /&gt;
&lt;br /&gt;
&lt;span style=&quot;font-size: 12pt;&quot;&gt;&lt;strong&gt;Factor Analysis:&lt;br /&gt;
&lt;/strong&gt;&lt;/span&gt;&lt;br /&gt;
Factor analysis is a linear latent variable model, which relates a d-dimensional observation vector t to a corresponding q-dimensional vector of latent variables x.&lt;br /&gt;
&lt;br /&gt;
Factor analysis is related to principal component analysis (PCA) but not identical. Because PCA performs a variance-maximizing rotation of the variable space, it takes into account all variability in the variables. In contrast, factor analysis estimates how much of the variability is due to common factors (&quot;communality&quot;). The two methods become essentially equivalent if the error terms in the factor analysis model (the variability not explained by common factors, see below) can be assumed to all have the same variance.&lt;br /&gt;
&lt;br /&gt;
In this model by constraining the error covariance  to be a diagonal matrix whose elements  are usually estimated from the data, the observed variables  are conditionally independent given the values of the latent variables x. These latent variables are thus intended to explain the correlations between observation variables while  represents the variability unique to a particular .&lt;br /&gt;
&lt;br /&gt;
&lt;span style=&quot;font-size: 12pt;&quot;&gt;&lt;strong&gt;Maximum Likelihood Estimators:&lt;br /&gt;
&lt;/strong&gt;&lt;/span&gt;&lt;br /&gt;
The maximum likelihood estimate of parameter   is given by the mean of the data.&lt;br /&gt;
&lt;br /&gt;
The log-likelihood is maximized when the columns of W span the principal subspace of the data. &lt;br /&gt;
&lt;br /&gt;
Also, for , the maximum-likelihood estimator for  is given by&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
Where  are the smallest eigen-values of S and so  has a clear interpretation as the average variance lost per discarded dimension [7]&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;span style=&quot;font-size: 12pt;&quot;&gt;&lt;strong&gt;Equalities of Eigen-values:&lt;br /&gt;
&lt;/strong&gt;&lt;/span&gt;&lt;br /&gt;
The equalities of any of the q principal eigenvalues does not affect the maximum likelihood estimates, but the instance when all the d-q minor eigenvalue(s) are equal and identical to at least one retained eigenvalue is taken under consideration.&lt;br /&gt;
&lt;br /&gt;
&lt;span style=&quot;font-size: 12pt;&quot;&gt;&lt;strong&gt;Expectation maximization:&lt;br /&gt;
&lt;/strong&gt;&lt;/span&gt;&lt;br /&gt;
In the EM approach, the latent variables {} are considered &#39;missing&#39; data. Using standard least square techniques the estimation of W, from the known values would be easy. But the value of  for a given  is unknown, but instead the joint distribution of the observed and latent variables, p(t,x) is known and, the expectation of the corresponding complete –data log likelihood can be calculated. &lt;br /&gt;
&lt;br /&gt;
In the E step of the EM algorithm, the above mentioned expression, calculated with respect to the posterior distribution of xn given tn is computed. In the M step, new parameter values  and  are determined, which maximize the expected complete data loh-likelihood and this is guaranteed to increase the likelihood of interest, unless it is already a local maximum. (Dempster, Laird, and Rubin 1977).&lt;br /&gt;
&lt;br /&gt;
The complete data log-likelihood is given by:&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
The overall model distribution of a latent variable model can be considered of a form&lt;br /&gt;
&lt;br /&gt;
Where  is a single probabilistic PCA model and  is the corresponding mixing proportion. The parameters for this model can be determined by an extension of the EM algorithm. &lt;br /&gt;
&lt;br /&gt;
The missing data includes a set of  for each model  &lt;em&gt;i&lt;/em&gt; and variables  labeling which model is responsible for generating each data point .  The complete-data log likelihood of a standard EM algorithm would be of the form&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;div style=&quot;text-align: center;&quot;&gt;&lt;span style=&quot;font-size: 14pt;&quot;&gt;&lt;strong&gt;PROBLEM DEFINITION&lt;br /&gt;
&lt;/strong&gt;&lt;/span&gt;&lt;/div&gt;Given a high dimensional data set   with  observations and  dimensions denoted as   , n being comparatively large, the objective is to find good-quality clusters in high dimensional data.&lt;br /&gt;
&lt;br /&gt;
&lt;span style=&quot;color: black;&quot;&gt;The algorithm starts with performing Principal Component Analysis (PCA) on  to obtain first  PC-scores  having largest eigen-values along most significant principal component. Since principal components are independent to each other, each of these  components of   can be considered as  i.i.d. random variables  with Gaussian distributions having means  equal to the  column-means of    . &lt;br /&gt;
&lt;/span&gt;&lt;br /&gt;
&lt;span style=&quot;color: black;&quot;&gt;Since   are PC-scores, the random variables can be normalized without loss of relative similarity with respect to the   principal components. Thus,  , where    are  -normalized i.i.d. random variables. &lt;br /&gt;
&lt;/span&gt;&lt;br /&gt;
&lt;span style=&quot;color: black;&quot;&gt;Since PCA is not used here for dimensionality reduction, the original  data records can be retrieved back from the PC-scores  and then removed from the original data set   . For our convenience, we denote this data set as  to suggest the remaining data set of size   . Next, another round of PCA is performed on   to get the next first  PC-scores with largest eigen-values along most significant principal component. Thus the entire process described above is repeated until the remaining data set is empty. The number of iterations yields the number of independent sub-clusters present in the high-dimensional data   . &lt;br /&gt;
&lt;/span&gt;&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;span style=&quot;color: black;&quot;&gt;The Iterative PCA Algorithm&lt;br /&gt;
&lt;/span&gt;&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;div class=&quot;separator&quot; style=&quot;clear: both; text-align: center;&quot;&gt;&lt;a href=&quot;https://blogger.googleusercontent.com/img/b/R29vZ2xl/AVvXsEj4OzfrT5KuVuyEStnyOaxWtKWKbhe3CzcuG7tfBb3b7YGREp5995PxGNkMg4z5JG0BaPNFr99rbHoYCXkpxRKwT_eckrANSnNLx_1gPLspkKNI3FYXAr1eZPKG6cj0PAHuYcZdqEbN0KSj/s1600/1.jpg&quot; imageanchor=&quot;1&quot; style=&quot;margin-left: 1em; margin-right: 1em;&quot;&gt;&lt;img border=&quot;0&quot; height=&quot;412&quot; src=&quot;https://blogger.googleusercontent.com/img/b/R29vZ2xl/AVvXsEj4OzfrT5KuVuyEStnyOaxWtKWKbhe3CzcuG7tfBb3b7YGREp5995PxGNkMg4z5JG0BaPNFr99rbHoYCXkpxRKwT_eckrANSnNLx_1gPLspkKNI3FYXAr1eZPKG6cj0PAHuYcZdqEbN0KSj/s640/1.jpg&quot; width=&quot;640&quot; /&gt;&lt;/a&gt;&lt;/div&gt;&lt;/span&gt;&lt;span xmlns=&quot;&quot;&gt;&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;span style=&quot;color: black;&quot;&gt;&lt;strong&gt;Notion of Similarity and choice of e&lt;sub&gt;t&lt;/sub&gt;&lt;br /&gt;
&lt;/strong&gt;&lt;/span&gt;&lt;br /&gt;
&lt;span style=&quot;color: black;&quot;&gt;Since we talk about high dimensional data, there is no meaning of defining a similarity metric based on normal  norms, as shown by C. C. Aggarwal et al. in [6]. So, this approach measures similarity based on the concept of cosine similarity and that also in feature space and then feeds the information back to the original dataset to get rid of those records from original space. This is continued till the remaining data is found to be similar to any eigen-vector lower bound by the eigen-value threshold e&lt;sub&gt;t.&lt;/sub&gt;&lt;br /&gt;
&lt;/span&gt;&lt;br /&gt;
&lt;span style=&quot;color: black;&quot;&gt;The initial choice of e&lt;sub&gt;t&lt;/sub&gt; is a debatable issue and for the initial assumption, we take it to be a fixed constant, say 0.9. As the algorithm iterates, it tries to recalculate e&lt;sub&gt;t&lt;/sub&gt;. We take mean of the -normalization of PC-scores and ensure that the mean is a close approximation of the unit eigen-vector passing through those PC-scores. We keep on taking significant PC-scores in steps and increase the mean in incremental steps until we found deterioration from the previous calculated mean and then fix the e&lt;sub&gt;t&lt;/sub&gt; at the lowest of the most significant eigen-values of the lot. This adaptive e&lt;sub&gt;t&lt;/sub&gt; calculation carries on for each iteration till the entire data is clustered.&lt;br /&gt;
&lt;/span&gt;&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;span style=&quot;font-family: &#39;Times New Roman&#39;; font-size: 14pt;&quot;&gt;&lt;strong&gt;P.S:   Project Incomplete- Topic changed to &quot;Maximum Likelihood PCA Approach for Handwritten Letter Data Set&quot;  Given in Another Blog-post&lt;br /&gt;
&lt;/strong&gt;&lt;/span&gt;&lt;br /&gt;
&lt;br /&gt;
&lt;b&gt;Members:&lt;/b&gt; Sanket Gupte, Somnath Chakrabarti&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;span style=&quot;font-family: &#39;Times New Roman&#39;; font-size: 14pt;&quot;&gt;&lt;strong&gt;REFERENCES:&lt;br /&gt;
&lt;/strong&gt;&lt;/span&gt;&lt;br /&gt;
&lt;span style=&quot;font-family: &#39;Times New Roman&#39;;&quot;&gt;&lt;span style=&quot;font-size: 12pt;&quot;&gt;&lt;strong&gt;[1]&lt;/strong&gt;&lt;br /&gt;
&lt;/span&gt;Aggarwal C, Procopiuc C, Wolf J. L, Yu P. S, Park J. S (1999) &lt;strong&gt;Fast Algorithms for Projected Clustering&lt;/strong&gt;. SIGMOD, 1999&lt;br /&gt;
&lt;/span&gt;&lt;br /&gt;
&lt;span style=&quot;font-family: &#39;Times New Roman&#39;;&quot;&gt;&lt;span style=&quot;font-size: 12pt;&quot;&gt;&lt;strong&gt;[2]&lt;/strong&gt;&lt;/span&gt; Aggarwal C. C, Yu P. S (2000)&lt;strong&gt; Finding&lt;/strong&gt;&lt;br /&gt;
&lt;strong&gt;generalized projected clusters in high dimensional spaces.&lt;/strong&gt; SIGMOD, 2000&lt;br /&gt;
&lt;/span&gt;&lt;br /&gt;
&lt;span style=&quot;font-family: &#39;Times New Roman&#39;;&quot;&gt;&lt;span style=&quot;font-size: 12pt;&quot;&gt;&lt;strong&gt;[3]&lt;/strong&gt;&lt;/span&gt; Agrawal R, Gehrke J, Gunopulos D, Raghavan P (1998) &lt;strong&gt;Automatic Subspace Clustering of High Dimensional Data for Data Mining Applications&lt;/strong&gt;. SIGMOD, 1998&lt;br /&gt;
&lt;/span&gt;&lt;br /&gt;
&lt;span style=&quot;font-family: &#39;Times New Roman&#39;;&quot;&gt;&lt;span style=&quot;font-size: 12pt;&quot;&gt;&lt;strong&gt;[4]&lt;/strong&gt;&lt;/span&gt; Domeniconi C, Gunopulos D, Ma S, Yan B, Al-Razgan Muna, Papadopoulos D (2007)&lt;strong&gt; Locally adaptive metrics for clustering high dimensional data.&lt;/strong&gt; Data Min Knowl Disc (2007) 14:63-97 DOI 10.1007/s10618-006-0060-8&lt;br /&gt;
&lt;/span&gt;&lt;br /&gt;
&lt;span style=&quot;font-family: &#39;Times New Roman&#39;;&quot;&gt;&lt;span style=&quot;font-size: 12pt;&quot;&gt;&lt;strong&gt;[5]&lt;/strong&gt;&lt;/span&gt; Domeniconi C, Papadopoulos D, Gunopulos D, Ma S (2004) &lt;strong&gt;Subspace Clustering of High Dimensional Data&lt;/strong&gt;. SIAM international conference on data mining, pp 517-520&lt;br /&gt;
&lt;/span&gt;&lt;br /&gt;
&lt;span style=&quot;font-family: &#39;Times New Roman&#39;;&quot;&gt;&lt;span style=&quot;font-size: 12pt;&quot;&gt;&lt;strong&gt;[6]&lt;/strong&gt;&lt;/span&gt; Aggarwal C. C, Hinneberg A, Keim D. A (2001) &lt;strong&gt;On the Surprising Behavior of Distance Metrics in High Dimensional Space.&lt;/strong&gt; ICDT Conference Proceedings, 2001&lt;br /&gt;
&lt;/span&gt;&lt;br /&gt;
&lt;span style=&quot;font-family: &#39;Times New Roman&#39;;&quot;&gt;&lt;span style=&quot;font-size: 12pt;&quot;&gt;&lt;strong&gt;[7]&lt;/strong&gt;&lt;/span&gt; Michael E. Tipping, Chris M.  Bishop &lt;strong&gt;Probabilistic Principal Component Analysis, &lt;/strong&gt;Journal of the royal statistical society, Series B, 61, Part 3, pp, 611-622.&lt;br /&gt;
&lt;/span&gt;&lt;/span&gt;</content><link rel='replies' type='application/atom+xml' href='http://guptesanket.blogspot.com/feeds/769162444208757364/comments/default' title='Post Comments'/><link rel='replies' type='text/html' href='http://guptesanket.blogspot.com/2010/04/incomplete-dm-project.html#comment-form' title='0 Comments'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/6765827543481033750/posts/default/769162444208757364'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/6765827543481033750/posts/default/769162444208757364'/><link rel='alternate' type='text/html' href='http://guptesanket.blogspot.com/2010/04/incomplete-dm-project.html' title='Incomplete DM-Project'/><author><name>Anonymous</name><uri>http://www.blogger.com/profile/14659637069515892997</uri><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='16' height='16' src='https://img1.blogblog.com/img/b16-rounded.gif'/></author><media:thumbnail xmlns:media="http://search.yahoo.com/mrss/" url="https://blogger.googleusercontent.com/img/b/R29vZ2xl/AVvXsEj4OzfrT5KuVuyEStnyOaxWtKWKbhe3CzcuG7tfBb3b7YGREp5995PxGNkMg4z5JG0BaPNFr99rbHoYCXkpxRKwT_eckrANSnNLx_1gPLspkKNI3FYXAr1eZPKG6cj0PAHuYcZdqEbN0KSj/s72-c/1.jpg" height="72" width="72"/><thr:total>0</thr:total></entry><entry><id>tag:blogger.com,1999:blog-6765827543481033750.post-2838448756894648193</id><published>2010-04-08T23:44:00.001-07:00</published><updated>2010-04-08T23:46:33.332-07:00</updated><category scheme="http://www.blogger.com/atom/ns#" term="Data Mining"/><title type='text'>Proposal DM</title><content type='html'>&lt;span xmlns=&quot;&quot;&gt;&lt;/span&gt;&lt;br /&gt;
&lt;span xmlns=&quot;&quot;&gt;&lt;/span&gt;&lt;br /&gt;
&lt;span xmlns=&quot;&quot;&gt;&lt;div style=&quot;text-align: center;&quot;&gt;&lt;span style=&quot;font-family: &#39;Times New Roman&#39;; font-size: 20pt;&quot;&gt;&lt;strong&gt;An Iterative PCA based approach for Clustering high-dimensional Text Documents in Web&lt;br /&gt;
&lt;/strong&gt;&lt;/span&gt;&lt;/div&gt;&lt;span style=&quot;font-family: &#39;Times New Roman&#39;;&quot;&gt;&lt;strong&gt;Project Members&lt;/strong&gt;: Somnath Chakrabarti, Sanket Gupte&lt;br /&gt;
&lt;/span&gt;&lt;br /&gt;
&lt;span style=&quot;font-family: &#39;Times New Roman&#39;;&quot;&gt;&lt;strong&gt;Executive Summary:&lt;br /&gt;
&lt;/strong&gt;&lt;/span&gt;&lt;br /&gt;
&lt;span style=&quot;font-family: &#39;Times New Roman&#39;;&quot;&gt;The traditional problem of clustering high dimensional data arises due to the fact that different subspaces contain meaningful clusters which do not span across all the dimensions. This has led to different subspace clustering techniques like PROCLUS [1], ORCLUS [2] or CLIQUE [3] based on selection of corresponding subset of features to find meaningful groups of clusters in high dimensional data. Most of these algorithms considers different feature subset selection methods to clustering but ignores the feature transformation aspect. In this iterative PCA approach, we are trying to use the feature transformation as a potential technique to find out features from high dimensional data, rather than using it for dimensionality reduction purpose. Since this concept may find good application in text document clustering based on document category, we may try to extend this concept in future for web document classifications.&lt;br /&gt;
&lt;/span&gt;&lt;br /&gt;
&lt;span style=&quot;font-family: &#39;Times New Roman&#39;;&quot;&gt;&lt;strong&gt;Problem Definition and Background: &lt;br /&gt;
&lt;/strong&gt;&lt;/span&gt;&lt;br /&gt;
&lt;span style=&quot;font-family: &#39;Times New Roman&#39;;&quot;&gt;Given a high dimensional data set   with  observations and  dimensions denoted as   , n being comparatively large, the objective is to find good-quality clusters in high dimensional data.&lt;br /&gt;
&lt;/span&gt;&lt;br /&gt;
&lt;span style=&quot;font-family: &#39;Times New Roman&#39;;&quot;&gt;The algorithm starts with performing Principal Component Analysis (PCA) on  to obtain first  PC-scores  having largest eigen-values along most significant principal component. Since principal components are independent to each other, each of these  components of   can be considered as  i.i.d. random variables  with Gaussian distributions having means  equal to the  column-means of    . &lt;br /&gt;
&lt;/span&gt;&lt;br /&gt;
&lt;span style=&quot;font-family: &#39;Times New Roman&#39;;&quot;&gt;Since   are PC-scores, the random variables can be normalized without loss of relative similarity with respect to the   principal components. Thus,  , where    are  -normalized i.i.d. random variables. &lt;br /&gt;
&lt;/span&gt;&lt;br /&gt;
&lt;span style=&quot;font-family: &#39;Times New Roman&#39;;&quot;&gt;Since PCA is not used here for dimensionality reduction, the original  data records can be retrieved back from the PC-scores  and then removed from the original data set   . For our convenience, we denote this data set as  to suggest the remaining data set of size   . Next, another round of PCA is performed on   to get the next first  PC-scores with largest eigen-values along most significant principal component. Thus the entire process described above is repeated until the remaining data set is empty. The number of iterations yields the number of independent sub-clusters present in the high-dimensional data   . &lt;br /&gt;
&lt;/span&gt;&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;span style=&quot;font-family: &#39;Times New Roman&#39;;&quot;&gt;The Iterative PCA Algorithm&lt;br /&gt;
&lt;/span&gt;&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;div class=&quot;separator&quot; style=&quot;clear: both; text-align: center;&quot;&gt;&lt;a href=&quot;https://blogger.googleusercontent.com/img/b/R29vZ2xl/AVvXsEgCtAMKuXdI8-vLYj-sIrm1M1qhh3iQ9Vtw6dZLPeM6gRRY8CsCog-A6TihJlEZ6KhipuH2zewDMTuYwi3IK51ifhsINwmNVy5WohUpDk7W6lo0Mavk6fnHl26FADIoIpZsdH1PE2JLerc6/s1600/1.jpg&quot; imageanchor=&quot;1&quot; style=&quot;margin-left: 1em; margin-right: 1em;&quot;&gt;&lt;img border=&quot;0&quot; height=&quot;412&quot; src=&quot;https://blogger.googleusercontent.com/img/b/R29vZ2xl/AVvXsEgCtAMKuXdI8-vLYj-sIrm1M1qhh3iQ9Vtw6dZLPeM6gRRY8CsCog-A6TihJlEZ6KhipuH2zewDMTuYwi3IK51ifhsINwmNVy5WohUpDk7W6lo0Mavk6fnHl26FADIoIpZsdH1PE2JLerc6/s640/1.jpg&quot; width=&quot;640&quot; /&gt;&lt;/a&gt;&lt;/div&gt;&lt;/span&gt;&lt;span xmlns=&quot;&quot;&gt;&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;span style=&quot;font-family: &#39;Times New Roman&#39;;&quot;&gt;Notion of Similarity and choice of &lt;/span&gt;&lt;span style=&quot;font-family: &#39;Courier New&#39;; font-size: 12pt;&quot;&gt;e&lt;sub&gt;t&lt;/sub&gt;&lt;/span&gt;&lt;span style=&quot;font-family: &#39;Times New Roman&#39;;&quot;&gt;&lt;br /&gt;
&lt;/span&gt;&lt;br /&gt;
&lt;span style=&quot;font-family: &#39;Times New Roman&#39;;&quot;&gt;Since we talk about high dimensional data, there is no meaning of defining a similarity metric based on normal  norms, as shown by C. C. Aggarwal et al. in [6]. So, this approach measures similarity based on the concept of cosine similarity and that also in feature space and then feeds the information back to the original dataset to get rid of those records from original space. This is continued till the remaining data is found to be similar to any eigen-vector lower bound by the eigen-value threshold &lt;/span&gt;&lt;span style=&quot;font-family: &#39;Courier New&#39;; font-size: 12pt;&quot;&gt;e&lt;sub&gt;t.&lt;/sub&gt;&lt;/span&gt;&lt;span style=&quot;font-family: &#39;Times New Roman&#39;;&quot;&gt;&lt;br /&gt;
&lt;/span&gt;&lt;br /&gt;
&lt;span style=&quot;font-family: &#39;Times New Roman&#39;;&quot;&gt;The initial choice of &lt;/span&gt;&lt;span style=&quot;font-family: &#39;Courier New&#39;; font-size: 12pt;&quot;&gt;e&lt;sub&gt;t&lt;/sub&gt;&lt;/span&gt;&lt;span style=&quot;font-family: &#39;Times New Roman&#39;;&quot;&gt; is a debatable issue and for the initial assumption, we take it to be a fixed constant, say 0.9. As the algorithm iterates, it tries to recalculate &lt;/span&gt;&lt;span style=&quot;font-family: &#39;Courier New&#39;; font-size: 12pt;&quot;&gt;e&lt;sub&gt;t&lt;/sub&gt;&lt;/span&gt;&lt;span style=&quot;font-family: &#39;Times New Roman&#39;;&quot;&gt;. We take mean of the -normalization of PC-scores and ensure that the mean is a close approximation of the unit eigen-vector passing through those PC-scores. We keep on taking significant PC-scores in steps and increase the mean in incremental steps until we found deterioration from the previous calculated mean and then fix the &lt;/span&gt;&lt;span style=&quot;font-family: &#39;Courier New&#39;; font-size: 12pt;&quot;&gt;e&lt;sub&gt;t&lt;/sub&gt;&lt;/span&gt;&lt;span style=&quot;font-family: &#39;Times New Roman&#39;;&quot;&gt; at the lowest of the most significant eigen-values of the lot. This adaptive &lt;/span&gt;&lt;span style=&quot;font-family: &#39;Courier New&#39;; font-size: 12pt;&quot;&gt;e&lt;sub&gt;t&lt;/sub&gt;&lt;/span&gt;&lt;span style=&quot;font-family: &#39;Times New Roman&#39;;&quot;&gt; calculation carries on for each iteration till the entire data is clustered. &lt;br /&gt;
&lt;/span&gt;&lt;br /&gt;
&lt;span style=&quot;font-family: &#39;Times New Roman&#39;;&quot;&gt;Technical Scope of the Project&lt;br /&gt;
&lt;/span&gt;&lt;br /&gt;
&lt;span style=&quot;font-family: &#39;Times New Roman&#39;;&quot;&gt;The initial algorithm of the project and any visualization has been decided to be implemented in MATLAB though if satisfactory results are obtained, then the algorithm can be compared against the local adaptive clustering (LAC) techniques [4] [5]. Based on results, there may be some additional plan to extend the work for Web Documents using JAVA and XML technologies.&lt;br /&gt;
&lt;/span&gt;&lt;br /&gt;
&lt;span style=&quot;font-family: &#39;Times New Roman&#39;;&quot;&gt;Distribution of the work among the project members&lt;br /&gt;
&lt;/span&gt;&lt;br /&gt;
&lt;span style=&quot;font-family: &#39;Times New Roman&#39;;&quot;&gt;Somnath – Design and Implementation in MATLAB&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;   &amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;   Sanket – Implementation and Experimentation in MATLAB&lt;br /&gt;
&lt;/span&gt;&lt;br /&gt;
&lt;span style=&quot;font-family: &#39;Times New Roman&#39;;&quot;&gt;In case of future extension of this work, there will be separate work distributions between the team members.&lt;br /&gt;
&lt;/span&gt;&lt;br /&gt;
&lt;span style=&quot;font-family: &#39;Times New Roman&#39;;&quot;&gt;Project Schedule&lt;br /&gt;
&lt;/span&gt;&lt;br /&gt;
&lt;span style=&quot;font-family: &#39;Times New Roman&#39;;&quot;&gt;The first initial implementation of the algorithm and its results are due by 29 Oct 2009.&lt;br /&gt;
&lt;/span&gt;&lt;br /&gt;
&lt;span style=&quot;font-family: &#39;Times New Roman&#39;;&quot;&gt;References:&lt;br /&gt;
&lt;/span&gt;&lt;br /&gt;
&lt;span style=&quot;font-family: &#39;Times New Roman&#39;;&quot;&gt;[1] Aggarwal C, Procopiuc C, Wolf J. L, Yu P. S, Park J. S (1999) Fast Algorithms for Projected Clustering. SIGMOD, 1999&lt;br /&gt;
&lt;/span&gt;&lt;br /&gt;
&lt;span style=&quot;font-family: &#39;Times New Roman&#39;;&quot;&gt;[2] Aggarwal C. C, Yu P. S (2000) Finding generalized projected clusters in high dimensional spaces. SIGMOD, 2000&lt;br /&gt;
&lt;/span&gt;&lt;br /&gt;
&lt;span style=&quot;font-family: &#39;Times New Roman&#39;;&quot;&gt;[3] Agrawal R, Gehrke J, Gunopulos D, Raghavan P (1998) Automatic Subspace Clustering of High Dimensional Data for Data Mining Applications. SIGMOD, 1998&lt;br /&gt;
&lt;/span&gt;&lt;br /&gt;
&lt;span style=&quot;font-family: &#39;Times New Roman&#39;;&quot;&gt;[4] Domeniconi C, Gunopulos D, Ma S, Yan B, Al-Razgan Muna, Papadopoulos D (2007) Locally adaptive metrics for clustering high dimensional data. Data Min Knowl Disc (2007) 14:63-97 DOI 10.1007/s10618-006-0060-8&lt;br /&gt;
&lt;/span&gt;&lt;br /&gt;
&lt;span style=&quot;font-family: &#39;Times New Roman&#39;;&quot;&gt;[5] Domeniconi C, Papadopoulos D, Gunopulos D, Ma S (2004) Subspace Clustering of High Dimensional Data. SIAM international conference on data mining, pp 517-520&lt;br /&gt;
&lt;/span&gt;&lt;br /&gt;
&lt;span style=&quot;font-family: &#39;Times New Roman&#39;;&quot;&gt;[6] Aggarwal C. C, Hinneberg A, Keim D. A (2001) On the Surprising Behavior of Distance Metrics in High Dimensional Space. ICDT Conference Proceedings, 2001&lt;br /&gt;
&lt;/span&gt;&lt;/span&gt;</content><link rel='replies' type='application/atom+xml' href='http://guptesanket.blogspot.com/feeds/2838448756894648193/comments/default' title='Post Comments'/><link rel='replies' type='text/html' href='http://guptesanket.blogspot.com/2010/04/proposal-dm.html#comment-form' title='0 Comments'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/6765827543481033750/posts/default/2838448756894648193'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/6765827543481033750/posts/default/2838448756894648193'/><link rel='alternate' type='text/html' href='http://guptesanket.blogspot.com/2010/04/proposal-dm.html' title='Proposal DM'/><author><name>Anonymous</name><uri>http://www.blogger.com/profile/14659637069515892997</uri><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='16' height='16' src='https://img1.blogblog.com/img/b16-rounded.gif'/></author><media:thumbnail xmlns:media="http://search.yahoo.com/mrss/" url="https://blogger.googleusercontent.com/img/b/R29vZ2xl/AVvXsEgCtAMKuXdI8-vLYj-sIrm1M1qhh3iQ9Vtw6dZLPeM6gRRY8CsCog-A6TihJlEZ6KhipuH2zewDMTuYwi3IK51ifhsINwmNVy5WohUpDk7W6lo0Mavk6fnHl26FADIoIpZsdH1PE2JLerc6/s72-c/1.jpg" height="72" width="72"/><thr:total>0</thr:total></entry><entry><id>tag:blogger.com,1999:blog-6765827543481033750.post-7837378190765352432</id><published>2010-04-08T23:19:00.001-07:00</published><updated>2010-04-08T23:28:19.135-07:00</updated><category scheme="http://www.blogger.com/atom/ns#" term="Data Mining"/><title type='text'>Probabilistic PCA</title><content type='html'>&lt;span xmlns=&quot;&quot;&gt;&lt;/span&gt;&lt;br /&gt;
&lt;span xmlns=&quot;&quot;&gt;&lt;br /&gt;
&lt;div style=&quot;text-align: center;&quot;&gt;&lt;w:sdt id=&quot;138905735&quot; prefixmappings=&quot;xmlns:ns0=&#39;http://schemas.openxmlformats.org/package/2006/metadata/core-properties&#39; xmlns:ns1=&#39;http://purl.org/dc/elements/1.1/&#39;&quot; storeitemid=&quot;X_6C3C8BC8-F283-45AE-878A-BAB7291924A1&quot; text=&quot;t&quot; title=&quot;Title&quot; xpath=&quot;/ns0:coreProperties[1]/ns1:title[1]&quot;&gt;  &lt;div align=&quot;center&quot; class=&quot;MsoNormal&quot; style=&quot;margin-bottom: .0001pt; margin-bottom: 0in; text-align: center;&quot;&gt;&lt;b&gt;&lt;span style=&quot;color: #1f497d; font-size: 28.0pt; line-height: 115%; mso-bidi-font-size: 36.0pt; mso-themecolor: text2;&quot;&gt;Maximum Likelihood PCA  Approach for Handwritten Letter Data Set&amp;nbsp;&lt;/span&gt;&lt;/b&gt;&lt;b&gt;&lt;span style=&quot;color: #1f497d; font-size: 36.0pt; line-height: 115%; mso-themecolor: text2;&quot;&gt;&lt;o:p&gt;&lt;/o:p&gt;&lt;/span&gt;&lt;/b&gt;&lt;b&gt;&lt;span style=&quot;color: #1f497d; font-size: 28.0pt; line-height: 115%; mso-bidi-font-size: 36.0pt; mso-themecolor: text2;&quot;&gt;&lt;w:sdtpr&gt;&lt;/w:sdtpr&gt;&lt;/span&gt;&lt;/b&gt;&lt;/div&gt;&lt;/w:sdt&gt;&lt;/div&gt;&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;div style=&quot;text-align: center;&quot;&gt;&lt;span style=&quot;font-family: &#39;Times New Roman&#39;; font-size: 14pt;&quot;&gt;&lt;strong&gt;EXECUTIVE SUMMARY&lt;br /&gt;
&lt;/strong&gt;&lt;/span&gt;&lt;/div&gt;&lt;span style=&quot;font-family: &#39;Times New Roman&#39;;&quot;&gt;Principal component analysis is a ubiquitous technique for data analysis and processing, but it is not based on a probability model, due to which its effectiveness is limited by its global linearity. Here we try to demonstrate how the principal axes of a set of observed data vectors may be determined through maximum-likelihood estimation of parameters in a latent variable model closely related to factor analysis.  &lt;br /&gt;
&lt;/span&gt;&lt;br /&gt;
&lt;span style=&quot;font-family: &#39;Times New Roman&#39;;&quot;&gt;&lt;strong&gt;Note.&lt;/strong&gt; We have not considered the mixture of probabilistic principal component analyzers whose parameters can be determined using an Expectation Maximization algorithm, to estimate the principal subspace iteratively. &lt;br /&gt;
&lt;/span&gt;&lt;br /&gt;
&lt;span style=&quot;font-family: &#39;Times New Roman&#39;;&quot;&gt;The advantages of PPCA model above conventional PCA are &lt;br /&gt;
&lt;/span&gt;&lt;br /&gt;
&lt;ul&gt;&lt;li&gt;&lt;span style=&quot;font-family: &#39;Times New Roman&#39;;&quot;&gt;Addresses limitations of regular PCA&lt;br /&gt;
&lt;/span&gt;&lt;/li&gt;
&lt;li&gt;&lt;span style=&quot;font-family: &#39;Times New Roman&#39;;&quot;&gt;PCA can be used as a general Gaussian density model in addition to reducing dimensions&lt;br /&gt;
&lt;/span&gt;&lt;/li&gt;
&lt;li&gt;&lt;span style=&quot;font-family: &#39;Times New Roman&#39;;&quot;&gt;Maximum-likelihood estimates can be computed for elements associated with principal components&lt;br /&gt;
&lt;/span&gt;&lt;/li&gt;
&lt;li&gt;&lt;span style=&quot;font-family: &#39;Times New Roman&#39;;&quot;&gt;Captures dominant correlations with few parameters&lt;br /&gt;
&lt;/span&gt;&lt;/li&gt;
&lt;li&gt;&lt;span style=&quot;font-family: &#39;Times New Roman&#39;;&quot;&gt;Multiple PCA models can be combined as a probabilistic mixture&lt;br /&gt;
&lt;/span&gt;&lt;/li&gt;
&lt;li&gt;&lt;span style=&quot;font-family: &#39;Times New Roman&#39;;&quot;&gt;Can be used as a base for Bayesian PCA&lt;/span&gt;&lt;span style=&quot;font-family: &#39;Times New Roman&#39;;&quot;&gt;&lt;br /&gt;
&lt;/span&gt;&lt;/li&gt;
&lt;/ul&gt;&lt;div style=&quot;text-align: center;&quot;&gt;&lt;span style=&quot;font-family: &#39;Times New Roman&#39;; font-size: 14pt;&quot;&gt;&lt;strong&gt;PROBLEM DEFINITION AND BACKGROUND&lt;br /&gt;
&lt;/strong&gt;&lt;/span&gt;&lt;/div&gt;&lt;span style=&quot;font-family: &#39;Times New Roman&#39;;&quot;&gt;In the statistical literature of factor analysis, any high dimensional data set can be represented in terms of a summation of linear combination of independent and normally distributed latent (or hidden) variables, means along the different dimensions and independent and normally distributed error (or noise) distributions respectively. Mathematically, this can be represented as&lt;br /&gt;
&lt;/span&gt;&lt;br /&gt;
&lt;span style=&quot;font-family: &#39;Times New Roman&#39;;&quot;&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&lt;br /&gt;
&lt;/span&gt;&lt;br /&gt;
&lt;span style=&quot;font-family: &#39;Times New Roman&#39;;&quot;&gt;Where &lt;em&gt;t &lt;/em&gt;= d x N observed data set, x = q x N set of latent variables, W = d x q factor loading matrix, = d x N set of row means columned for N times, = d x N matrix of orthonormal error columns. Both latent variables and noise are zero-means i.e.  and where I is identity matrix and is a diagonal matrix of noise variances. And, where .&lt;br /&gt;
&lt;/span&gt;&lt;br /&gt;
&lt;span style=&quot;font-family: &#39;Times New Roman&#39;;&quot;&gt;The project tries to probabilistically estimate W, the parameter of the features or principal components of the observed data set &lt;em&gt;t&lt;/em&gt;. There are two approaches that have been followed for identifying the features or reduced dimensions.&lt;br /&gt;
&lt;/span&gt;&lt;br /&gt;
&lt;span style=&quot;font-family: &#39;Times New Roman&#39;;&quot;&gt; (1) Expectation Maximization &lt;br /&gt;
&lt;/span&gt;&lt;br /&gt;
&lt;span style=&quot;font-family: &#39;Times New Roman&#39;;&quot;&gt;(2) Maximum Likelihood PCA&lt;br /&gt;
&lt;/span&gt;&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;span style=&quot;font-family: &#39;Times New Roman&#39;; font-size: 14pt;&quot;&gt;&lt;strong&gt;&lt;em&gt;Expectation Maximization&lt;br /&gt;
&lt;/em&gt;&lt;/strong&gt;&lt;/span&gt;&lt;br /&gt;
&lt;span style=&quot;font-family: &#39;Times New Roman&#39;;&quot;&gt;In the EM approach, we have tried to determine the factor loading matrix W&lt;sub&gt;ML&lt;/sub&gt; using the maximization condition of posterior log-likelihood &lt;em&gt;L&lt;sub&gt;c&lt;/sub&gt;&lt;/em&gt;&lt;sub&gt;&lt;br /&gt;
&lt;/sub&gt;with respect to W&lt;sub&gt;ML&lt;/sub&gt; and . The log-likelihood is calculated as the equation: &amp;nbsp;&amp;nbsp;&amp;nbsp;&lt;br /&gt;
&lt;/span&gt;&lt;br /&gt;
&lt;span style=&quot;font-family: &#39;Times New Roman&#39;;&quot;&gt;Considering both the joint distribution of &lt;em&gt;t&lt;sub&gt;n&lt;/sub&gt;&lt;/em&gt; and &lt;em&gt;x&lt;sub&gt;n&lt;/sub&gt;&lt;br /&gt;
&lt;/em&gt;and the distribution of &lt;em&gt;x&lt;sub&gt;n&lt;/sub&gt;&lt;br /&gt;
&lt;/em&gt;to be independent and Gaussian respectively, and using Bayes&#39; Rule the conditional distribution of &lt;em&gt;x&lt;sub&gt;n&lt;/sub&gt;&lt;br /&gt;
&lt;/em&gt;given &lt;em&gt;t&lt;sub&gt;n&lt;/sub&gt;&lt;br /&gt;
&lt;/em&gt;can be calculated as follows&lt;em&gt;: &lt;/em&gt;&lt;br /&gt;
&lt;/span&gt;&lt;br /&gt;
, where &lt;span style=&quot;font-family: &#39;Times New Roman&#39;;&quot;&gt;&lt;br /&gt;
&lt;/span&gt;&lt;br /&gt;
&lt;span style=&quot;font-family: &#39;Times New Roman&#39;;&quot;&gt;&lt;strong&gt;E-step&lt;/strong&gt;&lt;br /&gt;
&lt;/span&gt;&lt;br /&gt;
&lt;span style=&quot;font-family: &#39;Times New Roman&#39;;&quot;&gt;The above conditional distribution parameters yield posterior mean  &lt;br /&gt;
&lt;/span&gt;&lt;br /&gt;
&lt;span style=&quot;font-family: &#39;Times New Roman&#39;;&quot;&gt;&lt;strong&gt;Least Square Reconstruction&lt;br /&gt;
&lt;/strong&gt;&lt;/span&gt;&lt;br /&gt;
&lt;span style=&quot;font-family: &#39;Times New Roman&#39;;&quot;&gt;The mean adjusted observed data is projected on &lt;em&gt;W &lt;/em&gt;and then data is reconstructed using the equation&lt;br /&gt;
&lt;/span&gt;&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;span style=&quot;font-family: &#39;Times New Roman&#39;;&quot;&gt;SSE = &lt;br /&gt;
&lt;/span&gt;&lt;br /&gt;
&lt;span style=&quot;font-family: &#39;Times New Roman&#39;;&quot;&gt;&lt;strong&gt;M-step&lt;br /&gt;
&lt;/strong&gt;&lt;/span&gt;&lt;br /&gt;
&lt;span style=&quot;font-family: &#39;Times New Roman&#39;;&quot;&gt;Maximizing the derivative of &lt;em&gt;L&lt;sub&gt;c&lt;/sub&gt;&lt;/em&gt; with respect to W and, the maximum likelihood estimates are obtained as and &lt;br /&gt;
&lt;/span&gt;&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;span style=&quot;font-family: &#39;Times New Roman&#39;;&quot;&gt;The values obtained in the M-step are used iteratively in calculation of  &lt;/span&gt; in &lt;span style=&quot;font-family: &#39;Times New Roman&#39;;&quot;&gt;E-step in the next iteration. This is done using &lt;em&gt;W&lt;/em&gt; = &lt;br /&gt;
&lt;/span&gt;&lt;br /&gt;
&lt;span style=&quot;font-family: &#39;Times New Roman&#39;;&quot;&gt;While the previous squared reconstruction error SSE&lt;sub&gt;prev&lt;/sub&gt; is assigned the value of current SSE to help stop the iteration when SSE becomes greater than SSE&lt;sub&gt;prev&lt;/sub&gt;. &lt;br /&gt;
&lt;/span&gt;&lt;br /&gt;
&lt;span style=&quot;font-family: &#39;Times New Roman&#39;;&quot;&gt;This is done using SSE&lt;sub&gt;prev&lt;/sub&gt; = SSE.&lt;br /&gt;
&lt;/span&gt;&lt;br /&gt;
&lt;span style=&quot;font-family: &#39;Times New Roman&#39;; font-size: 14pt;&quot;&gt;&lt;strong&gt;&lt;em&gt;Maximum Likelihood PCA&lt;br /&gt;
&lt;/em&gt;&lt;/strong&gt;&lt;/span&gt;&lt;br /&gt;
&lt;span style=&quot;font-family: &#39;Times New Roman&#39;;&quot;&gt;Unlike the EM approach, the maximum likelihood is the closed form approach where &lt;em&gt;W&lt;/em&gt; and are obtained not through an iterative process but by some closed form expressions obtained by using conditions for stationary points of the log-likelihood function &lt;em&gt;L&lt;sub&gt;c&lt;/sub&gt;&lt;br /&gt;
&lt;/em&gt;which is having same definition as EM approach.&lt;br /&gt;
&lt;/span&gt;&lt;br /&gt;
&lt;span style=&quot;font-family: &#39;Times New Roman&#39;;&quot;&gt;At the stationary points, deriving &lt;em&gt;L&lt;sub&gt;c&lt;/sub&gt;&lt;/em&gt; with respect to &lt;em&gt;W &lt;/em&gt;yields the equation where &lt;br /&gt;
&lt;/span&gt;&lt;br /&gt;
&lt;span style=&quot;font-family: &#39;Times New Roman&#39;;&quot;&gt;is the covariance matrix of observed data and &lt;em&gt;C&lt;/em&gt; and &lt;em&gt;W&lt;/em&gt; have the usual definitions as before. &lt;br /&gt;
&lt;/span&gt;&lt;br /&gt;
&lt;span style=&quot;font-family: &#39;Times New Roman&#39;;&quot;&gt;Now, since it can be shown that , the eigenvalues  of &lt;em&gt;S&lt;/em&gt; are such that , where are the diagonal elements of L such that (singular value decomposition).&lt;br /&gt;
&lt;/span&gt;&lt;br /&gt;
&lt;span style=&quot;font-family: &#39;Times New Roman&#39;;&quot;&gt;Thus the smallest eigen values of S has to be at least when . The number of discarded dimensions has been chosen to be the number of eigen values having the smallest eigen value .&lt;br /&gt;
&lt;/span&gt;&lt;br /&gt;
&lt;span style=&quot;font-family: &#39;Times New Roman&#39;;&quot;&gt;The maximum likelihood estimate of is then calculated as &lt;br /&gt;
&lt;/span&gt;&lt;br /&gt;
&lt;span style=&quot;font-family: &#39;Times New Roman&#39;;&quot;&gt;Next &lt;em&gt;W&lt;sub&gt;ML&lt;/sub&gt;&lt;/em&gt; is estimated using the equation &lt;br /&gt;
&lt;/span&gt;&lt;br /&gt;
&lt;span style=&quot;font-family: &#39;Times New Roman&#39;;&quot;&gt;&lt;br /&gt;
&lt;em&gt;U&lt;sub&gt;q&lt;/sub&gt;&lt;/em&gt; is calculated by taking the q most significant column eigen vectors of S and &lt;em&gt;K&lt;sub&gt;q&lt;/sub&gt;&lt;/em&gt; is calculated as a q x q diagonal matrix with q largest eigen values along the diagonal and R is an arbitrary orthogonal matrix.&lt;br /&gt;
&lt;/span&gt;&lt;br /&gt;
&lt;span style=&quot;font-family: &#39;Times New Roman&#39;;&quot;&gt;It can be shown that the above estimates of &lt;em&gt;W&lt;sub&gt;ML&lt;/sub&gt;&lt;/em&gt; and corresponds to the global maximum of the specified log likelihood function.&lt;br /&gt;
&lt;/span&gt;&lt;br /&gt;
&lt;div style=&quot;text-align: center;&quot;&gt;&lt;span style=&quot;font-family: &#39;Times New Roman&#39;; font-size: 14pt;&quot;&gt;&lt;strong&gt;TECHNICAL SCOPE OF PROJECT&lt;br /&gt;
&lt;/strong&gt;&lt;/span&gt;&lt;/div&gt;&lt;span style=&quot;font-family: &#39;Times New Roman&#39;;&quot;&gt;The technical scope of the project involves finding out the hidden variables out of a set of hand written letter recognition data from &lt;strong&gt;UCI Machine Learning Repository&lt;/strong&gt; titled &lt;strong&gt;Letter Image Recognition Data&lt;/strong&gt; using the above-mentioned two approaches and then to see if the found out hidden variables correspond to the true eigenvectors of the data set. &lt;br /&gt;
&lt;/span&gt;&lt;br /&gt;
&lt;span style=&quot;font-family: &#39;Times New Roman&#39;;&quot;&gt;The data set is very large of 20,000 instances and 16 attributes with class labels mentioned as letter names A, T, C, etc. For our sample experiment, only 500 instances have been chosen for convenience.&lt;br /&gt;
&lt;/span&gt;&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;span style=&quot;font-family: &#39;Times New Roman&#39;;&quot;&gt;&lt;strong&gt;&lt;em&gt;Java Class for EM Approach (using JAMA package )&lt;/em&gt;&lt;/strong&gt;&lt;/span&gt;&lt;br /&gt;
&lt;span style=&quot;font-family: &#39;Times New Roman&#39;;&quot;&gt;&lt;strong&gt;&lt;em&gt;&lt;span class=&quot;Apple-style-span&quot; style=&quot;font-style: normal; font-weight: normal;&quot;&gt;(Not Shown)&amp;nbsp;&lt;/span&gt;&lt;/em&gt;&lt;/strong&gt;&lt;/span&gt;&lt;br /&gt;
&lt;br /&gt;
&lt;span style=&quot;font-family: &#39;Times New Roman&#39;;&quot;&gt;&lt;strong&gt;&lt;em&gt;Java Class for Maximum Likelihood Approach (using JAMA package)&lt;br /&gt;
&lt;/em&gt;&lt;/strong&gt;&lt;/span&gt;&lt;br /&gt;
(Not Shown)&lt;br /&gt;
&lt;br /&gt;
&lt;div style=&quot;text-align: center;&quot;&gt;&lt;br /&gt;
&lt;/div&gt;&lt;div style=&quot;text-align: center;&quot;&gt;&lt;span style=&quot;font-family: &#39;Times New Roman&#39;; font-size: 14pt;&quot;&gt;&lt;strong&gt;EXPERIMENTAL RESULTS&lt;br /&gt;
&lt;/strong&gt;&lt;/span&gt;&lt;/div&gt;&lt;span style=&quot;font-family: &#39;Times New Roman&#39;;&quot;&gt;The high dimensional parallel coordinate plot for the UCI Letter Image Recognition Data is as follows:&lt;br /&gt;
&lt;/span&gt;&lt;br /&gt;
&lt;span style=&quot;font-family: &#39;Times New Roman&#39;;&quot;&gt;&lt;br /&gt;
&lt;/span&gt;&lt;br /&gt;
&lt;div class=&quot;separator&quot; style=&quot;clear: both; text-align: center;&quot;&gt;&lt;a href=&quot;https://blogger.googleusercontent.com/img/b/R29vZ2xl/AVvXsEi2J6XZW2baJ-PqTaLligHSuCyCooB2U_WbQuU_NVVu_OW50Mh7tl1JDSEM2di4b44e7BAgX6Hg4nLrqnuSwgxEKPQV91JXU4g1HuEo-7kAxgMy0i3KVbJndcCYDlFdzvs5A0KgW7Kx7Drk/s1600/1.jpg&quot; imageanchor=&quot;1&quot; style=&quot;margin-left: 1em; margin-right: 1em;&quot;&gt;&lt;img border=&quot;0&quot; height=&quot;316&quot; src=&quot;https://blogger.googleusercontent.com/img/b/R29vZ2xl/AVvXsEi2J6XZW2baJ-PqTaLligHSuCyCooB2U_WbQuU_NVVu_OW50Mh7tl1JDSEM2di4b44e7BAgX6Hg4nLrqnuSwgxEKPQV91JXU4g1HuEo-7kAxgMy0i3KVbJndcCYDlFdzvs5A0KgW7Kx7Drk/s640/1.jpg&quot; width=&quot;640&quot; /&gt;&lt;/a&gt;&lt;/div&gt;&lt;span style=&quot;font-family: &#39;Times New Roman&#39;;&quot;&gt;&lt;br /&gt;
&lt;/span&gt;&lt;br /&gt;
&lt;span style=&quot;font-family: &#39;Times New Roman&#39;;&quot;&gt;&lt;br /&gt;
&lt;/span&gt;&lt;br /&gt;
&lt;span style=&quot;font-family: &#39;Times New Roman&#39;;&quot;&gt;The above plot has 16000 observations with 16 variables or dimensions.&lt;br /&gt;
&lt;/span&gt;&lt;br /&gt;
&lt;div class=&quot;separator&quot; style=&quot;clear: both; text-align: center;&quot;&gt;&lt;a href=&quot;https://blogger.googleusercontent.com/img/b/R29vZ2xl/AVvXsEhusGyIdogIAkf8oXNvVsBGqPbZFBJUPcif6EGX3XLLu55kvhb-TwMfa1XMA9QVUMSNzhgsJM5tr9OEOovGq-6PH2IZUP2KZcWNtqaZOeuWT5x-W6fHYaikVEegmkxNcmupdQoz4R4NM4gU/s1600/2.jpg&quot; imageanchor=&quot;1&quot; style=&quot;margin-left: 1em; margin-right: 1em;&quot;&gt;&lt;img border=&quot;0&quot; height=&quot;316&quot; src=&quot;https://blogger.googleusercontent.com/img/b/R29vZ2xl/AVvXsEhusGyIdogIAkf8oXNvVsBGqPbZFBJUPcif6EGX3XLLu55kvhb-TwMfa1XMA9QVUMSNzhgsJM5tr9OEOovGq-6PH2IZUP2KZcWNtqaZOeuWT5x-W6fHYaikVEegmkxNcmupdQoz4R4NM4gU/s640/2.jpg&quot; width=&quot;640&quot; /&gt;&lt;/a&gt;&lt;/div&gt;&lt;br /&gt;
&lt;span style=&quot;font-family: &#39;Times New Roman&#39;;&quot;&gt;After projection of the observed data on three hidden variables and forming three classes the parallel coordinate plot looks like as above.&lt;br /&gt;
&lt;/span&gt;&lt;br /&gt;
&lt;span style=&quot;font-family: &#39;Times New Roman&#39;;&quot;&gt;The Matlab code for plot is&lt;br /&gt;
&lt;/span&gt;&lt;br /&gt;
&lt;span style=&quot;font-family: &#39;Courier New&#39;;&quot;&gt;&lt;span style=&quot;font-size: 10pt;&quot;&gt;&lt;span style=&quot;color: black;&quot;&gt;Z = load(&lt;/span&gt;&lt;span style=&quot;color: #a020f0;&quot;&gt;&#39;letter-recognition-training-unclassified-5000.txt&#39;&lt;/span&gt;&lt;span style=&quot;color: black;&quot;&gt;);&lt;/span&gt;&lt;/span&gt;&lt;span style=&quot;font-size: 12pt;&quot;&gt;&lt;br /&gt;
&lt;/span&gt;&lt;/span&gt;&lt;br /&gt;
&lt;span style=&quot;font-family: &#39;Courier New&#39;;&quot;&gt;&lt;span style=&quot;color: forestgreen; font-size: 10pt;&quot;&gt;% Z is of size 5000 x 16&lt;/span&gt;&lt;span style=&quot;font-size: 12pt;&quot;&gt;&lt;br /&gt;
&lt;/span&gt;&lt;/span&gt;&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;span style=&quot;font-family: &#39;Courier New&#39;;&quot;&gt;&lt;span style=&quot;font-size: 10pt;&quot;&gt;&lt;span style=&quot;color: black;&quot;&gt;varNames = {&lt;/span&gt;&lt;span style=&quot;color: #a020f0;&quot;&gt;&#39;x-box&#39;&lt;/span&gt;&lt;span style=&quot;color: black;&quot;&gt;;&lt;/span&gt;&lt;span style=&quot;color: #a020f0;&quot;&gt;&#39;y-box&#39;&lt;/span&gt;&lt;span style=&quot;color: black;&quot;&gt;;&lt;/span&gt;&lt;span style=&quot;color: #a020f0;&quot;&gt;&#39;width&#39;&lt;/span&gt;&lt;span style=&quot;color: black;&quot;&gt;;&lt;/span&gt;&lt;span style=&quot;color: #a020f0;&quot;&gt;&#39;high&#39;&lt;/span&gt;&lt;span style=&quot;color: black;&quot;&gt;;&lt;/span&gt;&lt;span style=&quot;color: #a020f0;&quot;&gt;&#39;onpix&#39;&lt;/span&gt;&lt;span style=&quot;color: black;&quot;&gt;;&lt;/span&gt;&lt;span style=&quot;color: #a020f0;&quot;&gt;&#39;x-bar&#39;&lt;/span&gt;&lt;span style=&quot;color: black;&quot;&gt;;&lt;/span&gt;&lt;span style=&quot;color: #a020f0;&quot;&gt;&#39;y-bar&#39;&lt;/span&gt;&lt;span style=&quot;color: black;&quot;&gt;;&lt;/span&gt;&lt;span style=&quot;color: #a020f0;&quot;&gt;&#39;x2bar&#39;&lt;/span&gt;&lt;span style=&quot;color: black;&quot;&gt;;&lt;/span&gt;&lt;span style=&quot;color: #a020f0;&quot;&gt;&#39;y2bar&#39;&lt;/span&gt;&lt;span style=&quot;color: black;&quot;&gt;;&lt;/span&gt;&lt;span style=&quot;color: #a020f0;&quot;&gt;&#39;xybar&#39;&lt;/span&gt;&lt;span style=&quot;color: black;&quot;&gt;;&lt;/span&gt;&lt;span style=&quot;color: #a020f0;&quot;&gt;&#39;x2ybr&#39;&lt;/span&gt;&lt;span style=&quot;color: black;&quot;&gt;;&lt;/span&gt;&lt;span style=&quot;color: #a020f0;&quot;&gt;&#39;xy2br&#39;&lt;/span&gt;&lt;span style=&quot;color: black;&quot;&gt;;&lt;/span&gt;&lt;span style=&quot;color: #a020f0;&quot;&gt;&#39;x-ege&#39;&lt;/span&gt;&lt;span style=&quot;color: black;&quot;&gt;;&lt;/span&gt;&lt;span style=&quot;color: #a020f0;&quot;&gt;&#39;xegvy&#39;&lt;/span&gt;&lt;span style=&quot;color: black;&quot;&gt;;&lt;/span&gt;&lt;span style=&quot;color: #a020f0;&quot;&gt;&#39;y-ege&#39;&lt;/span&gt;&lt;span style=&quot;color: black;&quot;&gt;;&lt;/span&gt;&lt;span style=&quot;color: #a020f0;&quot;&gt;&#39;yegvx&#39;&lt;/span&gt;&lt;span style=&quot;color: black;&quot;&gt;};&lt;/span&gt;&lt;/span&gt;&lt;span style=&quot;font-size: 12pt;&quot;&gt;&lt;br /&gt;
&lt;/span&gt;&lt;/span&gt;&lt;br /&gt;
&lt;span style=&quot;font-family: &#39;Courier New&#39;;&quot;&gt;&lt;span style=&quot;color: forestgreen; font-size: 10pt;&quot;&gt;%Matlab Title: Visualizing Multivariate Data&lt;/span&gt;&lt;span style=&quot;font-size: 12pt;&quot;&gt;&lt;br /&gt;
&lt;/span&gt;&lt;/span&gt;&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;span style=&quot;font-family: &#39;Courier New&#39;;&quot;&gt;&lt;span style=&quot;color: black; font-size: 10pt;&quot;&gt;P = Z*evec;&lt;/span&gt;&lt;span style=&quot;font-size: 12pt;&quot;&gt;&lt;br /&gt;
&lt;/span&gt;&lt;/span&gt;&lt;br /&gt;
&lt;span style=&quot;font-family: &#39;Courier New&#39;;&quot;&gt;&lt;span style=&quot;color: black; font-size: 10pt;&quot;&gt;[r,c] = size(P);&lt;/span&gt;&lt;span style=&quot;font-size: 12pt;&quot;&gt;&lt;br /&gt;
&lt;/span&gt;&lt;/span&gt;&lt;br /&gt;
&lt;span style=&quot;font-family: &#39;Courier New&#39;;&quot;&gt;&lt;span style=&quot;color: black; font-size: 10pt;&quot;&gt;max = zeros(r);&lt;/span&gt;&lt;span style=&quot;font-size: 12pt;&quot;&gt;&lt;br /&gt;
&lt;/span&gt;&lt;/span&gt;&lt;br /&gt;
&lt;span style=&quot;font-family: &#39;Courier New&#39;;&quot;&gt;&lt;span style=&quot;font-size: 10pt;&quot;&gt;&lt;span style=&quot;color: blue;&quot;&gt;for&lt;/span&gt;&lt;span style=&quot;color: black;&quot;&gt; i=1:5000&lt;/span&gt;&lt;/span&gt;&lt;span style=&quot;font-size: 12pt;&quot;&gt;&lt;br /&gt;
&lt;/span&gt;&lt;/span&gt;&lt;br /&gt;
&lt;span style=&quot;font-family: &#39;Courier New&#39;;&quot;&gt;&lt;span style=&quot;color: black; font-size: 10pt;&quot;&gt;    max(i) = 1;&lt;/span&gt;&lt;span style=&quot;font-size: 12pt;&quot;&gt;&lt;br /&gt;
&lt;/span&gt;&lt;/span&gt;&lt;br /&gt;
&lt;span style=&quot;font-family: &#39;Courier New&#39;;&quot;&gt;&lt;span style=&quot;font-size: 10pt;&quot;&gt;&lt;span style=&quot;color: black;&quot;&gt;&lt;br /&gt;
&lt;/span&gt;&lt;span style=&quot;color: blue;&quot;&gt;for&lt;/span&gt;&lt;span style=&quot;color: black;&quot;&gt; j=2:dim&lt;/span&gt;&lt;/span&gt;&lt;span style=&quot;font-size: 12pt;&quot;&gt;&lt;br /&gt;
&lt;/span&gt;&lt;/span&gt;&lt;br /&gt;
&lt;span style=&quot;font-family: &#39;Courier New&#39;;&quot;&gt;&lt;span style=&quot;font-size: 10pt;&quot;&gt;&lt;span style=&quot;color: black;&quot;&gt;&lt;br /&gt;
&lt;/span&gt;&lt;span style=&quot;color: blue;&quot;&gt;if&lt;/span&gt;&lt;span style=&quot;color: black;&quot;&gt; Z(i,j)&amp;gt;max(i)&lt;/span&gt;&lt;/span&gt;&lt;span style=&quot;font-size: 12pt;&quot;&gt;&lt;br /&gt;
&lt;/span&gt;&lt;/span&gt;&lt;br /&gt;
&lt;span style=&quot;font-family: &#39;Courier New&#39;;&quot;&gt;&lt;span style=&quot;color: black; font-size: 10pt;&quot;&gt;            max(i) = j;&lt;/span&gt;&lt;span style=&quot;font-size: 12pt;&quot;&gt;&lt;br /&gt;
&lt;/span&gt;&lt;/span&gt;&lt;br /&gt;
&lt;span style=&quot;font-family: &#39;Courier New&#39;;&quot;&gt;&lt;span style=&quot;font-size: 10pt;&quot;&gt;&lt;span style=&quot;color: black;&quot;&gt;&lt;br /&gt;
&lt;/span&gt;&lt;span style=&quot;color: blue;&quot;&gt;end&lt;/span&gt;&lt;span style=&quot;color: black;&quot;&gt;;&lt;/span&gt;&lt;/span&gt;&lt;span style=&quot;font-size: 12pt;&quot;&gt;&lt;br /&gt;
&lt;/span&gt;&lt;/span&gt;&lt;br /&gt;
&lt;span style=&quot;font-family: &#39;Courier New&#39;;&quot;&gt;&lt;span style=&quot;font-size: 10pt;&quot;&gt;&lt;span style=&quot;color: black;&quot;&gt;&lt;br /&gt;
&lt;/span&gt;&lt;span style=&quot;color: blue;&quot;&gt;end&lt;/span&gt;&lt;span style=&quot;color: black;&quot;&gt;;&lt;/span&gt;&lt;/span&gt;&lt;span style=&quot;font-size: 12pt;&quot;&gt;&lt;br /&gt;
&lt;/span&gt;&lt;/span&gt;&lt;br /&gt;
&lt;span style=&quot;font-family: &#39;Courier New&#39;;&quot;&gt;&lt;span style=&quot;font-size: 10pt;&quot;&gt;&lt;span style=&quot;color: blue;&quot;&gt;end&lt;/span&gt;&lt;span style=&quot;color: black;&quot;&gt;;&lt;/span&gt;&lt;/span&gt;&lt;span style=&quot;font-size: 12pt;&quot;&gt;&lt;br /&gt;
&lt;/span&gt;&lt;/span&gt;&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;span style=&quot;font-family: &#39;Courier New&#39;;&quot;&gt;&lt;span style=&quot;font-size: 10pt;&quot;&gt;&lt;span style=&quot;color: black;&quot;&gt;parallelcoords(Z,&lt;/span&gt;&lt;span style=&quot;color: #a020f0;&quot;&gt;&#39;group&#39;&lt;/span&gt;&lt;span style=&quot;color: black;&quot;&gt;,char(max),&lt;/span&gt;&lt;span style=&quot;color: #a020f0;&quot;&gt;&#39;standardize&#39;&lt;/span&gt;&lt;span style=&quot;color: black;&quot;&gt;,&lt;/span&gt;&lt;span style=&quot;color: #a020f0;&quot;&gt;&#39;on&#39;&lt;/span&gt;&lt;span style=&quot;color: black;&quot;&gt;,&lt;/span&gt;&lt;span style=&quot;color: #a020f0;&quot;&gt;&#39;labels&#39;&lt;/span&gt;&lt;span style=&quot;color: black;&quot;&gt;,varNames);&lt;/span&gt;&lt;/span&gt;&lt;span style=&quot;font-size: 12pt;&quot;&gt;&lt;br /&gt;
&lt;/span&gt;&lt;/span&gt;&lt;br /&gt;
&lt;span style=&quot;font-family: &#39;Courier New&#39;;&quot;&gt;&lt;span style=&quot;font-size: 10pt;&quot;&gt;&lt;span style=&quot;color: black;&quot;&gt;set(gcf,&lt;/span&gt;&lt;span style=&quot;color: #a020f0;&quot;&gt;&#39;color&#39;&lt;/span&gt;&lt;span style=&quot;color: black;&quot;&gt;,&lt;/span&gt;&lt;span style=&quot;color: #a020f0;&quot;&gt;&#39;white&#39;&lt;/span&gt;&lt;span style=&quot;color: black;&quot;&gt;);&lt;/span&gt;&lt;/span&gt;&lt;span style=&quot;font-size: 12pt;&quot;&gt;&lt;br /&gt;
&lt;/span&gt;&lt;/span&gt;&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;div style=&quot;text-align: center;&quot;&gt;&lt;span style=&quot;font-family: &#39;Times New Roman&#39;; font-size: 14pt;&quot;&gt;&lt;strong&gt;WORK DISTRIBUTION&lt;br /&gt;
&lt;/strong&gt;&lt;/span&gt;&lt;/div&gt;&lt;span style=&quot;font-family: &#39;Times New Roman&#39;;&quot;&gt;The project has been a team effort with the roles of the individual members in the areas as mentioned below:&lt;br /&gt;
&lt;/span&gt;&lt;br /&gt;
&lt;span style=&quot;font-family: &#39;Times New Roman&#39;;&quot;&gt;Somnath Chakrabarti – Design and Development&lt;br /&gt;
&lt;/span&gt;&lt;br /&gt;
&lt;span style=&quot;font-family: &#39;Times New Roman&#39;;&quot;&gt;Sanket Gupte – Development and Experimentation&lt;br /&gt;
&lt;/span&gt;&lt;br /&gt;
&lt;div style=&quot;text-align: center;&quot;&gt;&lt;span style=&quot;font-family: &#39;Times New Roman&#39;; font-size: 14pt;&quot;&gt;&lt;strong&gt;PROJECT SCHEDULE&lt;br /&gt;
&lt;/strong&gt;&lt;/span&gt;&lt;/div&gt;&lt;span style=&quot;font-family: &#39;Times New Roman&#39;;&quot;&gt;Intermediate Project Status report submitted on Oct 29, 2009&lt;br /&gt;
&lt;/span&gt;&lt;br /&gt;
&lt;span style=&quot;font-family: &#39;Times New Roman&#39;;&quot;&gt;Project Submitted on Dec 20, 2009&lt;br /&gt;
&lt;/span&gt;&lt;br /&gt;
&lt;div style=&quot;text-align: center;&quot;&gt;&lt;span style=&quot;font-family: &#39;Times New Roman&#39;; font-size: 14pt;&quot;&gt;&lt;strong&gt;REFERENCES:&lt;br /&gt;
&lt;/strong&gt;&lt;/span&gt;&lt;/div&gt;&lt;span style=&quot;font-family: &#39;Times New Roman&#39;;&quot;&gt;&lt;span style=&quot;font-size: 12pt;&quot;&gt;&lt;strong&gt;[1]&lt;/strong&gt;&lt;/span&gt; Michael E. Tipping, Chris M.  Bishop &lt;strong&gt;Probabilistic Principal Component Analysis, &lt;/strong&gt;Journal of the royal statistical society, Series B, 61, Part 3, pp, 611-622.&lt;br /&gt;
&lt;/span&gt;&lt;br /&gt;
&lt;span style=&quot;font-family: &#39;Times New Roman&#39;;&quot;&gt;&lt;strong&gt;[2]&lt;/strong&gt; The Minh Luong, Lecture Notes title &quot;&lt;strong&gt;Probabilistic Principal Component Analysis and the E-M algorithm&lt;/strong&gt;&quot; CS3750 Fall 2007&lt;br /&gt;
&lt;/span&gt;&lt;br /&gt;
&lt;span style=&quot;font-family: &#39;Times New Roman&#39;;&quot;&gt;&lt;strong&gt;[3]&lt;/strong&gt; Sam Roweis, &lt;strong&gt;EM Algorithms for PCA and SPCA, &lt;/strong&gt;Computation &amp;amp; Neural Systems, California Institute of Tech.&lt;br /&gt;
&lt;/span&gt;&lt;br /&gt;
&lt;span style=&quot;font-family: &#39;Times New Roman&#39;;&quot;&gt;[4] UCI Machine Learning Repository Data Set: &lt;strong&gt;Letter Image Recognition Data&lt;/strong&gt;&lt;/span&gt;&lt;/span&gt;</content><link rel='replies' type='application/atom+xml' href='http://guptesanket.blogspot.com/feeds/7837378190765352432/comments/default' title='Post Comments'/><link rel='replies' type='text/html' href='http://guptesanket.blogspot.com/2010/04/probabilistic-pca.html#comment-form' title='0 Comments'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/6765827543481033750/posts/default/7837378190765352432'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/6765827543481033750/posts/default/7837378190765352432'/><link rel='alternate' type='text/html' href='http://guptesanket.blogspot.com/2010/04/probabilistic-pca.html' title='Probabilistic PCA'/><author><name>Anonymous</name><uri>http://www.blogger.com/profile/14659637069515892997</uri><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='16' height='16' src='https://img1.blogblog.com/img/b16-rounded.gif'/></author><media:thumbnail xmlns:media="http://search.yahoo.com/mrss/" url="https://blogger.googleusercontent.com/img/b/R29vZ2xl/AVvXsEi2J6XZW2baJ-PqTaLligHSuCyCooB2U_WbQuU_NVVu_OW50Mh7tl1JDSEM2di4b44e7BAgX6Hg4nLrqnuSwgxEKPQV91JXU4g1HuEo-7kAxgMy0i3KVbJndcCYDlFdzvs5A0KgW7Kx7Drk/s72-c/1.jpg" height="72" width="72"/><thr:total>0</thr:total></entry></feed>