Semantic Search - bounswe/bounswe2022group1 GitHub Wiki
1 - Introduction
Semantic Search in essence denotes search considering meaning of the query. "Meaning" has a highly broad definition and while explaining its definition, we should keep in mind its meaning related to human experiences of "meaning". So, what determines the meaning of a sentence or word in human interactions?
1.1 - Context
The first thing that comes to mind is context. So, in a conversation, every word or sentence is interrelated with previous and future words or sentences. When someone tells you that she is sad and then continues explaining how the sorrow of her grandmother's death affected her, you immediately realize that the reason for her sadness is at least partially the loss of a beloved one. Such an approach including the contextual understanding is immediate to humans. But this is not so for search engines up until the advent of semantic search engines.
1.2 - Location
Another important aspect of meaning is "location". Location shapes the culture, understanding and thinking of humans. Moreover it directly or indirectly affects the queries. When one searches for "election results", she is possibly asking for the election results in her present location, not in a far away country.
1.3 - Synonyms
As location, synonyms are also important in semantic search, since one meaning may be satisfied by multiple words. Moreover, the same query may be stated by a completely different sentence. The apparent value of the collective meaning of the sentence is evident to humans. The same is expected in semantic searching.
1.4 - Semantic Search vs. Lexical Search: How they differ?
Well before the semantic search engines, queries were done according to the lexical structure of the queried words. That means, if you search for "subway station" in Google for example, then it was showing you the instances partially or fully containing "subway station". Now in my Google search engine, in such a query, I am seeing the results "Nisbetiye Station", "Etiler Station" and "Hisarüstü Station". This is because I live in Hisarüstü and my relevant subway stations are naturally those above.
Search engines either use lexical search or semantic search. It is important to notice that semantic search partially includes the lexical search, since the appearance of words, the lexical presence is inherently meaningful. Yet, semantic search may be well thought of the superset of lexical search, a more advanced searching paradigm.
2 - Use Cases of Semantic Search
Below, we summarize 8 of the most notable semantic search use cases.
2.1 - Related searches/queries
Denotes the response of search engine where it offers similar or related results. For example, if you query for apples, it may well offer you results of other fruits.
2.2 - Reference results.
Denotes the response where the engine shows the reference results/dictionary definitions from Britannica, wikipedia or a dictionary etc. Google does that, simply query "Wordle", for example.
2.3 - Semantically annotated results
Where the search engine understands and annotate the results in PDF for your specific query. For example, if your search is found in some book, Google may show you such specific content with highlight on specific parts.
2.4 - Full-text similarity search
When you query for a full article instead of a sentence consisting of few keywords, what the engine does is full-text similarity research.
2.5 - Search on semantic/syntactic annotations
You may search for pdf's in google for example. This is a syntactic annotation and you may search for that.
2.6 - Concept search
Concepts are broader category than words. When you query for subway and you get results containing metro rather than subway, what you are getting now is the concept based search.
2.7 - Ontology-based search
A broader category than Concept search. Here the engine understands the alleged purpose of the question. When you ask "what do dogs chase off?", it may show you the content related to cats.
2.8 - Semantic Web search
A very advanced method which is not in use know. It makes use of all the data on the internet and their relations.
3 - How Semantic Search is Important to Online Learning Platform
As simple as it seems, the semantic search in such a platform should make use of context, location and synonyms that are available. In this respect, user interests, location and all the relevant data are important. Previously followed or queried courses are important in the upcoming queries.
3.1 - Examples
Related to the OLP, below are some examples showing showing the purpose and role of the semantic search vividly:
- When you search "Machine Learning", it should also show queries related to "Artificial Intelligence".
- When you search "MongoDB", it should also show queries related to "Database Systems".
- When you search "elections", it should also show queries related to "elections" in your local place.
References:
https://towardsdatascience.com/semantic-search-73fa1177548f
https://en.wikipedia.org/wiki/Semantic_Web
https://www.searchenginewatch.com/2019/12/16/the-beginners-guide-to-semantic-search/
https://www.w3.org/2001/sw/sweo/public/UseCases/Faviki/
https://www.informationweek.com/government/breakthrough-analysis-two-nine-types-of-semantic-search