
特征工程：
对因子做非线性处理，作为重排阶段的乘法融合 / 特征融合，和LR、FM、浅层 MLP的输入。

分成两张表：

1. **常见非线性映射总表**
2. **按“你想达到什么效果”来选方法**

---

# 一、常见非线性映射对比表

> 记号说明：
>
> * (x)：原始因子，默认 (x\ge 0)
> * (y=f(x))：映射后特征
> * “头部/高值/尾部”分别指：高质量区、较大数值区、低影响区
> * “弹性”可理解为乘法融合里更接近“相对重要性”的量

| 方法                      | 公式                                 |   单调性 | 斜率/敏感性特征             | 弹性/相对敏感性特征                | 主要效果                   | 适合场景               | 风险/注意点             |
| ----------------------- | ---------------------------------- | ----: | -------------------- | ------------------------- | ---------------------- | ------------------ | ------------------ |
| 加偏置                     | (y=x+b)                            |   单调增 | (\frac{dy}{dx}=1) 不变 | (\frac{x}{x+b})，随(x)增大而增大 | **主要削弱低值区相对重要性**       | 防止小值/0值过度伤害乘法分数    | 对高值区抑制很弱           |
| 对数                      | (y=\log(1+x))                      |   单调增 | 高值区越来越平              | 高值相对敏感性下降明显               | **强压缩大值/长尾**           | 计数、曝光、频次、热度        | 小值区区分度有时不够         |
| 幂次（0~1）                 | (y=x^\gamma,\ 0<\gamma<1)          |   单调增 | 高值区变平                | 弹性恒为(\gamma<1)            | **整体降权，压缩高值**          | 重尾分布、避免大值碾压        | 需要处理0附近/尺度问题       |
| 幂次（>1）                  | (y=x^\gamma,\ \gamma>1)            |   单调增 | 高值区更陡                | 弹性恒为(\gamma>1)            | **整体放大，强调高值**          | 想突出强信号头部           | 容易放大异常值、过拟合        |
| 负幂 / 倒数幂                | (y=(x+\epsilon)^\gamma,\ \gamma<0) |   单调减 | 小(x)处敏感              | 适合“坏度/距离/排名”类反向量          | **把大值变小、小值变大**         | 距离、惩罚项、rank-like特征 | 必须防0，数值稳定要小心       |
| Michaelis-Menten / 饱和分式 | (y=\frac{x}{x+K})                  |   单调增 | 前陡后平                 | (\frac{K}{x+K})，随(x)增大而减小 | **高值区重要性显著衰减**         | 相似度、质量分、置信度饱和      | 需选(K)，解释阈值要清晰      |
| 指数饱和                    | (y=1-e^{-\alpha x})                |   单调增 | 初期快，后期快饱和            | 高值区快速失敏                   | **前期收益大，后期收益递减**       | “够好即可”的因子          | (\alpha)过大易太早饱和    |
| 倒数/双曲线                  | (y=\frac{1}{x+c})                  |   单调减 | **头部陡、尾部平**          | 对小(x)更敏感                  | **强头部区分，尾部压平**         | rank、距离、位置惩罚       | 语义是反向量时更自然         |
| RRF                     | (y=\frac{1}{k+r})                  |   单调减 | **头部下降快，尾部下降慢**      | 离散相邻rank差在头部更大            | **强调Top位置，压缩长尾rank差异** | 多路召回排序融合           | 更适合rank，不适合已校准连续分数 |
| Sigmoid                 | (y=\sigma(\alpha(x-c)))            |   单调增 | **中间陡，两端平**          | 阈值附近最敏感                   | **中段阈值化，低高两端压缩**       | 有明显阈值的质量因子         | 容易过压缩，参数敏感         |
| Tanh                    | (y=\tanh(\alpha(x-c)))             |   单调增 | **中间陡，两端平**          | 以中心点为对称中枢                 | **适合有“好/坏偏离”语义**       | 偏离均值、标准化后特征        | 要先中心化更合理           |
| Softplus                | (y=\log(1+e^{\alpha(x-c)}))        |   单调增 | 平滑版ReLU              | 阈值后近似线性                   | **软阈值激活**              | 希望“超过阈值才开始起作用”     | 不如硬阈值直观            |
| ReLU/铰链                 | (y=\max(0,x-c))                    |   单调增 | 阈值前0，后线性             | 明确阈值激活                    | **只让超过阈值部分生效**         | 明确业务门槛             | 不连续，不够平滑           |
| 截断/裁剪                   | (y=\min(\max(x,L),U))              |    单调 | 两端直接压平               | 控制极值影响                    | **抗异常值，防爆**            | 样本少、分布脏            | 可能损失极值信息           |
| 分段线性                    | 分段定义                               |  单调可控 | 可手工指定各段斜率            | 可按业务调敏感区间                 | **可解释、稳、好控**           | 规则清晰的业务场景          | 需要人工定阈值            |
| Arctan                  | (y=\arctan(\alpha(x-c)))           |   单调增 | 类S形但更柔和              | 中间敏感、两端平                  | **温和版S型压缩**            | 不想用太激进sigmoid时     | 解释性略弱              |
| 分位数/Percentile          | (y=\text{percentile}(x))           |   单调增 | 基于排序，不看绝对差值          | 消除原始尺度影响                  | **保序、抗异常、跨源统一尺度**      | 多源分数难校准            | 丢失绝对量纲信息           |
| 分桶/Binning              | 区间映射到桶                             | 不一定连续 | 桶内不敏感，桶间跳变           | 强离散化                      | **把非线性变成离散模式**         | 样本少、LR很常见          | 桶边界敏感              |
| Box-Cox                 | (\frac{x^\lambda-1}{\lambda})      |   单调增 | 介于log与power之间        | 可调分布形态                    | **系统化连续压缩族**           | 想系统试幂/log家族        | 解释性不如手工映射          |
| Yeo-Johnson             | 可处理负值                              |    单调 | 类似Box-Cox            | 可处理(\le 0)                | **负值/零值也能做分布矫正**       | 特征可能有负值            | 工程解释性一般            |

