Почти во всех уроках тензорного потока они используют пользовательские функции.
Например, в самом начальном уроке они пишут пользовательскую функцию, которая суммирует квадраты дельт между текущей моделью и предоставленными данными
squared_deltas = tf.square(linear_model - y)
loss = tf.reduce_sum(squared_deltas)
Как видите, это совсем не сложно: вам просто нужно закодировать свою функцию в тензорном формате и использовать их основные функции.
Примечание: Просто как маленький бонусвы можете подумать о нормализации ваших входов и ожидаемых выходов в более подходящем диапазоне, например [-0,5, 0,5], который лучше работает для нескольких функций активации, которые в противном случае должны работать в насыщенной области.