获得有效的数据是运用机器学习建模的第一个步骤,也是非常重要的步骤。这个步骤可能是一次性的,也可能是长期持续的,需要仔细地计划和执行。在数据收集过程中,建模人员应该从以下几个方面来考虑数据的获取问题。
(1)业务类型决定了数据的来源,信用贷款和电子商务反欺诈业务涉及的数据可能大不相同。
(2)考虑数据涉及的业务是公司成熟的业务,还是新的业务。成熟的业务意味着,数据的归集已经长期化和规范化,而新业务意味着数据字段的存储可能都要重新设计。因此,不同业务项目启动的风险和复杂度是不一样的。
(3)了解要具体解决的问题,如果需求是反欺诈,那么数据源中可能包含了用户在App上的点击行为;如果需求是信用预测,那么就需要对接大量第三方外部数据。
(1)数据涉及的字段类型可能多种多样,如数值、文本、图像、音频和视频等,对不同类型的数据需要采用不同的处理手段。
(2)数据的获取是通过批量的方式还是流式处理方式。批量获取可能会导致数据量特别大,需要用到大数据处理工具;而流式处理通常有成熟的流式计算方式。
(3)数据文件的类型多种多样,如csv格式文件、parquet格式文件、Excel文件和database表格等。
(1)如果数据存储在传统的关系型数据库,就需要通过SQL查询的方式获取数据。
(2)考虑使用非关系型数据库,如HBase、Elastics Search等也是存储数据的有效方式,为获取数据提供了新的途径。