music recommender system final

31
ABSTRACT: With growing popularity of the web-based systems that are applied in many different areas, they tend to deliver Customized information for their users by means of utilization of recommendation methods. The recommendation Techniques: content- based, collaborative and by means of genetic algorithm are used in existing systems. They recommend user those items which are based on past history of the user but user’s intention is not focused. This Paper proposes Genetic algorithm for recommendation by generating new mutations by providing optimized solution every time and which is based on user’s preferences. Keywords: Recommender system, Genetic algorithm, User Profiling, Content Based filtering

Upload: rohit-pevekar

Post on 02-Jan-2016

64 views

Category:

Documents


0 download

DESCRIPTION

system and music

TRANSCRIPT

Page 1: Music Recommender System Final

ABSTRACT:

With growing popularity of the web-based systems that are applied in many different areas, they

tend to deliver Customized information for their users by means of utilization of

recommendation methods. The recommendation Techniques: content-based, collaborative and by

means of genetic algorithm are used in existing systems.

They recommend user those items which are based on past history of the user but user’s intention

is not focused. This Paper proposes Genetic algorithm for recommendation by generating new

mutations by providing optimized solution every time and which is based on user’s preferences.

Keywords: Recommender system, Genetic algorithm, User Profiling, Content Based filtering

Page 2: Music Recommender System Final

Introduction:

When users browse through a web site they are usually looking for items they find interesting.

Interest items can consist of a number of things.

For example, textual information can be considered as interest items or an index on a certain

topic could be the item a user is looking for.

Another example, applicable for a web vendor, is to consider purchased products as interest

items. Whatever the items consist of, a website can be seen as a collection of these interest items.

Recommender systems are widely implemented in e-commerce websites to assist customers in

finding the items they need.

A recommender system should also be able to provide users with useful information about the

item that interest them. The ability of promptly responding to the changes in user’s preference is

a valuable asset for such systems.

A Recommender system for music data it proposed which assists customers in searching music

data and provides result with items resulting in own user preference. This system first extracts

unique properties of music like pitch, chord, and tempo from the music file using a CLAM

annotator software tool. This extracted data is then stored on the database. Each stored property

is analyzed using content Based filtering and interactive genetic algorithm. After acquiring

records, the system recommends items Appropriate to user’s own favourite.

Page 3: Music Recommender System Final

Literature Survey

What is Recommender system?

Recommender systems or recommendation systems (sometimes replacing "system" with a

synonym such as platform or engine) are a subclass of information filtering system that seek to

predict the 'rating' or 'preference' that a user would give to an item (such as music, books,

or movies) or social element (e.g. people or groups) they had not yet considered, using a model

built from the characteristics of an item (content-based approaches).

Recommendation Systems forms a specific type of information filtering technique that attempts

to present information items. (like movies, music, books, news, images, etc.)

A Recommender system for music data is proposed which assists customers in searching music

data and provides result with items resulting in own user preference. Recommender systems have

become extremely common in recent years.

Fig : Recommender System

Page 4: Music Recommender System Final

What is Content based filtering?

 A common approach when designing recommender systems is content-based filtering.

Content-based filtering methods are based on information about and characteristics of the items

that are going to be recommended. In other words, these algorithms try to recommend items that

are similar to those that a user liked in the past (or is examining in the present). In particular,

various candidate items are compared with items previously rated by the user and the best-

matching items are recommended.

 >> key issue with content-based filtering is whether the system is able to learn user preferences

from user's actions regarding one content source and use them across other content types. When

the system is limited to recommending content of the same type as the user is already using, the

value from the recommendation system is significantly less than when other content types from

other services can be recommended.

Fig : Content based Approch

Page 5: Music Recommender System Final

Technical Requirements

HARDWARE

1. 256 MB RAM.

2. 80 GB HDD.

3. Intel 1.66 GHz Processor Pentium 4

SOFTWARE

1. Visual Studio 2008(.Net framework)

2. MS SQL Server 2005

Page 6: Music Recommender System Final

Technology Used

.NET Framework

The .NET Framework is an environment for building, deploying, and running XML Web

services and other applications. It is the infrastructure for the overall .NET platform. The .NET

Framework consists of three main parts: the common language runtime, the class libraries, and

ASP.NET. 

The common language runtime and class libraries, including Windows Forms, ADO.NET, and

ASP.NET, combine to provide services and solutions that can be easily integrated within and

across a variety of systems. The .NET Framework provides a fully managed, protected, and

feature-rich application execution environment, simplified development and deployment, and

seamless integration with a wide variety of languages.

ASP.NET

ASP.NET is more than the next version of Active Server Pages (ASP); it is a unified Web

