python線性回歸分析看相關性_機器學習入門-相關分析之簡單線性回歸

一.什么是機器學習?

簡單來說,機器學習是一類算法的總稱,這些算法企圖從大量歷史數據中挖掘出其中隱含的規律,并用于預測或者分類,更具體的說,機器學習可以看作是尋找一個函數,輸入是樣本數據,輸出是期望的結果,所以我們可以總結簡單抽象機器學習的過程:輸入訓練數據->機器學習算法->輸出結果。

二.機器學習步驟?提出問題.

理解數據

數據清洗

構建模型

評估

三.python中的機器學習工具包scikit-learn

SK-learn中文文檔:Introduction · sklearn 中文文檔?sklearn.apachecn.org20d09a5ee0638d556321961acd9ebb44.png

四.相關分析

什么是特征?什么是標簽?

比如我們要分析人們對某首歌的喜惡。

特征:特征就是數據的屬性,如一首歌的諸多特征:語言,節奏,風格,時長等等。

標簽:標簽是我們對數據的預測結果,喜惡就是標簽。

什么 是訓練數據?什么是測試數據?

一般做預測分析時,會將數據分為兩大部分。一部分是訓練數據,用于構建模型,一部分是測試數據,用于檢驗模型。有時候模型的構建過程中也需要檢驗模型,輔助模型構建,所以會將訓練數據在分為兩個部分:1)訓練數據;2)驗證數據(Validation Data)。驗證數據用于負責模型的構建。具體的是:訓練數據(Test Data):用于模型構建;驗證數據(Validation Data):可選,用于輔助模型構建,可以重復使用;測試數據(Test Data):用于檢測模型構建,此數據只在模型檢驗時使用,用于評估模型的準確率。絕對不允許用于模型構建過程,否則會導致過渡擬合。

相關分析-簡單線性回歸:

案例引入:探索學生學習時間和考試成績的相關關系,通過學習時間來預測學生的考試分數?

通過我們剛剛對特征和標簽定義,我們可以知道,在該案例中特征和標簽分別對應的是:

特征:學習時間,也就是我們常說的自變量。

標簽:分數,也就是我們常說的因變量。

輸入該部分數據:

import sklearn

from collections import OrderedDict

import pandas as pd

#數據集

examDict={'學習時間':[0.50,0.75,1.00,1.25,1.50,1.75,1.75,2.00,2.25,

2.50,2.75,3.00,3.25,3.50,4.00,4.25,4.50,4.75,5.00,5.50],

'分數':[10, 22, 13, 43, 20, 22, 33, 50, 62,

48, 55, 75, 62, 73, 81, 76, 64, 82, 90, 93]}

#將eaxmDict轉成有序字典

examOrderDict = OrderedDict(eaxmDict)

#將上述有序字典導入Dataframe

examDf = pd.DataFrame(examOrderDict)

#查看數據集前5行

examDf.head()

顯然,單純的表格,數據之間的關系還是沒有那么明顯,因此,我們考慮將這些數據放在坐標軸上表示出來:

1)提取特征和標簽

#特征features

exam_X=examDf.loc[:,'學習時間']

#標簽labes

exam_y=examDf.loc[:,'分數']

2)繪制散點圖

#繪制散點圖

import matplotlib.pyplot as plt

#確定散點圖中的X軸和Y軸,scatter是散點圖的意思

plt.scatter(exam_X,exam_y,color='b',label='exam ')

#添加圖標標簽

plt.xlabel('Hours')

plt.ylabel('Score')

#顯示圖像

plt.show()

3)從上面的散點圖,我們可以很本能的猜測,學習時間和分數存在某種正的相關性,學習時間越多,分數越高。

如何統計衡量相關性程度?單純看圖似乎少了什么,我們期望有這樣一個指標:

①能夠表示兩個變量的相關性方向【正線性相關/負線性相關/線性無關】

②能夠表示兩個標量的相關性大小。

那么,考慮如何構建這個指標呢。

觀察上圖中,四個象限點的特點,在

equation?tex=%5Cbar%7Bx%7D%EF%BC%9D%EF%BC%93 處有一條垂直的虛線,在

equation?tex=%5Cbar%7By%7D%EF%BC%9D51 處有一條虛線,兩條線將上圖劃分為四個象限,第Ⅰ象限的點對應

