From 4732074edbb509497af307de9b5d8ec533cd0e7b Mon Sep 17 00:00:00 2001 From: Humbulani Date: Wed, 1 Jan 2025 15:51:58 +0200 Subject: [PATCH 1/5] migrating from Keras2 to Keras3 --- examples/nlp/multimodal_entailment.py | 120 ++++++++------------------ 1 file changed, 38 insertions(+), 82 deletions(-) diff --git a/examples/nlp/multimodal_entailment.py b/examples/nlp/multimodal_entailment.py index 5f65ecb64f..6c9d319ce3 100644 --- a/examples/nlp/multimodal_entailment.py +++ b/examples/nlp/multimodal_entailment.py @@ -54,9 +54,9 @@ import os import tensorflow as tf -import tensorflow_hub as hub -import tensorflow_text as text -from tensorflow import keras +import keras +from keras_hub.src.models.bert.bert_backbone import BertBackbone +from keras_hub.src.models.bert.bert_text_classifier_preprocessor import BertTextClassifierPreprocessor """ ## Define a label map @@ -199,72 +199,24 @@ def visualize(idx): """ ## Data input pipeline -TensorFlow Hub provides -[variety of BERT family of models](https://www.tensorflow.org/text/tutorials/bert_glue#loading_models_from_tensorflow_hub). +Keras Hub provides +[variety of BERT family of models](https://keras.io/keras_hub/presets/). Each of those models comes with a corresponding preprocessing layer. You can learn more about these models and their preprocessing layers from -[this resource](https://www.tensorflow.org/text/tutorials/bert_glue#loading_models_from_tensorflow_hub). +[this resource](https://www.kaggle.com/models/keras/bert/keras/bert_base_en_uncased/2). -To keep the runtime of this example relatively short, we will use a smaller variant of +To keep the runtime of this example relatively short, we will use a base_unacased variant of the original BERT model. """ -# Define TF Hub paths to the BERT encoder and its preprocessor -bert_model_path = ( - "https://tfhub.dev/tensorflow/small_bert/bert_en_uncased_L-2_H-256_A-4/1" -) -bert_preprocess_path = "https://tfhub.dev/tensorflow/bert_en_uncased_preprocess/3" - """ -Our text preprocessing code mostly comes from -[this tutorial](https://www.tensorflow.org/text/tutorials/bert_glue). -You are highly encouraged to check out the tutorial to learn more about the input -preprocessing. +text preprocessing using KerasHub """ - -def make_bert_preprocessing_model(sentence_features, seq_length=128): - """Returns Model mapping string features to BERT inputs. - - Args: - sentence_features: A list with the names of string-valued features. - seq_length: An integer that defines the sequence length of BERT inputs. - - Returns: - A Keras Model that can be called on a list or dict of string Tensors - (with the order or names, resp., given by sentence_features) and - returns a dict of tensors for input to BERT. - """ - - input_segments = [ - tf.keras.layers.Input(shape=(), dtype=tf.string, name=ft) - for ft in sentence_features - ] - - # Tokenize the text to word pieces. - bert_preprocess = hub.load(bert_preprocess_path) - tokenizer = hub.KerasLayer(bert_preprocess.tokenize, name="tokenizer") - segments = [tokenizer(s) for s in input_segments] - - # Optional: Trim segments in a smart way to fit seq_length. - # Simple cases (like this example) can skip this step and let - # the next step apply a default truncation to approximately equal lengths. - truncated_segments = segments - - # Pack inputs. The details (start/end token ids, dict of output tensors) - # are model-dependent, so this gets loaded from the SavedModel. - packer = hub.KerasLayer( - bert_preprocess.bert_pack_inputs, - arguments=dict(seq_length=seq_length), - name="packer", +text_preprocessor = BertTextClassifierPreprocessor.from_preset( + "bert_base_en_uncased" ) - model_inputs = packer(truncated_segments) - return keras.Model(input_segments, model_inputs) - - -bert_preprocess_model = make_bert_preprocessing_model(["text_1", "text_2"]) -keras.utils.plot_model(bert_preprocess_model, show_shapes=True, show_dtype=True) """ ### Run the preprocessor on a sample input @@ -276,16 +228,16 @@ def make_bert_preprocessing_model(sentence_features, seq_length=128): print(f"Text 1: {sample_text_1}") print(f"Text 2: {sample_text_2}") -test_text = [np.array([sample_text_1]), np.array([sample_text_2])] -text_preprocessed = bert_preprocess_model(test_text) +test_text = [sample_text_1, sample_text_2] +text_preprocessed = text_preprocessor(test_text) print("Keys : ", list(text_preprocessed.keys())) -print("Shape Word Ids : ", text_preprocessed["input_word_ids"].shape) -print("Word Ids : ", text_preprocessed["input_word_ids"][0, :16]) -print("Shape Mask : ", text_preprocessed["input_mask"].shape) -print("Input Mask : ", text_preprocessed["input_mask"][0, :16]) -print("Shape Type Ids : ", text_preprocessed["input_type_ids"].shape) -print("Type Ids : ", text_preprocessed["input_type_ids"][0, :16]) +print("Shape Token Ids : ", text_preprocessed["token_ids"].shape) +print("Token Ids : ", text_preprocessed["token_ids"][0, :16]) +print(" Shape Padding Mask : ", text_preprocessed["padding_mask"].shape) +print("Padding Mask : ", text_preprocessed["padding_mask"][0, :16]) +print("Shape Segment Ids : ", text_preprocessed["segment_ids"].shape) +print("Segment Ids : ", text_preprocessed["segment_ids"][0, :16]) """ @@ -314,7 +266,7 @@ def dataframe_to_dataset(dataframe): """ resize = (128, 128) -bert_input_features = ["input_word_ids", "input_type_ids", "input_mask"] +bert_input_features = ["padding_mask", "segment_ids", "token_ids"] def preprocess_image(image_path): @@ -332,7 +284,7 @@ def preprocess_image(image_path): def preprocess_text(text_1, text_2): text_1 = tf.convert_to_tensor([text_1]) text_2 = tf.convert_to_tensor([text_2]) - output = bert_preprocess_model([text_1, text_2]) + output = text_preprocessor((text_1, text_2)) output = {feature: tf.squeeze(output[feature]) for feature in bert_input_features} return output @@ -341,7 +293,13 @@ def preprocess_text_and_image(sample): image_1 = preprocess_image(sample["image_1_path"]) image_2 = preprocess_image(sample["image_2_path"]) text = preprocess_text(sample["text_1"], sample["text_2"]) - return {"image_1": image_1, "image_2": image_2, "text": text} + return { + 'image_1': image_1, + 'image_2': image_2, + 'padding_mask': text['padding_mask'], + 'segment_ids': text['segment_ids'], + 'token_ids': text['token_ids'], + } """ @@ -406,7 +364,7 @@ def project_embeddings( ): projected_embeddings = keras.layers.Dense(units=projection_dims)(embeddings) for _ in range(num_projection_layers): - x = tf.nn.gelu(projected_embeddings) + x = keras.ops.nn.gelu(projected_embeddings) x = keras.layers.Dense(projection_dims)(x) x = keras.layers.Dropout(dropout_rate)(x) x = keras.layers.Add()([projected_embeddings, x]) @@ -460,18 +418,16 @@ def create_vision_encoder( def create_text_encoder( num_projection_layers, projection_dims, dropout_rate, trainable=False ): - # Load the pre-trained BERT model to be used as the base encoder. - bert = hub.KerasLayer( - bert_model_path, - name="bert", - ) + # Load the pre-trained BERT BackBone using KerasHub. + bert = BertBackbone.from_preset('bert_base_en_uncased', num_classes=3) + # Set the trainability of the base encoder. bert.trainable = trainable # Receive the text as inputs. - bert_input_features = ["input_type_ids", "input_mask", "input_word_ids"] + bert_input_features = ["padding_mask", "segment_ids", "token_ids"] inputs = { - feature: keras.Input(shape=(128,), dtype=tf.int32, name=feature) + feature: keras.Input(shape=(512,), dtype=tf.int32, name=feature) for feature in bert_input_features } @@ -503,12 +459,12 @@ def create_multimodal_model( image_2 = keras.Input(shape=(128, 128, 3), name="image_2") # Receive the text as inputs. - bert_input_features = ["input_type_ids", "input_mask", "input_word_ids"] + bert_input_features = ["padding_mask", "segment_ids", "token_ids"] text_inputs = { - feature: keras.Input(shape=(128,), dtype=tf.int32, name=feature) + feature: keras.Input(shape=(512,), dtype=tf.int32, name=feature) for feature in bert_input_features } - + text_inputs = list(text_inputs.values()) # Create the encoders. vision_encoder = create_vision_encoder( num_projection_layers, projection_dims, dropout_rate, vision_trainable @@ -524,7 +480,7 @@ def create_multimodal_model( # Concatenate the projections and pass through the classification layer. concatenated = keras.layers.Concatenate()([vision_projections, text_projections]) outputs = keras.layers.Dense(3, activation="softmax")(concatenated) - return keras.Model([image_1, image_2, text_inputs], outputs) + return keras.Model([image_1, image_2, *text_inputs], outputs) multimodal_model = create_multimodal_model() @@ -542,7 +498,7 @@ def create_multimodal_model( """ multimodal_model.compile( - optimizer="adam", loss="sparse_categorical_crossentropy", metrics="accuracy" + optimizer="adam", loss="sparse_categorical_crossentropy", metrics=["accuracy"] ) history = multimodal_model.fit(train_ds, validation_data=validation_ds, epochs=10) From d45aec430bc165bfa3a1db07cd515df81cc3b7ed Mon Sep 17 00:00:00 2001 From: Humbulani Date: Wed, 1 Jan 2025 20:50:55 +0200 Subject: [PATCH 2/5] rectifying imports and linting --- examples/nlp/multimodal_entailment.py | 23 ++++++++++++----------- 1 file changed, 12 insertions(+), 11 deletions(-) diff --git a/examples/nlp/multimodal_entailment.py b/examples/nlp/multimodal_entailment.py index 6c9d319ce3..26353cc47e 100644 --- a/examples/nlp/multimodal_entailment.py +++ b/examples/nlp/multimodal_entailment.py @@ -55,8 +55,7 @@ import tensorflow as tf import keras -from keras_hub.src.models.bert.bert_backbone import BertBackbone -from keras_hub.src.models.bert.bert_text_classifier_preprocessor import BertTextClassifierPreprocessor +import keras_hub """ ## Define a label map @@ -214,9 +213,9 @@ def visualize(idx): text preprocessing using KerasHub """ -text_preprocessor = BertTextClassifierPreprocessor.from_preset( - "bert_base_en_uncased" - ) +text_preprocessor = keras_hub.src.models.bert.bert_text_classifier_preprocessor.BertTextClassifierPreprocessor.from_preset( + "bert_base_en_uncased" +) """ ### Run the preprocessor on a sample input @@ -294,11 +293,11 @@ def preprocess_text_and_image(sample): image_2 = preprocess_image(sample["image_2_path"]) text = preprocess_text(sample["text_1"], sample["text_2"]) return { - 'image_1': image_1, - 'image_2': image_2, - 'padding_mask': text['padding_mask'], - 'segment_ids': text['segment_ids'], - 'token_ids': text['token_ids'], + "image_1": image_1, + "image_2": image_2, + "padding_mask": text["padding_mask"], + "segment_ids": text["segment_ids"], + "token_ids": text["token_ids"], } @@ -419,7 +418,9 @@ def create_text_encoder( num_projection_layers, projection_dims, dropout_rate, trainable=False ): # Load the pre-trained BERT BackBone using KerasHub. - bert = BertBackbone.from_preset('bert_base_en_uncased', num_classes=3) + bert = keras_hub.src.models.bert.bert_backbone.BertBackbone.from_preset( + "bert_base_en_uncased", num_classes=3 + ) # Set the trainability of the base encoder. bert.trainable = trainable From 21b765776b3712620c927d03a46105afae7712af Mon Sep 17 00:00:00 2001 From: Humbulani Date: Fri, 3 Jan 2025 14:58:55 +0200 Subject: [PATCH 3/5] generating .ipynb and .md files for the multimodal_entailment --- .../multimodal_entailment_14_0.png | Bin 31318 -> 36046 bytes .../multimodal_entailment_14_2.png | Bin 24368 -> 77896 bytes .../nlp/ipynb/multimodal_entailment.ipynb | 151 ++-- examples/nlp/md/multimodal_entailment.md | 758 ++++++++++++------ examples/nlp/multimodal_entailment.py | 35 +- 5 files changed, 575 insertions(+), 369 deletions(-) diff --git a/examples/nlp/img/multimodal_entailment/multimodal_entailment_14_0.png b/examples/nlp/img/multimodal_entailment/multimodal_entailment_14_0.png index c8c0ae2d3b94867bc72b10bbe50c94a4f2a98a07..8505f1f8fe881b80389bf9b54992629993ea97a7 100644 GIT binary patch literal 36046 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ª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≶5cPme-UU~b0agpe+Vi8z7w)mpA8F| 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 diff --git a/examples/nlp/img/multimodal_entailment/multimodal_entailment_14_2.png b/examples/nlp/img/multimodal_entailment/multimodal_entailment_14_2.png index 4037a062f233539b02bab15715021f05ae147521..26da681f2c4793840b551045fd1d1cea9ad6a95e 100644 GIT binary patch literal 77896 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 literal 24368 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 diff --git a/examples/nlp/ipynb/multimodal_entailment.ipynb b/examples/nlp/ipynb/multimodal_entailment.ipynb index 06427b342a..5068fa6518 100644 --- a/examples/nlp/ipynb/multimodal_entailment.ipynb +++ b/examples/nlp/ipynb/multimodal_entailment.ipynb @@ -10,7 +10,7 @@ "\n", "**Author:** [Sayak Paul](https://twitter.com/RisingSayak)
\n", "**Date created:** 2021/08/08
\n", - "**Last modified:** 2021/08/15
\n", + "**Last modified:** 2025/01/03
\n", "**Description:** Training a multimodal model for predicting entailment." ] }, @@ -82,13 +82,12 @@ "from sklearn.model_selection import train_test_split\n", "import matplotlib.pyplot as plt\n", "import pandas as pd\n", - "import numpy as np\n", + "import random\n", "import os\n", "\n", "import tensorflow as tf\n", - "import tensorflow_hub as hub\n", - "import tensorflow_text as text\n", - "from tensorflow import keras" + "import keras\n", + "import keras_hub" ] }, { @@ -265,10 +264,10 @@ " print(f\"Label: {label}\")\n", "\n", "\n", - "random_idx = np.random.choice(len(df))\n", + "random_idx = random.choice(range(len(df)))\n", "visualize(random_idx)\n", "\n", - "random_idx = np.random.choice(len(df))\n", + "random_idx = random.choice(range(len(df)))\n", "visualize(random_idx)" ] }, @@ -335,42 +334,24 @@ "source": [ "## Data input pipeline\n", "\n", - "TensorFlow Hub provides\n", - "[variety of BERT family of models](https://www.tensorflow.org/text/tutorials/bert_glue#loading_models_from_tensorflow_hub).\n", + "Keras Hub provides\n", + "[variety of BERT family of models](https://keras.io/keras_hub/presets/).\n", "Each of those models comes with a\n", "corresponding preprocessing layer. You can learn more about these models and their\n", "preprocessing layers from\n", - "[this resource](https://www.tensorflow.org/text/tutorials/bert_glue#loading_models_from_tensorflow_hub).\n", + "[this resource](https://www.kaggle.com/models/keras/bert/keras/bert_base_en_uncased/2).\n", "\n", - "To keep the runtime of this example relatively short, we will use a smaller variant of\n", + "To keep the runtime of this example relatively short, we will use a base_unacased variant of\n", "the original BERT model." ] }, - { - "cell_type": "code", - "execution_count": 0, - "metadata": { - "colab_type": "code" - }, - "outputs": [], - "source": [ - "# Define TF Hub paths to the BERT encoder and its preprocessor\n", - "bert_model_path = (\n", - " \"https://tfhub.dev/tensorflow/small_bert/bert_en_uncased_L-2_H-256_A-4/1\"\n", - ")\n", - "bert_preprocess_path = \"https://tfhub.dev/tensorflow/bert_en_uncased_preprocess/3\"" - ] - }, { "cell_type": "markdown", "metadata": { "colab_type": "text" }, "source": [ - "Our text preprocessing code mostly comes from\n", - "[this tutorial](https://www.tensorflow.org/text/tutorials/bert_glue).\n", - "You are highly encouraged to check out the tutorial to learn more about the input\n", - "preprocessing." + "text preprocessing using KerasHub" ] }, { @@ -381,48 +362,10 @@ }, "outputs": [], "source": [ - "\n", - "def make_bert_preprocessing_model(sentence_features, seq_length=128):\n", - " \"\"\"Returns Model mapping string features to BERT inputs.\n", - "\n", - " Args:\n", - " sentence_features: A list with the names of string-valued features.\n", - " seq_length: An integer that defines the sequence length of BERT inputs.\n", - "\n", - " Returns:\n", - " A Keras Model that can be called on a list or dict of string Tensors\n", - " (with the order or names, resp., given by sentence_features) and\n", - " returns a dict of tensors for input to BERT.\n", - " \"\"\"\n", - "\n", - " input_segments = [\n", - " tf.keras.layers.Input(shape=(), dtype=tf.string, name=ft)\n", - " for ft in sentence_features\n", - " ]\n", - "\n", - " # Tokenize the text to word pieces.\n", - " bert_preprocess = hub.load(bert_preprocess_path)\n", - " tokenizer = hub.KerasLayer(bert_preprocess.tokenize, name=\"tokenizer\")\n", - " segments = [tokenizer(s) for s in input_segments]\n", - "\n", - " # Optional: Trim segments in a smart way to fit seq_length.\n", - " # Simple cases (like this example) can skip this step and let\n", - " # the next step apply a default truncation to approximately equal lengths.\n", - " truncated_segments = segments\n", - "\n", - " # Pack inputs. The details (start/end token ids, dict of output tensors)\n", - " # are model-dependent, so this gets loaded from the SavedModel.\n", - " packer = hub.KerasLayer(\n", - " bert_preprocess.bert_pack_inputs,\n", - " arguments=dict(seq_length=seq_length),\n", - " name=\"packer\",\n", - " )\n", - " model_inputs = packer(truncated_segments)\n", - " return keras.Model(input_segments, model_inputs)\n", - "\n", - "\n", - "bert_preprocess_model = make_bert_preprocessing_model([\"text_1\", \"text_2\"])\n", - "keras.utils.plot_model(bert_preprocess_model, show_shapes=True, show_dtype=True)" + "text_preprocessor = keras_hub.models.BertTextClassifierPreprocessor.from_preset(\n", + " \"bert_base_en_uncased\",\n", + " sequence_length=128,\n", + ")" ] }, { @@ -442,22 +385,22 @@ }, "outputs": [], "source": [ - "idx = np.random.choice(len(train_df))\n", + "idx = random.choice(range(len(train_df)))\n", "row = train_df.iloc[idx]\n", "sample_text_1, sample_text_2 = row[\"text_1\"], row[\"text_2\"]\n", "print(f\"Text 1: {sample_text_1}\")\n", "print(f\"Text 2: {sample_text_2}\")\n", "\n", - "test_text = [np.array([sample_text_1]), np.array([sample_text_2])]\n", - "text_preprocessed = bert_preprocess_model(test_text)\n", + "test_text = [sample_text_1, sample_text_2]\n", + "text_preprocessed = text_preprocessor(test_text)\n", "\n", "print(\"Keys : \", list(text_preprocessed.keys()))\n", - "print(\"Shape Word Ids : \", text_preprocessed[\"input_word_ids\"].shape)\n", - "print(\"Word Ids : \", text_preprocessed[\"input_word_ids\"][0, :16])\n", - "print(\"Shape Mask : \", text_preprocessed[\"input_mask\"].shape)\n", - "print(\"Input Mask : \", text_preprocessed[\"input_mask\"][0, :16])\n", - "print(\"Shape Type Ids : \", text_preprocessed[\"input_type_ids\"].shape)\n", - "print(\"Type Ids : \", text_preprocessed[\"input_type_ids\"][0, :16])\n", + "print(\"Shape Token Ids : \", text_preprocessed[\"token_ids\"].shape)\n", + "print(\"Token Ids : \", text_preprocessed[\"token_ids\"][0, :16])\n", + "print(\" Shape Padding Mask : \", text_preprocessed[\"padding_mask\"].shape)\n", + "print(\"Padding Mask : \", text_preprocessed[\"padding_mask\"][0, :16])\n", + "print(\"Shape Segment Ids : \", text_preprocessed[\"segment_ids\"].shape)\n", + "print(\"Segment Ids : \", text_preprocessed[\"segment_ids\"][0, :16])\n", "" ] }, @@ -514,7 +457,7 @@ "outputs": [], "source": [ "resize = (128, 128)\n", - "bert_input_features = [\"input_word_ids\", \"input_type_ids\", \"input_mask\"]\n", + "bert_input_features = [\"padding_mask\", \"segment_ids\", \"token_ids\"]\n", "\n", "\n", "def preprocess_image(image_path):\n", @@ -525,15 +468,18 @@ " image = tf.image.decode_jpeg(image, 3)\n", " else:\n", " image = tf.image.decode_png(image, 3)\n", - " image = tf.image.resize(image, resize)\n", + " image = keras.ops.image.resize(image, resize)\n", " return image\n", "\n", "\n", "def preprocess_text(text_1, text_2):\n", - " text_1 = tf.convert_to_tensor([text_1])\n", - " text_2 = tf.convert_to_tensor([text_2])\n", - " output = bert_preprocess_model([text_1, text_2])\n", - " output = {feature: tf.squeeze(output[feature]) for feature in bert_input_features}\n", + " text_1 = keras.ops.convert_to_tensor([text_1])\n", + " text_2 = keras.ops.convert_to_tensor([text_2])\n", + " output = text_preprocessor((text_1, text_2))\n", + " output = {\n", + " feature: keras.ops.reshape(output[feature], [-1])\n", + " for feature in bert_input_features\n", + " }\n", " return output\n", "\n", "\n", @@ -541,7 +487,13 @@ " image_1 = preprocess_image(sample[\"image_1_path\"])\n", " image_2 = preprocess_image(sample[\"image_2_path\"])\n", " text = preprocess_text(sample[\"text_1\"], sample[\"text_2\"])\n", - " return {\"image_1\": image_1, \"image_2\": image_2, \"text\": text}\n", + " return {\n", + " \"image_1\": image_1,\n", + " \"image_2\": image_2,\n", + " \"padding_mask\": text[\"padding_mask\"],\n", + " \"segment_ids\": text[\"segment_ids\"],\n", + " \"token_ids\": text[\"token_ids\"],\n", + " }\n", "" ] }, @@ -639,7 +591,7 @@ "):\n", " projected_embeddings = keras.layers.Dense(units=projection_dims)(embeddings)\n", " for _ in range(num_projection_layers):\n", - " x = tf.nn.gelu(projected_embeddings)\n", + " x = keras.ops.nn.gelu(projected_embeddings)\n", " x = keras.layers.Dense(projection_dims)(x)\n", " x = keras.layers.Dropout(dropout_rate)(x)\n", " x = keras.layers.Add()([projected_embeddings, x])\n", @@ -721,13 +673,16 @@ "def create_text_encoder(\n", " num_projection_layers, projection_dims, dropout_rate, trainable=False\n", "):\n", - " # Load the pre-trained BERT model to be used as the base encoder.\n", - " bert = hub.KerasLayer(bert_model_path, name=\"bert\",)\n", + " # Load the pre-trained BERT BackBone using KerasHub.\n", + " bert = keras_hub.models.BertBackbone.from_preset(\n", + " \"bert_base_en_uncased\", num_classes=3\n", + " )\n", + "\n", " # Set the trainability of the base encoder.\n", " bert.trainable = trainable\n", "\n", " # Receive the text as inputs.\n", - " bert_input_features = [\"input_type_ids\", \"input_mask\", \"input_word_ids\"]\n", + " bert_input_features = [\"padding_mask\", \"segment_ids\", \"token_ids\"]\n", " inputs = {\n", " feature: keras.Input(shape=(128,), dtype=tf.int32, name=feature)\n", " for feature in bert_input_features\n", @@ -775,12 +730,12 @@ " image_2 = keras.Input(shape=(128, 128, 3), name=\"image_2\")\n", "\n", " # Receive the text as inputs.\n", - " bert_input_features = [\"input_type_ids\", \"input_mask\", \"input_word_ids\"]\n", + " bert_input_features = [\"padding_mask\", \"segment_ids\", \"token_ids\"]\n", " text_inputs = {\n", " feature: keras.Input(shape=(128,), dtype=tf.int32, name=feature)\n", " for feature in bert_input_features\n", " }\n", - "\n", + " text_inputs = list(text_inputs.values())\n", " # Create the encoders.\n", " vision_encoder = create_vision_encoder(\n", " num_projection_layers, projection_dims, dropout_rate, vision_trainable\n", @@ -796,7 +751,7 @@ " # Concatenate the projections and pass through the classification layer.\n", " concatenated = keras.layers.Concatenate()([vision_projections, text_projections])\n", " outputs = keras.layers.Dense(3, activation=\"softmax\")(concatenated)\n", - " return keras.Model([image_1, image_2, text_inputs], outputs)\n", + " return keras.Model([image_1, image_2, *text_inputs], outputs)\n", "\n", "\n", "multimodal_model = create_multimodal_model()\n", @@ -833,10 +788,10 @@ "outputs": [], "source": [ "multimodal_model.compile(\n", - " optimizer=\"adam\", loss=\"sparse_categorical_crossentropy\", metrics=\"accuracy\"\n", + " optimizer=\"adam\", loss=\"sparse_categorical_crossentropy\", metrics=[\"accuracy\"]\n", ")\n", "\n", - "history = multimodal_model.fit(train_ds, validation_data=validation_ds, epochs=10)" + "history = multimodal_model.fit(train_ds, validation_data=validation_ds, epochs=1)" ] }, { @@ -960,7 +915,7 @@ "[Recognizing Multimodal Entailment](https://multimodal-entailment.github.io/)\n", "tutorial provides a comprehensive overview.\n", "\n", - "You can use the trained model hosted on [Hugging Face Hub](https://huggingface.co/keras-io/multimodal-entailment) ", + "You can use the trained model hosted on [Hugging Face Hub](https://huggingface.co/keras-io/multimodal-entailment)\n", "and try the demo on [Hugging Face Spaces](https://huggingface.co/spaces/keras-io/multimodal_entailment)" ] } diff --git a/examples/nlp/md/multimodal_entailment.md b/examples/nlp/md/multimodal_entailment.md index 05304531b2..6cf7fd3735 100644 --- a/examples/nlp/md/multimodal_entailment.md +++ b/examples/nlp/md/multimodal_entailment.md @@ -2,7 +2,7 @@ **Author:** [Sayak Paul](https://twitter.com/RisingSayak)
**Date created:** 2021/08/08
-**Last modified:** 2021/08/15
+**Last modified:** 2025/01/03
**Description:** Training a multimodal model for predicting entailment. @@ -46,6 +46,14 @@ using the following command: !pip install -q tensorflow_text ``` + +
+``` + [notice] A new release of pip is available: 24.0 -> 24.3.1 + [notice] To update, run: pip install --upgrade pip + +``` +
--- ## Imports @@ -54,15 +62,22 @@ using the following command: from sklearn.model_selection import train_test_split import matplotlib.pyplot as plt import pandas as pd -import numpy as np +import random import os import tensorflow as tf -import tensorflow_hub as hub -import tensorflow_text as text -from tensorflow import keras +import keras +import keras_hub ``` +
+``` +WARNING: All log messages before absl::InitializeLog() is called are written to STDERR +E0000 00:00:1735907683.393230 12828 cuda_dnn.cc:8310] Unable to register cuDNN factory: Attempting to register factory for plugin cuDNN when one has already been registered +E0000 00:00:1735907683.399130 12828 cuda_blas.cc:1418] Unable to register cuBLAS factory: Attempting to register factory for plugin cuBLAS when one has already been registered + +``` +
--- ## Define a label map @@ -107,7 +122,7 @@ df.sample(10) -
+