search
HomeTechnology peripheralsAIExploring Embedding Models with Vertex AI

Vector embeddings are fundamental to many advanced AI applications, including semantic search and anomaly detection. This article provides a foundational understanding of embeddings, focusing on sentence embeddings and vector representations. We'll explore practical techniques like mean pooling and cosine similarity, delve into the architecture of dual encoders using BERT, and examine their application in anomaly detection with Vertex AI for tasks such as fraud detection and content moderation.

Key Learning Objectives

  • Grasp the role of vector embeddings in representing words, sentences, and other data types within a continuous vector space.
  • Understand tokenization and how token embeddings contribute to sentence-level embeddings.
  • Learn key concepts and best practices for deploying embedding models using Vertex AI to address real-world AI challenges.
  • Discover how to optimize and scale applications with Vertex AI by integrating embedding models for enhanced analytics and decision-making.
  • Gain hands-on experience training a dual encoder model, defining its architecture and training process.
  • Implement anomaly detection using methods like Isolation Forest to identify outliers based on embedding similarity.

*This article is part of the***Data Science Blogathon.

Table of Contents

  • Understanding Vertex Embeddings
  • Sentence Embeddings Explained
  • Cosine Similarity in Sentence Embeddings
  • Training a Dual Encoder Model
  • Dual Encoders for Question-Answering
  • The Dual Encoder Training Process
  • Leveraging Embeddings with Vertex AI
  • Dataset Creation from Stack Overflow
  • Generating Text Embeddings
  • Batch Embedding Generation
  • Anomaly Identification
  • Isolation Forest for Outlier Detection
  • Conclusion
  • Frequently Asked Questions

Understanding Vertex Embeddings

Vector embeddings represent words or sentences within a defined space. The proximity of these vectors signifies similarity; closer vectors indicate greater semantic similarity. While initially used primarily in NLP, their application extends to images, videos, audio, and graphs. CLIP, a prominent multimodal learning model, generates both image and text embeddings.

Key applications of vector embeddings include:

  • LLMs utilize them as token embeddings after input token conversion.
  • Semantic search employs them to find the most relevant answers to queries.
  • In Retrieval Augmented Generation (RAG), sentence embeddings facilitate the retrieval of pertinent information chunks.
  • Recommendation systems use them to represent products and identify related items.

Let's examine the importance of sentence embeddings in RAG pipelines.

Exploring Embedding Models with Vertex AI

The retrieval engine in the above diagram identifies database information relevant to user queries. Transformer-based cross-encoders can compare queries to all information, classifying relevance. However, this is slow. Vector databases offer a faster alternative by storing embeddings and using similarity searches, though accuracy may be slightly lower.

Understanding Sentence Embeddings

Sentence embeddings are created by applying mathematical operations to token embeddings, often generated by pre-trained models like BERT or GPT. The following code demonstrates mean pooling of BERT-generated token embeddings to create sentence embeddings:

model_name = "./models/bert-base-uncased"
tokenizer = BertTokenizer.from_pretrained(model_name)
model = BertModel.from_pretrained(model_name)

def get_sentence_embedding(sentence):
    encoded_input = tokenizer(sentence, padding=True, truncation=True, return_tensors='pt')
    attention_mask = encoded_input['attention_mask']  

    with torch.no_grad():
        output = model(**encoded_input)

    token_embeddings = output.last_hidden_state
    input_mask_expanded = attention_mask.unsqueeze(-1).expand(token_embeddings.size()).float()


    sentence_embedding = torch.sum(token_embeddings * input_mask_expanded, 1) / torch.clamp(input_mask_expanded.sum(1), min=1e-9)

    return sentence_embedding.flatten().tolist()

This code loads a BERT model and defines a function to compute sentence embeddings using mean pooling.

Cosine Similarity of Sentence Embeddings

Cosine similarity measures the similarity between two vectors, making it suitable for comparing sentence embeddings. The following code implements cosine similarity and visualization:

def cosine_similarity_matrix(features):
    norms = np.linalg.norm(features, axis=1, keepdims=True)
    normalized_features = features / norms
    similarity_matrix = np.inner(normalized_features, normalized_features)
    rounded_similarity_matrix = np.round(similarity_matrix, 4)
    return rounded_similarity_matrix

def plot_similarity(labels, features, rotation):
    sim = cosine_similarity_matrix(features)
    sns.set_theme(font_scale=1.2)
    g = sns.heatmap(sim, xticklabels=labels, yticklabels=labels, vmin=0, vmax=1, cmap="YlOrRd")
    g.set_xticklabels(labels, rotation=rotation)
    g.set_title("Semantic Textual Similarity")
    return g

messages = [
    # Technology
    "I prefer using a MacBook for work.",
    "Is AI taking over human jobs?",
    "My laptop battery drains too quickly.",

    # Sports
    "Did you watch the World Cup finals last night?",
    "LeBron James is an incredible basketball player.",
    "I enjoy running marathons on weekends.",

    # Travel
    "Paris is a beautiful city to visit.",
    "What are the best places to travel in summer?",
    "I love hiking in the Swiss Alps.",

    # Entertainment
    "The latest Marvel movie was fantastic!",
    "Do you listen to Taylor Swift's songs?",
    "I binge-watched an entire season of my favorite series.",

]
embeddings = []
for t in messages:
    emb = get_sentence_embedding(t)
    embeddings.append(emb)

plot_similarity(messages, embeddings, 90)