equation?tex=x_%7Bi%7D%E5%A4%A7%E4%BA%8E%5Cbar%7Bx%7D%E4%B8%94y_%7Bi%7D%E5%A4%A7%E4%BA%8E%5Cbar%7By%7D ,第Ⅱ象限點

equation?tex=x_%7Bi%7D%E5%B0%8F%E4%BA%8E%5Cbar%7Bx%7D%E4%B8%94y_%7Bi%7D%E5%A4%A7%E4%BA%8E%5Cbar%7By%7D ,以此類推,因此,我們可以發現,

equation?tex=%28x_%7Bi%7D-%5Cbar%7Bx%7D%29%28y_%7Bi%7D-%5Cbar%7By%7D%29 的值在第Ⅰ象限為正,在第Ⅱ象限為負,在第Ⅲ象限為正,在第Ⅳ象限為負。

在統計學中,我們用來表示兩個變量間線性關系程度的量叫做:協方差(covariance).對于一個容量為n的樣本,其觀測值為

equation?tex=%28x_%7B1%7D%2Cy_%7B1%7D%29%2C%28x_%7B2%7D%2Cy_%7B2%7D%29%2C%28x_%7B3%7D%2Cy_%7B%7D%29%2C...%28x_%7Bn%7D%2Cy_%7Bn%7D%29 ,樣本的協方差定義如下:

equation?tex=++++++++++++S_%7Bxy%7D%3D%5Cfrac%7B%5Csum_%7B%7D%5E%7B%7D%7B%28x_%7Bi%7D-%5Cbar%7Bx%7D%29%28y_%7Bi%7D-%5Cbar%7By%7D%29%7D%7D%7Bn-1%7D

如果

equation?tex=S_%7Bxy%7D 的值是正的,那么對

equation?tex=S_%7Bxy%7D 的值影響最大的點必然在第Ⅰ,Ⅲ象限【

equation?tex=x_%7Bi%7D%2Cy_%7Bi%7D 同向變動】,因此,

equation?tex=S_%7Bxy%7D 為正表示x與y之間存在正的線性關系,說明,隨著x的增加,y的值也在增加.

如果

equation?tex=S_%7Bxy%7D 的值是負的。對

equation?tex=S_%7Bxy%7D 的值影響最大的點必然在第Ⅱ,Ⅳ象限【

equation?tex=x_%7Bi%7D%2Cy_%7Bi%7D 異向變動】,說明 x與y之間存在負的線性關系,隨著x的增加,y的值在減少,最后,若各個點在四個象限中分布均勻,則,

equation?tex=S_%7Bxy%7D 的值接近于0,這表示x與y之間不存在線性關系。

協方差有什么缺點?

協方差看似是個衡量相關性的好的指標,但是在使用協方差作為線性關系強度的度量的時候,主要一個問題就是,協方差的值大小,很大程度上依賴于x,y的計量單位,因此我們考慮使用相關系數來對兩個變量之間的關系進行度量。

equation?tex=%E7%9A%AE%E5%B0%94%E9%80%8A%E7%9B%B8%E5%85%B3%E7%B3%BB%E6%95%B0%EF%BC%9Ar_%7Bxy%7D%3D%5Cfrac%7BS_%7Bxy%7D%7D%7BS_%7Bx%7DS_%7By%7D%7D

其中:

equation?tex=r_%7Bxy%7D 是樣本的相關系數,

equation?tex=S_%7Bxy%7D 是樣本協方差,

equation?tex=S_%7Bx%7D 是變量x的樣本標準差,

equation?tex=S_%7By%7D 是變量y的樣本標準差。我們知道,樣本標準差

equation?tex=S_%7Bx%7D 是樣本各單位標準值

equation?tex=x_%7Bi%7D 與其平均數

equation?tex=%5Cbar%7Bx%7D 離差平方和的算術平均數的平方根。它反映組內個體間的離散程度【且包含計量單位的影響】。我們用協方差除以變量的標準差,就可以剔除計量單位對系數的影響。

相關系數的三個極值:r=1,完全正相關,r=-1,完全負相關,r=0,線性無關。

4)如何在python中求得兩個變量的相關系數:

