Incorrect behaviour of `tf.nn.sigmoid` on complex inputs
@sachinprasadhs I was able to replicate the issue on colab using TF v2.13, tf-nightly. Please find the [gist](https://colab.research.google.com/gist/sushreebarsa/ea440d43307ea574e87511ad26ac5c12/61800.ipynb) here for reference. Thank you! The same issue happens on `tf.Tensor((-inf+0j), shape=(), dtype=complex128)`, the result is `1+0j` instead of 0.
Please see the code below.
```python
input = tf.constant(-np.inf, dtype='complex128')
print(input)  # tf.Tensor((-inf+0j), shape=(), dtype=complex128)

out = tf.nn.sigmoid(input)
print(out)  # tf.Tensor((1+0j), shape=(), dtype=complex128)
```
### Issue type

Bug

### Have you reproduced the bug with TensorFlow Nightly?

Yes

### Source

binary

### TensorFlow version

tf v1.12.1-96406-gfa4d29bfef8 2.14.0-dev20230706

### Custom code

Yes

### OS platform and distribution

WSL Ubuntu 20.04.5 LTS

### Mobile device

_No response_

### Python version

_No response_

### Bazel version

_No response_

### GCC/compiler version

_No response_

### CUDA/cuDNN version

_No response_

### GPU model and memory

_No response_

### Current behavior?

`tf.nn.sigmoid` gives incorrect values for complex numbers with large, negative real parts (which should map to within a rounding error of 0). For example, when `x = -709-1j` (`complex128`) I expect `tf.nn.sigmoid(x) = 0`, but instead `tf.nn.sigmoid(x) = 1`.

### Standalone code to reproduce the issue

```shell
import tensorflow as tf
x = tf.constant([-709-1j], dtype=tf.complex128)
tf.nn.sigmoid(x)  # <tf.Tensor: shape=(1,), dtype=complex128, numpy=array([1.+0.j])>
```


### Relevant log output

_No response_