Thanks to Mr. S. Venkatraman for a summary of this session.
ATA: Architecture-based Technology Advisor for Functional Application Domains by Dr. Shruti Kunde
The last presentation by Dr. Shruti Kunde was about a Recommender System that has been developed by her and her colleagues.
She started off by explaining on how such a system is necessary in the present era where there is an overload of information making it difficult for the architects to come to a concrete decision.
This was followed by an overview of the recommender systems. These are systems that provide personalized recommendations based on user specific context.
Recommender systems use filtering techniques to provide such recommendations.
The 3 most common filtering mechanisms are collaborative filtering, content based filtering and a hybrid approach using the above.
In collaborative filtering, the target user profile is matched with other similar user’s profile in the community. Next the items for example purchased by those users are matched to this users preferences to come up with a recommendation list. Hence the recommendation engine attempts to bring out what is popular with a similar age group or community
In content based filtering – the recommendation engine deduces what the user is looking for and then based on that shows other items meeting that criteria. For example if a user is searching for Deep Purple mucic records, it deduces that the user is looking for Hard Rock music and then accordingly flashes other Hard Rock albums
In knowledge based models, the recommendation engine tries to advise on what fits best on our requirements. For example if we are looking for a mobile phone, then recommendation engine will also recommend the required screen guard and case cover for
such a phone as a recommended list.
Hybrid recommender systems use, user profiling, peer comparison, product feature comparison and knowledge models to give best possible recommendation list thus avoiding individual model drawbacks.
There are certain underlying coefficients that recommender systems compute based on some mathematics. Pearson, Euclidean and Cosine consider only common items that have
been rated for measuring similarity.Jaccard contains common items as well as those present in either of the entities.
Session then went on to give an overview of the common type of recommender systems in use in elearning, ecommerce, and big data. E-Learning and E-Commerce focus on learning modules to look at social interaction, preferences, and people with like-minded
preferences. They aim to provide personalized recommendations to users of their domain.
MR Advisor and MPI Advisors are both tuning tools – one for map reduce technologies and the other for message passing interfaces. They make it easy for the user and simplify the vast landscape of configuration parameters and optimize application performance through their recommendations with say a standard set of settings.
These concepts are in use in the Architecture Technology Advisor being built.
User requirements for an architecture are fed into the ATA tool via a GUI. The Recommender engine would then scan the knowledge base for similar such requirements for a similar such architecture.
Accordingly the ATA would then come up with the architecture and
(this was a suggestion during the session) recommended settings.
The ATA works by translating the user requirements to different components of the architecture (e.g. web, app, messaging, streaming, data store), The technology matching the requirements for each layer will then be retrieved from the knowledge repository.
ATA provides a ranked recommendation of the technologies fetched from the knowledge base.
The recommended technologies would be compatible with each other.The degree of match of the recommendation with the user requirement would be computed.
Over a period of time, a suggestion was given to also incorporate feedback on the recommendation provided. Thus with every iteration, the ATA would be able to provide sharper suggestions.0