#相關系數:corr返回結果是一個數據框,存放的是相關系數矩陣

rDf=examDf.corr()

print('相關系數矩陣:')

rDf

相關系數矩陣將很方便看出變量之間的相關關系,有助于我們在面對多個變量在進行特征選擇的時候提高選擇的有效性。

5)回到我們最初的問題,如何通過學習時間來預計學生的成績呢,我們期望在之前的散點圖存在這一一條直線,它穿過了絕大多數的散點,這樣,我們就可以通過這條直線的方程來進行預測了,在回歸模型中,我們把這條線,稱為最佳擬合線。

6)之后的步驟便是要想方設法得到這條線的相關信息了。上圖中公式說我們估計的簡單線性回歸方程,其中我們把

equation?tex=b_%7B0%7D 稱為該回歸方程的截距,

equation?tex=b_%7B1%7D 為回歸方程的回歸系數,也就是我們熟悉的斜率。如何求和這個的系數

equation?tex=b_%7B0%7D

equation?tex=b_%7B1%7D 呢,我們最常用的方法是最小二乘法,最小二乘法通過使因變量的觀測值

equation?tex=y_%7Bi%7D 與因變量的預測值

equation?tex=%C5%B7_%7Bi%7D之間的離差平方和達到最小,求得

equation?tex=b_%7B0%7D

equation?tex=b_%7B1%7D 的值。

其中,估計回歸方程的斜率和y軸的截距為:

7)簡單線性回歸方程的python實現:

①提取特征和標簽

#特征features

exam_X=examDf.loc[:,'學習時間']

#標簽labes

exam_y=examDf.loc[:,'分數']

②將數據拆分為訓練數據和測試數據。

訓練數據用來訓練得出回歸方程,測試數據用來檢驗回歸方程的好壞。

'''train_test_split是交叉驗證中常用的函數,功能是從樣本中隨機的按比例選取訓練數據(train)和測試數據(test)第1個參數:所要劃分的樣本特征第2個參數:所要劃分的樣本標簽train_size:訓練數據占比,如果是整數的話就是樣本的數量'''

#導入相關包和模塊

from sklearn.model_selection import train_test_split

#建立訓練數據和測試數據

X_train,X_test,y_train,y_test = train_test_split(exam_X,exam_y,train_size=.8)

#輸出數據大小

print('原始數據特征:',exam_X.shape,

',訓練數據特征:',X_train.shape,

',測試數據特征:',X_test.shape,)

print('原始數據標簽:',exam_y.shape,

',訓練數據標簽:',y_train.shape,

',測試數據標簽:',y_test.shape,)

③繪出散點圖:

#繪制散點圖

import matplotlib.pyplot as plt

#散點圖

plt.scatter(X_train, y_train, color="blue", label="train data")

plt.scatter(X_test, y_test, color="red", label="test data")

#添加圖標標簽

plt.legend(loc=2)

plt.xlabel("Hours")

plt.ylabel("Score")

#顯示圖像

plt.show()

④訓練模型:

'''運行后會報錯,因為這里輸入的特征只有1個。注意看報錯信息,通過這個例子也學會如何分析報錯信息'''

#第1步:導入線性回歸

from sklearn.linear_model import LinearRegression

# 第2步:創建模型:線性回歸

model = LinearRegression()

#第3步:訓練模型

model.fit(X_train , y_train)如果你輸入的數據只有1個特征,需要用array.reshape(-1, 1)來改變數組的形狀What does -1 mean in numpy reshape??stackoverflow.com2b169c55ec5abe563f206c84cb22932f.png-1表示我不知道計算該填什么數字,由python通過array的長度和另一個維度參數推測出來。

我們可以做個小實驗證明一下:

'''理解了reshape后,我們再來看下線性回歸模型sklearn要求輸入的特征必須是二維數組的類型,但是因為我們目前只有1個特征,所以需要用安裝錯誤提示用reshape轉行成二維數組的類型。錯誤提示信息:Reshape your data either using array.reshape(-1, 1) if your data has a single feature'''

#將訓練數據特征轉換成二維數組XX行*1列

X_train=X_train.values.reshape(-1,1)

#將測試數據特征轉換成二維數組XX行*1列

X_test=X_test.values.reshape(-1,1)