development platform that provides the services necessary for developers to build enterprise-

class Web applications. While ASP.NET is largely syntax-compatible with ASP, it also provides

a new programming model and infrastructure that enables a powerful new class of applications.

You can migrate your existing ASP applications by incrementally adding ASP.NET functionality

to them.

ASP.NET is a compiled .NET Framework -based environment.  You can author applications in

any .NET Framework compatible language, including Visual Basic and Visual C#.  Additionally,

the entire .NET Framework platform is available to any ASP.NET application. Developers can

easily access the benefits of the .NET Framework, which include a fully managed, protected, and

feature-rich application execution environment, simplified development and deployment, and

seamless integration with a wide variety of languages. 

Page 7: Music Recommender System Final

Microsoft SQL Server

Business today demands a different kind of data management solution.

Performance scalability, and reliability are essential, but businesses now expect more from their

key IT investment.

SQL Server 2005 exceeds dependability requirements and provides innovative

capabilities that increase employee effectiveness, integrate heterogeneous IT ecosystems,and

maximize capital and operating budgets. SQL Server 2005 provides the enterprise data

management platform your organization needs to adapt quickly in a fast changing environment.

Benchmarked for scalability, speed, and performance, SQL Server 2005 is a fully

enterprise-class database product, providing core support for Extensible Markup Language

(XML) and Internet queries.

Easy-to-use Business Intelligence(BI) Tools

Through rich data analysis and data mining capabilities that integrate with familiar

applications such as Microsoft Office, SQL Server 2005 enables you to provide all of your

employees with critical, timely business information tailored to their specific information needs.

Every copy of SQL Server 2005 ships with a suite of BI services.

Self-Tuning and Management Capabilities

            Revolutionary self-tuning and dynamic self-configuring features optimize database

performance, while management tools automate standard activities. Graphical tools and

performance, wizards simplify setup, database design, and performance monitoring, allowing

database administrators to focus on meeting strategic business needs.

Page 8: Music Recommender System Final

Data Management Application and Services

Unlike its competitors, SQL Server 2005 provides a powerful and comprehensive data

management platform. Every software license includes extensive management and development

tools, a powerful extraction, transformation, and loading (ETL) tool, business intelligence and

analysis services, and analysis service, and such as Notification Service. The result is the best

overall business value available.

 Enterprise Edition includes the complete set of SQL Server data management and analysis

features are and is uniquely characterized by several features that makes it the most scalable and

available edition of SQL Server 2005 .It scales to the performance levels required to support the

largest Web sites, Enterprise Online Transaction Processing (OLTP) system and Data

Warehousing systems. Its support for failover clustering also makes it ideal for any mission

critical line-of-business application. Additionally, this edition includes several advanced analysis

features that are not included in SQL Server 2005 Standard Edition.

Page 9: Music Recommender System Final

Requirement Analysis

FEASIBILITY STUDY

The very first phase in any system developing life cycle is preliminary investigation. The

feasibility study is a major part of this phase. A measure of how beneficial or practical the

development of any information system would be to the organization is the feasibility study.

The feasibility of the development software can be studied in terms of the following

aspects:

1. Operational Feasibility.

2. Technical Feasibility.

3. Economical feasibility.

4. Motivational Feasibility.

Legal Feasibility

Page 10: Music Recommender System Final

OPERATIONAL FEASIBILITY

The site will reduce the time consumed to maintain manual records and is not tiresome and

cumbersome to maintain the records. Hence operational feasibility is assured.

TECHNICAL FEASIBILITY

Minimum hardware requirements:

At least 166 MHz Pentium Processor or Intel compatible processor.

At least 256 MB RAM.

14.4 kbps or higher modem.

A video graphics card.

A mouse or other pointing device.

At least 1 Gb free hard disk space.

Microsoft Internet Explorer 4.0 or higher.

ECONOMICAL FEASIBILTY

Once the hardware and software requirements get fulfilled, there is no need for the user of

our system to spend for any additional overhead.

For the user, the web site will be economically feasible in the following aspects:

The web site will reduce a lot of paper work. Hence the cost will be reduced.

Our web site will reduce the time that is wasted in manual processes.

The storage and handling problems of the registers will be solved.

MOTIVATIONAL FEASIBILITY

The users of our system need no additional training. Visitors do not require entering

password and are shown the appropriate information.

Page 11: Music Recommender System Final

Analysis Phase

Design Phase

Coding Phase

Testing Phase

LEGAL FEASIBILITY

The licensed copy of the required software is quite cheap and easy to get. So from

legal point of view the proposed system is legally feasible. Software Development Model

Used:

