parameters: (self, input:torch.Tensor)
return_statement: return hiwayd.contiguous().view(sentence_length, batch_size, -1)
docstring: Looks up character-based CNN embeddings for the words in a batch of sentences.
          @param input: Tensor of integers of shape (sentence_length, batch_size, max_word_length) where
              each integer is an index into the character vocabulary
  
          @param output: Tensor of shape (sentence_length, batch_size, word_embed_size), containing the
              CNN-based embeddings for each word of the sentences in the batch
docstring_summary: Looks up character-based CNN embeddings for the words in a batch of sentences.
          @param input: Tensor of integers of shape (sentence_length, batch_size, max_word_length) where
              each integer is an index into the character vocabulary
docstring_tokens: Looks up character - based CNN embeddings for the words in a batch of sentences . @param input : Tensor of integers of shape ( sentence_length batch_size max_word_length ) where each integer is an index into the character vocabulary
function: def forward(self, input:torch.Tensor):
          """
          Looks up character-based CNN embeddings for the words in a batch of sentences.
          @param input: Tensor of integers of shape (sentence_length, batch_size, max_word_length) where
              each integer is an index into the character vocabulary
  
          @param output: Tensor of shape (sentence_length, batch_size, word_embed_size), containing the
              CNN-based embeddings for each word of the sentences in the batch
          """
          ### YOUR CODE HERE for part 1h
  
          (sentence_length, batch_size, max_word_length) = input.shape
  
          # shape of (batch_size_of_words, max_word_length,char_emb_size)
          inputs = self.charEmbedding[input.contiguous().view(sentence_length * batch_size,max_word_length)]
  
          # shape of  (batch_size_of_words,word_emb_size)
          cnnd = self.cnn(inputs)
  
          # print("="*80)
          # print(cnnd.shape)
  
          # shape of  (batch_size,word_embed_size)
          hiwayd = self.dropout(self.hiway(cnnd))
  
          return hiwayd.contiguous().view(sentence_length, batch_size, -1)
function_tokens: def forward ( self , input : torch . Tensor ) : ### YOUR CODE HERE for part 1h ( sentence_length , batch_size , max_word_length ) = input . shape # shape of (batch_size_of_words, max_word_length,char_emb_size) inputs = self . charEmbedding [ input . contiguous ( ) . view ( sentence_length * batch_size , max_word_length ) ] # shape of  (batch_size_of_words,word_emb_size) cnnd = self . cnn ( inputs ) # print("="*80) # print(cnnd.shape) # shape of  (batch_size,word_embed_size) hiwayd = self . dropout ( self . hiway ( cnnd ) ) return hiwayd . contiguous ( ) . view ( sentence_length , batch_size , - 1 )