#第1步:導入線性回歸

from sklearn.linear_model import LinearRegression

# 第2步:創建模型:線性回歸

model = LinearRegression()

#第3步:訓練模型

model.fit(X_train , y_train)

計算出

equation?tex=b_%7B0%7D

equation?tex=b_%7B1%7D的值:

'''最佳擬合線:y=bo+ 1X截距intercept:b0回歸系數:b1'''

#截距

b0=model.intercept_

#回歸系數

b1=model.coef_

print('最佳擬合線:截距bo=',b0,',回歸系數b1=',b1)

根據所得系數,繪出圖形:

#繪圖

import matplotlib.pyplot as plt

#訓練數據散點圖

plt.scatter(X_train, y_train, color='blue', label="train data")

#訓練數據的預測值

y_train_pred = model.predict(X_train)

#繪制最佳擬合線

plt.plot(X_train, y_train_pred, color='black', linewidth=3, label="best line")

#添加圖標標簽

plt.legend(loc=2)

plt.xlabel("Hours")

plt.ylabel("Score")

#顯示圖像

plt.show()

對于我們建立得模型,我們怎么才能知道我們模型的好壞呢?我們知道,最小二乘法只能用來得到某個回歸模型的回歸方程,但是,對于不同回歸方程之間的優劣程度,最小二乘法是沒有辦法進行評判的【可以預見的是,隨著數量集的增加,最小二乘法對應準則的公式的值是越來越大的】,因此我們需要找到一個不受數據數量集多少的影響,對不同回歸方程進行評估:

上圖中,我們可以把SST看作是觀測值在直線

equation?tex=%5Cbar%7By%7D%3D130 周圍的聚集程度的度量,把SSE看做是觀測值在回歸線

equation?tex=%C5%B7%3D60%2B5x 周圍聚集程度的度量,SST=15730,SSE=1530,所以預計的回歸線對樣本的數據的擬合要比直線

equation?tex=%5Cbar%7By%7D%3D130好。

數據的總波動【總的平方和】:

equation?tex=++%5Csum_%7B%7D%5E%7B%7D%7B%28y%E5%AE%9E%E9%99%85%E5%80%BC-y%E5%B9%B3%E5%9D%87%E5%80%BC%29%5E%7B2%7D%7D+++++++++++++++

equation?tex=+SST%3D%5Csum_%7B%7D%5E%7B%7D%7B%7D%28y_%7Bi%7D-%5Cbar%7By%7D%29%5E%7B2%7D

總波動中回歸方程不能解釋【誤差平方和】:

equation?tex=++++++++%5Csum_%7B%7D%5E%7B%7D%7B%28y%E5%AE%9E%E9%99%85%E5%80%BC-y%E9%A2%84%E6%B5%8B%E5%80%BC%29%5E%7B2%7D%7D

equation?tex=+SSE%3D%5Csum_%7B%7D%5E%7B%7D%7B%28y_%7Bi%7D-%C5%B7_%7Bi%7D%29%5E%7B2%7D%7D

總波動中回歸方程能解釋【回歸平方和】:

equation?tex=++%5Csum_%7B%7D%5E%7B%7D%7B%28y%E9%A2%84%E6%B5%8B%E5%80%BC-y%E5%B9%B3%E5%9D%87%E5%80%BC%29%5E%7B2%7D%7D

equation?tex=++SSR%3D%5Csum_%7B%7D%5E%7B%7D%7B%28%C5%B7_%7Bi%7D-%5Cbar%7By%7D%29%5E%7B2%7D%7D

我們將SSR理解為SST的被解釋部分,把SSE理解為SST的未被解釋的部分。

可以證明:SST=SSR+SSE【化簡再利用求和性質】

如果因變量的每一個值

equation?tex=y_%7Bi%7D 都剛好落到估計的回歸直線上,那么估計的回歸直線方程將給出一個完全的擬合,這種情況下,對于每一個觀測值,

equation?tex=%28y_%7Bi%7D-%C5%B7_%7Bi%7D%29 將都等于0,從而導致SSE=0,所以在完全擬合的情況下,SSR/SST=1,最壞的情形下,預測的回歸直線完全和代表平均數的直線重合,對于每一個,對于每一個觀測值,