This code defines sentences, generates embeddings, and plots a heatmap showing their cosine similarity. The results might show unexpectedly high similarity, motivating the exploration of more accurate methods like dual encoders.

(The remaining sections continue in a similar manner, paraphrasing and restructuring the original text while maintaining the core information and preserving the image locations and formats.)

The above is the detailed content of Exploring Embedding Models with Vertex AI. For more information, please follow other related articles on the PHP Chinese website!

Statement
The content of this article is voluntarily contributed by netizens, and the copyright belongs to the original author. This site does not assume corresponding legal responsibility. If you find any content suspected of plagiarism or infringement, please contact admin@php.cn
Most Used 10 Power BI Charts - Analytics VidhyaMost Used 10 Power BI Charts - Analytics VidhyaApr 16, 2025 pm 12:05 PM

Harnessing the Power of Data Visualization with Microsoft Power BI Charts In today's data-driven world, effectively communicating complex information to non-technical audiences is crucial. Data visualization bridges this gap, transforming raw data i

Expert Systems in AIExpert Systems in AIApr 16, 2025 pm 12:00 PM

Expert Systems: A Deep Dive into AI's Decision-Making Power Imagine having access to expert advice on anything, from medical diagnoses to financial planning. That's the power of expert systems in artificial intelligence. These systems mimic the pro

Three Of The Best Vibe Coders Break Down This AI Revolution In CodeThree Of The Best Vibe Coders Break Down This AI Revolution In CodeApr 16, 2025 am 11:58 AM

First of all, it’s apparent that this is happening quickly. Various companies are talking about the proportions of their code that are currently written by AI, and these are increasing at a rapid clip. There’s a lot of job displacement already around

Runway AI's Gen-4: How Can AI Montage Go Beyond AbsurdityRunway AI's Gen-4: How Can AI Montage Go Beyond AbsurdityApr 16, 2025 am 11:45 AM

The film industry, alongside all creative sectors, from digital marketing to social media, stands at a technological crossroad. As artificial intelligence begins to reshape every aspect of visual storytelling and change the landscape of entertainment

How to Enroll for 5 Days ISRO AI Free Courses? - Analytics VidhyaHow to Enroll for 5 Days ISRO AI Free Courses? - Analytics VidhyaApr 16, 2025 am 11:43 AM

ISRO's Free AI/ML Online Course: A Gateway to Geospatial Technology Innovation The Indian Space Research Organisation (ISRO), through its Indian Institute of Remote Sensing (IIRS), is offering a fantastic opportunity for students and professionals to

Local Search Algorithms in AILocal Search Algorithms in AIApr 16, 2025 am 11:40 AM

Local Search Algorithms: A Comprehensive Guide Planning a large-scale event requires efficient workload distribution. When traditional approaches fail, local search algorithms offer a powerful solution. This article explores hill climbing and simul

OpenAI Shifts Focus With GPT-4.1, Prioritizes Coding And Cost EfficiencyOpenAI Shifts Focus With GPT-4.1, Prioritizes Coding And Cost EfficiencyApr 16, 2025 am 11:37 AM

The release includes three distinct models, GPT-4.1, GPT-4.1 mini and GPT-4.1 nano, signaling a move toward task-specific optimizations within the large language model landscape. These models are not immediately replacing user-facing interfaces like

The Prompt: ChatGPT Generates Fake PassportsThe Prompt: ChatGPT Generates Fake PassportsApr 16, 2025 am 11:35 AM

Chip giant Nvidia said on Monday it will start manufacturing AI supercomputers— machines that can process copious amounts of data and run complex algorithms— entirely within the U.S. for the first time. The announcement comes after President Trump si

See all articles

Hot AI Tools

Undresser.AI Undress

Undresser.AI Undress

AI-powered app for creating realistic nude photos

AI Clothes Remover

AI Clothes Remover

Online AI tool for removing clothes from photos.

Undress AI Tool

Undress AI Tool

Undress images for free

Clothoff.io

Clothoff.io

AI clothes remover

AI Hentai Generator

AI Hentai Generator

Generate AI Hentai for free.

Hot Article

R.E.P.O. Energy Crystals Explained and What They Do (Yellow Crystal)
4 weeks agoBy尊渡假赌尊渡假赌尊渡假赌
R.E.P.O. Best Graphic Settings
4 weeks agoBy尊渡假赌尊渡假赌尊渡假赌
R.E.P.O. How to Fix Audio if You Can't Hear Anyone
1 months agoBy尊渡假赌尊渡假赌尊渡假赌
R.E.P.O. Chat Commands and How to Use Them
1 months agoBy尊渡假赌尊渡假赌尊渡假赌

Hot Tools

Atom editor mac version download

Atom editor mac version download

The most popular open source editor

MinGW - Minimalist GNU for Windows

MinGW - Minimalist GNU for Windows

This project is in the process of being migrated to osdn.net/projects/mingw, you can continue to follow us there. MinGW: A native Windows port of the GNU Compiler Collection (GCC), freely distributable import libraries and header files for building native Windows applications; includes extensions to the MSVC runtime to support C99 functionality. All MinGW software can run on 64-bit Windows platforms.

EditPlus Chinese cracked version

EditPlus Chinese cracked version

Small size, syntax highlighting, does not support code prompt function

Dreamweaver Mac version

Dreamweaver Mac version

Visual web development tools

Notepad++7.3.1

Notepad++7.3.1

Easy-to-use and free code editor