大模型面试题11:余弦相似度 & 牛顿迭代法

1、余弦相似度的公式及核心解释

一、核心公式(向量形式,纯文本兼容版)

余弦相似度用于衡量两个非零向量在空间中的方向相似性,公式定义如下:

对于两个 n 维向量 A = (a₁, a₂, ..., aₙ) 和 B = (b₁, b₂, ..., bₙ),余弦相似度 cos(θ) 为:

cos(θ) = (A·B) / (||A|| × ||B||)

二、公式拆解说明(纯文本分步呈现)
  1. 分子:向量点积(内积)

    向量 A 和 B 的点积计算:

    A·B = a₁×b₁ + a₂×b₂ + ... + aₙ×bₙ = Σ(从 i=1 到 n)aᵢ×bᵢ

    (注:Σ 表示求和,即所有对应维度元素相乘后累加)

  2. 分母:向量模长的乘积

    • 向量 A 的模长(向量的长度):
      ||A|| = √(a₁² + a₂² + ... + aₙ²) = √[Σ(从 i=1 到 n)aᵢ²]
    • 向量 B 的模长:
      ||B|| = √(b₁² + b₂² + ... + bₙ²) = √[Σ(从 i=1 到 n)bᵢ²]
      (注:√ 表示平方根,分母作用是归一化,消除向量长度对结果的影响)
三、关键特性与适用场景
  1. 取值范围:cos(θ) ∈ [-1, 1]

    • cos(θ) = 1:两向量方向完全一致(相似度最高);
    • cos(θ) = 0:两向量垂直(无方向相关性);
    • cos(θ) = -1:两向量方向完全相反(相似度最低)。
  2. 核心优势

    不依赖向量"长度",仅关注"方向"。例如:向量 (1,2,3) 和 (2,4,6)(长度不同但方向一致)的余弦相似度为 1,而欧氏距离会因长度差异显示为非零值。

  3. 典型应用

    • 文本相似度计算(词向量、句子嵌入对比);
    • 图像特征匹配(如SIFT、CNN特征向量相似性判断);
    • 推荐系统(用户偏好与物品特征向量匹配);
    • 大模型语义相似度衡量(Embedding向量对比)。
四、面试延伸考点
  • 与欧氏距离的区别:欧氏距离关注"向量空间绝对距离",余弦相似度关注"方向一致性";高维场景(如大模型Embedding)中,余弦相似度对长度不敏感的特性更优。
  • 优化计算:若向量已归一化(模长=1),余弦相似度可直接简化为点积(A·B),降低计算复杂度(大模型工程落地常用此优化)。

2、牛顿迭代法:通俗解析 + 实战场景

一、核心思想:用"切线"逼近方程的根

牛顿迭代法是求解方程 ( f(x) = 0 ) 根的高效数值方法 ,本质是用函数在某点的切线替代曲线,通过迭代让近似根不断逼近真实根------好比从山坡上沿最陡的切线方向往下走,几步就能到谷底(方程的根)。

二、核心公式(CSDN兼容LaTeX)
1. 迭代递推公式

