ปัญหาการสร้างโมเดลเพื่ออธิบาย

การสร้างโมเดลด้วยข้อมูลใน Tidyverse

Albert Y. Kim

Assistant Professor of Statistical and Data Sciences

ทบทวน: สูตรกรอบการสร้างโมเดลทั่วไป

$$ y = f(\vec{x}) + \epsilon $$

โดยที่:

  • $y$: ตัวแปรผลลัพธ์ที่สนใจ
  • $\vec{x}$: ตัวแปรอธิบาย/ตัวแปรพยากรณ์
  • $f()$: ฟังก์ชันที่แสดงความสัมพันธ์ระหว่าง $y$ กับ $\vec{x}$ หรือที่เรียกว่า สัญญาณ
  • $\epsilon$: ส่วนประกอบของข้อผิดพลาดที่ไม่เป็นระบบ หรือที่เรียกว่า สัญญาณรบกวน
การสร้างโมเดลด้วยข้อมูลใน Tidyverse

ปัญหาการสร้างโมเดล

พิจารณา $y = f(\vec{x}) + \epsilon$

  1. $f()$ และ $\epsilon$ เป็นสิ่งที่ไม่ทราบค่า
  2. มี $n$ การสังเกตของ $y$ และ $\vec{x}$ ที่ทราบ/กำหนดไว้ในข้อมูล
  3. เป้าหมาย: สร้างโมเดล $\hat{f}()$ ที่ ประมาณค่า $f()$ โดยละเว้น $\epsilon$
  4. เป้าหมายในอีกมุมหนึ่ง: แยกสัญญาณออกจากสัญญาณรบกวน
  5. จากนั้นสามารถสร้างค่า ที่พอดี/พยากรณ์ $\hat{y} = \hat{f}(\vec{x})$ ได้
การสร้างโมเดลด้วยข้อมูลใน Tidyverse

ตัวอย่างการสร้างโมเดลเพื่ออธิบาย

การสร้างโมเดลด้วยข้อมูลใน Tidyverse

EDA ของความสัมพันธ์

library(ggplot2)
library(dplyr)
library(moderndive)

ggplot(evals, aes(x = age, y = score)) +
  geom_point() + 
  labs(x = "age", y = "score",
       title = "Teaching score over age")
การสร้างโมเดลด้วยข้อมูลใน Tidyverse

EDA ของความสัมพันธ์

การสร้างโมเดลด้วยข้อมูลใน Tidyverse

Scatterplot แบบ Jitter

library(ggplot2)
library(dplyr)
library(moderndive)

# Use geom_jitter() instead of geom_point()
ggplot(evals, aes(x = age, y = score)) +
  geom_jitter() + 
  labs(x = "age", y = "score",
       title = "Teaching score over age (jittered)")
การสร้างโมเดลด้วยข้อมูลใน Tidyverse

Scatterplot แบบ Jitter

การสร้างโมเดลด้วยข้อมูลใน Tidyverse

สัมประสิทธิ์สหสัมพันธ์

การสร้างโมเดลด้วยข้อมูลใน Tidyverse

การคำนวณสัมประสิทธิ์สหสัมพันธ์

evals %>% 
  summarize(correlation = cor(score, age))
# A tibble: 1 x 1
  correlation
        <dbl>
1      -0.107
การสร้างโมเดลด้วยข้อมูลใน Tidyverse

มาฝึกกันเถอะ!

การสร้างโมเดลด้วยข้อมูลใน Tidyverse

Preparing Video For Download...