如何在 Linux 中安装和使用 Scikit-Learn

Scikit-learn是Python最流行的机器学习库之一,它为数据分析和机器学习任务提供了广泛的工具,从简单的线性回归到高级的聚类算法。

本文将指导您完成安装和使用步骤Scikit-learn在 Linux 系统上。

Scikit-learn(也称为sklearn)是一个用于机器学习任务的免费开源 Python 库。它建立在其他 Python 库的基础上,例如数值模拟,科学Py, 和绘图库,为复杂的机器学习算法提供简单的界面。

的一些关键特性Scikit-learn包括:

  • 监督学习(例如分类、回归)。
  • 无监督学习(例如聚类、降维)
  • 模型评估和验证
  • 数据预处理工具
  • 支持多种数据格式和模型部署工具

在 Linux 中安装 Python

Scikit-learn是建立在Python,所以你需要在你的系统上安装Python。您可以通过在终端中键入以下命令来检查 Python 是否已安装:

python3 --version

如果Python尚未安装,您可以通过运行以下命令来安装它:

sudo apt install python3         [On Debian, Ubuntu and Mint]
sudo yum install python3         [On RHEL/CentOS/Fedora and Rocky/AlmaLinux]
sudo emerge -a sys-apps/python3  [On Gentoo Linux]
sudo apk add python3             [On Alpine Linux]
sudo pacman -S python3           [On Arch Linux]
sudo zypper install python3      [On OpenSUSE]    
sudo pkg install python3         [On FreeBSD]

在 Linux 中安装 Pip

是用于安装Python库,例如Scikit-learn。要检查 pip 是否已安装,请运行:

pip3 --version

如果未安装 pip,请使用以下命令安装:

sudo apt install python3-pip         [On Debian, Ubuntu and Mint]
sudo yum install python3-pip         [On RHEL/CentOS/Fedora and Rocky/AlmaLinux]
sudo emerge -a dev-python/pip        [On Gentoo Linux]
sudo apk add py3-pip                 [On Alpine Linux]
sudo pacman -S python-pip            [On Arch Linux]
sudo zypper install python3-pip      [On OpenSUSE]    
sudo pkg install py38-pip            [On FreeBSD]

在 Linux 中安装 Scikit-learn

现在创建一个虚拟环境(维尼夫)并安装scikit学习。请注意,虚拟环境是可选的,但强烈建议使用,以避免与其他包发生潜在冲突。

python3 -m venv sklearn-env
source sklearn-env/bin/activate
pip3 install -U scikit-learn

此命令将下载并安装最新版本Scikit-learn及其依赖项(例如数值模拟科学Py)。根据您的互联网速度,这可能需要几分钟。

在 Linux 中安装 Scikit-Learn

安装完成后可以验证一下Scikit-learn通过在 Python 中导入来正确安装。

python3 -m pip show scikit-learn  # show scikit-learn version and location
python3 -m pip freeze             # show all installed packages in the environment
python3 -c "import sklearn; sklearn.show_versions()"
检查 Linux 中的 Scikit-Learn

如果没有出现错误并且打印出Scikit-learn的版本号,则说明安装成功。

如何在 Linux 中使用 Scikit-learn

安装完成后Scikit-learn是时候开始使用它了,下面是如何使用 Scikit-learn 执行各种机器学习任务的基本示例。

示例 1:导入 Scikit-learn 并加载数据集

Scikit-learn提供了几个用于学习目的的内置数据集。一个流行的数据集是“鸢尾花”数据集,其中包含有关不同品种鸢尾花的数据。

要加载鸢尾花数据集,使用以下代码:

from sklearn.datasets import load_iris

# Load the dataset
iris = load_iris()

# Print the features and target labels
print(iris.data)
print(iris.target)

示例 2:将数据拆分为训练集和测试集

在应用机器学习模型之前,将数据集分为训练集和测试集非常重要,这可确保模型在数据的一个子集上进行训练并在另一数据子集上进行测试,从而防止过度拟合。

您可以使用train_test_split从 Scikit-learn 分割数据:

from sklearn.model_selection import train_test_split

# Split the data into 80% training and 20% testing
X_train, X_test, y_train, y_test = train_test_split(iris.data, iris.target, test_size=0.2, random_state=42)

print("Training data:", X_train.shape)
print("Testing data:", X_test.shape)

示例 3:训练机器学习模型

现在,让我们借助简单的分类器来训练机器学习模型,例如支持向量机(支持向量机),对鸢尾花进行分类。

from sklearn.svm import SVC

# Create an SVM classifier
model = SVC()

# Train the model on the training data
model.fit(X_train, y_train)

# Predict on the test data
y_pred = model.predict(X_test)

print("Predicted labels:", y_pred)

示例 4:评估模型

训练模型后,评估其性能非常重要。您可以使用准确性等指标来查看模型的表现如何。

from sklearn.metrics import accuracy_score

# Calculate accuracy
accuracy = accuracy_score(y_test, y_pred)

print("Accuracy:", accuracy)

这将打印模型的准确性,它表示模型对测试数据做出正确预测的百分比。

结论

在本文中,我们介绍了如何安装和使用Scikit-learn在 Linux 系统上。我们展示了如何使用安装它、加载数据集、分割数据、训练机器学习模型并评估模型的性能。

Scikit-learn是一个强大且易于使用的 Python 机器学习工具。通过上述步骤,您可以开始机器学习之旅并探索 Scikit-learn 提供的广泛算法和技术。

通过练习和试验不同的算法、数据集和模型评估技术,您将能够为现实世界的问题构建有效的机器学习解决方案。