机器学习技术(七)——有监督学习之逻辑回归算法原理及实操

2023-10-27

机器学习技术(七)——有监督学习之逻辑回归算法原理及实操

在这里插入图片描述

一、引言

当你想要解决一个分类问题时,逻辑回归是一种常用且强大的统计分析工具。它能够根据一系列特征值来预测一个样本属于某一类的概率。 逻辑回归的灵活性、易解释性和计算效率使其成为了数据科学领域的重要技术之一。

本文内容:详细介绍逻辑回归算法原理,基于python的逻辑回归的底层代码实现及调用。基于逻辑回归的模型探索被调查人员年龄,估计工资以及是否会购买某产品的关系,并将预测结果进行可视化。

二、逻辑回归算法原理

1、我们定义逻辑回归的预测函数为
h θ ( x ) = g ( θ T x ) h_\theta(x) = g(\theta^Tx) hθ(x)=g(θTx)
其中g(x)为sigmoid函数
g ( x ) = 1 1 + e − x g(x) = \frac{1}{1+e^{-x}} g(x)=1+ex1
对于二分类任务有“单位阶跃函数”用来将实值z转换为0或1
y = { 0 , z < 0 0.5 , z = 0 1 , z > 0 y=\begin{cases}0,&z<0\\0.5,&z=0\\1,&z>0\end{cases} y= 0,0.5,1,z<0z=0z>0
最后我们可以得到下方函数,0.5可以作为分类的边界
h θ ( x ) = 1 1 + e − θ T X h_\theta(x) = \frac{1}{1+e^{-\theta^TX}} hθ(x)=1+eθTX1
在这里插入图片描述

几种决策边界的例子:

在这里插入图片描述

关于逻辑回归的代价函数,设代价函数为:
C o s t ( h θ ( x ) , y ) =   { − l o g ( h θ ( x ) ) i f y = 1 − l o g ( 1 − h ( 1 − h θ ( x ) ) ) i f y = 0 Cost(h_\theta(x),y)=\ \begin{cases} -log(h_\theta(x))&if \quad y=1 \\ -log(1-h(1-h_\theta(x))) &if \quad y=0 \end{cases} Cost(hθ(x),y)= {log(hθ(x))log(1h(1hθ(x)))ify=1ify=0
由上式可以推出:
C o s t ( h θ ( x ) , y ) = − y l o g ( h θ ( x ) ) − ( 1 − y ) l o g ( 1 − h θ ( x ) ) Cost(h_\theta(x),y)= -ylog(h_\theta(x))-(1-y)log(1-h_\theta(x)) Cost(hθ(x),y)=ylog(hθ(x))(1y)log(1hθ(x))
则在逻辑回归模型使用梯度下降算法中的代价函数可以表示为:
J ( θ ) = − 1 m [ ∑ i = 1 m y ( i ) l o g h θ ( x ( i ) ) + ( 1 − y ( i ) ) l o g ( 1 − h θ ( x ( i ) ) ) ] J(\theta) = -\frac{1}{m}[\sum^{m}_{i=1}y^{(i)}logh_\theta(x^{(i)})+(1-y^{(i)})log(1-h_\theta(x^{(i)}))] J(θ)=m1[i=1my(i)loghθ(x(i))+(1y(i))log(1hθ(x(i)))]

三、实践案例介绍

1、数据集及需求

本案例使用的数据样本为400用户的基本信息,其中包含每个样本的ID,性别,年龄,估计工资以及是否购买该产品。其中我们选择的自变量为用户的年龄,估计工资。应变量为是否购买该产品,并以0表示不否买,1表示购买该产品。

User ID Gender Age EstimatedSalary Purchased
15624510 Male 19 19000 0
15810944 Male 35 20000 0
15668575 Female 26 43000 0
15603246 Female 27 57000 0
15804002 Male 19 76000 0
15728773 Male 27 58000 0
15598044 Female 27 84000 0
15694829 Female 32 150000 1
15600575 Male 25 33000 0

数据集地址:https://download.csdn.net/download/tianhai12/88275733

采用逻辑回归模型通过对400名用户的年龄以及估计工资对是否购买该产品进行预测,并对数据样本的训练集以及测试集分别进行模型预测结果的可视化来显示模型表现。

2、导入相关依赖库

讲数据处理所需库以及可视化依赖包导入。

#导入相关依赖包
import numpy as np
import matplotlib.pyplot as plt
import pandas as pd

3、读取并查看数据

将400名用户数据导入,并将其中年龄和估计工资数据命名为x,将是否购买该产品设置为y。

输入:

#导入数据集
dataset = pd.read_csv('ml/Social_Network_Ads.csv')
#提取所有的行,索引为2,3的列
X = dataset.iloc[:, [2, 3]].values
y = dataset.iloc[:, 4].values

#查看前五行数据集
dataset.head()

结果显示如下,每位用户共有五组特征,其中我们主要关注年龄,估计工资以及是否购买该产品。
在这里插入图片描述

4、数据预处理

将我们所需数据 按3:1的比例划分为训练集以及测试集以便后续训练模型,并对所有原始数据进行标准化为均值为0方差为1的数据以防止预测结果被一些维度较大的值影响。

#导入划分数据集的方法
from sklearn.model_selection import train_test_split

X_train, X_test, y_train, y_test = train_test_split(X, y, test_size = 0.25, random_state = 0)
#数据标准化
#导入标准化方法
from sklearn.preprocessing import StandardScaler
#标准化数据,保证每个维度的特征数据方差为1,均值为0。使得预测结果不会被某些维度过大的特征值而主导
sc = StandardScaler()
#将标准化的数据进行重定义
X_train = sc.fit_transform(X_train)
X_test = sc.transform(X_test)

划分数据集为训练集和测试集,test_size参数表示测试集占总数据集的比例,这里的random_state就是为了保证程序每次运行都分割一样的训练集合测试集。否则,同样的算法模型在不同的训练集和测试集上的效果不一样。当你用sklearn分割完测试集和训练集,确定模型和促初始参数以后,你会发现程序每运行一次,都会得到不同的准确率,无法调参。这个时候就是因为没有加random_state。加上以后就可以调参了。

5、构建模型

导入逻辑回归模型,并基于上述所得训练集训练模型。

输入:

#使用训练数据集来训练模型
#导入逻辑回归模型
from sklearn.linear_model import LogisticRegression
#初始化逻辑回归分类器
classifier = LogisticRegression(solver='liblinear',random_state = 0)
#调用LogisticRegression中的fit函数/模块用来训练模型参数
classifier.fit(X_train, y_train)
solver的选项:['liblinear', 'newton-cg', 'lbfgs', 'sag', 'saga']

输出模型如下,其中各个参数所代表含义如下:

(可能根据包的版本不同,详细参数也有所不同,这里简单例举,具体可以参考自己电脑中LogisticRegression方法内的介绍)

LogisticRegression(C=1.0, class_weight=None, dual=False, fit_intercept=True,
intercept_scaling=1, max_iter=100, multi_class=‘warn’,
n_jobs=None, penalty=‘l2’, random_state=0, solver=‘warn’,
tol=0.0001, verbose=0, warm_start=False)
以下为逻辑回归模型各个函数意义:
penalty:惩罚项,str类型,可选参数为l1和l2,默认为l2。用于指定惩罚项中使用的规范。
dual:对偶或原始方法,bool类型,默认为False。对偶方法只用在求解线性多核(liblinear)的L2惩罚项上。当样本数量>样本特征的时候,dual通常设置为False。
tol:停止求解的标准,float类型,默认为1e-4。就是求解到多少的时候,停止,认为已经求出最优解。
c:正则化系数λ的倒数,float类型,默认为1.0。必须是正浮点型数。像SVM一样,越小的数值表示越强的正则化。
fit_intercept:是否存在截距或偏差,bool类型,默认为True。
intercept_scaling:仅在正则化项为”liblinear”,且fit_intercept设置为True时有用。float类型,默认为1。
class_weight:用于标示分类模型中各种类型的权重,可以是一个字典或者’balanced’字符串,默认为不输入,也就是不考虑权重,即为None。
random_state:随机数种子,int类型,可选参数,默认为无,仅在正则化优化算法为sag,liblinear时有用。
solver:优化算法选择参数,只有五个可选参数,即’liblinear’, ‘newton-cg’, ‘lbfgs’, ‘sag’, ‘saga’。默认为liblinear。solver参数决定了我们对逻辑回归损失函数的优化方法,有四种算法可以选择,分别是:
liblinear:使用了开源的liblinear库实现,内部使用了坐标轴下降法来迭代优化损失函数。
lbfgs:拟牛顿法的一种,利用损失函数二阶导数矩阵即海森矩阵来迭代优化损失函数。
newton-cg:也是牛顿法家族的一种,利用损失函数二阶导数矩阵即海森矩阵来迭代优化损失函数。
sag:即随机平均梯度下降,是梯度下降法的变种,和普通梯度下降法的区别是每次迭代仅仅用一部分的样本来计算梯度,适合于样本数据多的时候。
saga:线性收敛的随机优化算法的的变重。

6、测试模型

导入所需方法,并测试模型。

输入:

#使用训练好的模型对X_test进行预测,结果存储在变量y_pred中
y_pred = classifier.predict(X_test)
#构建混淆矩阵
#导入构建混淆矩阵的方法
from sklearn.metrics import confusion_matrix
#分别传入测试集的真实值和预测值来构建混淆矩阵, y_test是样本真实结果,y_pred是样本预测结果
cm = confusion_matrix(y_test, y_pred)
print(cm)
#使用逻辑回归模型自带的评分函数score获得模型在测试集上的准确性结果
print('Accuracy of LR Classifier:',classifier.score(X_test,y_test))

输出结果为混淆矩阵以及模型预测准确率。由结果可知,测试集中100样本预测对了89个,模型预测准确率为0.89.

输出:

[[65  3]
 [ 8 24]]
Accuracy of LR Classifier: 0.89

7、可视化模型

步骤1 训练集结果及可视化

导入可视化方法,首先对训练集预测数据以及模型预测结果进行可视化。

输入:

#可视化训练数据集的结果
#导入可视化的方法
from matplotlib.colors import ListedColormap
#训练集重新赋值
X_set, y_set = X_train, y_train
X1, X2 = np.meshgrid(np.arange(start = X_set[:, 0].min() - 1, stop = X_set[:, 0].max() + 1, step = 0.01),
                    np.arange(start = X_set[:, 1].min() - 1, stop = X_set[:, 1].max() + 1, step = 0.01))

#输出X1,X2结果
print(X1,X2)
#以红色表示不购买该产品,绿色代表购买该产品
plt.contourf(X1, X2, classifier.predict(np.array([X1.ravel(), X2.ravel()]).T).reshape(X1.shape),
            alpha = 0.75, cmap = ListedColormap(('red', 'green')))
plt.xlim(X1.min(), X1.max())
plt.ylim(X2.min(), X2.max())
for i, j in enumerate(np.unique(y_set)):
   plt.scatter(X_set[y_set == j, 0], X_set[y_set == j, 1],
               c = ListedColormap(('red', 'green'))(i), label = j)
#添加图表的描述
plt.title('Logistic Regression (Training set)')
plt.xlabel('Age')
plt.ylabel('Estimated Salary')
plt.legend()
plt.show()

输出为X1,X2结果以及模型预测与真实值比较可视化图。

[[-2.99318916 -2.98318916 -2.97318916 ...  3.13681084  3.14681084
   3.15681084]
 [-2.99318916 -2.98318916 -2.97318916 ...  3.13681084  3.14681084
   3.15681084]
 [-2.99318916 -2.98318916 -2.97318916 ...  3.13681084  3.14681084
   3.15681084]
 ...
 [-2.99318916 -2.98318916 -2.97318916 ...  3.13681084  3.14681084
   3.15681084]
 [-2.99318916 -2.98318916 -2.97318916 ...  3.13681084  3.14681084
   3.15681084]
 [-2.99318916 -2.98318916 -2.97318916 ...  3.13681084  3.14681084
   3.15681084]] [[-2.58254245 -2.58254245 -2.58254245 ... -2.58254245 -2.58254245
  -2.58254245]
 [-2.57254245 -2.57254245 -2.57254245 ... -2.57254245 -2.57254245
  -2.57254245]
 [-2.56254245 -2.56254245 -2.56254245 ... -2.56254245 -2.56254245
  -2.56254245]
 ...
 [ 3.30745755  3.30745755  3.30745755 ...  3.30745755  3.30745755
   3.30745755]
 [ 3.31745755  3.31745755  3.31745755 ...  3.31745755  3.31745755
   3.31745755]
 [ 3.32745755  3.32745755  3.32745755 ...  3.32745755  3.32745755
   3.32745755]]

在这里插入图片描述

该散点图中红色代表不购买该产品,绿色代表购买该产品。由图可知训练集中300个样本大部分被分对了,小部分红点在绿色部分,绿点在红色部分,为没有预测对的点,由图可知,该模型在训练集上表现连良好。

步骤2 测试集结果及可视化

对测试集数据进行相同可视化方法。

输入:

#可视化测试集结果,步骤与训练集相似。
from matplotlib.colors import ListedColormap
X_set, y_set = X_test, y_test
X1, X2 = np.meshgrid(np.arange(start = X_set[:, 0].min() - 1, stop = X_set[:, 0].max() + 1, step = 0.01),
                    np.arange(start = X_set[:, 1].min() - 1, stop = X_set[:, 1].max() + 1, step = 0.01))
plt.contourf(X1, X2, classifier.predict(np.array([X1.ravel(), X2.ravel()]).T).reshape(X1.shape),
            alpha = 0.75, cmap = ListedColormap(('red', 'green')))
plt.xlim(X1.min(), X1.max())
plt.ylim(X2.min(), X2.max())
for i, j in enumerate(np.unique(y_set)):
   plt.scatter(X_set[y_set == j, 0], X_set[y_set == j, 1],
               c = ListedColormap(('red', 'green'))(i), label = j)
plt.title('Logistic Regression (Test set)')
plt.xlabel('Age')
plt.ylabel('Estimated Salary')
plt.legend()
plt.show()

在这里插入图片描述

测试机输出结果如下所示,我们可以发现共有三个红点被错分在绿色区域,8个绿点被错分在红色区域,与混淆矩阵结果一致,总共11个样本预测错误,模型准确率0.89,表现良好。

四、总结

通过基于逻辑回归探索400名用户的年龄以及估计工资对是否购买该产品进行预测,并对数据样本的训练集以及测试集分别进行模型预测结果的可视化来显示模型表现。由可视化图像可得模型表现良好,后续可以通过用户年龄以及估计工资来预测他是否会购买该产品,进行一个目标客户选择。

在这里插入图片描述

本文内容由网友自发贡献,版权归原作者所有,本站不承担相应法律责任。如您发现有涉嫌抄袭侵权的内容,请联系:hwhale#tublm.com(使用前将#替换为@)

机器学习技术(七)——有监督学习之逻辑回归算法原理及实操 的相关文章

  • 如何避免使用 python 处理空的标准输入?

    The sys stdin readline 返回之前等待 EOF 或新行 所以如果我有控制台输入 readline 等待用户输入 相反 我想打印帮助并在没有需要处理的情况下退出并显示错误 而不是等待用户输入 原因 我正在寻找一个Pytho
  • 从文本文件中删除特定字符

    我对 Python 和编码都很陌生 我当时正在做一个小项目 但遇到了一个问题 44 1 6 23 2 7 49 2 3 53 2 1 68 1 6 71 2 7 我只需要从每行中删除第三个和第六个字符 或者更具体地说 从整个文件中删除 字符
  • 使用python查找txt文件中字母出现的次数

    我需要从 txt 文件中读取该字母并打印 txt 文件中出现的次数 到目前为止 我已经能够在一行中打印内容 但计数有问题 有人可以指导吗 infile open grades txt content infile read for char
  • 稀有对象的 python 类型注释,例如 psycopg2 对象

    我了解内置类型 但是我如何指定稀有对象 例如数据库连接对象 def get connection and cursor gt tuple psycopg2 extensions cursor psycopg2 extensions conn
  • 将非常大的Python列表输出保存到mysql表中

    我想将 python 生成的列表的输出保存在 mysql 数据库的表中 该表如下所示 mysql 中的 myapc8 表 https i stack imgur com 4B4Hz png这是Python代码 在此输入图像描述 https
  • 将 numpy 数组合并为单个 int

    numpy 数组怎么可以这样 10 22 37 45 转换为单个 int32 数字 如下所示 10223745 这可以工作 gt gt gt int join map str 10 22 37 45 10223745 基本上你使用map s
  • Mypy 无法从文字列表推断项目的类型

    我有一个变量x和一个文字列表 例如 0 1 2 我想转换x这些文字之一 如果x在列表中 我将其退回 否则我返回一个后备值 from typing import Literal Set Foo Literal 0 1 2 foos Set F
  • 在Python上获取字典的前x个元素

    我是Python的新手 所以我尝试用Python获取字典的前50个元素 我有一本字典 它按值降序排列 k 0 l 0 for k in len dict d l 1 if l lt 51 print dict 举个小例子 dict d m
  • Python HMAC:类型错误:字符映射必须返回整数、None 或 unicode

    我在使用 HMAC 时遇到了一个小问题 运行这段代码时 signature hmac new key secret key msg string to sign digestmod sha1 我收到一个奇怪的错误 File usr loca
  • Spark 和 Python 使用自定义文件格式/生成器作为 RDD 的输入

    我想问一下 Spark 中输入的可能性 我可以看到从http spark apache org docs latest programming guide html http spark apache org docs latest pro
  • python中basestring和types.StringType之间的区别?

    有什么区别 isinstance foo types StringType and isinstance foo basestring 对于Python2 basestring是两者的基类str and unicode while type
  • Airflow 1.9 - 无法将日志写入 s3

    我在 aws 的 kubernetes 中运行气流 1 9 我希望将日志发送到 s3 因为气流容器本身的寿命并不长 我已经阅读了描述该过程的各种线程和文档 但我仍然无法让它工作 首先是一个测试 向我证明 s3 配置和权限是有效的 这是在我们
  • 在骨架图像中查找线 OpenCV python

    我有以下图片 我想找到一些线来进行一些计算 平均长度等 我尝试使用HoughLinesP 但它找不到线 我能怎么做 这是我的代码 sk skeleton mask rows cols sk shape imgOut np zeros row
  • Python 中维基百科 API 中的 DisambiguationError 和 GuessedAtParserWarning

    我想获得维基百科与搜索词相关的可能且可接受的名称列表 在这种情况下是 电晕 当输入以下内容时 print wikipedia summary Corona 这给出了以下输出 home virej local lib python3 8 si
  • XPath:通过当前节点属性选择当前和下一个节点的文本

    首先 这是从我之前的问题 https stackoverflow com questions 5202187 xpath select current and next nodes text by current node attribut
  • 可以使用哪些技术来衡量 pandas/numpy 解决方案的性能

    Question 如何简洁全面地衡量下面各个功能的性能 Example 考虑数据框df df pd DataFrame Group list QLCKPXNLNTIXAWYMWACA Value 29 52 71 51 45 76 68 6
  • 如何在亚马逊 EC2 上调试 python 网站?

    我是网络开发新手 这可能是一个愚蠢的问题 但我找不到可以帮助我的确切答案或教程 我工作的公司的网站 用 python django 构建 托管在亚马逊 EC2 上 我想知道从哪里开始调试这个生产站点并检查存储在那里的日志和数据库 我有帐户信
  • 如何给URL添加变量?

    我正在尝试从网站收集数据 我有一个 Excel 文件 其中包含该网站的所有不同扩展名 F i www example com example2 我有一个脚本可以成功从网站中提取 HTML 但现在我想为所有扩展自动执行此操作 然而 当我说 s
  • 将 Keras 集成到 SKLearn 管道?

    我有一个 sklearn 管道 对异构数据类型 布尔 分类 数字 文本 执行特征工程 并想尝试使用神经网络作为我的学习算法来拟合模型 我遇到了输入数据形状的一些问题 我想知道我想做的事情是否可能 或者我是否应该尝试不同的方法 我尝试了几种不
  • 如何使用 python 定位和读取 Data Matrix 代码

    我正在尝试读取微管底部的数据矩阵条形码 我试过libdmtx http libdmtx sourceforge net 它有 python 绑定 当矩阵的点是方形时工作得相当好 但当矩阵的点是圆形时工作得更糟 如下所示 另一个复杂问题是在某

随机推荐

  • C++11 function、bind、可变参数模板

    在设计回调函数的时候 无可避免地会接触到可回调对象 在C 11中 提供了std function和 std bind两个方法来对可回调对象进行统一和封装 C 语言中有几种可调用对象 函数 函数指针 lambda表达式 bind创建的对象以及
  • Hibernate的加载方式——GET与LOAD的对比

    在Hibernate框架中 最常用到的加载方式就非Get和Load莫属了 然而Get和Load在加载方式上边还有很多的不同 下面让我们来分析一下他们的不同之处 区别 从返回的结果上来看 get load在检索到数据的时候 会返回对象 代理对
  • firefox火狐书签windows和ubuntu无法同步问题

    装了ubuntu后发现firefox的书签没法同步 最终发现问题的原因 firefox有个全球服务和本地服务 ubuntu下的firefox默认是全球服务的 而windows下的firefox默认是本地服务的 这样相当于两个系统下默认的存储
  • 【生信】初探基因定位和全基因组关联分析

    初探QTL和GWAS 文章目录 初探QTL和GWAS 实验目的 实验内容 实验题目 第一题 玉米MAGIC群体的QTL分析 第二题 TASSEL自带数据集的关联分析 实验过程 玉米MAGIC群体的QTL分析 包含的数据 绘制LOD曲线 株高
  • PyTorch训练深度卷积生成对抗网络DCGAN

    文章目录 DCGAN介绍 代码 结果 参考 DCGAN介绍 将CNN和GAN结合起来 把监督学习和无监督学习结合起来 具体解释可以参见 深度卷积对抗生成网络 DCGAN DCGAN的生成器结构 图片来源 https arxiv org ab
  • PCA(主成分分析方法)

    目录 1 降维问题 2 向量与基变换 2 1 内积与投影 2 2 基 2 3 基变换的矩阵 3 协方差矩阵及优化目标 3 1 方差 3 2 协方差 3 3 协方差矩阵 3 4 协方差矩阵对角化 4 算法与实例 4 1 PCA算法 4 2 实
  • postgres数据库进行备份和恢复

    参考 http blog chinaunix net uid 354915 id 3504632 html root localhost postgres 9 3 5 pg dump help pg dump dumps a databas
  • (九)Mybatis下划线驼峰处理的几种方法

    这篇文章主要讲述Mybatis下划线驼峰处理的几种方法 对大家的学习或者工作具有一定的参考学习价值 需要的朋友们下面随着小编来一起学习学习吧 目录 1 可以通过写别名 2 开启驼峰命名 3 自定义javabean的封装规则 首先先说明一下为
  • Anaconda镜像源整理与使用

    本文复制于 Anaconda镜像源整理与使用 天道酬勤 花开半夏 只为方便查找与防止原文被删除 请前往原文查看 Anaconda镜像源整理与使用 常用镜像源Conda源Pypi源 镜像源使用指令解决CondaHTTPError HTTP 0
  • var js=function(){}和function js(){}的区别

    在Javascript中 函数及变量的声明都将被提升到函数的最顶部 也就是说我们可以先使用后声明 但函数表达式和变量表达式只是将函数或者变量的声明提升到函数顶部 函数表达式和变量的初始化将不被提升 var js function 这种叫做函
  • KL散度原理和实现

    KL散度计算 KL散度 Kullback Leibler Divergence 一般用于度量两个概率分布函数之间的相似程度 离散求和 连续求积分 KL P Q
  • Java-IO字节流与字符流

    IO流的常用流 输入流 输入字节流和输入字符流 将硬盘的文件输出到Java内存 输出流 输出字节流和输出字符流 从内存写到磁盘中 缓冲 缓冲的字面意思是减缓冲击力比如 看视频比较卡 暂停缓存一会 1 字节输入流 FileInputStrea
  • 附件预览实现

    kkFileView演示首页kkFileView 在线文件预览
  • 【基础汇总】——python数据分析必备三大工具

    目录 前言 一 numpy 1 数组创建 2 数组运算 3 矩阵运算 二 pandas 1 数据结构 2 数据处理 2 1 数据结构与描述性统计 2 2 切片访问与缺失处理 2 3 多表合并 三 matplotlib 1 matplotli
  • 3D建模前景是不是很不错?虽然如此,但也需正视每一个行业

    其实所有行业都是一样的 没有什么容易的 只不过游戏建模这一行是偏向于技术的 一个好的建模师月薪10k 是很常见的 但这个需要有自己刻苦学习 不断积累沉淀的成果 不可能报个培训班学习6个月就能拿到的 希望一出来就月入过万的 这个几乎是不可能的
  • 前端初学3

    hr标签的扩展及部分特殊符号的表示 文章目录 hr标签的扩展及部分特殊符号的表示 hr标签的扩展 一 hr的颜色变化 二 hr的宽度变化 三 hr的位置 特殊符号 一 标签显示 二 首行缩进 三 其他特殊符号 总结 hr标签的扩展 hr标签
  • 计算机cpu和内存不足,电脑内存不足的解决方法

    电脑内存不足的解决方法 内存是计算机中重要的部件之一 它是与CPU进行沟通的桥梁 计算机中所有程序的运行都是在内存中进行的 因此内存的性能对计算机的影响非常大 下面是jy135小编收集整理的电脑内存不足的解决方法 欢迎阅读 步骤一 右击计算
  • Pygame(三)画圆

    Pygame 三 画圆 作业代码 画一个矩形 要求 左上角在 100 100 宽为200 高为60 边框颜色为蓝色 作业代码 def homework01 画一个矩形 要求 1 画一个矩形 要求 左上角在 100 100 宽为200 高为6
  • 使用VmWare安装黑苹果系统

    目录 1 介绍 2 破解安装VMware 3 unlocker解锁虚拟机 3 1 关闭VMware相关的进程 3 2 执行安装命令 4 VmWare创建虚拟机 5 下载并配置镜像以及虚拟机设置 5 1 修改镜像 5 2 修改虚拟机安装路径文
  • 机器学习技术(七)——有监督学习之逻辑回归算法原理及实操

    机器学习技术 七 有监督学习之逻辑回归算法原理及实操 文章目录 机器学习技术 七 有监督学习之逻辑回归算法原理及实操 一 引言 二 逻辑回归算法原理 三 实践案例介绍 1 数据集及需求 2 导入相关依赖库 3 读取并查看数据 4 数据预处理