---

# 二、按“想达到什么效果”选方法

这个表更适合你做特征工程时快速决策。

| 目标             | 推荐方法                                                                    | 核心机制            | 典型用途             |
| -------------- | ----------------------------------------------------------------------- | --------------- | ---------------- |
| 防止小值/0值把乘法分数打穿 | (x+b)                                                                   | 给低值加保护垫         | 质量分、置信分、召回弱信号保护  |
| 压制大值主导、做收益递减   | (\log(1+x)), (x^\gamma(0<\gamma<1)), (\frac{x}{x+K}), (1-e^{-\alpha x}) | 高值区斜率变小         | 热度、频次、相似度、历史点击率  |
| 明显削弱高值区重要性     | (\frac{x}{x+K})                                                         | 弹性随(x)增大而下降     | “高了以后别再太影响排序”    |
| 整体降低某因子的乘法重要性  | (x^\gamma,\ 0<\gamma<1)                                                 | 弹性恒定缩小到(\gamma) | 统一降权某类因子         |
| 整体放大某因子的乘法重要性  | (x^\gamma,\ \gamma>1)                                                   | 弹性恒定放大到(\gamma) | 想强化强信号           |
| 强调Top，压平长尾     | (\frac{1}{x+c}), RRF                                                    | 头部陡、尾部平         | rank融合、位置因子、多路召回 |
| 只在阈值附近最敏感      | Sigmoid / Tanh / Arctan                                                 | 中间陡、两端平         | 质量过线、置信阈值、门控因子   |
| 超过阈值才起作用       | ReLU / Hinge / Softplus                                                 | 阈值激活            | “达到一定水平才算有效”     |
| 抗异常值、防极值爆炸     | Clip / Winsorize / Log                                                  | 直接限幅或压缩长尾       | 脏数据、样本少、稳定性优先    |
| 分布跨源不一致、量纲不统一  | Quantile / Percentile                                                   | 保序统一尺度          | 多路打分融合、异构召回分     |
| 业务规则清晰、想强可解释   | 分段线性 / 分桶                                                               | 手工指定各区间作用方式     | 规则强、可解释要求高       |
| 距离/惩罚/坏度越大越差   | 倒数、负幂、指数衰减                                                              | 反向单调映射          | 距离、时延、惩罚项        |

---

# 三、几个你当前最关心的方法，单独再压缩成小表

## 1）加偏置 vs Michaelis-Menten

