AiGeoTech

  • 首页
  • 目录
  • 工具
  • 链接
  • 联系
  • 登陆
专注人工智能与地球科学交叉应用的知识平台
  1. 首页
  2. AI基础与方法
  3. 机器学习基础
  4. 正文

监督学习入门:回归与分类,用地学例子讲清楚模型是怎么“学会”的

2025年11月22日 17点热度 0人点赞 0条评论

一、什么是监督学习?先用“做题”类比一下

监督学习 的核心特点是:

每个样本都有一个“标准答案”(标签),模型通过大量“带答案的题目”来学习规律。

地学里常见的“题目 + 答案”例子:

  • 某个深度点:

    • 题目:GR、RT、DEN、AC 等测井曲线数值

    • 答案:该处岩性 = 砂岩 / 泥岩 / 灰岩 / 混合细粒岩(分类问题)

  • 某个岩心段:

    • 题目:测井响应 + 地球化学指标

    • 答案:实验测得孔隙度、渗透率(回归问题)

模型的目标:

给它一堆“题目 + 标准答案”,它自己总结出“解题规律”;

以后再给它没有答案的新题,它也能给出一个 尽量接近地质真实 的预测。


二、回归:预测一个“数”,比如孔隙度

先从最地质工程化的例子讲起:

例子:用测井曲线预测孔隙度

假设你有几口井的如下数据(简化):

  • 输入特征(X):

    • GR(自然伽马)

    • DEN(密度)

    • AC(声波时差)

  • 输出标签(y):

    • 岩心测得的孔隙度 φ(单位 %)

问题:

能否训练一个模型,让它根据 GR、DEN、AC,预测对应深度的孔隙度?

1. 用一个非常简单的模型来理解:线性回归

先不管复杂算法,想象模型就是一个“公式”:

预测孔隙度

= w₀ + w₁·GR + w₂·DEN + w₃·AC

这里的 w₀、w₁、w₂、w₃ 就是模型的“参数”。

学习(训练) 的本质,就是要找到一组合适的 w,使得这个公式算出来的结果尽量接近真实的孔隙度。

2. 模型如何“感知自己错了没有”?

我们得有一个指标来衡量“预测得好不好”,常见的是 均方误差(MSE):

MSE = 所有样本 (预测值 - 真实值)² 的平均

  • 差得越离谱,这个值越大;

  • 预测得越准,这个值越小。

所以,训练的目标可以理解为一句话:

找到一组 w₀、w₁、w₂、w₃,

使得 MSE 尽可能小。

3. “学习”的过程可以想象成这样

  1. 一开始,模型 瞎猜一组参数:

    • 比如 w₀ = 0, w₁ = 0, w₂ = 0, w₃ = 0,

    • 此时,无论输入什么,预测都是 0%。

  2. 用这组参数,对所有训练样本做一遍预测:

    • 对每个样本 i,都得到预测孔隙度 φ̂ᵢ。

  3. 计算误差:

    • 真实孔隙度 = φᵢ

    • 预测孔隙度 = φ̂ᵢ

    • 误差 eᵢ = φ̂ᵢ − φᵢ

    • 把所有 eᵢ² 平均起来,就是当前的 MSE。

  4. 看看如果稍微“调整参数”,误差能不能变小:

    • 把与孔隙度相关性很强的曲线(比如 AC)对应的 w₃ 往某个方向调,

    • 如果 MSE 变小,说明调的方向对;再往这个方向继续调。

    • 如果 MSE 变大,说明调“错边”了,往反方向调。

  5. 重复第 2~4 步很多很多次,直到误差不再明显下降。

    • 这就是所谓的“迭代训练过程”,

    • 常见的优化方法叫“梯度下降”。

最后,我们就得到了一组比较合理的参数 w₀、w₁、w₂、w₃。

这时,给模型一个新井的数据(只有 GR、DEN、AC,没有岩心孔隙度),

模型就会根据当前公式给出一个孔隙度预测值。

4. 回归任务的常见评估指标

训练完之后,我们一般会关心:

  • RMSE(均方根误差):误差的“平均幅度”是多少?

  • R²(判定系数):预测结果与真实值的相关程度,有点类似“相关系数的平方”。

同时,也要 画图看一眼:

  • 实测 vs 预测 点云图(是否靠近 y = x 直线)

  • 某段井的孔隙度剖面:

    • 实测曲线

    • 预测曲线

    • 看看哪里差得比较厉害,是否有明显的地质原因(比如裂缝发育、异常高孔段等)。


三、分类:预测一个“类”,比如岩性类型

再看地学中更典型的任务:

例子:根据测井曲线识别岩性

假设你有如下数据:

  • 输入特征(X):GR、RT、DEN、CALI 等

  • 输出标签(y):岩性类别:

    • 0 = 泥岩

    • 1 = 砂岩

    • 2 = 灰岩

    • 3 = 混合细粒岩

这次,输出不再是一个连续数字,而是一个 离散的类别。

1. 模型不再输出一个数,而是输出“属于各类型的概率”