xn+1=xn−f(xn)f′(xn)x_{n+1} = x_n - \frac{f(x_n)}{f'(x_n)}xn+1=xn−f′(xn)f(xn)

其中:

  • ( x_n ):第( n )次迭代的近似根;
  • ( x_{n+1} ):第( n+1 )次迭代的近似根(更接近真实解);
  • ( f(x_n) ):函数( f(x) )在( x_n )处的函数值;
  • ( f'(x_n) ):函数( f(x) )在( x_n )处的一阶导数值(切线斜率)。
2. 多项式函数导数公式

若 ( f(x) = a_kx^k + a_{k-1}x^{k-1} + \dots + a_1x + a_0 ),则导数为:
f′(x)=kakxk−1+(k−1)ak−1xk−2+⋯+a1f'(x) = ka_kx^{k-1} + (k-1)a_{k-1}x^{k-2} + \dots + a_1f′(x)=kakxk−1+(k−1)ak−1xk−2+⋯+a1

三、实战例子:用牛顿法求( \sqrt{2} )(解方程( f(x) = x^2 - 2 = 0 ))

目标:找到( x )使得( x^2 - 2 = 0 ),即( x = \sqrt{2} \approx 1.4142 )。

步骤1:确定函数与导数

函数:( f(x) = x^2 - 2 )

导数:( f'(x) = 2x )

步骤2:给定初始值( x_0 = 1 )

步骤3:迭代计算

  • 第1次迭代:
    x1=1−12−22×1=1−−12=1.5x_1 = 1 - \frac{1^2 - 2}{2 \times 1} = 1 - \frac{-1}{2} = 1.5x1=1−2×112−2=1−2−1=1.5
  • 第2次迭代:
    x2=1.5−1.52−22×1.5=1.5−0.253≈1.4167x_2 = 1.5 - \frac{1.5^2 - 2}{2 \times 1.5} = 1.5 - \frac{0.25}{3} \approx 1.4167x2=1.5−2×1.51.52−2=1.5−30.25≈1.4167
  • 第3次迭代:
    x3=1.4167−1.41672−22×1.4167≈1.4167−0.0072.8334≈1.4142x_3 = 1.4167 - \frac{1.4167^2 - 2}{2 \times 1.4167} \approx 1.4167 - \frac{0.007}{2.8334} \approx 1.4142x3=1.4167−2×1.41671.41672−2≈1.4167−2.83340.007≈1.4142

仅3次迭代就精准逼近( \sqrt{2} ),体现牛顿法二阶收敛优势(误差按平方级减小)。

四、适用场景(结合实际工作)
  1. 计算器/编程语言数值计算
    求平方根、自然对数、三角函数等,本质是解非线性方程:
  • 求( \ln 3 )(解方程( f(x) = e^x - 3 = 0 )),迭代公式:
    xn+1=xn−exn−3exnx_{n+1} = x_n - \frac{e^{x_n} - 3}{e^{x_n}}xn+1=xn−exnexn−3
  1. 机器学习:参数优化

    逻辑回归最小化损失函数( L(\theta) ),等价于求解( L'(\theta) = 0 ),迭代公式:
    θn+1=θn−L′(θn)L′′(θn)\theta_{n+1} = \theta_n - \frac{L'(\theta_n)}{L''(\theta_n)}θn+1=θn−L′′(θn)L′(θn)

    其中( L''(\theta_n) )是损失函数的二阶导数(海森矩阵),收敛速度远快于梯度下降(适合小样本、低维模型)。

  2. 工程设计:非线性问题求解

  • 二极管电流-电压关系(( I = I_0(e^{U/U_T} - 1) )),已知( I )求( U )的迭代公式:
    Un+1=Un−I0(eUn/UT−1)−II0⋅eUn/UT/UTU_{n+1} = U_n - \frac{I_0(e^{U_n/U_T} - 1) - I}{I_0 \cdot e^{U_n/U_T}/U_T}Un+1=Un−I0⋅eUn/UT/UTI0(eUn/UT−1)−I
  • 机械结构受力平衡:求解含非线性形变的方程,牛顿法可快速得到工程解。
五、适用条件(面试核心考点)
  1. 函数( f(x) )在根附近连续且二阶可导
  2. 初始值( x_0 )需靠近真实根(否则可能发散,如( x_0 = 100 )求( \sqrt{2} )会增加迭代步数);
  3. 迭代中( f'(x_n) \neq 0 )(分母不为0,避免切线平行于x轴);
  4. 单根(( f(x^) = 0 )且( f'(x^ ) \neq 0 ))时二阶收敛;重根(如( f(x) = (x-1)^2 = 0 ))需修正公式:
    xn+1=xn−k⋅f(xn)f′(xn)x_{n+1} = x_n - k \cdot \frac{f(x_n)}{f'(x_n)}xn+1=xn−k⋅f′(xn)f(xn)
    其中( k )为重根数(此处( k=2 ))。
六、总结
    • 核心公式(必记):
      xn+1=xn−f(xn)f′(xn)x_{n+1} = x_n - \frac{f(x_n)}{f^\prime(x_n)}xn+1=xn−f′(xn)f(xn)
  • 适用场景:计算器数值计算、机器学习小样本参数优化、工程非线性方程求解;
  • 关键条件:函数可导、初始值靠近真实根、导数非零;
  • 优势与局限:收敛快(二阶),但对初始值敏感、高维场景(如大模型)计算二阶导数成本高。
相关推荐
月疯1 小时前
unet网络的理解
网络·人工智能·深度学习
程序员小范1 小时前
8年NLP算法工程师郭志才:Ai正在模糊内容的产权边界。
人工智能·算法·自然语言处理
大写-凌祁1 小时前
大模型强化学习(LLM-RL)最前沿综述:从 DPO 到 System 2 推理与后训练扩展
人工智能·深度学习·机器学习·计算机视觉·agi
创作者mateo1 小时前
机器学习--处理数值型数据(一)
人工智能·机器学习
roman_日积跬步-终至千里1 小时前
【模式识别与机器学习(6)】主要算法与技术(下篇:高级模型与集成方法)之进化计算(Evolutionary Computation)
人工智能·算法·机器学习
禁默1 小时前
机器学习基础入门(第七篇):神经网络训练优化与常见问题解析
人工智能·神经网络·机器学习
二哈喇子!1 小时前
昇腾平台 vLLM 部署与性能优化实战:高吞吐推理落地指南
人工智能·性能优化
询问QQ688238861 小时前
基于scRNA-seq和批量RNA-seq数据的肝细胞癌中CAF风险特征构建与解析
决策树
h***34631 小时前
【玩转全栈】----Django模板语法、请求与响应
数据库·python·django