首页
学习
活动
专区
圈层
工具
发布
社区首页 >问答首页 >如何训练神经网络来检测模式的存在?

如何训练神经网络来检测模式的存在?
EN

Stack Overflow用户
提问于 2015-02-23 14:24:53
回答 1查看 182关注 0票数 2

问题的措辞是模糊的--我很乐意根据反馈来改变它。但是,我正试图训练一个神经网络来检测网站上的欺诈交易。我有很多输入参数(一天中的时间、原籍国、过去一个月的访问次数、过去一个月来自唯一IP的访问次数、交易数量、平均交易规模等)。总共可能有100多个投入。输入已经标准化和净化,它们形成了一个time series。历史上,我可以查看我的数据,并确定交易是欺诈类型A或B类型,或不欺诈性。我的训练集可能很大(数千分或数万分)。

最终,我想要一个指标: A类欺诈,B型欺诈或非欺诈。一般而言,欺诈性交易往往符合一种模式。我无法准确地识别模式(这就是我使用NN的原因)。然而,没有欺诈交易可以是任何类型的模式。因此,当第三个桶是“其他”的时候,把东西识别成3个桶似乎很奇怪。

如果这是一个开关/情况,它将类似于:

代码语言:javascript
复制
switch transactionData
  when transactionData.transaction_count < 0.2 && ....
    FRAUD_A
  when transactionData.transaction_count > 0.5 && ....
    FRAUD_B
  else
    NOT_FRAUD

显然,这些都是简化的案例,但我的问题是如何正确地为else案例进行培训。我是否获得了三种类型的数据(fraud_a、fraud_b和not_fraud)并对它们进行了培训?或者还有其他的方式来训练other

EN

回答 1

Stack Overflow用户

回答已采纳

发布于 2015-02-23 17:49:22

拥有其他(而不是欺诈)类以及您感兴趣的类通常是完全可以的。但我理解你的担心。基本上,它的任务是学习“案例/开关”,在大多数情况下,它将学习正确的一个,假设大多数样本不属于欺诈类。在一些病理案例中,分类器可以学到不同的概念,例如,除非证明不是这样,否则一切都是欺诈A类。您通常不能直接控制它,但是可以通过创建更好的特性和其他一些技巧来改变它。现在,继续你所拥有的,看看会发生什么。

你可以做的一件事是训练两个分类器,一个(欺诈/不欺诈),然后如果发现欺诈,将数据输入二级分类器(欺诈A/欺诈B)。有时(但并不总是)这样做会更好。

票数 1
EN
页面原文内容由Stack Overflow提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://stackoverflow.com/questions/28675967

复制
相关文章

相似问题

领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档