一个典型的分类模型(比如逻辑回归、随机森林、神经网络)在某个深度点的输出往往是:

  • 属于泥岩的概率:P(泥岩) = 0.70

  • 属于砂岩的概率:P(砂岩) = 0.20

  • 属于灰岩的概率:P(灰岩) = 0.05

  • 属于混合细粒岩的概率:P(混合细粒岩) = 0.05

然后,选概率最大的那个作为预测类别:

0.70 最大 → 预测为 “泥岩”

2. 分类问题的“好坏”怎么度量?

直觉上,我们希望:

  • 正确类别的概率越大越好,

  • 错误类别的概率越小越好。

这类问题常用的一个损失叫 交叉熵损失(Cross-Entropy Loss),大意是:

真正类别的预测概率越接近 1,损失越小;

越接近 0,损失越大(甚至趋向无穷大)。

例如:真实类别是“砂岩”:

  • 如果模型给:P(砂岩) = 0.9,则损失很小

  • 如果模型给:P(砂岩) = 0.1,则损失很大

训练的目的同样可以概括为:

调整模型参数,使所有样本的交叉熵损失尽量小。

3. 分类任务常看哪些指标?

训练完分类模型后,我们会关注:

  1. 总体准确率(Accuracy)

    • 所有样本中,预测对了的比例。

  2. 混淆矩阵(Confusion Matrix)

    • 每一行是真实岩性,每一列是预测岩性。

    • 可以看到:

      • 某种岩性常被混淆为哪种(比如泥岩常被错分为混合细粒岩)。

      • 某类样本数量是否太少(样本极度不平衡)。

  3. 分每一类的识别率(召回率 / Recall)

    • 对页岩油评价来说,可能最关心的是“高品质储层能不能认出来”,

    • 那就重点看该类的召回率,而不是只看总体准确率。

地质角度上,我们往往更关心:

哪些岩性容易被混淆?

这种混淆在地质上是否合理?

是否需要重新调整岩性划分标准或者样本标注?


四、为什么总是在说“训练集”和“测试集”?

不论是预测孔隙度,还是识别岩性,你可能经常听到一个说法:

要把数据分成训练集和测试集。

原因很简单:

我们不想只知道模型在“见过的井”上表现如何,更想知道:

在“没见过的新井”上,它还能不能保持比较可靠的效果?

所以通常会:

  1. 把所有样本打乱。

  2. 拿出一部分(比如 70%)做 训练集:用来“教模型”。

  3. 剩下的(比如 30%)做 测试集:训练过程中不让模型看到,最后 一次性评估。

更严谨一点的做法是:

  • 甚至按井来划分:

    • 某几口井全部做训练井,

    • 剩下 1~2 口井作为独立测试井。

  • 这样更接近真实场景:

    • 模型在“老井”上训练,

    • 用来预测“新布井”的情况。


五、用一条简化流程串一下:模型到底是怎么“学会”的?

以“根据测井预测孔隙度”为例,一句话版流程:

  1. 准备数据:

    • 收集多口井的 GR、DEN、AC + 孔隙度(岩心或实验数据)。

  2. 划分训练集 / 测试集:

    • 比如:80% 深度点训练,20% 深度点测试;

    • 或者:按井划分,某口井专门留作测试。

  3. 定义模型结构:

    • 比如简单的线性回归,

    • 或者稍复杂一点的随机森林 / 神经网络。

  4. 定义损失函数:

    • 回归用 MSE,分类用交叉熵之类。

  5. 开始训练:

    • 反复把训练集数据扔给模型,

    • 根据损失函数调整参数,使误差变小。

  6. 在测试集上评估:

    • 计算 RMSE、R² 或准确率、混淆矩阵,

    • 看效果是否 acceptable。

  7. 结合地质常识审查结果:

    • 是否出现明显不合理的预测?

    • 是否对某些岩性或某些段预测特别差?

    • 需要不需要调整数据、特征或岩性划分?

  8. 最后,才是应用到实际工作:

    • 用来预测未钻井测井曲线、未取心井的孔隙度,

    • 或者辅助划分储层级别、甜点区段。


六、结语:先把“回归 + 分类”打牢,再谈复杂算法

在 AI 的世界里,模型的名字可以五花八门:线性回归、随机森林、SVM、XGBoost、CNN、LSTM……

但它们在监督学习框架下,本质都在做类似的几件事:

  • 输入:一组你准备好的特征(测井、地震、地球化学等);

  • 输出:一个数(回归)或一个类别(分类);

  • 通过优化“预测 vs 真实”的差距,让模型越来越接近我们希望的结果。

对我们这样的地学背景来说,真正重要的并不是掌握多少种模型名字,而是:

知道什么时候这是一个“回归问题”,什么时候是“分类问题”;

知道什么数据能用来做标签,什么特征是有地质意义的;

知道评估模型时,不能只看一个数字,而要结合地质解释。

标签: 暂无
最后更新:2025年11月22日

magic3278

这个人很懒,什么都没留下

点赞
下一篇 >

文章评论

razz evil exclaim smile redface biggrin eek confused idea lol mad twisted rolleyes wink cool arrow neutral cry mrgreen drooling persevering
取消回复

COPYRIGHT © 2025 AiGeoTech. ALL RIGHTS RESERVED.

Theme Kratos Made By Seaton Jiang