当前位置: 首页 > news >正文

风控模型算法面试题集结

特征处理

1. 特征工程的一般步骤什么?什么是特征迭代

特征工程一般包含:

  • 数据获取,分析数据的可用性(覆盖率,准确率,获取容易程度)
  • 数据探索,分析数据业务含义,对特征有一个大致了解,同时进行数据质量校验,包含缺失值、异常值和一致性等;
  • 特征处理,包含数据处理和特征处理两部分。数据处理主要做清洗工作(缺失值、异常值、错误值、数据格式处理等),特征转换即对连续特征、离散特征、时间序列进行转换,常用标准化、归一化、区间缩放、二值化、哑变量编码等,便于入模;
  • 特征构建,构建与目标变量相关且区分度较好的特征,常用方法有特征交叉、四则运算、业务理解的处理等;
  • 特征筛选,特征维度过高不仅会导致模型训练效率低下,特征鲁棒性也不强,要做特征降维,常用方法有过滤法,包装法,嵌入法;

特征工程迭代:

  • 特征提取:根据具体问题分析,从数据中查找可以提出信息的关键数据;
  • 设计特征:可以自动进行特征提取,也可以手动进行特征构建;
  • 特征选择:从多个维度判断特征是否可以放入模型;
  • 计算模型:计算模型在改特征上所提升方准确率;
  • 上线测试:通过在线测试来评估特征是否有效;

2. 时间序列特征、连续特征、离散特征怎么转换

  • 时间序列特征:按时间变量的维度进行离散(年、月、日、时、分),或者与位置变量进行结合衍生出新的特征;
  • 连续特征:表转化、归一化、区间缩放、离散化。离散化常用的方法有卡方分箱、决策时分箱、等频和等距分箱;
  • 离散特征:如果类别不是很多,做哑变量处理;对于无需离散变量用都热编码,有序李淑娜使用顺序编码。如果类别较多,可用平均数编码;

3. 特征衍生方法有哪些

常用的特征衍生方法包括:

  • 基于业务理解构造特征,比如电商平台用户的购买和时间关系;
  • 特征交叉;
  • 分解类别特征,如对缺失特征可以分解成是否有这个类别的二值化特征,或者将缺失特征作为一个类别;
  • 重构数值,如单位转换等
  • 特征四则运算,如平均、最大最小、加减乘除等;

4. 特征筛选的目的和需求

目的:

  • 简化模型,增加模型的可解释性,降低过拟合风险
  • 缩短模型训练时间
  • 避免维度灾难

需求:

  • 可解释性好,与目标变量在业务上有解释
  • 时间维度上稳定
  • 有较好的覆盖度;

5. 特征筛选方法和各自的优缺点

Filter 过滤法:按照发散性、相关性对各个特征进行评分,设定阈值进行选择;

  • 方法有相关系数、方法(对连续变量)、卡方校验(类别变量)、信息熵、IV。实际过程主要基于相关系数和IV;
  • 优点:算法通用性强,复杂度低,适用于大规模数据集提出不相干变量,可以作为特征预筛选;
  • 缺点:由于算法评价标准独立于特征学习算法,特征子集在分类准确方面较低;

Wrapper封装法:利用学习算法的性能评价特征子集的好坏,wrapper法需要一个分类器。

  • 方法有完全搜索法、启发式搜索,随机搜索。工作中常用的是启发式搜索,如卡方分布的逐步逻辑回归进行评选;
  • 优点:相对于filter法能找到分类性能更好的特征子集
  • 缺点:算法复杂度高,当改变学习算法时,需要重新进行特征筛选;

Embedded嵌入法:先使用机器学习算法和模型进行训练,得到各个特征的权值系数,然后按照系数大小进行筛选。

  • 常用方法包括基于惩罚性的岭回归、Lasso回归,L1/2正则化,和基于树模型输出的特征重要性。工作中场景的基于随机森林、xgboost和lightgbm。
  • 优点:效果好,速度快,模式单调;
  • 缺点:参数设置,以及需要对模型算法原理有较好理解;