Software process model deals with the model which we are going to use for the development

of the project. There are many software process models available but while choosing it we

should choose it according to the project size that is whether it is industry scale project or big

scale project or medium scale project.

Accordingly the model which we choose should be suitable for the project as the software

process model changes the cost of the project also changes because the steps in each

software process model varies.

This software is build using the waterfall mode. This model suggests work cascading from

step to step like a series of waterfalls. It consists of the following steps in the following manner

Waterfall model:

Page 12: Music Recommender System Final

Analysis Phase:

To attack a problem by breaking it into sub-problems. The objective of analysis is to determine exactly what must be done to solve the problem. Typically, the system’s logical elements (its boundaries, processes, and data) are defined during analysis.

Design Phase:

The objective of design is to determine how the problem will be solved. During design the analyst’s focus shifts from the logical to the physical. Data elements are grouped to form physical data structures, screens, reports, files and databases.

Coding Phase:

The system is created during this phase. Programs are coded, debugged, documented, and tested. New hardware is selected and ordered. Procedures are written and tested. End-user documentation is prepared. Databases and files are initialized. Users are trained.

Testing Phase:

Once the system is developed, it is tested to ensure that it does what it was designed to do. After the system passes its final test and any remaining problems are corrected, the system is implemented and released to the user.

Page 13: Music Recommender System Final

GENETIC ALGORITHM

Introduction of GA:

In the computer science field of artificial intelligence, a genetic algorithm (GA) is

a search heuristic that mimics the process of natural evolution. This heuristic is routinely used to

generate useful solutions to optimization and search problems. Genetic algorithms belong to the

larger class of evolutionary algorithms (EA), which generate solutions to optimization problems

using techniques inspired by natural evolution, such as inheritance, mutation, selection,

and crossover.

Genetic algorithm procedure:

1. Choose the initial population of individuals

2. valuate the fitness of each individual in that population

3. Repeat on this generation until termination (time limit, sufficient fitness achieved, etc.):

4. Select the best-fit individuals for reproduction

5. Breed new individuals through crossover and mutation operations to give birth to offspring

6. Evaluate the individual fitness of new individuals

7. Replace least-fit population with new individuals

The evolutionary process of a GA is a highly simplified and stylized simulation of the biological

version. It starts from a population of individuals randomly generated according to some

probability distribution, usually uniform and updates this population in steps called generations.

Each generation, multiple individuals are randomly selected from the current population based

upon some application of fitness, bred using crossover, and modified through mutation to form a

new population.

Crossover – exchange of genetic material (substrings) denoting rules, structural

components, features of a machine learning, search, or optimization problem.

Selection – the application of the fitness criterion to choose which individuals from a

population will go on to reproduce.

Page 14: Music Recommender System Final

Replication – the propagation of individuals from one generation to the next

Mutation – the modification of chromosomes.

Genetic algorithm in recommender system:

A Recommender system for music data is proposed which assists customers in searching audio

data and provides result with items resulting in own user preference.

This system first extracts unique properties of music like pitch, chord, and tempo from the music

file using a CLAM annotator software tool.

This extracted data is then stored on the database. Each stored property is analyzed using content

based filtering and interactive genetic algorithm. After acquiring records, the system

recommends items appropriate to user’s own favourite.

The genetic algorithm is applied and user is provided with a general list from which users can

select the audio tracks, listen to it and give rating, recommendation list and user favourite list

where that user has given highest rating to the audio tracks

Page 15: Music Recommender System Final

PHASES OF GENETIC ALGORITHM IN RECOMMENDER SYSTEM:

Fig: The process of Interactive GA phase

The following are phases of genetic algorithm are as follows:

1. Selection phase – Music features are extracted using CLAM software. The items

which are rated above threshold value are selected rest other items are ignored.

Page 16: Music Recommender System Final

2. Crossover phase – The BLX – alpha crossover algorithm is used since extracted

features are real numbers. Hence crossover is performed with this algorithm resulting in

new generation

BLX-a:

1. Select two parents X(t) and Y(t) from a parent pool2. Create two offspring X(t+1) and Y(t+1) as follows:3. for i = 1 to n do4. di=|xi(t)-yi(t)|5. Choose a uniform random real number u from6. interval <min(xi(t),yi(t))-adi,7. max(xi(t),yi(t))+adi>8. xi(t+1)=u9. Choose a uniform random real number u from10. interval11. <min(xi(t),yi(t))-adi, max(xi(t),yi(t))+adi>12. yi(t+1)=u13. end do14. where: a – positive real parameter

3. Matching phase- This phase finds the similar items stored in database to the newly

Generated music features. Once similarity is found those items are recommended to the

