DeepBrain81 commited on
Commit
8cbdb92
·
verified ·
1 Parent(s): db59d0b

Update model.py

Browse files
Files changed (1) hide show
  1. model.py +28 -36
model.py CHANGED
@@ -1,38 +1,30 @@
1
  import tensorflow as tf
2
- from tensorflow.keras import layers, models
 
 
 
 
3
 
4
- # Define your model architecture
5
- def create_model():
6
- model = models.Sequential([
7
- layers.Conv2D(32, (3, 3), activation='relu', input_shape=(28, 28, 1)),
8
- layers.MaxPooling2D((2, 2)),
9
- layers.Conv2D(64, (3, 3), activation='relu'),
10
- layers.MaxPooling2D((2, 2)),
11
- layers.Conv2D(64, (3, 3), activation='relu'),
12
- layers.Flatten(),
13
- layers.Dense(64, activation='relu'),
14
- layers.Dense(10, activation='softmax')
15
- ])
16
- return model
17
-
18
- # Load your data (example: MNIST dataset)
19
- mnist = tf.keras.datasets.mnist
20
- (train_images, train_labels), (test_images, test_labels) = mnist.load_data()
21
-
22
- # Preprocess your data
23
- train_images = train_images.reshape((60000, 28, 28, 1)) / 255.0
24
- test_images = test_images.reshape((10000, 28, 28, 1)) / 255.0
25
-
26
- train_labels = tf.keras.utils.to_categorical(train_labels, 10)
27
- test_labels = tf.keras.utils.to_categorical(test_labels, 10)
28
-
29
- # Create an instance of your model
30
- model = create_model()
31
-
32
- # Compile the model
33
- model.compile(optimizer='adam',
34
- loss='categorical_crossentropy',
35
- metrics=['accuracy'])
36
-
37
- # Train the model
38
- model.fit(train_images, train_labels, epochs=5, batch_size=64, validation_data=(test_images, test_labels))
 
1
  import tensorflow as tf
2
+ from tensorflow.keras.layers import Input, Embedding, LayerNormalization, MultiHeadAttention, Dense, Add, Dropout, Layer
3
+ from tensorflow.keras.models import Model
4
+ from tensorflow.keras.optimizers import Adam
5
+ from tensorflow.keras.losses import SparseCategoricalCrossentropy
6
+ import numpy as np
7
 
8
+ class VoidChatModel(tf.keras.Model):
9
+ def __init__(self, vocab_size, seq_len, num_layers=6, num_heads=8, emb_dim=512, mlp_dim=2048, dropout_rate=0.1):
10
+ super(VoidChatModel, self).__init__()
11
+ self.vocab_size = vocab_size
12
+ self.seq_len = seq_len
13
+ self.num_layers = num_layers
14
+ self.num_heads = num_heads
15
+ self.emb_dim = emb_dim
16
+ self.mlp_dim = mlp_dim
17
+ self.dropout_rate = dropout_rate
18
+
19
+ # Embedding layer
20
+ self.embedding = Embedding(input_dim=vocab_size, output_dim=emb_dim)
21
+
22
+ # Transformer layers
23
+ self.transformer_blocks = [TransformerBlock(num_heads, emb_dim, mlp_dim, dropout_rate) for _ in range(num_layers)]
24
+
25
+ # Output layer
26
+ self.output_layer = Dense(vocab_size, activation='softmax')
27
+
28
+ def call(self, input_ids, training=False):
29
+ # Embedding layer
30
+ x = self.embedding(input_ids)