| 方法   | 公式              | 低值区      | 高值区      | 适合作用     |
| ---- | --------------- | -------- | -------- | -------- |
| 加偏置  | (x+b)           | **削弱更多** | 基本保留     | 防止低值过分伤害 |
| MM饱和 | (\frac{x}{x+K}) | 保留较强敏感性  | **削弱更多** | 防止高值持续主导 |

一句话区别：

* **加偏置**：主要“救低值”
* **MM饱和**：主要“压高值”

---

## 2）RRF 的特征

| 维度       | 结论                    |
| -------- | --------------------- |
| 公式       | (\frac{1}{k+r})       |
| 单调性      | 随rank变差单调下降           |
| 头部变化     | **更陡**                |
| 尾部变化     | **更平**                |
| 相邻rank差异 | rank越靠前，相邻差越大         |
| 适合       | 多路召回融合、强调Top结果        |
| 本质       | 是一种“头部敏感、尾部压缩”的rank映射 |

你的判断是对的：**RRF 确实是头部变化陡、尾部变化平。**

---

## 3）Sigmoid / Tanh / ReLU 三者区别

| 方法         | 形状             | 最敏感区域  | 适用语义         |
| ---------- | -------------- | ------ | ------------ |
| Sigmoid    | S型，输出(0\sim1)  | 中心阈值附近 | 质量是否过线、概率型因子 |
| Tanh       | S型，输出(-1\sim1) | 中心附近   | 正负偏离、相对均值偏差  |
| ReLU/Hinge | 折线             | 阈值以上   | 超过门槛才开始加分    |

---

# 四、用于 LR / FM 输入时，最推荐的一组“低风险特征字典”

如果你现在是要做**有限样本下的工程化输入**，建议不要一下上太多复杂函数，而是每个核心因子先派生一个**小型稳定字典**：

| 变换类别  | 推荐形式                             | 作用           |
| ----- | -------------------------------- | ------------ |
| 原始    | (x)                              | 保留原信息        |
| 稳定    | (x+b)                            | 防止低值过伤       |
| 压缩    | (\log(1+x))                      | 压长尾          |
| 弱压缩   | (\sqrt{x})                       | 温和收益递减       |
| 饱和    | (\frac{x}{x+K})                  | 明确高值衰减       |
| 截断    | (\min(x,U))                      | 防极值爆炸        |
| 阈值    | (\mathbf 1[x>t]) 或 (\max(0,x-t)) | 强化门槛效应       |
| rank型 | (\frac{1}{x+c}) / RRF            | 处理位置、rank、距离 |

---

# 五、如果你要在实际工程里优先试哪些

我建议优先级这样排：

## 第一梯队：最稳

* (x)
* (x+b)
* (\log(1+x))
* (\sqrt{x})
* (\frac{x}{x+K})
* clip
* rank倒数 / RRF

## 第二梯队：有明确业务阈值时

* sigmoid
* tanh
* relu / hinge
* softplus
* 分桶

## 第三梯队：谨慎使用

* 指数放大
* 高次幂 (x^3,x^4)
* 很激进的负幂
* 过多参数化函数族

因为样本少时，最怕的是：

* 变换过激
* 参数太多
* 极值被放大
* 输入间强共线后模型不稳

---

# 六、最后给你一个超短总结版

| 方法族 | 代表公式                               | 本质效果       |
| --- | ---------------------------------- | ---------- |
| 偏置族 | (x+b)                              | 救低值        |
| 压缩族 | (\log(1+x), \sqrt{x})              | 压大值、减长尾    |
| 饱和族 | (\frac{x}{x+K}, 1-e^{-\alpha x})   | 高值收益递减     |
| 放大族 | (x^\gamma,\gamma>1)                | 强化高值       |
| 反向族 | (\frac{1}{x+c}, x^\gamma,\gamma<0) | 距离/排名/惩罚映射 |
| S型族 | sigmoid, tanh, arctan              | 中间敏感、两端变平  |
| 阈值族 | ReLU, hinge, softplus              | 超过门槛才生效    |
| 稳定族 | clip, winsorize, quantile          | 抗异常、保稳     |
| 离散族 | binning, percentile                | 保序/分段表达    |

---

如果你愿意，我下一步可以继续帮你整理成一版**“适合直接放进方案文档/评审PPT”的表格版**，再补一列：
**“推荐用于哪些 rerank 因子（相关性、质量、热度、位置、先验）”**。