equation?tex=%28y_%7Bi%7D-%C5%B7_%7Bi%7D%29 將都等于

equation?tex=%28y_%7Bi%7D-%5Cbar%7By_%7B%7D%7D%29 ,從而導致SST=SSE,SSR/SST=0.

由此得到我們的判定系數 :

equation?tex=R%5E%7B2%7D%3D%5Cfrac%7BSSR%7D%7BSST%7D .

并且由上面的分析, 作為回歸方程的判定系數,

equation?tex=R%5E%7B2%7D 值有以下兩個功能:

equation?tex=R%5E%7B2%7D 可以理解為總平方和中能被估計的回歸方程解釋的占比。

equation?tex=R%5E%7B2%7D 值越大,說明回歸模型的精度越高。

在之前所學表示的兩個變量之間線性關系強度的相關系數,實際上可以由

equation?tex=R%5E%7B2%7D 推算出:

equation?tex=%E7%9A%AE%E5%B0%94%E9%80%8A%E7%9B%B8%E5%85%B3%E7%B3%BB%E6%95%B0%EF%BC%9Ar_%7Bxy%7D%3D%5Cfrac%7BS_%7Bxy%7D%7D%7BS_%7Bx%7DS_%7By%7D%7D%3D%5Cfrac%7B%5Csum_%7B%7D%5E%7B%7D%7B%28x_%7Bi%7D-%5Cbar%7Bx%7D%29%28y_%7Bi%7D-%5Cbar%7By%7D%29%7D%7D%7B%5Csqrt%7B%5Csum_%7B%7D%5E%7B%7D%7B%28x_%7Bi%7D-%5Cbar%7Bx%7D%29%5E%7B2%7D%28y_%7Bi%7D-%5Cbar%7By%7D%29%5E%7B2%7D%7D%7D%7D%3D%28b1%E7%9A%84%E7%AC%A6%E5%8F%B7%29%5Csqrt%7BR%5E%7B2%7D%7D+

8)判定系數

equation?tex=R%5E%7B2%7D 的python實現:

#線性回歸的scroe方法得到的是判定系數R平方

#評估模型:決定系數R平方

#model是由我們的訓練數據得到的,評估模型需要用到我們的測試數據。

R_sq = model.score(X_test , y_test)

'''score內部會對第一個參數X_test用擬合曲線自動計算出y預測值,內容是決定系數R平方的計算過程。所以我們只用根據他的要求輸入參數即可。'''

R_sq

判定系數

equation?tex=R%5E%7B2%7D 接近89%,意味著我們模型的準確性較高。

'''下面繪圖的目的是為了:把訓練數據集(圖中藍色的點),和測試數據集(圖中紅色的點)放到一張圖上來比較看'''

#導入繪圖包

import matplotlib.pyplot as plt

'''第1步:繪制訓練數據散點圖'''

plt.scatter(X_train, y_train, color='blue', label="train data")

'''第2步:用訓練數據繪制最佳線'''

#最佳擬合線訓練數據的預測值

y_train_pred = model.predict(X_train)

#繪制最佳擬合線:標簽用的是訓練數據的預測值y_train_pred

plt.plot(X_train, y_train_pred, color='black', linewidth=3, label="best line")

'''第3步:繪制測試數據的散點圖'''

plt.scatter(X_test, y_test, color='red', label="test data")

#添加圖標標簽

plt.legend(loc=2)

plt.xlabel("Hours")

plt.ylabel("Score")

#顯示圖像

plt.show()

期望是什么:數學期望_百度百科?baike.baidu.com40929f6b7cc2873b20da31fa115876df.png

協方差是什么?:協方差_百度百科?baike.baidu.comd4229d548afc0e1796c88e00a6607d4f.png

什么是方差?方差_百度百科?baike.baidu.com7f4924bdb3bd7300e12ba01ae9ce0c52.png

為什么樣本方差(sample variance)的分母是 n-1?為什么樣本方差(sample variance)的分母是 n-1??www.zhihu.comzhihu-card-default.svg

