An apparatus comprising a plurality of processing nodes forming a neural network, the processing nodes arranged into a plurality of layers including: a first layer of processing nodes configured to receives input data; and a second layer of processing nodes configured to implement a functional mapping module that maps converted data elements received from the first layer to a functional output using a computation model based on calculated distance values, to provide a likelihood of the input data corresponding to a defined classification; the apparatus being characterised in that the first layer of processing nodes is configured to implement an input transformation module that receives the input data, wherein the input data consists of a mix of numerical data points, each having a numerical data type, and symbolic data points each having a symbolic data type, said input transformation module being configured to convert the input data points into converted data consisting of an N-element output by: transforming each input symbolic input data point into a corresponding transformed data point having a numerical encoding using a predefined distance metric; calculating numerical distances between data points in the set of numerical data points and transformed data points, using the predefined distance metric; analysing the calculated distances using a clustering technique to identify a number N of cluster centers; calculating, for each data point in the set of data points, a numerical distance between the data point and a respective one of the plurality of cluster centers using the predefined distance metric; and outputting a plurality of converted data elements, wherein each converted data element in the N-element output is a corresponding one of the calculated distance values between an input data point and a respective cluster center. a first layer of processing nodes configured to receives input data; and a second layer of processing nodes configured to implement a functional mapping module that maps converted data elements received from the first layer to a functional output using a computation model based on calculated distance values, to provide a likelihood of the input data corresponding to a defined classification; the apparatus being characterised in that the first layer of processing nodes is configured to implement an input transformation module that receives the input data, wherein the input data consists of a mix of numerical data points, each having a numerical data type, and symbolic data points each having a symbolic data type, said input transformation module being configured to convert the input data points into converted data consisting of an N-element output by: transforming each input symbolic input data point into a corresponding transformed data point having a numerical encoding using a predefined distance metric; calculating numerical distances between data points in the set of numerical data points and transformed data points, using the predefined distance metric; analysing the calculated distances using a clustering technique to identify a number N of cluster centers; calculating, for each data point in the set of data points, a numerical distance between the data point and a respective one of the plurality of cluster centers using the predefined distance metric; and outputting a plurality of converted data elements, wherein each converted data element in the N-element output is a corresponding one of the calculated distance values between an input data point and a respective cluster center. transforming each input symbolic input data point into a corresponding transformed data point having a numerical encoding using a predefined distance metric; calculating numerical distances between data points in the set of numerical data points and transformed data points, using the predefined distance metric; analysing the calculated distances using a clustering technique to identify a number N of cluster centers; calculating, for each data point in the set of data points, a numerical distance between the data point and a respective one of the plurality of cluster centers using the predefined distance metric; and outputting a plurality of converted data elements, wherein each converted data element in the N-element output is a corresponding one of the calculated distance values between an input data point and a respective cluster center.