code: def build_feature_vector(np):
      """
      Build a feature vector for the given noun-phrase. the size of the
      vector = (4 + (#WORDS X 300)) = 1506. ==> (the number of words in a noun-phrase X size
      of the word2vec(300)) + 4 additional features from external sources
  
      Args:
          np (str): a noun-phrase
  
      Returns:
          :obj:`np.ndarray`: the feature vector of the np
      """
      feature_vector = []
      # 1. find if np exist as an entity in WordNet
      wordnet_feature = find_wordnet_entity(np)
      feature_vector.append(wordnet_feature)
      # 2. find if np exist as an entity in Wikidata
      wikidata_feature = find_wikidata_entity(np)
      feature_vector.append(wikidata_feature)
      # 3. word2vec score: from
      word2vec_distance = word2vec.get_similarity_score(np)
      feature_vector.append(word2vec_distance)
      for w in np.split(" "):
          feature_vector.extend(word2vec.get_word_embedding(w))
      return numpy.array(feature_vector)
  
imports: import argparse
  import csv
  import math
  import os
  from multiprocessing import Pool
  import feature_extraction
  import numpy
  from tqdm import tqdm
  from nlp_architect.utils.io import validate_existing_filepath, validate_parent_exists, validate_proxy_path
label_desc: Use image node_id 1 for calling a global function with example usage: build_feature_vector(np) and returns: numpy