Best way to reduce false positive of binary classification to exactly 0? I'm working on a task that even a 0.00001 fp rate is not acceptable, because detecting something as a positive when its not   will have very bad consequences in this task, so it needs to be exactly 0 in my dataset when i use k fold, so 0 for each fold. basically my model should at least learn all the negative samples in my own dataset very well and never classify them as a positive by mistake.
but what is the best way of doing this?
so far two things came to my mind but please let me know if there is a better method :

*

*Giving positive samples a very large weight during training


*Data augmentation of positive samples, so making the positive dataset 100 time bigger or something
to sum up the question :
You are giving a binary classification task with enough balanced data, and are asked to train a deep neural model with 0 false positive rate on the given dataset, how will you do it? (input dim is around 1k-3k)
 A: In addition to @StephanKolassa's very important points: is binary classification actually what you need here?

*

*Binary classification (or more generally disciminative classification) assumes that positive and negative are well-defined classes.


*In contrast, one-class classifiers (aka class models) assume only the class that is modeled to be well-defined.
Such a model would detect "not that class" also for new (previously unknown) ways of a case being different from the modeled class.
One class classification is also available in probabilistic varieties (or with the output being a score or a distance to the modeled class).
All that @StefanKolassa wrote about proper scoring applies to one-class classifiers as well. By construction, one-class classifiers "do not care" about relative class frequencies, and thus also not about class imbalance.
One-class classification is closely related to outlier and anomaly detection.

A totally unrelated point: when you achieve 0 FPR with your test data, be aware of the related confidence interval. Depending on the number of positive cases you tested, you can only claim that e.g. the one-sided 95 % confidence interval for FPR is < x based on that test.
The rule of three suggests that you need to observe 0 false positives among more than about 3e6 truly negative and independent test cases to have the one-sided 95% confidence interval for the FPR lie below 1e-6.
(That is an additional point against figures of merit that are fractions of tested cases: they have high variance)
A: Use probabilistic classifications instead of hard 0-1 classifications. That is, predict the probability for an instance to be positive. Use proper scoring rules to assess these predicted probabilities.
Then consider whether you can make decisions based on these probabilities. You may or may not want to use a single threshold to map your probabilities to hard classes. Instead, you may even want to use multiple thresholds for multiple different actions. The mapping between probabilities and decisions should be based on explicit assumptions about the costs of wrong (and correct) decisions. More here.
In a nutshell: decouple the modeling/predictive part from the decision.
Do not use accuracy as a KPI at all. It is misleading, and especially (but not only) so for unbalanced data. The exact same problems as for accuracy apply equally to FPR.
Similarly, do not overweight one class. This is analogous to oversampling, which is commonly used to "address" class imbalance - but unbalanced data are not a problem (as long as you don't use misleading KPIs like accuracy or FPR), and oversampling or weighting will not solve a non-problem.