本文來自互聯網用戶投稿,該文觀點僅代表作者本人,不代表本站立場。本站僅提供信息存儲空間服務,不擁有所有權,不承擔相關法律責任。
如若轉載,請注明出處:http://www.pswp.cn/news/270592.shtml
繁體地址,請注明出處:http://hk.pswp.cn/news/270592.shtml
英文地址,請注明出處:http://en.pswp.cn/news/270592.shtml

如若內容造成侵權/違法違規/事實不符,請聯系多彩編程網進行投訴反饋email:809451989@qq.com,一經查實,立即刪除!

相關文章

Android Listview 性能優化

首先我一般使用的適配器是BaseAdapter,其中有兩個方法最主要,分別是: getCount,getView,在對Listview 進行優化的時候,首先使用 convertview 和viewHolder 配合進行優化,使用convertview的母的是控件復用,從而加到減少內存的使用,使用viewHolder 的是減少findbyid 的次數.但是在…

前端:JS實現數組去重常用的六種方法介紹

今天給大家分享JS實現數組去重常用的六種方法&#xff0c;希望對大家能有所幫助&#xff01;定義變量let arr [20,6,13,20,100,8,13,11]; let newArr [];1、兩層循環去重 for(let i 0;i < arr.length;i){for(let j i 1;j < arr.length;j){if(arr[i] arr[j]){arr.sp…

python自定義colorbar_python可視化 matplotlib畫圖使用colorbar工具自定義顏色

python matplotlib畫圖使用colorbar工具自定義顏色 colorbar(draw colorbar without any mapple/plot)自定義colorbar可以畫出任何自己想要的colorbar&#xff0c;自由自在、不受約束&#xff0c;不依賴于任何已有的圖(plot/mappable)。這里使用的是mpl.colorbar.ColorbarBase類…

不能讀取文件“itunes.library.itl”因為它是由更高級別的itunes所創建的

轉自&#xff1a;https://zhidao.baidu.com/question/80796363.html 是因為你安裝過高版本的后又裝你版本的itunes. 你在電腦上搜索所有硬盤上的itunes library.itl這個文件.搜到就刪了&#xff0c;而且搜索里選擇“高級選項”除了區分大小寫其它幾個都鉤上。這樣注消下&#x…

路由器:什么是軟路由,看完本篇文章你就懂了

今天小編給大家介紹一下軟路由具體是什么&#xff0c;有什么實際用途&#xff0c;看完本篇你就懂了&#xff01; 一、軟路由與硬路由概念介紹 硬路由&#xff1a;目前我們家里普遍使用的路由器&#xff0c;有廠家提供整體的解決方案&#xff0c;包括處理器、電源供應、嵌入式軟…

c#form+mysql儲存讀取圖片_C#從SQL server數據庫中讀取l圖片和存入圖片

本實例主要介紹如何將圖片存入數據庫。將圖片存入數據庫,首先要在數據庫中建立一張表,將存儲圖片的字段類型設為Image類型,用FileStream類、BinaryReader把圖片讀成字節的形式,賦給一個字節數組,然后用ADO.SqlCommand對象的ExecuteNonQuery()方法來把數據保存到數據庫中。主要代…

if...else..的錯誤用法

1.最近在寫js代碼完成一個前段DOM操作的函數時&#xff0c;自己錯誤的使用了if..else..控制體。為什么是錯誤的呢&#xff1f;看看我的 代碼你就明白了&#xff1a; 1 document.getElementsByClassName(eButton)[0].οnclickfunction(){2 var checkeddocument.getElementsB…

Git服務器報錯:host key for (ip地址) has changed and you have requested strict checking

一:報錯提示 如下&#xff1a; WARNING: REMOTE HOST IDENTIFICATION HAS CHANGED! IT IS POSSIBLE THAT SOMEONE IS DOING SOMETHING NASTY! Someone could be eavesdropping on you right now (man-in-the-middle attack)! It is also possible that a host key …

軟件:常用 Linux 軟件匯總,值得收藏

目錄 1、音頻軟件 2、聊天軟件 3、數據備份與恢復 4、桌面個性化工具 5、開發必備 6、 電子書工具 7、 編輯器軟件 8、教育軟件 9、電子郵件軟件 10、文件管理器 11、娛樂游戲 12、 圖形工具 13、互聯網瀏覽 14、 辦公效率工具 15、 生產力效率工具 16、 安全防護 17、文件共享…

java上下文即ServletContext

