国产 无码 综合区,色欲AV无码国产永久播放,无码天堂亚洲国产AV,国产日韩欧美女同一区二区

【scikit-learn基礎】--『數(shù)據(jù)加載』之樣本生成器

這篇具有很好參考價值的文章主要介紹了【scikit-learn基礎】--『數(shù)據(jù)加載』之樣本生成器。希望對大家有所幫助。如果存在錯誤或未考慮完全的地方,請大家不吝賜教,您也可以點擊"舉報違法"按鈕提交疑問。

除了內置的數(shù)據(jù)集,scikit-learn還提供了隨機樣本的生成器。
通過這些生成器函數(shù),可以生成具有特定特性和分布的隨機數(shù)據(jù)集,以幫助進行機器學習算法的研究、測試和比較。

目前,scikit-learn庫(v1.3.0版)中有20個不同的生成樣本的函數(shù)。
本篇重點介紹其中幾個具有代表性的函數(shù)。

1. 分類聚類數(shù)據(jù)樣本

分類和聚類是機器學習中使用頻率最高的算法,創(chuàng)建各種相關的樣本數(shù)據(jù),能夠幫助我們更好的試驗算法。

1.1. make_blobs

這個函數(shù)通常用于可視化分類器的學習過程,它生成由聚類組成的非線性數(shù)據(jù)集。

import matplotlib.pyplot as plt
from sklearn.datasets import make_blobs

X, Y = make_blobs(n_samples=1000, centers=5)
plt.scatter(X[:, 0], X[:, 1], marker="o", c=Y, s=25)

plt.show()

【scikit-learn基礎】--『數(shù)據(jù)加載』之樣本生成器
上面的示例生成了1000個點的數(shù)據(jù),分為5個類別。

make_blobs的主要參數(shù)包括:

  • n_samples:生成的樣本數(shù)。
  • n_features:每個樣本的特征數(shù)。通常為2,表示我們生成的是二維數(shù)據(jù)。
  • centers:聚類的數(shù)量。即生成的樣本會被分為多少類。
  • cluster_std:每個聚類的標準差。這決定了聚類的形狀和大小。
  • shuffle:是否在生成數(shù)據(jù)后打亂樣本。
  • random_state:隨機數(shù)生成器的種子。這確保了每次運行代碼時生成的數(shù)據(jù)集都是一樣的。

1.2. make_classification

這是一個用于生成復雜二維數(shù)據(jù)的函數(shù),通常用于可視化分類器的學習過程或者測試機器學習算法的性能。

import matplotlib.pyplot as plt
from sklearn.datasets import make_classification

X, Y = make_classification(n_samples=100, n_classes=4, n_clusters_per_class=1)
plt.scatter(X[:, 0], X[:, 1], marker="o", c=Y, s=25)

plt.show()

【scikit-learn基礎】--『數(shù)據(jù)加載』之樣本生成器
可以看出它生成的各類數(shù)據(jù)交織在一起,很難做線性的分類。

make_classification的主要參數(shù)包括:

  • n_samples:生成的樣本數(shù)。
  • n_features:每個樣本的特征數(shù)。這個參數(shù)決定了生成的數(shù)據(jù)集的維度。
  • n_informative:具有信息量的特征的數(shù)量。這個參數(shù)決定了特征集中的特征有多少是有助于分類的。
  • n_redundant:冗余特征的數(shù)量。這個參數(shù)決定了特征集中的特征有多少是重復或者沒有信息的。
  • random_state:隨機數(shù)生成器的種子。這確保了每次運行代碼時生成的數(shù)據(jù)集都是一樣的。

1.3. make_moons

和函數(shù)名稱所表達的一樣,它是一個用于生成形狀類似于月牙的數(shù)據(jù)集的函數(shù),通常用于可視化分類器的學習過程或者測試機器學習算法的性能。

from sklearn.datasets import make_moons

fig, ax = plt.subplots(1, 3)
fig.set_size_inches(9, 3)

X, Y = make_moons(noise=0.01, n_samples=1000)
ax[0].scatter(X[:, 0], X[:, 1], marker="o", c=Y, s=25)
ax[0].set_title("noise=0.01")

X, Y = make_moons(noise=0.05, n_samples=1000)
ax[1].scatter(X[:, 0], X[:, 1], marker="o", c=Y, s=25)
ax[1].set_title("noise=0.05")

X, Y = make_moons(noise=0.5, n_samples=1000)
ax[2].scatter(X[:, 0], X[:, 1], marker="o", c=Y, s=25)
ax[2].set_title("noise=0.5")

plt.show()

【scikit-learn基礎】--『數(shù)據(jù)加載』之樣本生成器
noise越小,數(shù)據(jù)的分類越明顯。

make_moons的主要參數(shù)包括:

  • n_samples:生成的樣本數(shù)。
  • noise:在數(shù)據(jù)集中添加的噪聲的標準差。這個參數(shù)決定了月牙的噪聲程度。
  • random_state:隨機數(shù)生成器的種子。這確保了每次運行代碼時生成的數(shù)據(jù)集都是一樣的。

