機(jī)器學(xué)習(xí)基礎(chǔ)2-安裝環(huán)境

2.1、常用環(huán)境

  • 科學(xué)計(jì)算支持庫Numpy

    專門設(shè)計(jì)用于科學(xué)計(jì)算的專業(yè)支持庫

  • 機(jī)器學(xué)習(xí)庫 Scikit-learn

  • 數(shù)據(jù)處理庫 Pandas

    內(nèi)置許多排序,統(tǒng)計(jì)之類的實(shí)用功能

2.2、Python

Python是一種動(dòng)態(tài)的高級編程語言,Python代碼是通過解釋器解釋執(zhí)行。Python數(shù)據(jù)類型不用事先聲明,語法更為靈活多變,代碼看起來也更簡潔,高效快速是Python引以為傲的特點(diǎn)。

2.2.1、基本用法

Python庫安裝工具Pip和Conda。如果成功安裝Python后,就能在命令行中直接使用Pip命令了,而Conda則需要額外進(jìn)行安裝才能使用,Conda功能更為強(qiáng)大

pip install 庫名
# 使用國內(nèi)源加速下載
pip install -i https://pypi.tuna.tsinghua.edu.cn/simple 庫名
# 或者
conda 庫名

使用庫方面,Python也和其他編程語言一樣,需要先導(dǎo)入再使用

import 庫名

# 或者 
import 庫名 as 別名

# 使用庫中的類
from 庫名 import 類名

2.3、Numpy簡介

Numpy是Python語言的科學(xué)計(jì)算支持庫,提供了線性代數(shù),傅里葉變換等非常有用的數(shù)學(xué)工具。

pip install -U numpy

Numpy擁有強(qiáng)大的科學(xué)計(jì)算功能,Array數(shù)據(jù)類型是Numpy的核心數(shù)據(jù)結(jié)構(gòu),與Python的List類型相似,但功能強(qiáng)大的多。Numpy相關(guān)功能都是圍繞著Array類型建設(shè)的。

# 使用Numpy包只需要導(dǎo)入即可,業(yè)界習(xí)慣用np作為它的別名
import numpy as np
方法名稱 類別 功能說明
array 數(shù)據(jù)創(chuàng)建 創(chuàng)建Array類型數(shù)據(jù)
zeros 數(shù)據(jù)創(chuàng)建 創(chuàng)建值為0的Array類型數(shù)據(jù)
ones 數(shù)據(jù)創(chuàng)建 創(chuàng)建值為1的Array類型數(shù)據(jù)
eye 數(shù)據(jù)創(chuàng)建 創(chuàng)建單位矩陣
arange 數(shù)據(jù)創(chuàng)建 類似內(nèi)置函數(shù)range,生成等差數(shù)值
linspace 數(shù)據(jù)創(chuàng)建 生成可指定是否包含終值的等差數(shù)值
random.rand 數(shù)據(jù)創(chuàng)建 隨機(jī)生成數(shù)值
T 數(shù)據(jù)創(chuàng)建 轉(zhuǎn)置操作
reshape 數(shù)據(jù)操作 不改變原數(shù)據(jù)的維度變換
resize 數(shù)據(jù)操作 修改原數(shù)據(jù)的維度變換
mean 統(tǒng)計(jì)操作 取均值
sum 統(tǒng)計(jì)操作 求和
max 統(tǒng)計(jì)操作 取最大值
min 統(tǒng)計(jì)操作 取最小值
var 統(tǒng)計(jì)操作 求方差
std 統(tǒng)計(jì)操作 求標(biāo)準(zhǔn)差
corrcoef 統(tǒng)計(jì)操作 計(jì)算相關(guān)系數(shù)
append 數(shù)據(jù)操作 新增
insert 數(shù)據(jù)操作 插入
delete 數(shù)據(jù)操作 刪除
concatenate 數(shù)據(jù)操作 按行(列)連接數(shù)據(jù)表
add 數(shù)學(xué)運(yùn)算 標(biāo)(向)量加法
subtract 數(shù)學(xué)運(yùn)算 標(biāo)(向)量減法
multiply 數(shù)學(xué)運(yùn)算 標(biāo)(向)量乘法
divide 數(shù)學(xué)運(yùn)算 標(biāo)(向)量除法
exp 數(shù)學(xué)運(yùn)算 以e為底的指數(shù)運(yùn)算
log 數(shù)學(xué)運(yùn)算 以e為底的對數(shù)運(yùn)算
dot 數(shù)學(xué)運(yùn)算 點(diǎn)乘

2.3、Scikit-Learn

Scikit-learn庫包含了常見的機(jī)器學(xué)習(xí)算法,而且還在不斷更新。

scikit-learn庫對機(jī)器學(xué)習(xí)算法進(jìn)行封裝,使用過程非常簡單,只要根據(jù)格式填入數(shù)據(jù)即可,不涉及額外的數(shù)學(xué)運(yùn)算操作。

