我想知道我可以使用哪种语言:R 或 Python,在网上银行系统中进行欺诈检测的实习:我必须构建预测交易欺诈的机器学习算法(NN 等)。非常感谢您的回答。
用于实现欺诈检测机器学习算法的 Python 或 R
数据挖掘
机器学习
r
Python
2021-09-28 17:34:50
2个回答
我想说这是您的选择,完全取决于您对语言的舒适度(或学习的愿望)。两种语言都有广泛的软件包/库生态系统,包括一些可用于欺诈检测的生态系统。我认为异常检测是该主题的主题。因此,以下资源说明了每个生态系统中任务的各种方法、方法和工具。
Python 生态系统
scikit-learn
图书馆:例如,请参阅此页面;LSAnomaly
, 一个 Python 模块,改进OneClassSVM
(一个替代品):见这个页面;Skyline
: 一个开源的实现例子,见它的 GitHub repo;- StackOverflow上的相关讨论;
- pyculiarity,Twitter 的 AnomalyDetection R 包的 Python 端口(如“Twitter 的异常检测包”下面的 R 生态系统的第二个项目符号中所述)。
R 生态系统
- CRAN 任务视图,特别是时间序列、多变量和机器学习;
- Twitter 的异常检测包;
- 预警信号 (EWS) 工具箱,其中包括
earlywarnings
软件包; - h2o机器学习平台(与 R 的接口)使用深度学习进行异常检测。
其他一般信息
- 一组幻灯片,提到了异常检测(AD)的多种方法;
- 关于Cross Validated的相关讨论;
- ELKI 数据挖掘框架,实现了大量的 AD(和其他)算法。
这在很大程度上是一个主观问题。试图列出一些对我来说似乎客观的标准:
Python 的重要优点是它是一种通用语言。如果您需要对程序进行统计之外的任何其他操作(生成 Web 界面,将其与报告系统集成,将其传递给其他开发人员进行维护),那么使用 Python 会好得多。
R 的重要优势在于它是一种专门的语言。如果您已经知道要使用一种技术,并且它不是通常的嫌疑人(如 NN),那么您可能会在 CRAN 中找到一个让您的生活更轻松的库。
这是另一个更主观的建议:
- 两种语言都不是真正以性能为导向的。如果你需要处理大量的数据,或者处理速度非常快,或者并行处理,你就会遇到麻烦……但是使用 R 遇到这样的麻烦要比使用 Python 容易得多。以我的经验,你会在几周内发现 R 的极限,而推动极限的方法非常神秘。虽然您可以使用 Python 多年,但永远不会真正错过 C 开发人员一直称为圣杯的速度,即使您这样做了,您也可以使用 Cython 来弥补差异。唯一真正的问题是并发性,但对于统计数据来说,这几乎不是问题。
其它你可能感兴趣的问题