-
Notifications
You must be signed in to change notification settings - Fork 8
Semantic Search
Semantic search is the process that search engines used to analyze and understand the meaning behind the search text by combining the user intent with the context of the words. It analyzes how the words are related to each other to be able to give the best result for a user search. Since it aims to give personalized, best-fitted results, it both stores and uses the users and their queries. Actually, with the help of semantic search, we can say that search engines (like Google) understand our informal, natural expressions better than a query consisting of only keywords in an unnatural way.
A good example from the "granwehr" website [2]:
Let's say that you want to remember the name of "The Lord of the Rings" movie by just googling it. If you type "What is the movie with the elves and the ring?", even if you don't use the "The Lord of the Rings" keyword phrase in the search query, Google will understand your intent. It will conclude that you are trying to find a movie and it will match this question with the focused keywords like "elves" and "ring". Google has already known the relation between elves and rings from the previous queries and index results. When it is combined with the "movie" keyword that you search for, it is able to directly serve you "The Lord of the Rings" movie.
How does Google accomplish this? It uses machine learning. As I just said, Google stores and uses the previous queries, search results, clicks and so on to analyze its search engine performance. Even if the current user hasn't searched anything before, Google can extract meaning from the search query and understand the intent by comparing it with similar ones. Google essentially learns the relation between the words over time and uses these relations while we're searching.
Sources:
1- https://granwehr.com/blog/semantic-search
2- https://www.perfectsearchmedia.com/blog/semantic-search-why-search-intent-matters-seo
Research by: Bahrican Yesil
Semantic search corresponds to searching with meaning. It intends to determine the
intent and contextual meaning of the words used for a search.
Intent consists of several factors like the user's search history and location.
In our conversations, we depend on contextual elements like time, location, partner’s
background knowledge, and depth of relationship. Like us, semantic search tries to
understand the query using contextual elements. Thus, we can search while using a
human-like language.
It is shown that the average user has a better searching experience while semantic
search is used compared to lexical search which only matches words. It is especially
helpful when users are browsing your products and not looking for a specific piece of
information. Moreover, the Personalized experience of semantic search adds an
incredible value to an advertisement.
The internet consists of many websites and every single one of them stores its
content in a different manner. In addition to that, data easily understandable by
humans like videos and articles has no structure for a computer to analyze. That is
the main challenge of semantics search: processing and ordering unordered data
which makes zero sense to computers.
At the early days of semantic search, developers were expected to provide semantic mappings embedded in their websites. So that, search engines could analyse semantic mapping of the query and match it with web data. This would in the end result in creating a semantic map for every single piece of data in the Internet. Imagine all those wasted hours of human life!
Thankfully with the upcoming boom of machine learning, developers were released of the burden. Rapidly developed natural language processing technology is able to generate contextual map of articles, whereas, voice recognition, and computer vision techniques are able to understand videos. Thus, by combining all of these results, semantic map of a website can be generated by another machine learning algorithm. Now that context of every website ever is known, we just need to match them to the users query. To do so, users search is also gone through semantic analysis Semantic Search 2 performed by another NLP algorithm and websites matching users query are found and they are sorted by using the users previous searches, popularity, location, and some other factors.
As you can guess, this state of art semantic search process is extremely computation expensive. Thus, its beneficial to use a cloud service to perform semantic search for those who can not afford that much computation. Luckily there are some cloud services like Azure provide this service for data the user wishes.
Sources:
1- https://www.bloomreach.com/en/blog/2019/semantic-search-explained-in-5-minutes
2- https://www.youtube.com/watch?v=d_6ZNyV1MvA
Research by: Batuhan Celik
Google's Hummingbird algorithm had a direct influence on SEO and helped to the development of new best practices and suggestions. Content developed for SEO purposes had to be constructed around specified keyword-to-word-count ratios before semantic searches became a reality. However, nowadays, the focus is on the content's relevancy and how well it reflects how people use language in their daily lives. In other words, even if the end goal is SEO, meaningful material must now be created for people rather than search engines.
To improve positioning, content creators should avoid keyword stuffing and instead employ long-tail keywords and synonyms, which are now recognized by search engines that perform semantic analysis.
Finally, because semantic code is so important, website owners and digital marketers are advised to consider specific technical aspects of SEO. This may be accomplished by including semantic HTML and schema markup to aid in SEO placement.
Developers and SEO specialists now have access to technologies that employ semantic analysis to assist them develop user-relevant content that is optimized. These tools often function by recommending words and phrases that are compatible with Google's semantic analysis methodology.
Sources:
1- https://www.seobility.net/en/wiki/Semantic_Search
2- https://www.hillwebcreations.com/what-is-semantic-search/
Research by: Enes Sürmeli
Intent is based on a mix of factors, such as location or the user's past history.
Along with creating links between the words in the query, this personalizes the search to make the experience relevant to your user.
Us humans rely on context in the real world, while speaking and interacting. If I were to ask you, “Do you like this article?", and then I got a little insecure and pressed again with “Oh yeah? What do you like about it?” You would know that “it” is referring to the article.
The impact of context in our daily conversations is endless because it's not only linked to what has been previously said or what followed.
In fact, setting and time in which the conversation takes place, the people's background knowledge, the level of relationship they have established, all play a role in conversations.
These are the types of contextual attributes that semantic search is emulating.
That's the reason why when you type in "restaurants" on your search engine, it gives you a list of restaurants nearby.
In a way, this is to smooth the transition between the way users interact with people versus the way they interact with search results.
So, semantic search adds a level of understanding to queries, but these algorithms also have learning patterns.
Through bounce rates, conversion rates, and other types of indicators, these algorithms can improve user satisfaction, to better match keywords and pages.
Semantic Search is, therefore, strongly linked to Machine Learning, in that it uses past data and trial-and-error patterns to enhance your user's experience.
Sources:
https://www.bloomreach.com/en/blog/2019/semantic-search-explained-in-5-minutes Very very detailed website about Semantic Search: https://www.holisticseo.digital/theoretical-seo/semantic-search/
Useful video links about Semantic Search: https://www.youtube.com/watch?v=lF_Cpfm0EIo
Semantic vs Traditional Search: https://www.infodesk.com/life-sciences/semantic-vs-keyword-search/#:~:text=In%20results%20of%20traditional%20keyword,the%20knowledgebase%20of%20predefined%20vocabularies
Research by: Egemen Atik
To deliver the most accurate search results, semantic search considers the intent, query context, and word connections.
In order to reach this goal, a semantic coding using semantic HTML is the main tool for the coders. The key subjects of a paper would be mapped out using H1-H6 subheadings. Other HTML tags would provide more contextual information, in other words a semantic result. These tags assist all types of computers in better comprehending and communicating information found on a web page. Using semantic tags increases the HTML code’s readability and accessibility. Here are some semantic tags of HTML listed below:
Semantic Tag | Use |
---|---|
<article> | - Defines independent, self-contained content |
<aside> | - Defines content aside from the page content |
<details> | - Defines additional details that the user can view or hide |
<figcaption> | - Defines a caption for a element |
<figure> | - Specifies self-contained content, like illustrations, diagrams, photos, code listings, etc. |
<footer> | - Specifies self-contained content, like illustrations, diagrams, photos, code listings, etc. |
<header> | - Specifies a header for a document or section |
<main> | - Specifies the main content of a document |
<mark> | - Defines marked/highlighted text |
<nav> | - Defines navigation links |
<section> | - Defines a section in a document |
<summary> | - Defines a visible heading for a <details> element |
<time> | - Defines a date/time |
Sources:
1- https://www.searchenginewatch.com/2019/12/16/the-beginners-guide-to-semantic-search/
2- https://www.w3schools.com/html/html5_semantic_elements.asp
Research by: Altay Acar
The word "semantic" refers to the meaning or essence of something. Applied to search, "semantics" essentially relates to the study of words and their logic. Semantic search seeks to improve search accuracy by understanding a searcher’s intent through contextual meaning. Through concept matching, synonyms, and natural language algorithms, semantic search provides more interactive search results through transforming structured and unstructured data into an intuitive and responsive database. Semantic search brings about an enhanced understanding of searcher intent, the ability to extract answers, and delivers more personalized results. Google’s Knowledge Graph is a paradigm of proficiency in semantic search.
The theory of semantic search goes as far back as 2003, and a paper written by R. Guha et al., of IBM, Stanford, and W3C.It took a while to get from theory to practice, but ten years later (2013), we saw the first major breakthrough in semantic search for the common man. It was called the Hummingbird update.
Resources:
https://moz.com/blog/what-is-semantic-search
https://www.crazyegg.com/blog/everything-about-semantic-search/
Research By: Onur Kömürcü
If we look at semantic search as a whole, the following variables influence how it works:
1 - The search intent of a user.
The word "search intent" relates to the rationale for your inquiry (or, to put it another way, why you Google something). Most of the time, you want to purchase, locate, or learn something.
For example, because the intent is rather broad, if I search for "content marketing," Google returns results that revolve around the definition of content marketing:
- What is content marketing?
- What is the role of content marketing?
- What is the content marketing and how does it work?
However, if we instead search "How do I get started with content marketing", Google does not provide definitions of content marketing, because the intent is different: - Is content marketing easy?
- What are the best ways to do content marketing?
The important takeaway for all content marketers and SEOs is that while choosing keywords and developing content, you need to think about search intent a lot. Even if your content ranks well, if it doesn't fit the user's search intent, the user will abandon the page, which is bad for conversions.
2 - All search keywords' semantic meaning.
Semantics, or the study of the meaning of words and phrases in certain situations and the relationships between them, inspired the term "semantic search." Semantics relates to the relationship between a search query, related words, and the content on website pages when it comes to search.
All of those factors combined help search engines understand what the search queries mean beyond a literal translation, so it can display results that are related to the context.
For example, if you search for "wedding dresses", the words related to that might include "wedding", "cake", "bride", and "dream". When the search is for "dresses", the related words might be "beautiful", "knee-length", and so on.
3- Featured snippets.
Featured snippets are based on providing the most direct and helpful answer to the searcher.
4- Rich results.
These affect semantic search as well through content such as images, and you'll see how in the example in the next section.
5 - Voice search.
Voice search queries are usually very direct, include natural language, longer phrases, and question words that lends to how search engines process results.
Sources: https://blog.hubspot.com/marketing/semantic-search
https://www.bloomreach.com/en/blog/2019/semantic-search-explained-in-5-minutes
Research By: Ecenur Sezer
Semantic search is an alternative to the lexical search where we try to improve
accuracy by understanding the terms in contextual meaning. Semantic search
yields more precise results with natural language queries.
Most likely we will use artifical intelligence for this task.
Here are some repos I found which might help us implementing this feature:
https://github.com/github/codesearchnet
https://github.com/neuml/txtai
https://github.com/neuml/txtai.js
https://github.com/nipun24/semantic-search-stackoverflow
Research by: Ahmet Yiğit Özdoğan
Group Members
Meeting Notes of 451
Mobile Team Meeting Notes
Back-End Team Meeting Notes
Front-End Team Meeting Notes
Meeting Notes of 352
- Meeting #1 (04.03.2022)
- Meeting #2 (10.03.2022)
- Meeting #3 (17.03.2022)
- Meeting #4 (24.03.2022)
- Meeting #5 (31.03.2022)
- Meeting #5.1 (02.04.2022)
- Meeting #5.2 (05.04.2022)
- Meeting #6 (07.04.2022)
- Meeting #6.1 (12.04.2022)
- Meeting #7 (14.04.2022)
- Meeting #8 (21.04.2022)
- Meeting #9 (01.05.2022)
- Meeting #10 (12.05.2022)
- Practice App Requirements
- Practice App Use Case Diagram
- Practice App Sequence Diagram
- Practice App API Documentation
CMPE451 Milestones
- Will be added when ready