@staticmethod<EOL><INDENT>def from_dict(input_dict):<DEDENT>
import copy<EOL>input_dict = copy.deepcopy(input_dict)<EOL>kernel_class = input_dict.pop('<STR_LIT:class>')<EOL>input_dict["<STR_LIT:name>"] = str(input_dict["<STR_LIT:name>"])<EOL>import GPy<EOL>kernel_class = eval(kernel_class)<EOL>return kernel_class._build_from_input_dict(kernel_class, input_dict)<EOL>
Instantiate an object of a derived class using the information
in input_dict (built by the to_dict method of the derived class).
More specifically, after reading the derived class from input_dict,
it calls the method _build_from_input_dict of the derived class.
Note: This method should not be overrided in the derived class. In case
it is needed, please override _build_from_input_dict instate.

:param dict input_dict: Dictionary with all the information needed to
   instantiate the object.