pip install -U scikit-learn

# 使用scikit-learn
import sklearn

調(diào)用機(jī)器學(xué)習(xí)算法也非常簡單,Scikit-learn庫已經(jīng)將算法按模型分類,查找起來非常方便。如線性回歸算法可以從線性模型中找到

from sklearn import linear-model

model = linear_model.LinearRegression()

Logistic回歸算法也是依據(jù)線性模型

from sklearn.linear_model imort LogisticRegression
model = linear_model.logisticRegression()

類似的還有基于近鄰模型的KNN算法

生成模型后,一般使用fit方法給模型"喂"數(shù)據(jù)進(jìn)行訓(xùn)練。完成訓(xùn)練的模型可以使用predict方法進(jìn)行預(yù)測。

2.4、Pandas簡介

Pandas是Python語言中知名的數(shù)據(jù)處理庫。但是從生產(chǎn)環(huán)境上得到的數(shù)據(jù)需要首先進(jìn)行數(shù)據(jù)清洗工作,最常見的如填充丟失字段值。數(shù)據(jù)清洗工作一般由Pandas來完成,特征工程也可通過Pandas完成。

2.4.1、安裝

pip install -U pandas

2.4.2、Pandas基本用法

Pandas具有兩個(gè)核心的數(shù)據(jù)類型,即Series和DataFrame

  • Series

    一維數(shù)據(jù),可以認(rèn)為是一個(gè)統(tǒng)計(jì)功能增強(qiáng)版的List功能

  • DataFrame

    多維數(shù)據(jù),有多個(gè)Series組成

業(yè)界習(xí)慣在導(dǎo)入時(shí),使用'pd'作為他的別名

import pandas as pd
方法名稱 類別 功能說明
read_csv 讀取數(shù)據(jù) 從CSV格式文件中讀取數(shù)據(jù)
read_excel 讀取數(shù)據(jù) 從電子表格中讀取數(shù)據(jù)
read_json 讀取數(shù)據(jù) 從json格式中讀取數(shù)據(jù)
read_clipboard 讀取數(shù)據(jù) 從剪切板讀取數(shù)據(jù)
to_csv 寫入數(shù)據(jù) 將數(shù)據(jù)寫入csv格式文件
to_excel 寫入數(shù)據(jù) 將數(shù)據(jù)寫入電子表格
to_json 寫入數(shù)據(jù) 將數(shù)據(jù)寫入json表格
to_clipboard 寫入數(shù)據(jù) 將數(shù)據(jù)寫入粘貼板
Series 創(chuàng)建數(shù)據(jù) 創(chuàng)建Series類型數(shù)據(jù)
DataFrame 創(chuàng)建數(shù)據(jù) 創(chuàng)建DataFrame類型數(shù)據(jù)
head 信息查看 從頭開始查看N位數(shù)據(jù)
tail 信息查看 從末尾開始查看N位數(shù)據(jù)
shape 信息查看 行列數(shù)信息
dropna 數(shù)據(jù)操作 刪除空值
fillna 數(shù)據(jù)操作 填充空值
sort_values 數(shù)據(jù)操作 正(逆)序排序
append 數(shù)據(jù)操作 橫向(按行)連接兩個(gè)數(shù)據(jù)表
concat 數(shù)據(jù)操作 縱向(按列)連接兩個(gè)數(shù)據(jù)表
value_counts 統(tǒng)計(jì)操作 值計(jì)數(shù)
describe 統(tǒng)計(jì)操作 總體概況信息
info 統(tǒng)計(jì)操作 數(shù)據(jù)類型統(tǒng)計(jì)
mean 統(tǒng)計(jì)操作 取均值
corr 統(tǒng)計(jì)操作 計(jì)算相關(guān)系數(shù)
count 統(tǒng)計(jì)操作 非空值計(jì)數(shù)
max 統(tǒng)計(jì)操作 取最大值
min 統(tǒng)計(jì)操作 取最小值
median 統(tǒng)計(jì)操作 計(jì)算中位數(shù)
std 統(tǒng)計(jì)操作 計(jì)算標(biāo)準(zhǔn)差
?著作權(quán)歸作者所有,轉(zhuǎn)載或內(nèi)容合作請聯(lián)系作者
【社區(qū)內(nèi)容提示】社區(qū)部分內(nèi)容疑似由AI輔助生成,瀏覽時(shí)請結(jié)合常識與多方信息審慎甄別。
平臺(tái)聲明:文章內(nèi)容(如有圖片或視頻亦包括在內(nèi))由作者上傳并發(fā)布,文章內(nèi)容僅代表作者本人觀點(diǎn),簡書系信息發(fā)布平臺(tái),僅提供信息存儲(chǔ)服務(wù)。

相關(guān)閱讀更多精彩內(nèi)容

友情鏈接更多精彩內(nèi)容