Tag Archives: Logistic Regression

ลองภาษา R แบบขำๆ เร็วๆ

ขอเขียนแบบตีหัวเข้าบ้านเลยนะครับ ใช้แนวทางจาก https://stats.idre.ucla.edu/r/dae/logit-regression/ ทดลองทำ Logistic Regression โดยติดตั้ง R ด้วยวิธีจาก https://www.r-bloggers.com/how-to-install-r-on-linux-ubuntu-16-04-xenial-xerus/

ก็สั่ง

$ wget https://stats.idre.ucla.edu/stat/data/binary.csv
$ Rscript -e " mydata <- read.csv(\"binary.csv\");  mylogit <- glm(admit ~ gre + gpa , data = mydata, family = \"binomial\"); summary(mylogit)"

ได้ผลลัพธ์ออกมาเป็น

Call:
glm(formula = admit ~ gre + gpa, family = "binomial", data = mydata)

Deviance Residuals:
Min       1Q   Median       3Q      Max
-1.2730  -0.8988  -0.7206   1.3013   2.0620

Coefficients:
Estimate Std. Error z value Pr(>|z|)
(Intercept) -4.949378   1.075093  -4.604 4.15e-06 ***
gre          0.002691   0.001057   2.544   0.0109 *
gpa          0.754687   0.319586   2.361   0.0182 *
---
Signif. codes:  0 ‘***’ 0.001 ‘**’ 0.01 ‘*’ 0.05 ‘.’ 0.1 ‘ ’ 1

(Dispersion parameter for binomial family taken to be 1)

Null deviance: 499.98  on 399  degrees of freedom
Residual deviance: 480.34  on 397  degrees of freedom
AIC: 486.34

Number of Fisher Scoring iterations: 4

แถม pandas กับภาษา Python ซะหน่อย ไปเจอมาจาก http://blog.yhat.com/posts/logistic-regression-and-python.html ดูเหมือนจะใช้ csv file เดียวกัน แต่อยู่คนละ path

ติดตั้ง pandas ก่อน ผมลง pip ไปแล้ว ก็

$ sudo pip install pandas

จากนั้น Python ใส่สคริป

import pandas as pd

df = pd.read_csv("binary.csv")
print df.head()

ได้ผลเหมือนตัวอย่าง

   admit  gre   gpa  rank
0      0  380  3.61     3
1      1  660  3.67     3
2      1  800  4.00     1
3      1  640  3.19     4
4      0  520  2.93     4

Advertisements

Neural Network ไม่ควรใช้ Sigmoid Function ฤ

ไปเจอคลิป จากช่องที่น่าจะขึ้นชื่อด้าน AI บอกว่าไม่ควรใช้ Sigmoid function เป็น Activation function

ปะไว้ก่อน ในคลิปมีลิงก์ให้อ่านเพียบ (กำลังกระตุ้นตัวเองให้ทำอะไรบางอย่างต่อ) แต่ Sigmoid function ก็มีใช้ใน Logistic Regression (pdf อธิบายภาษาไทยได้เห็นภาพดี) อยู่เนอะ