6. 如何发现和处理特征缺失值

在风控建模过程中,首先要了解缺失值产生的原因,是数据本身采集问题还是用户本身缺少这个属性,以及缺少属性对风险有无影响;

其次,对于缺失率较高的特征,尤其是评分卡模型,大于25%就不建议采用,在10%以内可用中位数或者随机森林来填充,区间内的可以考虑当做一个特殊类别来处理;

7. 特征异常值发现和处理

异常值的发现可采用如极差、四分位间距、均差、标准差等,还可以通过等距方法来检验异常点。,如欧式距离、绝对距离等

对于异常值处理,先判断是否是真正的错误。如果是错误数据,清理掉就行。如果无法判断,则看异常值是否较多,若较多可以采用单独类处理,如果不做也可不做处理。

8. 如何处理特征不平衡问题

  • 好坏样本比例不平衡,先确定好坏样本的定义;
  • 基于定义尝试扩大数据集,比如信贷中拉长时间线;
  • 对数据进行抽样,一种是欠采样,通过减少大类样本呢来降低不平衡;另一种是过采样,通过增加小数据样本来降低不平坦。实际工作中常用SMOTE方法来实现过采样。
  • 尝试用xgboost和lightgbm等对不平衡数据处理效果好的模型。

9. 特征离散化和特征交叉

相关文章:

风控模型算法面试题集结

特征处理 1. 特征工程的一般步骤什么?什么是特征迭代 特征工程一般包含: 数据获取,分析数据的可用性(覆盖率,准确率,获取容易程度)数据探索,分析数据业务含义,对特征有一个大致了解,同时进行数据质量校验,包含缺失值、异常值和一致性等;特征处理,包含数据处理和…...

PX4中的DroneCAN的实现库Libuavcan及基础功能示例

简介 Libuavcan是一个用C编写的可移植的跨平台库,对C标准库的依赖小。它可以由几乎任何符合标准的C编译器编译,并且可以在几乎任何体系结构/OS上使用。 在 DroneCAN 中,Libuavcan 有一个 DSDL 编译器,将 DSDL 文件转换为 hpp 头…...

Hot 3D 人体姿态估计 HPE Demo复现过程

视频讲解 Hot 3D 人体姿态估计 HPE Demo复现过程 标题:Hourglass Tokenizer for Efficient Transformer-Based 3D Human Pose Estimation论文地址:https://arxiv.org/abs/2311.12028代码地址:https://github.com/NationalGAILab/HoT 使用con…...

Linux操作系统6- 线程1(线程基础,调用接口,线程优缺点)

上篇文章:Linux操作系统5- 补充知识(可重入函数,volatile关键字,SIGCHLD信号)-CSDN博客 本篇Gitee仓库:myLerningCode/l27 橘子真甜/Linux操作系统与网络编程学习 - 码云 - 开源中国 (gitee.com) 目录 一.…...

每周一个网络安全相关工具——MetaSpLoit

一、Metasploit简介 Metasploit(MSF)是一款开源渗透测试框架,集成了漏洞利用、Payload生成、后渗透模块等功能,支持多种操作系统和硬件平台。其模块化设计(如exploits、auxiliary、payloads等)使其成为全球…...

MAC-禁止百度网盘自动升级更新

通过终端禁用更新服务(推荐)​ 此方法直接移除百度网盘的自动更新组件,无需修改系统文件。 ​步骤: ​1.关闭百度网盘后台进程 按下 Command + Space → 输入「活动监视器」→ 搜索 BaiduNetdisk 或 UpdateAgent → 结束相关进程。 ​2.删除自动更新配置文件 打开终端…...

【C语言】自定义类型:结构体,联合,枚举(上)

前言:在C语言中除了我们经常使用的数据(int,float,double类型)等这些类型以外,还有一种类型就是自定义类型,它包括结构体,联合体,枚举类型。为什么要有这种自定义类型呢?假设我们想描…...