User.

This phase uses Euclidean distance between two offspring and distance between

Each feature of the two offspring is calculated, resulting value is used to match the

records Stored in the database those records are compared with the resulting value which

the user has given highest rating to the tracks.

Page 17: Music Recommender System Final

Flow of the system

Fig: The Flow of the Recommender System.

The Above Figure explains the flow of the system which can be designed and implemented. The

idea is to provide each user with user profile for audio tracks. Each of the records from the data

base is displayed on user page and called as general list and indexing can be provided to make it

more users friendly. The CLAM software then extracts the features from each of the files which

the user has provided rating, the features extracted can be tempo, pitch, etc. These extracted

features are stored on to the database. The genetic algorithm is used further to provide optimized

solutions for recommending items and recommended list will be always provide newer solutions

one which are closer to user’s preference. The genetic algorithm can be made to run infinite

times to generate the mutations, hence every time providing new solutions that is, new

recommendation every time.

Page 18: Music Recommender System Final

System Architecture

Fig: System Architecture.

WORKING:

Apply genetic algorithm to music recommendation system.

The system can detect and recommend appropriate songs which are suitable for user’s

musical preference.

And, the system requires pre-processing which is feature (i,e. tempo, chord, pitch, etc.)

extraction from music. It based on shuffle operation. (i.e, play song randomly)

At first time, the system recommends songs randomly and user cans judge’s song’s

preference by controlling their devices or program. Just click the next song button.

Page 19: Music Recommender System Final

PROJECT PLAN

5.1 IMPLEMENTATION PLAN

The following table gives the project plan for the Phase 1 & 2 of our project:

Phase 1:

Activity Description Effort in person weeks

Deliverable

Phase 1

P1-01 Requirement Analysis 2 weeks Requirement Gathering

P1-02 Existing   System   Study   & Literature

3 weeks Existing System Study & Literature

P1-03 Technology Selection 2 weeks >NET

P1-04 Modular Specifications 2 weeks Module Description

P1-05 Design & Modelling 4 weeks Analysis Report

Total 13 weeks

Page 20: Music Recommender System Final

Phase 2:

Activity Description Effort in person weeks

Deliverable

Phase 2

P2-01 Detailed Design 2 weeks LLD / DLD Document

P2-02 UI and user interactions design Included   in above

UI document

P2-03 Coding & Implementation 12 weeks Code Release

P2-04 Testing & Bug fixing 2 weeks Test Report

P2-05 Performance Evaluation 4 weeks Analysis Report

P2-06 Release Included   in above

System Release

Total 20 weeks Deployment efforts are extra

Page 21: Music Recommender System Final

Gantt chart

Gantt Charts:

The Gantt Chart Shows planned and actual progress for a number of tasks displayed against a

horizontal time scale.

It is effective and easy-to-read method of indicating the actual current status for each of set of

tasks compared to planned progress for each activity of the set.

Gantt Charts provide a clear picture of the current state of the project.

CONCLUSION

We proposed real-time genetic recommendation method in order to overcome the existing

recommendation techniques that are not reflecting in the current user`s intend. With the genetic

algorithm newer solutions can be generated providing optimal solution each time when the

algorithm is made to run, thus providing mutations.

This method can be compared with the existing ones which lack the quality of providing accurate

results.

Page 22: Music Recommender System Final

REFERENCES

[1] Hyun – Tae Kim, Eungyeong Kim, “Recommender system based on genetic algorithm for

music data”, 2nd International Conference on Computer Engineering and

Technology, 2010.

[2] J. Ben Schafer, Joseph Konstan, John Riedl,”Recommender Systems in ECommerce”,

2007.

Page 23: Music Recommender System Final

[3] D.E Goldberg and J. H Holland, “Genetic Algorithms and Machine Learning”, 2006.

[4] Paul resnick and Hal .R. varian,”Recommender system”,Vol. 40, No. 3

COMMUNICATIONS OF THE ACM, March 1997.

[5] Tom V. Mathew, “Genetic algorithm”, http://www.civil.iitb.ac.in/tvm/2701_dga/2701- ga-

notes/gadoc/gadoc.html

[6] Xiaoyuan Zhu, Yongquan Yu, Xueyan Guo,”Genetic Algorithm based on Evolution

Strategy and the Application in Data Mining”, pp- 849-852, First International Workshop on

Education Technology and Computer Science, 2009.

[7] Janusz Sobecki,”Implementations of Web-based Recommender Systems Using Hybrid

Methods”, International Journal of Computer Science & Applications ,2006 Techno mathematics

Research Foundation, Vol. 3 Issue 3, pp 52 – 64.