2. 回歸數(shù)據(jù)樣本

除了分類聚類,回歸是機器學習的另一個重要方向。
scikit-learn同樣也提供了創(chuàng)建回歸數(shù)據(jù)樣本的函數(shù)。

from sklearn.datasets import make_regression

fig, ax = plt.subplots(1, 3)
fig.set_size_inches(9, 3)

X, y = make_regression(n_samples=100, n_features=1, noise=20)
ax[0].scatter(X[:, 0], y, marker="o")
ax[0].set_title("noise=20")

X, y = make_regression(n_samples=100, n_features=1, noise=10)
ax[1].scatter(X[:, 0], y, marker="o")
ax[1].set_title("noise=10")

X, y = make_regression(n_samples=100, n_features=1, noise=1)
ax[2].scatter(X[:, 0], y, marker="o")
ax[2].set_title("noise=1")

plt.show()

【scikit-learn基礎】--『數(shù)據(jù)加載』之樣本生成器
通過調節(jié)noise參數(shù),可以創(chuàng)建不同精確度的回歸數(shù)據(jù)。

make_regression的主要參數(shù)包括:

  • n_samples:生成的樣本數(shù)。
  • n_features:每個樣本的特征數(shù)。通常為一個較小的值,表示我們生成的是一維數(shù)據(jù)。
  • noise:噪音的大小。它為數(shù)據(jù)添加一些隨機噪聲,以使結果更接近現(xiàn)實情況。

3. 流形數(shù)據(jù)樣本

所謂流形數(shù)據(jù),就是S形或者瑞士卷那樣旋轉的數(shù)據(jù),可以用來測試更復雜的分類模型的效果。
比如下面的make_s_curve函數(shù),就可以創(chuàng)建S形的數(shù)據(jù):

from sklearn.datasets import make_s_curve

X, Y = make_s_curve(n_samples=2000)

fig, ax = plt.subplots(subplot_kw={"projection": "3d"})
fig.set_size_inches((8, 8))
ax.scatter(X[:, 0], X[:, 1], X[:, 2], c=Y, s=60, alpha=0.8)
ax.view_init(azim=-60, elev=9)
plt.show()

【scikit-learn基礎】--『數(shù)據(jù)加載』之樣本生成器

4. 總結

本文介紹的生成樣本數(shù)據(jù)的函數(shù)只是scikit-learn庫中各種生成器的一部分,
還有很多種其他的生成器函數(shù)可以生成更加復雜的樣本數(shù)據(jù)。

所有的生成器函數(shù)請參考文檔:
https://scikit-learn.org/stable/modules/classes.html#samples-generator文章來源地址http://www.zghlxwxcb.cn/news/detail-749508.html

到了這里,關于【scikit-learn基礎】--『數(shù)據(jù)加載』之樣本生成器的文章就介紹完了。如果您還想了解更多內容,請在右上角搜索TOY模板網(wǎng)以前的文章或繼續(xù)瀏覽下面的相關文章,希望大家以后多多支持TOY模板網(wǎng)!

本文來自互聯(lián)網(wǎng)用戶投稿,該文觀點僅代表作者本人,不代表本站立場。本站僅提供信息存儲空間服務,不擁有所有權,不承擔相關法律責任。如若轉載,請注明出處: 如若內容造成侵權/違法違規(guī)/事實不符,請點擊違法舉報進行投訴反饋,一經(jīng)查實,立即刪除!

領支付寶紅包贊助服務器費用