SQLiteStudio:一款免费跨平台的SQLite管理工具

SQLiteStudio 是一款专门用于管理和操作 SQLite 数据库的免费工具。它提供直观的图形化界面,简化了数据库的创建、编辑、查询和维护,适合数据库开发者和数据分析师使用。 功能特性 SQLiteStudio 提供的主要功能包括: 免费开源,可…...

Mysql配置文件My.cnf(my.ini)配置参数说明

一、my.cnf 配置文件路径:/etc/my.cnf,在调整了该文件内容后,需要重启mysql才可生效。 1、主要参数 basedir path # 使用给定目录作为根目录(安装目录)。 datadir path # 从给定目录读取数据库文件。 pid-file filename # 为mysq…...

聊天模型集成指南

文章目录 聊天模型集成指南Anthropic聊天模型集成PaLM2聊天模型PaLM2API的核心功能OpenAl聊天模型集成聊天模型集成指南 随着GPT-4等大语言模型的突破,聊天机器人已经不仅仅是简单的问答工具,它们现在广泛应用于客服、企业咨询、电子商务等多种场景,为用户提供准确、快速的反…...

搭建农产品管理可视化,助力农业智能化

利用图扑 HT 搭建农产品管理可视化平台,实现从生产到销售的全流程监控。平台通过物联网传感器实时采集土壤湿度、温度、光照等数据,支持智慧大棚的灌溉、施肥、病虫害防治等功能。同时,农产品调度中心大屏可展示市场交易数据、库存状态、物流…...

tee命令

tee 是一个在 Unix/Linux 系统中常用的命令,它用于读取标准输入(stdin),并将其内容同时输出到标准输出(stdout)和文件中。它常用于将命令的输出保存到文件的同时,也显示在终端屏幕上。 基本语法…...

国自然面上项目|基于海量多模态影像深度学习的肝癌智能诊断研究|基金申请·25-03-07

小罗碎碎念 今天和大家分享一个国自然面上项目,执行年限为2020.01~2023.12,直接费用为65万元。 该项目旨在利用多模态医学影像,通过深度学习技术,解决肝癌诊断中的难题,如影像的快速配准融合、海量特征筛选…...

「勾芡」和「淋明油」是炒菜收尾阶段提升菜品口感和观感的关键操作

