iT邦幫忙

2022 iThome 鐵人賽

DAY 23
0
AI & Data

Machine Learning A-Z 學習筆記系列 第 23

[Day23] Logistic Regression-Example(01)

  • 分享至 

  • xImage
  •  

Dataset

https://ithelp.ithome.com.tw/upload/images/20221008/20152557naceTYbbST.png

今天範例的資料是社交網路上使用者的基本數據
包含userID, 性別, 年齡, 預估薪資, 以及是否購買產品

假設有一家汽車公司出了一款新的SUV
且在社群媒體上投放了廣告, 並拿到了客戶資料表
他們現在想從這張資料中分析
哪些顧客對這台新推出的SUV 感興趣, 哪些不會

針對這張資料
自變量是column 2-3 (年齡, 預估薪資)
應變量是column4 (是否購買)

Data preprocessing

首先一樣需要對資料做前處理
依序步驟是

  1. 讀檔
  2. 取出自變量x, 應變量y
  3. 分類數據:數訓練集跟測試集
  4. 特徵縮放
import numpy as py
import matplotlib.pyplot as plt
import pandas as pd

# Importing the dataset
dataset = pd.read_csv('Social_Network_Ads.csv')
x = dataset.iloc[:,[2,3]].values
y = dataset.iloc[:, 4].values

#Splitting the dataset into the Training set and Test set
# total 400, we choose 100 data for testing, 300 data for training
from sklearn.model_selection import train_test_split
x_train, x_test, y_test = train_test_split(x,y,test_size=0.25, random_state=0)

#Feature Scaling
from sklearn.preprocessing import StandardScaler
sc_x = StandardScaler()
x_train = sc_x.fit_transform(x_train)
x_test = sc_x.transform(x_test)

這一次不同於前面的範例
我們需要做特徵縮放
但是因為應變量Puchased 只有1 與 0 也就是“要”or “不要”
因此不需要做
只要對自變量做特徵縮放即可

做完特徵縮放的x_train, x_test 資料如下
可以看到資料的規模度已經差不多
https://ithelp.ithome.com.tw/upload/images/20221008/20152557UzrWSoIaNW.png

Logistic Regression

接著我們可以使用LogisticRegression Class
首先呼叫LogisticRegression(random_state)創建出分類器物件

  • random_state: 隨機數組的生成方式
    接著呼叫fit(x_train, y_train) 用訓練集來擬合分類器
    分類器會學習x,y之間的相關度
    完成擬合後就可以用分類器預測測試集的分類結果得到y_pred
    y_pred 跟 y_test 分別就是預測結果與實際結果
# Fitting Logistic Regression to the Training set
from sklearn.linear_model import LogisticRegression
classifier = LogisticRegression(random_state = 0)
classifier.fit(x_train, y_train)

# Predicting the Test set results
y_pred = classifier.predict(x_test)

上一篇
[Day 22] Logistic Regression (1) - 原理
下一篇
[Day24] Logistic Regression-Example(02)
系列文
Machine Learning A-Z 學習筆記30
圖片
  直播研討會
圖片
{{ item.channelVendor }} {{ item.webinarstarted }} |
{{ formatDate(item.duration) }}
直播中

尚未有邦友留言

立即登入留言