使用 TensorFlow 执行逻辑回归

创建一个包含用于定义逻辑回归的 Python 代码的 Jupyter Notebook,然后使用 TensorFlow (tf.keras) 实现它

在本教程中,了解如何创建包含用于定义逻辑回归的 Python 代码的 Jupyter Notebook,然后使用 TensorFlow (tf.keras) 实现它。Notebook 在 IBM Cloud Pak® for Data as a Service on IBM Cloud® 上运行。IBM Cloud Pak for Data 平台提供了额外的支持,例如与多个数据源的集成、内置分析、Jupyter Notebook 和机器学习。它还通过跨多个计算资源分配进程来提供可扩展性。您可以选择在 Python、Scala 和 R 中创建资产,并使用已安装在 IBM Cloud Pak for Data as a Service 平台上的开源框架(例如 TensorFlow)。

线性回归和逻辑回归的区别

虽然线性回归非常适合估计连续值(例如,估计房价或产品销售),但它并不是预测观察到的数据点所属类别的最佳工具。若要提供分类估计值,需要一些有关该数据点最有可能的类的指导。为此,您将使用逻辑回归。

线性回归

线性回归找到一个函数,该函数将连续因变量 与某些预测变量(例如,自变量或 )相关联。简单线性回归假定以下形式的函数:y``x1``x2

复制代码
y = w0 + w1 x x1 + w2 x x2 + ...

显示更多

它查找 、 和 的值。该项是截距 项或常量项 (如下公式所示):w0``w1``w2``w0``b

复制代码
 Y = W X + b

显示更多

逻辑回归

逻辑回归是线性回归的一种变体,当观测到的因变量 时很有用。它生成一个公式,用于预测类标签作为自变量函数的概率。y

尽管名称为逻辑回归,但它实际上是一种概率分类模型。逻辑回归通过采用线性回归并使用以下函数将数值估计值转换为概率来拟合特殊的 S 形曲线:

复制代码
 𝑃𝑟𝑜𝑏𝑎𝑏𝑖𝑙𝑖𝑡𝑦𝑂𝑓𝑎𝐶𝑙𝑎𝑠𝑠=𝑡ℎ𝑒𝑡𝑎(𝑦)=𝑓𝑟𝑎𝑐𝑒𝑦1+𝑒𝑦=𝑒𝑥𝑝(𝑦)/(1+𝑒𝑥𝑝(𝑦))=𝑝

显示更多

这将产生介于 0(接近减去无穷大)和 1(接近加无穷大)之间的 p 值。现在,这成为一种特殊类型的非线性回归。y``y

在这个等式中,是回归结果(变量之和乘以系数加权),是指数函数,是y``exp``theta(y)物流功能,也称为逻辑曲线。它是一种常见的"S"形(S形曲线),最初是为模拟人口增长而开发的。

您可能之前在另一个配置中看到过此函数:

复制代码
𝑃𝑟𝑜𝑏𝑎𝑏𝑖𝑙𝑖𝑡𝑦𝑂𝑓𝑎𝐶𝑙𝑎𝑠𝑠=𝑡ℎ𝑒𝑡𝑎(𝑦)=𝑓𝑟𝑎𝑐11+𝑒−𝑦

显示更多

因此,逻辑回归通过逻辑/sigmoid 函数传递输入,但随后将结果视为概率。

先决条件

遵循本教程需要满足以下先决条件:

预计时间

完成本教程大约需要 60 分钟。

步骤

  1. 创建 IBM Cloud 帐户并访问 IBM Cloud Pak for Data as a Service。

  2. 创建一个新项目。

  3. 将 Watson Machine Learning Service 与项目相关联。

  4. 将笔记本添加到项目中。

  5. 运行笔记本。

步骤 1。创建 IBM Cloud 帐户

  1. 登录到您的 IBM Cloud 帐户

  2. 搜索 Watson Studio。

  3. 通过选择区域和定价计划来创建服务。

  4. 单击创建

第2步。创建新项目

  1. 单击 Get started 以启动 Watson Studio 服务。

  2. 单击**"创建**项目",然后创建一个空项目。

  3. 为项目命名,并添加存储服务。

  4. 单击创建。创建项目后,系统会将您定向到项目仪表板。

第 3 步。将 Watson Machine Learning Service 与项目关联

  1. 单击**"设置**"选项卡。

  2. 向下滚动到关联的 服务,然后单击添加服务

  3. 在下拉菜单中选择 Watson

  4. 选择**"机器学习**"。

  5. 单击关联服务

第 4 步。将笔记本添加到项目

  1. 单击"添加到项目 ",然后单击"笔记本",将 Jupyter Notebook 添加到项目中。

  2. 选择**"从 URL"**,然后在"笔记本 URL"字段中输入以下 URL。

    复制代码
     https://github.com/IBM/dl-learning-path-assets/tree/main/fundamentals-of-deeplearning/notebooks/Logistic_Regression_with_TensorFlow.ipynb

    显示更多

  3. 为笔记本命名,然后单击**"创建**"。

第 5 步。运行笔记本

加载笔记本后,单击"单元格 ",然后选择"全部运行"以运行 笔记本。

通读笔记本

笔记本包含所有详细信息。花一些时间浏览笔记本的各个部分,以获得笔记本的概述。笔记本由文本(Markdown 或标题)单元格和代码单元格组成。Markdown 单元格提供有关代码设计用途的注释。

您可以通过突出显示每个单元格来单独运行单元格,然后单击笔记本顶部的"运行"或使用键盘快捷键运行 单元格(Shift + Enter ,但这可能因平台而异)。单元运行时,单元格左侧会出现一个星号 ()。当该单元格完成运行时,将显示一个序列号(例如,)。[*]``[17]

Notebook 提供了一个简单的逻辑函数示例,以帮助您了解 TensorFlow 背后的基本机制。

总结

在本教程中,您学习了逻辑回归的基础知识,以及如何使用 TensorFlow 实现机器学习算法。您学习了如何在 IBM Cloud Pak for Data as a Service 上使用 Watson Studio 运行 Jupyter Notebook,以及如何在 IBM Cloud Pak for Data as a Service 平台中使用开源框架。

相关推荐
华新嘉华DTC创新营销1 小时前
华新嘉华:AI搜索优化重塑本地生活行业:智能推荐正取代“关键词匹配”
人工智能·百度·生活
SmartBrain2 小时前
DeerFlow 实践:华为IPD流程的评审智能体设计
人工智能·语言模型·架构
l1t3 小时前
利用DeepSeek实现服务器客户端模式的DuckDB原型
服务器·c语言·数据库·人工智能·postgresql·协议·duckdb
寒月霜华4 小时前
机器学习-数据标注
人工智能·机器学习
九章云极AladdinEdu5 小时前
超参数自动化调优指南:Optuna vs. Ray Tune 对比评测
运维·人工智能·深度学习·ai·自动化·gpu算力
人工智能训练师6 小时前
Ubuntu22.04如何安装新版本的Node.js和npm
linux·运维·前端·人工智能·ubuntu·npm·node.js
cxr8287 小时前
SPARC方法论在Claude Code基于规则驱动开发中的应用
人工智能·驱动开发·claude·智能体
研梦非凡7 小时前
ICCV 2025|从粗到细:用于高效3D高斯溅射的可学习离散小波变换
人工智能·深度学习·学习·3d
幂简集成8 小时前
Realtime API 语音代理端到端接入全流程教程(含 Demo,延迟 280ms)
人工智能·个人开发
龙腾-虎跃8 小时前
FreeSWITCH FunASR语音识别模块
人工智能·语音识别·xcode