你提到的「勾芡」和「淋明油」是炒菜收尾阶段提升菜品口感和观感的关键操作,背后涉及食品科学中的物理化学变化。以下从原理到实操的深度解析: 一、勾芡:淀粉的“精密控温游戏” 1. 科学原理 淀粉糊化(Gelatinization&#xff0…...

ROS云课三分钟-差动移动机器人导航报告如何撰写-及格边缘疯狂试探

提示词:基于如上所有案例并结合roslaunch teb_local_planner_tutorials robot_diff_drive_in_stage.launch和上面所有对话内容,设计一个差速移动机器人仿真实验,并完成报告的全文撰写。 差速移动机器人导航仿真实验报告 一、实验目的 验证 T…...

应用案例 | 精准控制,高效运行—宏集智能控制系统助力SCARA机器人极致性能

概述 随着工业4.0的深入推进,制造业对自动化和智能化的需求日益增长。传统生产线面临空间不足、效率低下、灵活性差等问题,尤其在现有工厂改造项目中,如何在有限空间内实现高效自动化成为一大挑战。 此次项目的客户需要在现有工厂基础上进行…...

蓝桥备赛(16)- 树

一、树的概念 1.1 树的定义 1)树型结构(一对多)是⼀类重要的非线性数据结构 2 )有⼀个特殊的结点,称为根结点,根结点没有前驱结点 3)除了根节点外 , 其余结点被分成 M(M…...

黑马测试mysql基础学习

视频来源:软件测试工程师所需的MySQL数据库技术,mysql系统精讲课后练习_哔哩哔哩_bilibili 环境准备: 虚拟机Linux服务器安装mysql数据库。本机安装Navicat。使Navicat连接虚拟机的数据库。(麻烦一点的是Navicat连接虚拟机的数据…...

ROS2-话题学习

强烈推荐教程: 《ROS 2机器人开发从入门到实践》3.2.2订阅小说并合成语音_哔哩哔哩_bilibili 构建功能包 # create package demo_python_pkg ros2 pkg create --build-type ament_python --license Apache-2.0 demo_python_pkg 自己写的代码放在./demo_python_pkg/…...

C++指针的基本认识

1.数组做函数参数 首先,所有传递给函数的参数都是通过传值方式进行的,传递给函数的都是参数的一份拷贝。 接着,当传递的参数是一个指向某个变量的指针时,函数将对该指针执行间接访问操作(拷贝指针,并访问所指向的内容),则函数就可以修改指向的变量。 2.一维数组 数组名…...

TypeScript系列06-模块系统与命名空间

1. ES 模块与 CommonJS 互操作性 1.1 模块解析策略 TypeScript 提供多种模块解析策略,每种策略针对不同的运行环境和开发场景优化: // tsconfig.json {"compilerOptions": {"moduleResolution": "node16", // 或 "…...

Linux(Centos 7.6)命令详解:zip

1.命令作用 打包和压缩(存档)文件(package and compress (archive) files);该程序用于打包一组文件进行分发;存档文件;通过临时压缩未使用的文件或目录来节省磁盘空间;且压缩文件可以在Linux、Windows 和 macOS中轻松提取。 2.命…...

es-使用easy-es时如何指定索引库

在对应的实体类中,通过注解IndexName指定。 如上图,指定的索引库就是problems,那么之后我使用easy-es时都是针对该索引库进行增删改查。...

Redis-主从架构

主从架构 主从架构什么是主从架构基本架构 复制机制的工作原理1. 全量复制(Full Synchronization)2. 部分复制(Partial Synchronization)3. PSYNC2机制(Redis 4.0) 主从架构的关键技术细节1. 复制积压缓冲区…...

Java数据结构第二十期:解构排序算法的艺术与科学(二)

专栏:Java数据结构秘籍 个人主页:手握风云 目录 一、常见排序算法的实现 1.1. 直接选择排序 1.2. 堆排序 1.3. 冒泡排序 1.4. 快速排序 一、常见排序算法的实现 1.1. 直接选择排序 每⼀次从待排序的数据元素中选出最小的⼀个元素,存放在…...

inkscape裁剪svg

参考https://blog.csdn.net/qq_46049113/article/details/123824888,但是上个博主没有图片,不太直观,我补上。 使用inkscape打开需要编辑的图片。 在左边导航栏,点击矩形工具,创建一个矩形包围你想要保留的内容。 如果…...

类加载器加载过程

今天我们就来深入了解一下Java中的类加载器以及它的加载过程。 一、什么是类加载器? 在Java中,类加载器(Class Loader)是一个非常重要的概念。它负责将类的字节码文件(.class文件)加载到Java虚拟机&#x…...

Git基础之基本操作

文件的四种状态 Untracked:未追踪,如新建的文件,在文件夹中,没有添加到git库,不参与版本控制,通过git add将状态变为staged Unmodify:文件已入库,未修改,即版本库中的文件…...

简单的 Python 示例,用于生成电影解说视频的第一人称独白解说文案

以下是一个简单的 Python 示例,用于生成电影解说视频的第一人称独白解说文案。这个示例使用了 OpenAI 的 GPT 模型,因为它在自然语言生成方面表现出色。 实现思路 安装必要的库:使用 openai 库与 OpenAI API 进行交互。设置 API 密钥&#…...

[Pycharm]创建解释器

仅以此文章来记录自己经常脑子抽忘记的地方 有时候我们在建好了一个项目以后,想要更换解释器。以新建conda解释器为例。 一、conda解释器 1.选择setting 2.选择Add Local Interpreter 3.type选则conda。如果你之前已经有了conda环境,和我一样选择了Gen…...