Confused about false positive and false negative in confusion matrix?
Think about the order of your test and prediction sets when constructing the confusion matrix. Here is a piece from one of my codes.

cm = confusion_matrix(y_test, y_pred)
print(cm)
Output:
[[TN FP]
[ FN TP]]

However, if I used:

cm = confusion_matrix(y_pred, y_test)
print(cm)
Output:
[[TN FN]
[ FP TP]]

That occurs since the predictions of the model are presented in the rows instead of columns now. Also confusion matrices can be NxN, or the classes may not be labeled as either 0 or 1. You can also change the places of TN and TP, think what should happen if you had classes named as 9 and 10. In other words, decision of Negative/Positive signs are our decision; we say what they are (hopefully in a reasonable way).
Hope I could help, please do not hesitate to ask more.
Regards.