相關文章

  • 【scikit-learn基礎】--概述

    Scikit-learn 是一個基于 Python 的開源機器學習庫,它提供了大量的機器學習算法和工具,方便用戶進行數(shù)據(jù)挖掘、分析和預測。 Scikit-learn 是基于另外兩個知名的庫 Scipy 和 Numpy 的, 關于 Scipy 和 Numpy 等庫,之前的系列文章中有介紹: Scipy 基礎系列 Numpy 基礎系列 自從 AlphaGo 再度

    2024年02月05日
    瀏覽(18)
  • 機器學習基礎07-模型選擇01-利用scikit-learn 基于Pima 數(shù)據(jù)集對LogisticRegression算法進行評估

    選擇合適的模型是機器學習和深度學習中非常重要的一步,它直接影響到模型的性能和泛化能力。 “所有模型都是壞的,但有些模型是有用的”。建立模型之后就要去評 估模型,確定模型是否有用。模型評估是模型開發(fā)過程中不可或缺的一部 分,有助于發(fā)現(xiàn)表達數(shù)據(jù)的最佳

    2024年02月14日
    瀏覽(18)
  • 【scikit-learn基礎】--『回歸模型評估』之偏差分析

    模型評估 在統(tǒng)計學和機器學習中具有至關重要,它幫助我們主要目標是量化模型預測新數(shù)據(jù)的能力。 本篇主要介紹 模型評估 時,如何利用 scikit-learn 幫助我們快速進行各種 偏差 的分析。 R2 分數(shù) (也叫 決定系數(shù) ),用于衡量模型預測的擬合優(yōu)度,它表示模型中 因變量 的

    2024年01月24日
    瀏覽(19)
  • 【scikit-learn基礎】--『預處理』之 正則化

    數(shù)據(jù)的 預處理 是數(shù)據(jù)分析,或者機器學習訓練前的重要步驟。 通過數(shù)據(jù)預處理,可以 提高數(shù)據(jù)質量 ,處理數(shù)據(jù)的缺失值、異常值和重復值等問題,增加數(shù)據(jù)的準確性和可靠性 整合不同數(shù)據(jù) ,數(shù)據(jù)的來源和結構可能多種多樣,分析和訓練前要整合成一個數(shù)據(jù)集 提高數(shù)據(jù)性

    2024年02月04日
    瀏覽(19)
  • 【scikit-learn基礎】--『回歸模型評估』之誤差分析

    模型評估 在統(tǒng)計學和機器學習中具有至關重要,它幫助我們主要目標是量化模型預測新數(shù)據(jù)的能力。 在這個數(shù)據(jù)充斥的時代,沒有評估的模型就如同盲人摸象,可能帶來誤導和誤判。 模型評估 不僅是一種方法,更是一種保障,確保我們在數(shù)據(jù)海洋中航行時,能夠依賴準確的

    2024年01月22日
    瀏覽(22)
  • 【數(shù)據(jù)科學】Scikit-learn

    【數(shù)據(jù)科學】Scikit-learn

    Scikit-learn 是 開源的Python庫 ,通過統(tǒng)一的界面實現(xiàn) 機器學習 、 預處理 、 交叉驗證及可視化算法 。 ??以上是使用 scikit-learn 庫 進行 k-最近鄰(KNN)分類 的流程,得到 KNN 分類器在 iris 數(shù)據(jù)集上的預測準確率。 ?? Scikit-learn 處理的數(shù)據(jù)是 存儲為 NumPy 數(shù)組或 SciPy 稀疏矩陣

    2024年02月07日
    瀏覽(34)
  • 【scikit-learn基礎】--『預處理』之 標準化

    【scikit-learn基礎】--『預處理』之 標準化

    數(shù)據(jù)的 預處理 是數(shù)據(jù)分析,或者機器學習訓練前的重要步驟。 通過數(shù)據(jù)預處理,可以 提高數(shù)據(jù)質量 ,處理數(shù)據(jù)的缺失值、異常值和重復值等問題,增加數(shù)據(jù)的準確性和可靠性 整合不同數(shù)據(jù) ,數(shù)據(jù)的來源和結構可能多種多樣,分析和訓練前要整合成一個數(shù)據(jù)集 提高數(shù)據(jù)性

    2024年02月05日
    瀏覽(26)
  • Python數(shù)據(jù)科學:Scikit-Learn機器學習

    Python數(shù)據(jù)科學:Scikit-Learn機器學習

    Scikit-Learn使用的數(shù)據(jù)表示:二維網(wǎng)格數(shù)據(jù)表 鳶尾花數(shù)據(jù)集說明: sepal_length:萼片長度 sepal_width:萼片寬度 petal_length:花瓣長度 petal_width:花瓣寬度 species:鳶尾花類型,Iris-setosa(山鳶尾),Iris-versicolor(變色鳶尾),Iris-virginica(維吉尼亞鳶尾) df_iris.head() 樣本:鳶尾花數(shù)據(jù)集矩陣,矩陣

    2024年02月21日
    瀏覽(101)
  • scikit-learn 中 Boston Housing 數(shù)據(jù)集問題解決方案

    在部分舊教程或教材中是 sklearn,現(xiàn)在【2023】已經(jīng)變更為 scikit-learn 作用:開源機器學習庫,支持有監(jiān)督和無監(jiān)督學習。它還提供了用于模型擬合、數(shù)據(jù)預處理、模型選擇、模型評估和許多其他實用程序的各種工具。 安裝 pip install scikit-learn 此數(shù)據(jù)集原本應該在 sklearn 中是自

    2023年04月13日
    瀏覽(17)
  • 機器學習-決策樹-回歸-CPU(中央處理單元)數(shù)據(jù)-python scikit-learn

    機器學習-決策樹-回歸-CPU(中央處理單元)數(shù)據(jù)-python scikit-learn

    決策樹是一種監(jiān)督機器學習算法,用于回歸和分類任務。樹是可以處理復雜數(shù)據(jù)集的強大算法。 決策樹特性: 不需要數(shù)值輸入數(shù)據(jù)進行縮放。無論數(shù)值是多少,決策樹都不在乎。 不同于其他復雜的學習算法,決策樹的結果是可以解釋的,決策樹不是黑盒類型的模型。 雖然大

    2024年02月20日
    瀏覽(25)

覺得文章有用就打賞一下文章作者

支付寶掃一掃打賞

博客贊助

微信掃一掃打賞

請作者喝杯咖啡吧~博客贊助

支付寶掃一掃領取紅包,優(yōu)惠每天領

二維碼1

領取紅包

二維碼2

領紅包