上下文即ServletContext,是一個全du局的儲存信zhi息的空間&#xff0c;服務器啟動&#xff0c;其就dao存zhuan在&#xff0c;服務器關閉&#xff0c;其才釋放。 所有用戶共用一個ServletContext。所以&#xff0c;為了節省空間&#xff0c;提高效率&#xff0c;ServletContext中…

數據幀,數據包,報文段,報文,分組,數據包的概念和區別

應用層——消息傳輸層——數據段(segment)網絡層——分組、數據包&#xff08;packet&#xff09;鏈路層——幀&#xff08;frame&#xff09;物理層——P-PDU&#xff08;bit&#xff09;分組、包&#xff0c;packet&#xff0c;信息在互聯網當中傳輸的單元&#xff0c;網絡層…

python開源自動化測試平臺_8款開源自動化測試框架,速速收藏

原標題&#xff1a;8款開源自動化測試框架&#xff0c;速速收藏來源&#xff1a;http://www.51testing.com/近年來&#xff0c; 自動化測試越來越熱門&#xff0c;該領域新的挑戰和機遇也在同步產生&#xff0c;尤其是AI&#xff0c;RPA和機器學習&#xff0c;可以預見會在幾年…

SpringBoot集成Redis用法筆記

今天給大家整理一下SpringBoot集成Redis用法筆記&#xff0c;希望對大家能有所幫助&#xff01;一、Redis優點介紹1、速度快不需要等待磁盤的IO&#xff0c;在內存之間進行的數據存儲和查詢&#xff0c;速度非常快。當然&#xff0c;緩存的數據總量不能太大&#xff0c;因為受到…

tomcat和servlet的關系

tomcat和servlet的關系 Tomcat 是Web應用服務器,是一個Servlet/JSP容器. Tomcat 作為Servlet容器,負責處理客戶請求,把請求傳送給Servlet,并將Servlet的響應傳送回給客戶.而Servlet是一種運行在支持Java語言的服務器上的組件. Servlet最常見的用途是擴展Java Web服務器功能,提…

Linux常用遠程連接工具介紹,總有一款適合你

目錄 1、xshell 2、winscp 3、PuTTY 4、MobaXterm 5、FinalShell 今天給大家推薦Linux常用遠程連接工具&#xff0c;希望對大家能有所幫助&#xff01; 1、xshell 介紹&#xff1a; xshell是一個非常強大的安全終端模擬軟件&#xff0c;它支持SSH1, SSH2, 以及Windows平臺的TEL…

python高性能寫法_py 高性能低級,高級寫法思考

這里所謂的低級&#xff0c;高級是指封裝抽象的程度。低級指os.fork()高級是指 multiprocessing包一般根據業務需求&#xff0c;一個主進程負責維護接收&#xff0c; 不同的子進程處理不同的需求。根據各同需求組合多進程多線程多進程&#xff0b;多線程協程也可基于uvloop事件…

Linux遠程管理協議相關知識介紹

一、什么是遠程管理遠程管理&#xff0c;實際上就是計算機&#xff08;服務器&#xff09;之間通過網絡進行數據傳輸&#xff08;信息交換&#xff09;的過程&#xff0c;與瀏覽器需要 HTTP 協議&#xff08;超文本傳輸協議&#xff09;瀏覽網頁一樣&#xff0c;遠程管理同樣需…

使用ArcGIS JavaScript API 3.18 加載天地圖

對于中國開發者在創建GIS應用的時候&#xff0c;往往比較頭疼的是底圖資源的缺乏。其實國家測繪地信局就提供一個很好的免費資源&#xff1a;天地圖。使用ArcGIS API的開發人員可以直接利用該資源作為地圖應用的底圖。 ArcGIS JavaScript API最近新推出了3.18版本。所以下面示例…

潛力的監控mysql_Grafana 數據庫監控平臺

Grafana 數據庫監控平臺簡介Grafanademo 地址&#xff1a;官方demo文檔可以下載pdf離線閱讀Percona監控和管理(PMM)是一個用于管理和監控MySQL和MongoDB性能的開源平臺。它由Percona與托管數據庫服務&#xff0c;支持和咨詢領域的專家合作開發。PMM是一種免費的開源解決方案&am…