Professional Documents
Culture Documents
A PROJECT REPORT
Submitted by
BACHELOR OF ENGINEERING
IN
1
BONAFIDE CERTIFICATE
SIGNATURE SIGNATURE
2
ACKNOWLEDGMENT
We express our sincere appreciation to our supervisor, Er.Akshima Aggarwal, for her valuable
mentorship, understanding, and assistance. We feel extremely fortunate to have had the
opportunity to collaborate with such a compassionate and supportive professor. Without her
willingness to undertake this research, we would not have been able to complete our project
for the "Fashion Recommendation System". We are also grateful to our fellow group members,
whose insightful ideas and encouragement helped us feel connected and engaged in our work
We would like to express our genuine appreciation to our teacher, Er. Akshima Aggarwal, for
dedicating her valuable time to review our project and for assisting us throughout its completion
3
TABLE OF CONTENT
List of Figures……………………………………………….....................................................6
List of Tables…………………………………………………………………………………..7
4
4.1. Implementation of solution .............................................................................................. 38
REFERENCES …………..................................................................................................... 44
APPENDIX .......................................................................................................................... . 45
5
List of Figures
Fig 3 Timeline………………………………………………………..……..18
Fig 4 Methodology……………………………………………………….....36
Fig 5 Input(i)………………………………………………………………..39
Fig 6 Input(ii)……………………………………………………………….39
Fig 7 Output(i)……………………………………………………………...40
Fig 8 Output(ii)……………………………………………………………..40
6
List of Tables
7
ABSTRACT
Our Fashion Recommendation System is based on a website for the client end serving the data
from the ML generation pool. The website aims to profile users as per multiple criteria and
take input of their niche style that they like. This perfect mix of what would suit them and what
they would like to wear will be doubled with upcoming fashion trends. All of this catered with
a catchy website, frontend and a flexible database on MongoDB.
GRAPHICAL ABSTRACT
8
Chapter -1 Introduction
Not wearing appropriate clothes on certain occasions can at times offend some people.
For example, at a Christian funeral, wearing black conservative clothes is customary while
at a Hindu funeral, wearing white conservative clothes is the norm. At Buddhist funerals,
wearing the colour red is frowned upon. Hence, the problem of event-based clothing needs
to be addressed. These days, most of the people share photos of the events they attend on
social media platforms. The information obtained from such images could be leveraged
to learn the correlation between events and the categories of clothes worn at the events.
By learning this correlation, appropriate clothing recommendations could be made.
9
- E-commerce websites: Online clothing retailers can use a recommendation system to
suggest clothing items to their customers based on their browsing history, purchase
history, and personal preferences. This can help increase sales and improve customer
satisfaction.
- Fashion designers: A recommendation system can be useful for fashion designers who
want to understand what types of clothing items are currently popular among their target
audience and which colours, patterns, and styles are trending.
- Fashion enthusiasts: Individuals who are passionate about fashion can also benefit from
a recommendation system to discover new clothing items that match their personal style
and preferences
Certainly! Here are some statistics that highlight the importance of fashion
recommendation systems:
In a survey by Barilliance, 31% of respondents said they had made a purchase based on a
personalized recommendation from an online retailer.
A study by Accenture found that 91% of consumers are more likely to shop with brands
that provide personalized recommendations.
10
In a survey by Nosto, 73% of respondents said they would be more likely to make a
purchase if the website they were browsing offered personalized recommendations.
Another study by Segment found that personalized recommendations can also lead to
increased customer engagement and retention. The study found that customers who
engaged with personalized recommendations were 2.4 times more likely to return to the
retailer's website and 2.7 times more likely to make a purchase.
These data suggest that fashion recommendation systems can provide significant benefits
for businesses and consumers alike, including increased sales, improved customer
satisfaction, and personalized shopping experiences.
These statistics show that fashion recommendation systems can have a significant impact
on sales and customer satisfaction, and that there is a growing demand for personalized
recommendations in the fashion industry.
One contemporary issue related to fashion recommendation systems is the potential for
bias in the algorithms used to generate recommendations. Some studies have found that
recommendation systems can perpetuate racial and gender biases, leading to unfair
treatment of certain groups of people.
For example, a study by the National Institute of Standards and Technology (NIST) found
that some facial recognition algorithms are less accurate for people with darker skin tones,
leading to higher rates of false positives and false negatives.
11
Similarly, a study by researchers at MIT found that certain machine learning models used
to generate fashion recommendations were biased against certain body types, leading to
recommendations that were less accurate and less helpful for people who did not fit the
"ideal" body type.
These issues highlight the need for greater awareness and scrutiny of the algorithms used
in fashion recommendation systems, as well as the need for more diverse and inclusive
datasets to ensure that the recommendations generated are fair and unbiased for all users.
Several agencies and organizations, including the US Federal Trade Commission (FTC)
and the European Union Agency for Fundamental Rights (FRA), have issued reports and
guidelines on this topic, calling for greater transparency and accountability in the
development and use of AI and machine learning systems.
Fashion recommendation apps are made or designed in a way that it recommends outfits
and fashion to individuals so that it matches their preferences, however these apps do have
flaws that make them less effective such as not being able to personalize recommendations
to users.
In order to make the fashion recommendations the data from the users is collected and on
the basis of that data the recommendations are placed but there does arise the problem of
lack of diversity and therefore it might not cater all types of users leaving aside people
from underrepresented groups or those whose fashion sense is unique and doesn't match
the algorithms data.
Every individual is different and these apps do not take in consideration the fat, height and
skin tone factors and end up throwing recommendations that might not suit the body type
of the particular individual leading to misfit and agony.
Another issue is the lack of transparency in how the recommendation algorithms work.
Users may not understand how the app makes its recommendations, which can lead to
frustration and mistrust. It's important for fashion recommendation apps to provide clear
explanations of how their algorithms work and why specific recommendations are being
made.
Finally, the app may not consider the user's budget or preferences for sustainable and
ethical fashion. This can lead to recommendations that are not affordable or do not align
with the user's values.
12
considering an individual's body type and henceforth leading to misfit, lack of diversity
in users may lead to underperforming algorithms and also, lack of transparency in how
the algorithms work, and not considering user's budget and values.
The entire Fashion Recommendation system will roughly have two components, the ML
based recommending part and the other web-based frontend that serves the results of the
outfits to the user.
a) Should take the entry of user profile (information like height, skin tone, build (skinny,
chubby, muscular)) and their styling preferences (classic, traditional, street style, college
fashion and others) and conveys them to the ML algorithm;
b) Should have a consistent appealing design (elegantly designed web pages using
HTML/CSS);
d) The backend using ML should be able to adapt to learn new fashion trends given the
styling preferences of the user (using Python and Django);
e) The styling preferences of each user should be freely editable at any point.
Required Tasks:
13
- Backend that returns an array of possible outfits to the server on being provided with
the user preferences
- Serving the recommended clothes back to the user with our frontend.
Methodology:
- Vectorization:
Converting data sets into vectors and numbers that will be given as input to the model
for training and learning.
- Model training:
The model is trained to make independent decisions by giving a large dataset and
training it on the basis of that data and imbibing decision taking capabilities into the
model.
- Recommendation phase:
The model takes decision based on the training and thse user preferences and gives it
back to the frontend which displays the design to user
1.4. Timeline
14
Fig 2. Gantt chart of the timeline
15
CHAPTER 3. DESIGN FLOW/PROCESS
3.1. Evaluation & Selection of Specifications/Features
3.2. Design Constraints
3.3. Analysis of Features and finalization subject to constraints
3.4. Design Flow
3.5. Design selection
3.6. Implementation plan/methodology
CHAPTER 4. RESULTS ANALYSIS AND VALIDATION
4.1. Implementation of solution
CHAPTER 5. CONCLUSION AND FUTURE WORK
5.1. Conclusion
5.2. Future work
16
Chapter -2 Literature Review
2.1 Timeline
1990s - The first fashion recommendation systems were developed, but they were not widely
used or adopted due to limitations in technology and lack of interest.
2000s - With the rise of e-commerce, fashion recommendation systems began to gain
popularity. Companies like Amazon and Netflix started using recommendation algorithms
to suggest products and movies to customers based on their purchase history and viewing
habits.
2010s - Fashion recommendation systems became more sophisticated with the use of
machine learning and data analysis. Companies like Stitch Fix, Trunk Club, and Rent the
Runway started offering personalized fashion recommendations to customers based on their
style preferences and body measurements.
2016 - Pinterest launched its first fashion recommendation system, which used machine
learning to suggest outfits and clothing items to users based on their search and browsing
history.
2017 - Google launched a fashion recommendation system, called Style Match, that used
image recognition technology to identify clothing items in photos and suggest similar items
for purchase.
2018 - Zara launched a recommendation system that used customer data to suggest outfits
and clothing items based on their purchase history and browsing habits.
2019 - H&M launched a fashion recommendation system that used AI to suggest outfits and
clothing items based on a customer's personal style preferences and the latest fashion trends.
2020 - Fashion brands and retailers increasingly began using virtual try-on technology to
improve their recommendation systems. Customers could upload photos of themselves and
try on virtual outfits to see how they looked before making a purchase.
Overall, fashion recommendation systems have come a long way in the past few decades,
from simple algorithms based on purchase history to sophisticated AI-powered systems that
can suggest outfits based on a customer's personal style preferences and body
measurements.
The era of recommendation systems originally started in the 1990s, recommendations were
generally provided to consumers based on their rating structure. The first consumer-focused
recommendation system was developed and commercialized by Goldberg, Nichols, Oki and
Terry in 1992. Tapestry, an electronic messaging system was developed to allow users only
17
to rate messages as either a good or bad product and service. However, now there are plenty
of methods to obtain information about the consumer’s liking for a product through the
Internet. These data can be retrieved in the forms of voting, tagging, reviewing and the
number of likes or dislikes the user provides. It may also include reviews written in blogs,
videos uploaded on YouTube or messages about a product. Regardless of communication
and presentation, medium preferences are expressed in the form of numerical values . Table
1 presents the history of the progress of fashion recommendation systems over the last few
decades.
Fig. 3 Timeline
18
2.2 Existing Solutions
There are several methodologies used in existing fashion recommendation systems. Here
are some of the most common ones:
These are just a few of the methodologies used in fashion recommendation systems.
Different systems may use a combination of these approaches, or use other approaches
altogether. The choice of methodology depends on the specific goals of the system, as well
as the available data and computational resources.
19
Approach Advantages Disadvantages Key Features
1. Limited ability to
1. Relatively simple to handle new users or
implement items
1. Uses similarity
2. Can handle sparse 2. Vulnerable to between users or
data shilling attacks and items to make
data sparsity recommendations
3. Can provide
Collaborative serendipitous 3. Can suffer from 2. Requires user-
Filtering recommendations popularity bias item interaction data
1. Limited ability to
1. Can handle new capture user
users and items preferences beyond
the features used
2. Can provide
explanations for 2. Vulnerable to the 1. Uses item features
recommendations cold-start problem to make
recommendations
20
Approach Advantages Disadvantages Key Features
3. Limited
interpretability
21
Approach Advantages Disadvantages Key Features
3. Can provide
serendipitous
recommendations
Overall, each approach to fashion recommendation systems has its own set of advantages
and disadvantages, as well as key features that distinguish it from other approaches.
Understanding these features and trade-offs is essential for developing effective and
accurate fashion recommendation systems that can meet the needs of both customers and
businesses.
Fashion recommendation systems are becoming increasingly popular due to the growth of
online shopping and the need to provide personalized recommendations to customers. The
literature review on fashion recommendation systems highlights several key themes and
trends in the field[1].
Firstly, the review emphasizes the importance of data in developing effective fashion
recommendation systems. The authors note that data sources such as user behaviour,
purchase history, and social media can be used to create more accurate and personalized
recommendations.
Secondly, the review emphasizes the role of machine learning algorithms in fashion
recommendation systems. The authors discuss various machine learning techniques that can
be used to train models, such as collaborative filtering, content-based filtering, and hybrid
filtering. They note that hybrid filtering, which combines both collaborative and content-
based filtering, is often the most effective approach[2].
Thirdly, the review highlights the challenges associated with evaluating fashion
recommendation systems. The authors note that traditional evaluation metrics such as
accuracy and precision may not be sufficient for measuring the effectiveness of fashion
22
recommendation systems. They suggest the use of metrics such as diversity, novelty, and
serendipity to better capture the user experience.
Collaborative filtering techniques involve analyzing user behaviour to identify patterns and
similarities in preferences to provide personalized recommendations[3]. Content-based
filtering techniques rely on the characteristics of the items themselves, such as color, style,
and material, to make recommendations. Hybrid methods combine both collaborative and
content-based filtering techniques to provide more accurate and diverse recommendations.
Challenges in fashion recommendation systems include data sparsity, cold start problems,
and the difficulty of incorporating user feedback into the recommendation process.
Our project is focused on the points that the options to be provided to users should be more
diverse and also that more ethnic groups have to be given proper sets ,so that the stock that
recommendation system provides is diverse and also more catering to all groups and styles,
also we focus on Better size fits so that the customer doesn’t have to deal with problems of
misfit .
Overall, the literature review suggests that fashion recommendation systems have the
potential to significantly enhance the online shopping experience for customers[4].
However, further research is needed to overcome the challenges associated with data
collection, algorithm development, and evaluation.
The fashion recommendation system analyzes data about the user's preferences and
behaviors, as well as data about the products, such as their colors, styles, materials, and
popularity. It then uses machine learning algorithms to match the user's preferences with
the products that are most likely to appeal to them[6]. The system can also provide
additional information, such as product descriptions, reviews, and images, to help users
make informed decisions[7].
By using a fashion recommendation system, users can save time and effort in finding
clothing and accessory items that meet their needs and style preferences[8]. The system
can also help users discover new products and brands that they may not have otherwise
considered, leading to a more personalized and satisfying shopping experience[9].
23
A fashion recommendation system solves the problem of helping customers find clothes
and outfits that match their personal style and preferences. With the vast amount of
clothing options available online, it can be overwhelming for customers to find items that
fit their style, body type, and budget[10]. A fashion recommendation system uses machine
learning algorithms and data analysis to suggest personalized clothing options to
customers based on their past purchases, browsing history, and other relevant factors.
• Data Collection - The system collects data on customer preferences, such as their past
purchases, browsing history, and any preferences they have indicated (e.g., color, size,
style).
• Machine Learning - The system uses machine learning algorithms to analyze the data
and identify patterns and trends in the customer's preferences. This helps the system to
make accurate predictions about what clothing items the customer is likely to be
interested in.
• Personalized Recommendations - Based on the data analysis, the system generates
personalized recommendations for the customer, suggesting clothing items and outfits
that match their style and preferences. These recommendations can be shown to the
customer on the retailer's website or app, or sent to the customer via email or other
channels.
• Feedback Loop - The system tracks how the customer interacts with the
recommendations and collects feedback to improve future recommendations. For
example, if the customer purchases an item that was recommended, the system will use
that data to refine its algorithm and suggest even more relevant items in the future.
Overall, a fashion recommendation system solves the problem of helping customers find
clothing options that match their style and preferences by using data analysis and machine
learning to make personalized recommendations. This improves the customer experience,
increases customer satisfaction, and can lead to higher sales for retailers.
While creating a fashion recommendation system, there are certain things that should be
avoided to ensure that the system is effective, ethical, and does not violate customers'
privacy. Here are some things that should not be done while creating a fashion
recommendation system:
24
on customer data can lead to narrow and biased recommendations that don't accurately
reflect the customer's true style and preferences.
• Ignoring diversity and inclusivity: A fashion recommendation system should take into
account the diverse range of customers' backgrounds, cultures, and preferences. The
system should not reinforce harmful stereotypes or biases that can alienate customers
or perpetuate discrimination.
• Lack of transparency: It's important to be transparent about how the recommendation
system works and how customer data is being used. Customers should be informed
about what data is being collected, how it's being analyzed, and how it's being used to
generate recommendations.
• Violating customer privacy: A fashion recommendation system should be designed
with customer privacy in mind. Customers should have control over their personal data
and be able to opt-out of data collection or delete their data at any time.
• Ignoring the human element: While machine learning algorithms can be effective at
generating personalized recommendations, they should not replace the importance of
human input. Fashion experts and stylists can provide valuable insights and feedback
that can improve the quality and relevance of recommendations.
• Boosting sales for retailers by suggesting items that are more likely to be purchased by
customers.
• Enhancing the efficiency of the recommendation process by reducing the time and
resources required for manual curation and selection.
• In terms of observations, there are several key factors to consider when developing a
fashion recommendation system:
• Data quality and availability: High-quality data is essential for accurate and effective
recommendations. However, fashion data can be particularly challenging due to its
complexity and variability.
• Algorithm selection and optimization: Choosing the right algorithm(s) and optimizing
25
their parameters can have a significant impact on the performance of the
recommendation system.
• User feedback and evaluation: Incorporating user feedback and evaluating the
effectiveness of the system are critical for ensuring that the recommendations are
relevant and useful.
26
Chapter -3 Design Flow/ Process
The features identified in the literature can be broadly categorized into three groups: user-
related features, item-related features, and contextual features. User-related features include
demographic data, personal style, purchase history, and social media activity. Item-related
features include product attributes such as color, style, and brand. Contextual features include
weather, time of day, and location.
When critically evaluating the features identified in the literature, it is essential to consider
their relevance and importance in the fashion recommendation system. For example, user-
related features such as demographic data and personal style can provide valuable insights into
user preferences and help the system make personalized recommendations. Item-related
features such as color and style can be used to identify similar items and recommend them to
users based on their preferences. Contextual features such as weather and location can provide
relevant information that can help the system make appropriate recommendations.
Here is a critical evaluation of the features identified in the literature and a list of features
required in a fashion recommendation system:
• User profile: User profiles are an important feature of fashion recommendation systems
because they allow the system to personalize recommendations based on the user's unique
preferences and needs. However, the accuracy of the recommendations heavily depends on the
quality and completeness of the user data. Users may not always provide accurate information,
and incomplete data may lead to inaccurate recommendations.
• Product data: Product data is crucial for generating relevant recommendations. The system
needs to have a comprehensive database of products to provide users with a diverse range of
options. However, the quality and accuracy of product data can vary, and incomplete or
inaccurate data can result in poor recommendations.
27
• Contextual data: Contextual data, such as weather, occasion, location, and time of day, can
help the system generate more relevant recommendations. However, collecting and processing
contextual data can be challenging, and inaccurate or outdated data can lead to poor
recommendations.
• Image recognition: Image recognition is an important feature that allows the system to analyze
the visual characteristics of clothing items and make recommendations based on the user's
preferences. However, image recognition technology is not perfect, and inaccurate recognition
can result in poor recommendations.
• Machine learning algorithms: Machine learning algorithms are used to analyze user data,
product data, and contextual data to generate recommendations. However, the quality of the
recommendations depends on the accuracy and complexity of the algorithms used.
• Social media integration: Social media integration can help the system gather additional data
about the user's preferences and style. However, not all users may be willing to link their social
media accounts, and social media data may not always accurately reflect the user's preferences.
Based on the critical evaluation of the features identified in the literature, the following list of
features is required in a fashion recommendation system:
1. User-related features: demographic data, personal style, purchase history, and social media
activity.
2. Item-related features: product attributes such as color, style, brand, and price.
3. Contextual features: weather, time of day, and location.
4. Image recognition technology: To identify visual elements of the user's preferred style.
5. Trend analysis: To identify emerging fashion trends and recommend relevant products.
6. Collaborative filtering: To recommend products based on the preferences of similar users.
7. Feedback system: To allow users to provide feedback on recommended products and
improve the accuracy of future recommendations.
8. Diversity: To ensure that the system recommends a diverse range of products to cater to
different tastes and preferences.
In summary, developing an effective fashion recommendation system requires a critical
evaluation of the features identified in the literature. By analyzing the relevance and importance
of the identified features, it is possible to create a comprehensive list of features required in the
fashion recommendation system. The features should be chosen carefully to ensure that they
provide relevant and accurate recommendations that meet the needs of the users.
28
3.2 Design Constraints
29
Overall, designing a fashion recommendation system requires careful consideration of various
design constraints to ensure that the system meets the needs of its users and provides accurate
and relevant recommendations.
Here, is a detailed analysis of the features and finalize the list subject to constraints by showing
the differences between the original list of features and the modified list.
1. User profiles
2. Product data
3. Contextual data
4. Image recognition
5. Machine learning algorithms
6. Social media integration
1. User profiles with privacy controls and incentives for accurate and complete data
2. Prioritization of popular and frequently purchased items to reduce data requirements
3. User input and machine learning algorithms to predict contextual data
4. Alternative methods, such as colour or style matching, to reduce processing power
requirements
5. Alternative lightweight machine learning algorithms that require less data and processing
power
6. Pre-trained model ResNet50 and transfer learning techniques to leverage existing models
and reduce training time
30
7. Clear privacy controls and options for users to link their social media accounts
8. Alternative methods, such as survey data or user feedback, to gather information about user
preferences
9. Integration with third-party data sources, such as weather or fashion trends, to enhance
recommendations
10. Real-time updates to product data and recommendations to ensure accuracy and relevance
11. Alternative methods: The modified list includes additional features that were not present in
the original list, including pre-trained models and transfer learning techniques to leverage
existing models and reduce training time, and integration with third-party data sources, such as
weather or fashion trends, to enhance recommendations. These features are intended to address
the constraints of data availability and ensure that the system can generate accurate and relevant
recommendations.
12. Real-time updates: The modified list includes a feature of real-time updates to product data
and recommendations to ensure accuracy and relevance. This feature is intended to address the
constraint of data accuracy and ensure that the system can provide up-to-date recommendations
to users.
In summary, the modified list of features addresses the constraints of data availability,
processing power, privacy concerns, and user preferences by removing, modifying, and adding
features to ensure the effectiveness and efficiency of the fashion recommendation system.
1. Data collection: The first step in designing a fashion recommendation system is to collect
data from various sources, such as user's purchase history, browsing history, and personal
preferences. This data can be collected through user accounts, cookies, and other tracking
mechanisms.
2. Data processing: The collected data needs to be processed to extract relevant information
that can be used to make recommendations. This involves cleaning the data, identifying
patterns and trends, and building models to predict user preferences.
3. User profiling: Once the data has been processed, user profiles can be created based on their
preferences, past purchases, and browsing history. These profiles can be used to make
personalized recommendations for each user.
31
4. Recommendation engine: The recommendation engine is the core of the fashion
recommendation system. It uses machine learning algorithms to analyze user data and provide
relevant product recommendations. The engine can use collaborative filtering, content-based
filtering, or hybrid methods to make recommendations.
5. User interface: The user interface is an important component of the fashion recommendation
system. It should be designed to provide an intuitive and user-friendly experience. The interface
can include search filters, product categories, and personalized recommendations based on the
user's profile.
6. Feedback mechanism: A feedback mechanism can be used to improve the recommendation
engine. Users can provide feedback on recommended products, which can be used to refine the
recommendation models and improve the accuracy of the system.
7. Integration: The fashion recommendation system can be integrated with the company's e-
commerce platform to provide a seamless user experience. This integration can include product
catalogs, inventory management, and order processing.
8. Testing and evaluation: The fashion recommendation system needs to be tested and
evaluated to ensure that it meets the needs of users and provides accurate recommendations.
This involves conducting A/B testing, collecting user feedback, and analyzing system
performance metrics.
9. Continuous improvement: The fashion recommendation system should be continuously
improved to keep up with changing user preferences and trends. This involves collecting and
analyzing data, refining the recommendation models, and updating the system as necessary.
proposed system
The system architecture defines the hardware, software and network environment of the
structure. The system will be web-based meaning that the users need to run the URL in order
to run the system. The system will run both horizontally and vertically. The architecture used
in the system is shown horizontally where the Model View Controller is explained as
represented in Figure 1.
The high-level part of the system is looked at using the vertical way. Figure 1. Three tire
system architecture. The system comprises of the Client tire, which is the front end or View
mode, middle tier which is the system controller and the backend tire which is the model. The
client side is where the users/customers log in in the system, browse for the system interface,
provide input query image to the system, and get recommendation according to the input query.
The middle true is responsible for communication between the front end and the back end. It
receives user requests and sends them to the back end and in turn accepts responses from the
back end and sends them to the user.
32
The back end which involves the data set and recommender algorithm deals with data
storage, user input data storage, processing user requests, determining user input similarity,
making recommendations and forwarding them to the middle tier which in turn sends
them to the respective users. The internet works to provide access to the site with a strong
security check, provided by both firewall and password protection policy. Any unauthorized
access is detected and prevented by the firewall. a. The vertical classification system model In
Figure 2, the recommendation system works with the data set to track user input data features
and extracted features from data set upon which new predictions and recommendations are
made. the recommendation browses the dataset for user data and available dataset features.
Recieves RecommendationsUserWeb ServerSends response to userDatabaseStores User input
dataStores dataset features dataRecommenderMakes RecommendationsRecommender
AlgorithmDetermines the Similarity between cloths Figure 2. Vertical architecture of the
system Then, it uses the algorithm to go over the input user data and determine similarities
between users input data and stored dataset features. Finally, it makes recommendations. By
looking at Figure 1 and Figure 2, we realize that the recommender system does not interact
directly with the users at any point. When the repository stores data, the recommender filters
the data it needs from the repository using the algorithm. When a signal is sent to the
algorithm about what data are needed for filtering, the algorithm computes the similarity. The
similarity results are then transferred to the recommender system which in turn sends
recommendations to the webserver and finally to the respective user. b. Dataset and
classification. In this project, we worked with the Deep Fashion dataset, which is gathered from
researchers from the Chinese Hong Kong University. It has over one million diverse trend pics
and wealthy annotations with additional data about landmarks, categories, pairs etc. The dataset
consists of 5 distinct types of predicting subsets that are tailor-made towards their tasks.
Fashion dataset One subset, known as Attribute Prediction, can be used for apparel category
and attribute prediction. From almost 290,000 photos of 50 apparel categories and 1,000
apparel attributes, we randomly picked 18k images from different categories and then we
classified them for training and testing.
FRS can be defined as a means of feature matching between fashion products and users or
consumers under specific matching criteria. Different research addressed apparel attributes
such as the formulation of colors, clothing shapes, outfit or styles, patterns or prints and fabric
structures or textures [10,58,74,75]. Guan et al. studied these features using image recognition,
product attribute extraction and feature encoding. Researchers have also considered user
features such as facial features, body shapes, personal choice or preference, locations and
wearing occasions in predicting users’ fashion interests [31,75,76,77,78]. A well-defined user
33
profile can differentiate a more personalized or customized recommendation system from a
conventional system [28,79]. Various research projects on apparel recommendation systems
with personalized styling guideline and intelligent recommendation engines have been
conducted based on similarity recommendation and expert advisor recommendation systems
[10,58,61]. Image processing, image parsing, sensory engineering, computational algorithms,
and computer vision techniques have been extensively employed to support these systems
Algorithmic Models Used in Fashion Recommendation Systems
Convolutional Neural Network (CNN)
A convolutional neural network (CNN) is constructed of multiple convolutional layers, where
the number of layers is customized based on the desired recommendation system outcome.
These layers can vary in terms of convolutional layers, filter size and fully connected layers.
Researchers increase or decrease the depth of the network to achieve better results with the
highest accuracy. Kernel and batch sizes are fixed depending on the desired input/output of the
layer. There is an optional pooling layer to reduce the dimensionality of the data. The most
common form of pooling layer is max pooling, which often ranges between 2 × 2 and 4 × 4.
Softmax, Sigmoid, ReLU and TanH are the most common activation functions for CNN, which
can be used either separately or in stacked form. Adam and stochastic gradient (SGD) are two
popular optimizers used in tuning hyperparameters of CNN models. CNN is very popular in
recommendation systems for its strong feature extraction and image classification capabilities.
Yu et al proposed a combined matrix and tensor factorization model using CNNs for an
aesthetic-based clothing recommendation to learn the images and their aesthetic features [159].
Nguyen et al. utilized the convolutional and max-pooling layer to obtain visual features from
different patches of images [120].
Multilayer Perceptron (MLP)
A multilayer perceptron (MLP) is a form of artificial neural network architecture that contains
a series of layers, which are composed of neurons and their connections. The neurons have the
ability to calculate the weighted sum of its inputs and apply an activation function to obtain a
signal, which is transmitted to the next neuron. The number of layers can be from 2 to infinity
as more and more deep neural networks are introduced depending on the project goal. The
batch value and neurons vary but not limited from 8 to 64 and 128 to 512, respectively. Usually,
the input and output layers have linear activation function, and the hidden layers commonly
have Sigmoid, ReLU, Softmax, tanh, etc. The common optimizers used in MLP are Adam,
Adadelta, Adagrad, Adamax, Nadam, SGD, RMSprop, etc.
A multilayer perceptron (MLP) model has been applied io different recommendation systems
including for fashion clothing [163] and makeup recommendations [164]. Cheng et al.
proposed an advanced model of MLP, which can solve both regression and classification
problems [165]. Here, the wide learning component is a single layer perceptron, and the deep
learning component is a multilayer perceptron. Combining these two (wide learning
component: single layer perceptron and the deep learning component: multilayer perceptron)
34
learning techniques enabled the model to capture both memorization and generalization, which
helps the model to catch direct features from historic data as well as generalizing it, which can
improve both the accuracy and diversity of the recommendation. Chen et al. extended the
model to decrease the running time for large-scale industrial-level recommendation tasks by
replacing the deep learning component with an efficient locally connected network [15].
Hyperpersonalization Filtering Technique
Personalization is a system that uses the profiling of customers to make certain assumptions
about the users. These assumptions are based on certain specific features and traits gathered
from the profiling. For example, suggesting ads to buyers since they have ordered or searched
for a similar product online is a very common strategy used these days. This technique of
personalization can bring a huge boom in sales for companies according to their sales reports.
Hyperpersonalization uses the same strategy and works more on it. Hyperpersonalization is an
advanced technique built over the concept of personalization, in which the model not only
investigates the item or product that was bought, but also looks into other details such as
location of purchase, mode of purchase, cost of purchase, keywords inserted during purchase,
demographics of the person who purchased, etc. [34,124,130,135,139,203,204].
Hyperpersonalization delves into the intricate details and thereby produces much better and
effective personalization, which has made it popular in recent times [5,29,146,205,206]. The
implementation of this filtering technique with virtual try-on facilities can develop a
recommendation system that offers instant image generation of a user wearing the selected
fashion item [207,208]. The use of a generative adversarial network (GAN) in developing a
state-of-the-art hyper-personalization recommendation system can facilitate an apparel type
recommendation or clothing fit recommendation with a real time image generation
[157,206,209]. Kang et al. proposed a visually aware deep Bayesian personalized ranking
method (DVBPR) recommendation system that can generate new clothing given a user profile
and a product category, which is designed with more customization in order to provide more
accurate recommendations to users or consumers [5].
35
3.6 Implementation plan/methodology
Flowchart/algorithm/ detailed block diagram:
Data
Collection &
Processing
Feature
Deployment
Extraction
Evaluation Building
1. Data Collection: The first step is to collect data from various sources such as e-commerce
websites, fashion blogs, social media platforms, and other sources. The data collected should
include product details, customer preferences, and purchasing history.
2. Data Processing: The next step is to process the data to extract useful information. This
involves cleaning the data, removing irrelevant information, and transforming the data into a
suitable format for analysis.
3. Feature Extraction: After processing the data, the next step is to extract features that are
relevant for recommendation. This involves identifying the attributes that are important for the
recommendation model, such as color, fabric, style, brand, and price.
36
4. Building the Recommendation Model: The next step is to build a recommendation model
that can provide personalized recommendations based on user preferences. There are several
types of recommendation models, including collaborative filtering, content-based filtering, and
hybrid models that combine both.
5. Evaluation: Once the recommendation model is built, it needs to be evaluated to ensure that
it provides accurate and relevant recommendations. This involves testing the model on a
sample dataset and comparing the recommendations with the actual preferences of the users.
6. Deployment: Finally, the recommendation system needs to be deployed in a suitable
environment such as an e-commerce website or a mobile app. This involves integrating the
model with the application and providing a user-friendly interface for users to interact with the
system.
In terms of implementation, there are several programming languages and tools that can be
used, including Python, R, Java, and MATLAB. Popular machine learning frameworks such
as TensorFlow, PyTorch, and Scikit-learn can be used for building recommendation models.
Cloud-based services such as Amazon Web Services (AWS) and Google Cloud Platform
(GCP) can be used for deployment and scaling of the system.
In conclusion, implementing a fashion recommendation system involves several steps,
including data collection, processing, feature extraction, model building, evaluation, and
deployment. The choice of programming language, tools, and frameworks will depend on the
specific requirements of the system.
37
Chapter -4 Implementation of solution
We have used to ResNet50 standard model that is a built-in image recognition model and is
highly accurate. We then trained this model on a dataset of 44,441 images. The model is
capable of recommending similar clothes on getting a single image by user.
Tensorflow – contains deep learning built-in libraries like Keras and others used for image
pre-processing, processing and data abstraction
Numpy – contains models and functions for data science and generalising data and complex
data visualisation
CNN – Convulational Neural Network is the approach we have used to train the ResNet50
model to recognise images of clothes.
It uses 3 tier pooling system to generate various features of the images (2048 features) of
these 44,441 images. The array is then flattened to obtain a vector array that is compared to
the vector of input image and the nearest N images are returned to the user as suggestions.
38
Inputs –
Fig 6. T- Shirt
39
Output –
40
Chapter 5. Conclusion and Future Work
5.1. Conclusion
Fashion recommendation systems have become increasingly popular and essential in the
digital age, providing users with personalized fashion suggestions and enhancing their
shopping experiences. As technology continues to advance, we can expect significant
developments and improvements in these systems.
The future of fashion recommendation systems holds great promise. With enhanced
personalization, algorithms will be able to analyze vast amounts of data to offer tailored
suggestions based on individual preferences, body types, and current trends. Virtual try-on
and augmented reality technologies will enable users to visualize how outfits and
accessories will look on them, boosting confidence in purchasing decisions.
Sustainability and ethics will play a vital role in fashion recommendations, with systems
taking into account factors like material sourcing, production practices, and brand values.
Contextual recommendations, integrating weather, occasions, and locations, will provide
users with more relevant suggestions.
Integration with social media platforms and user-generated content will allow fashion
recommendation systems to leverage influencers and style inspiration from friends, while
multimodal recommendations will combine various data sources to offer comprehensive
suggestions. Privacy and data security will remain paramount, with systems employing
advanced anonymization techniques, transparent data usage policies, and user-controlled
privacy settings.
Efforts to address biases and ensure diversity and inclusivity in recommendations will be
made, striving for fairness and representation. Continuous learning and feedback
mechanisms will allow systems to improve over time, incorporating user input and adapting
to changing preferences.
In conclusion, fashion recommendation systems are set to evolve into powerful tools that
not only help users discover their personal style but also contribute to a more sustainable,
inclusive, and personalized fashion industry. With ongoing advancements, these systems
will continue to enhance the way we shop for and engage with fashion, providing a seamless
and enjoyable experience for fashion enthusiasts worldwide.
41
5.2 Future Work
Fashion recommendation systems have become increasingly popular in recent years, with
many e-commerce websites and mobile apps using them to personalize product
recommendations for their users. As technology continues to advance, there are several
areas where future work can be done to improve the performance and effectiveness of
fashion recommendation systems. Here are some potential directions:
1. Incorporating more user data: One way to improve the accuracy of fashion
recommendation systems is to incorporate more data about the user, such as their browsing
and purchase history, social media activity, and even their body measurements. This can
help the system to better understand the user’s preferences and style, and make more
personalized recommendations.
2. Leveraging computer vision: With advances in computer vision technology, it’s now
possible to analyze images of clothing and accessories to identify patterns, styles, and other
features. This can help the system to make more accurate recommendations based on the
user’s visual preferences.
3. Considering sustainability and ethical factors: As consumers become more aware of the
impact of fashion on the environment and society, there is a growing demand for sustainable
and ethically produced clothing. Future fashion recommendation systems could take these
factors into account when making recommendations, and help users find products that align
with their values.
4. Exploring new recommendation techniques: There are many different algorithms and
techniques that can be used to make recommendations, and new ones are being developed
all the time. Future work could involve exploring new approaches, such as reinforcement
learning or deep learning, to improve the performance of fashion recommendation systems.
5. Integrating with virtual try-on technology: Virtual try-on technology allows users to see
how clothing and accessories would look on them before making a purchase. Future fashion
recommendation systems could integrate with virtual try-on technology to provide a more
immersive and personalized shopping experience.
7. Privacy and Data Security: As fashion recommendation systems rely on extensive user
data, privacy and data security will be critical considerations. Future developments may
include improved data anonymization techniques, transparent data usage policies, and user
controlled privacy settings to ensure trust and compliance with privacy regulations.
42
8. Mobile and Smart Devices: Fashion recommendation systems will be optimized for
mobile platforms and integrated with smart devices like smart mirrors or wearable
technology. These devices can provide real-time personalized suggestions, style advice, and
virtual try-on experiences on the go.
9. Bias and Diversity: Efforts will be made to address biases in fashion recommendation
systems, ensuring diversity and inclusivity in recommendations. Developers will work on
reducing biases related to gender, race, body type, and cultural preferences, and strive for
fairness and representation in the suggestions provided.
10. Continuous Learning and Feedback: Systems will focus on continuous learning and
improvement by actively seeking user feedback and incorporating it into their algorithms.
Users may be encouraged to rate and review recommendations, allowing the system to adapt
and refine its suggestions over time. It’s important to note that these potential developments
are speculative, and the actual future of fashion recommendation systems may vary.
43
REFERENCES
2. Chakraborty, S.; Hoque, S.M.A.; Kabir, S.M.F. Predicting fashion trend using runway
images.
3. Karmaker Santu, S.K.; Sondhi, P.; Zhai, C. On application of learning to rank for e-
commerce search.
4. Garude, D.; Khopkar, A.; Dhake, M.; Laghane, S.; Maktum, T. Skin-tone and occasion
oriented outfit recommendation system.
5. Kang, W.-C.; Fang, C.; Wang, Z.; McAuley, J. Visually-aware fashion recommendation
and design with generative image mod-els.
7. Sun, G.-L.; Wu, X.; Peng, Q. Part-based clothing image annotation by visual neighbor
retrieval.
9. Matzen, K.; Bala, K.; Snavely, N. StreetStyle: Exploring world-wide clothing styles from
millions of photos. arXiv 2017, arXiv:1706.01869.
10. Guan, C.; Qin, S.; Ling, W.; Ding, G. Apparel recommendation system evolution: An
empirical review. Int. J. Cloth. Sci. Technol. 2016, 28, 854–879, doi:10.1108/ijcst-09-2015-
0100.
44
APPENDIX
Plagiarism Report:
45
USER MANUAL
The project has a model based on machine learning, that takes a user input image and returns
similar clothes that might best suit the user’s interest and liking. To use the model, you must
add the image of your desired clothing item into the sample folder.
After this, you must run the file test.py and enter the name of the file of this image into the
terminal as shown below:
46
Fig. 11. Run the Program and enter image name
and then press enter. The output will be displayed. It will contain an array of images which
can be accessed from archive/images/ folder. Also, a window containing these images will
be displayed as given:
47