การถดถอยเชิงเส้นพหุคูณและความสำคัญของคุณลักษณะ
ผู้เรียนจะขยายแบบจำลองให้รองรับคุณลักษณะข้อมูลนำเข้าหลายรายการ แปลความหมายสัมประสิทธิ์แต่ละตัวเป็นความสำคัญของคุณลักษณะ และประเมินผลด้วย R-squared
การถดถอยเชิงเส้นพหุคูณและความสำคัญของคุณลักษณะ เป็นบทเรียน Machine Learning Academy ฟรีบน CoddyKit นี่คือบทเรียนที่ 4 จากทั้งหมด 4 บทเรียน คุณสามารถอ่านบทเรียนทั้งหมดด้านล่างฟรี — จากนั้นลองปฏิบัติด้วยตัวคุณเองในเบราว์เซอร์พร้อมตัวแก้ไขโค้ดในตัวและติวเตอร์ AI ตลอด 24/7 บทเรียนนี้เป็นส่วนหนึ่งของเส้นทางการเรียน Machine Learning Academy และความก้าวหน้าของคุณจะซิงค์ข้ามเว็บและแอป CoddyKit คอร์ส Machine Learning Academy มีบทเรียนทั้งหมด 4 บทเรียน
ก้าวข้ามคุณลักษณะเดียว
ปัญหาการพยากรณ์ในโลกจริงเกือบทั้งหมดมีอินพุตที่เกี่ยวข้องหลายรายการ ราคาบ้านขึ้นอยู่กับพื้นที่ใช้สอย จำนวนห้องนอน ทำเล อายุบ้าน และปัจจัยอื่น ๆ อีกมากมาย การถดถอยเชิงเส้นพหุคูณขยายเส้นที่ใช้กับคุณลักษณะเดียวให้ใช้คุณลักษณะที่มีอยู่ทั้งหมดพร้อมกัน:
ŷ = w₁x₁ + w₂x₂ + ... + wₙxₙ + b
คุณลักษณะแต่ละรายการจะมีน้ำหนักของตนเอง และโมเดลจะเรียนรู้น้ำหนักทั้งหมดพร้อมกันโดยลดค่า MSE ให้ต่ำที่สุด การเพิ่มคุณลักษณะที่เกี่ยวข้องมักช่วยเพิ่มความแม่นยำในการพยากรณ์ ตราบใดที่คุณลักษณะเหล่านั้นมีข้อมูลเกี่ยวกับเป้าหมายจริง
import pandas as pd
import numpy as np
# Multi-feature housing dataset
np.random.seed(42)
n = 300
df = pd.DataFrame({
'sqft': np.random.randint(600, 4000, n),
'bedrooms': np.random.randint(1, 7, n),
'bathrooms': np.random.randint(1, 5, n),
'age': np.random.randint(1, 60, n),
'distance_to_center': np.random.uniform(1, 30, n)
})
df['price'] = (150 * df['sqft'] + 8000 * df['bedrooms']
- 300 * df['age'] - 5000 * df['distance_to_center']
+ 40000 + np.random.normal(0, 20000, n))
print(df.head())การฝึกด้วยคุณลักษณะหลายรายการ
API ของ scikit-learn เหมือนกันไม่ว่าจะมีคุณลักษณะหนึ่งรายการหรือหนึ่งร้อยรายการ คุณเพียงส่งเมทริกซ์คุณลักษณะทั้งหมดเข้าไป โมเดลจะฟิตค่าสัมประสิทธิ์หนึ่งค่าต่อหนึ่งคอลัมน์ใน X โดยอัตโนมัติ
เมื่อมีหลายคุณลักษณะ โดยทั่วไป R² จะเพิ่มขึ้นเมื่อเทียบกับโมเดลที่มีคุณลักษณะเดียว เพราะคุณลักษณะที่ให้ข้อมูลเพิ่มเติมแต่ละรายการจะเพิ่มสัญญาณให้โมเดลใช้ อย่างไรก็ตาม การเพิ่มคุณลักษณะที่ไม่เกี่ยวข้องหรือมีสัญญาณรบกวนอาจทำให้ประสิทธิภาพลดลงได้จริงจากการทำให้เกิดการฟิตเกินไป โดยเฉพาะกับชุดข้อมูลขนาดเล็ก
from sklearn.linear_model import LinearRegression
from sklearn.model_selection import train_test_split
from sklearn.metrics import r2_score
import pandas as pd
import numpy as np
# (df defined in previous scene)
features = ['sqft', 'bedrooms', 'bathrooms', 'age', 'distance_to_center']
X = df[features]
y = df['price']
X_train, X_test, y_train, y_test = train_test_split(X, y, test_size=0.2, random_state=42)
model = LinearRegression()
model.fit(X_train, y_train)
y_pred = model.predict(X_test)
print(f'Multi-feature R2: {r2_score(y_test, y_pred):.3f}')การตรวจสอบค่าสัมประสิทธิ์
หลังจากฟิตโมเดลที่มีหลายคุณลักษณะแล้ว model.coef_ จะเป็นอาร์เรย์ที่มีหนึ่งค่าต่อหนึ่งคุณลักษณะ แต่ละค่าคือการเปลี่ยนแปลงของ y ที่พยากรณ์ได้เมื่อคุณลักษณะนั้นเพิ่มขึ้นหนึ่งหน่วย โดยถือว่าคุณลักษณะอื่นทั้งหมดคงที่
ตัวอย่างเช่น ค่าสัมประสิทธิ์ 150 สำหรับ sqft หมายความว่า เมื่อควบคุมจำนวนห้องนอน อายุบ้าน และคุณลักษณะอื่นทั้งหมดให้คงที่ พื้นที่เพิ่มขึ้นหนึ่งตารางฟุตจะทำให้ราคาที่พยากรณ์เพิ่มขึ้น 150 ดอลลาร์ การตีความในลักษณะ ผลกระทบบางส่วนนี้ทำให้การถดถอยเชิงเส้นมีประโยชน์อย่างมากในการอธิบายว่าปัจจัยใดเป็นตัวขับเคลื่อนการพยากรณ์
import pandas as pd
from sklearn.linear_model import LinearRegression
features = ['sqft', 'bedrooms', 'bathrooms', 'age', 'distance_to_center']
# Create a readable coefficient table
coef_df = pd.DataFrame({
'Feature': features,
'Coefficient': model.coef_
}).sort_values('Coefficient', ascending=False)
print(coef_df.to_string(index=False))
print(f'\nIntercept: {model.intercept_:,.0f}')เหตุใดค่าสัมประสิทธิ์ดิบจึงอาจทำให้เข้าใจผิด
ค่าสัมประสิทธิ์ดิบ ไม่สามารถเปรียบเทียบกันได้โดยตรง เมื่อคุณลักษณะมีหน่วยและมาตราส่วนต่างกัน ในโมเดลที่อยู่อาศัย sqft มีค่าตั้งแต่ 600 ถึง 4000 ขณะที่ bathrooms มีค่าตั้งแต่ 1 ถึง 5 ค่าสัมประสิทธิ์ 150 สำหรับ sqft และ 8000 สำหรับ bedrooms ไม่ได้หมายความว่า bedrooms สำคัญกว่า 53 เท่า แต่หมายความว่าการเปลี่ยน bedrooms หนึ่งหน่วย (การเปลี่ยนแปลงขนาดใหญ่มาก) มีผลมากกว่าการเปลี่ยน sqft หนึ่งหน่วย (การเปลี่ยนแปลงเพียงเล็กน้อย) 53 เท่า
เพื่อเปรียบเทียบความสำคัญของคุณลักษณะอย่างเป็นธรรม คุณต้อง ทำให้คุณลักษณะทั้งหมดเป็นมาตรฐาน ให้อยู่ในมาตราส่วนเดียวกัน (ค่าเฉลี่ยเป็นศูนย์และความแปรปรวนเป็นหนึ่ง) จากนั้นค่าสัมประสิทธิ์จะแสดงผลของการเปลี่ยนแปลงหนึ่งส่วนเบี่ยงเบนมาตรฐานในแต่ละคุณลักษณะ ซึ่งสามารถเปรียบเทียบกันได้
from sklearn.linear_model import LinearRegression
from sklearn.preprocessing import StandardScaler
import pandas as pd
import numpy as np
features = ['sqft', 'bedrooms', 'bathrooms', 'age', 'distance_to_center']
# Scale features to zero mean, unit variance
scaler = StandardScaler()
X_train_scaled = scaler.fit_transform(X_train[features])
model_scaled = LinearRegression()
model_scaled.fit(X_train_scaled, y_train)
# Now coefficients ARE comparable
coef_df = pd.DataFrame({
'Feature': features,
'Standardised Coefficient': model_scaled.coef_
}).sort_values('Standardised Coefficient', key=abs, ascending=False)
print(coef_df.to_string(index=False))แผนภูมิแท่งความสำคัญของคุณลักษณะ
การแสดงค่าสัมประสิทธิ์ที่ทำให้เป็นมาตรฐานแล้วในรูปแผนภูมิแท่ง ช่วยให้ผู้มีส่วนได้ส่วนเสียมองเห็นได้อย่างเข้าใจง่ายว่าคุณลักษณะใดเป็นตัวขับเคลื่อนค่าพยากรณ์ของโมเดล แท่งค่าบวกจะผลักค่าพยากรณ์ให้สูงขึ้น ส่วนแท่งค่าลบจะผลักให้ต่ำลง ยิ่งแท่งยาวเท่าใด ผลกระทบของการเปลี่ยนแปลงหนึ่งส่วนเบี่ยงเบนมาตรฐานในคุณลักษณะนั้นก็ยิ่งมากขึ้นเท่านั้น
กราฟนี้เป็นหนึ่งในเครื่องมือที่โน้มน้าวใจได้ดีที่สุดสำหรับสื่อสารพฤติกรรมของโมเดลให้ผู้ฟังที่ไม่ใช่ผู้เชี่ยวชาญด้านเทคนิคเข้าใจ โดยตอบคำถามว่า “อะไรมีความสำคัญ” ในแผนภูมิเดียวที่อ่านได้ง่าย
import matplotlib.pyplot as plt
import numpy as np
feature_names = ['sqft', 'bedrooms', 'bathrooms', 'age', 'distance_to_center']
coeffs = model_scaled.coef_
colors = ['steelblue' if c > 0 else 'salmon' for c in coeffs]
plt.figure(figsize=(8, 5))
plt.barh(feature_names, coeffs, color=colors)
plt.axvline(x=0, color='black', linewidth=0.8)
plt.xlabel('Standardised Coefficient (impact per 1 std dev)')
plt.title('Feature Importance from Linear Regression')
plt.tight_layout()
plt.show()R-Squared และ Adjusted R-Squared
R² ปกติจะเพิ่มขึ้นเสมอ (หรือคงเดิม) เมื่อเพิ่มคุณลักษณะ แม้ว่าคุณลักษณะเหล่านั้นจะเป็นเพียงสัญญาณรบกวนแบบสุ่มก็ตาม จึงทำให้เป็นเมตริกที่ทำให้เข้าใจผิดได้เมื่อใช้เลือกโมเดลที่มีจำนวนคุณลักษณะแตกต่างกัน
Adjusted R² แก้ไขปัญหานี้โดยลงโทษคุณลักษณะที่เพิ่มเข้ามาแต่ละรายการ: Adj R² = 1 - (1-R²)(n-1)/(n-p-1) โดย n คือจำนวนตัวอย่าง และ p คือจำนวนคุณลักษณะ หากคุณลักษณะที่เพิ่มเข้ามาไม่ได้ปรับปรุงโมเดลมากพอที่จะคุ้มกับความซับซ้อน Adjusted R² จะลดลง ให้ใช้ Adjusted R² เมื่อเปรียบเทียบโมเดลที่มีจำนวนคุณลักษณะแตกต่างกัน
from sklearn.metrics import r2_score
import numpy as np
def adjusted_r2(y_true, y_pred, n_features):
r2 = r2_score(y_true, y_pred)
n = len(y_true)
adj = 1 - (1 - r2) * (n - 1) / (n - n_features - 1)
return adj
y_pred_test = model.predict(X_test[features])
r2 = r2_score(y_test, y_pred_test)
adj_r2 = adjusted_r2(y_test, y_pred_test, n_features=len(features))
print(f'R2: {r2:.4f}')
print(f'Adjusted R2: {adj_r2:.4f}') # slightly lower, penalises complexityพหุสัมพันธ์เชิงเส้น: คุณลักษณะที่มีความสัมพันธ์กัน
พหุสัมพันธ์เชิงเส้นเกิดขึ้นเมื่อคุณลักษณะตั้งแต่สองรายการขึ้นไปมีความสัมพันธ์กันสูง ตัวอย่างเช่น sqft และ number_of_rooms มักเปลี่ยนแปลงไปด้วยกัน เพราะบ้านที่ใหญ่กว่ามักมีห้องมากกว่า เมื่อคุณลักษณะมีความสัมพันธ์กันสูง โมเดลจะประมาณค่าสัมประสิทธิ์รายตัวได้ไม่น่าเชื่อถือ เนื่องจากไม่สามารถแยกได้ว่าคุณลักษณะใดเป็นสาเหตุที่แท้จริงของผลกระทบต่อ y
อาการที่พบได้ ได้แก่ ค่าสัมประสิทธิ์เปลี่ยนแปลงอย่างมากเมื่อเพิ่มหรือนำคุณลักษณะเพียงรายการเดียวออก ค่าสัมประสิทธิ์มีขนาดใหญ่มากแต่มีเครื่องหมายตรงข้ามกัน หรือมี R² สูงแต่ค่าสัมประสิทธิ์ทั้งหมดมีค่าความคลาดเคลื่อนมาตรฐานสูง Variance Inflation Factor (VIF) เป็นวิธีวินิจฉัยมาตรฐานสำหรับพหุสัมพันธ์เชิงเส้น
import pandas as pd
import numpy as np
# Detect multicollinearity via correlation matrix
features = ['sqft', 'bedrooms', 'bathrooms', 'age', 'distance_to_center']
corr = df[features].corr()
print('Feature correlation matrix:')
print(corr.round(2))
# High correlation (>0.7) between two features indicates multicollinearity
high_corr = (corr.abs() > 0.7) & (corr != 1.0)
print('\nHighly correlated pairs:')
print(high_corr)การคัดเลือกคุณลักษณะ: การเพิ่มและนำคุณลักษณะออก
คุณลักษณะไม่ได้ช่วยเพิ่มประสิทธิภาพของโมเดลทุกตัว การเพิ่มคุณลักษณะที่ไม่เกี่ยวข้องจะเพิ่มความซับซ้อนและอาจทำให้ความสามารถในการใช้กับข้อมูลใหม่ลดลง แนวทางการคัดเลือกคุณลักษณะอย่างเป็นระบบคือการเปรียบเทียบโมเดลที่ใช้ชุดคุณลักษณะย่อยแตกต่างกัน โดยใช้ Adjusted R² ที่ผ่านการตรวจสอบไขว้
การคัดเลือกไปข้างหน้าแบบวนซ้ำจะเพิ่มคุณลักษณะทีละรายการ และเก็บไว้เฉพาะเมื่อช่วยเพิ่มคะแนนการตรวจสอบ ส่วน การกำจัดคุณลักษณะแบบวนซ้ำ (RFE)จะนำคุณลักษณะที่สำคัญน้อยที่สุดออกทีละรายการ Scikit-learn มีแนวทางทั้งสองแบบให้ใช้งาน
from sklearn.feature_selection import RFE
from sklearn.linear_model import LinearRegression
import pandas as pd
import numpy as np
features = ['sqft', 'bedrooms', 'bathrooms', 'age', 'distance_to_center']
X_all = df[features].values
y_all = df['price'].values
# Keep the top 3 most informative features
rfe = RFE(estimator=LinearRegression(), n_features_to_select=3)
rfe.fit(X_all, y_all)
selected = [f for f, s in zip(features, rfe.support_) if s]
print('Selected features:', selected)การพยากรณ์บ้านหลังใหม่
เมื่อคุณมีโมเดลหลายคุณลักษณะที่ฝึกแล้ว การพยากรณ์ข้อมูลใหม่ก็ทำได้โดยตรง เพียงสร้าง DataFrame หรืออาร์เรย์ที่มีคอลัมน์คุณลักษณะเหมือนเดิมและเรียงลำดับเดียวกัน แล้วเรียกใช้ model.predict() โมเดลจะส่งคืนราคาที่พยากรณ์หนึ่งค่าต่อหนึ่งแถว
หากคุณใช้ Pipeline ที่มีตัวปรับมาตราส่วน ให้ส่งข้อมูลดิบ (ที่ยังไม่ได้ปรับมาตราส่วน) เข้าไป เพราะกระบวนการจะใช้การแปลงมาตราส่วนเดียวกับที่ฟิตไว้กับข้อมูลฝึกโดยอัตโนมัติ นี่เป็นอีกเหตุผลหนึ่งที่ Pipeline เป็นแนวทางระดับมืออาชีพ
import pandas as pd
import numpy as np
# New houses to value
new_houses = pd.DataFrame({
'sqft': [1200, 2500, 800],
'bedrooms': [3, 4, 2],
'bathrooms': [2, 3, 1],
'age': [10, 5, 30],
'distance_to_center': [5.0, 12.0, 2.5]
})
features = ['sqft', 'bedrooms', 'bathrooms', 'age', 'distance_to_center']
predictions = model.predict(new_houses[features])
for i, (_, row) in enumerate(new_houses.iterrows()):
print(f'House {i+1}: {row["sqft"]} sqft, {row["bedrooms"]}bd -> ${predictions[i]:,.0f}')คุณลักษณะพหุนามสำหรับความสัมพันธ์ไม่เชิงเส้น
การถดถอยเชิงเส้นมีข้อจำกัดกับความสัมพันธ์เชิงเส้น แต่คุณสามารถสร้างแบบจำลองรูปแบบไม่เชิงเส้นได้ด้วยการสร้างคุณลักษณะพหุนาม PolynomialFeatures ใน scikit-learn จะสร้างพจน์กำลังสอง กำลังสาม และพจน์ปฏิสัมพันธ์จากคุณลักษณะเดิมโดยอัตโนมัติ
พหุนามดีกรี 2 ที่มีคุณลักษณะสองรายการ x₁ และ x₂ จะสร้าง: x₁, x₂, x₁², x₂², x₁x₂ โมเดลยังคงเป็นเชิงเส้นในส่วนของพารามิเตอร์ (จึงยังเรียกว่า “การถดถอยเชิงเส้น”) แต่สามารถฟิตความสัมพันธ์แบบโค้งในปริภูมิคุณลักษณะเดิมได้ ใช้ร่วมกับการตรวจสอบไขว้เพื่อเลือกดีกรีที่เหมาะสมที่สุด
from sklearn.preprocessing import PolynomialFeatures
from sklearn.linear_model import LinearRegression
from sklearn.pipeline import Pipeline
from sklearn.metrics import r2_score
import numpy as np
np.random.seed(0)
X = np.random.uniform(0, 5, 100).reshape(-1, 1)
y = X.ravel()**2 + np.random.randn(100) * 2 # quadratic true relationship
# Compare linear vs degree-2 polynomial
for degree in [1, 2, 3]:
pipe = Pipeline([('poly', PolynomialFeatures(degree=degree)),
('model', LinearRegression())])
pipe.fit(X, y)
r2 = r2_score(y, pipe.predict(X))
print(f'Degree {degree} R2 (train): {r2:.3f}')สรุป: ค่าสัมประสิทธิ์ในฐานะความสำคัญของคุณลักษณะ
ประเด็นสำคัญในการใช้ค่าสัมประสิทธิ์วัดความสำคัญของคุณลักษณะ:
- ค่าสัมประสิทธิ์ดิบขึ้นอยู่กับมาตราส่วนของคุณลักษณะ ค่าสัมประสิทธิ์ 150 สำหรับ sqft ไม่สามารถเปรียบเทียบโดยตรงกับ 8000 สำหรับ bedrooms ได้ เว้นแต่ทั้งสองจะถูกทำให้เป็นมาตรฐาน
- ค่าสัมประสิทธิ์ที่ทำให้เป็นมาตรฐาน (จากโมเดลที่ฝึกด้วยคุณลักษณะที่ปรับมาตราส่วนแล้ว) วัดผลของการเปลี่ยนแปลงหนึ่งส่วนเบี่ยงเบนมาตรฐานในแต่ละคุณลักษณะ ทำให้เปรียบเทียบกันได้โดยตรง
- ค่าสัมบูรณ์ที่มากบ่งชี้คุณลักษณะที่มีอิทธิพล ส่วนค่าที่น้อยหรือใกล้ศูนย์บ่งชี้คุณลักษณะที่อ่อนหรือซ้ำซ้อน
- ควรยืนยันเสมอว่าคุณลักษณะที่มีความสำคัญสูงมีความสัมพันธ์กับเป้าหมายในเชิงสาเหตุหรือมีความหมายจริง ไม่ใช่เพียงมีความสัมพันธ์ทางสถิติในข้อมูลฝึก
ตรวจสอบความเข้าใจอย่างรวดเร็ว
ทดสอบความเข้าใจแนวคิดการเรียนรู้ของเครื่องด้วย Python จากบทเรียนนี้
สรุปบทเรียน
ในบทเรียนนี้ คุณได้เรียนรู้ว่า การถดถอยเชิงเส้นหลายตัวแปรกำหนดน้ำหนักหนึ่งค่าให้กับแต่ละคุณลักษณะในสมการ ŷ = w₁x₁ + ... + wₙxₙ + b ต้องทำให้ค่าสัมประสิทธิ์ดิบเป็นมาตรฐานก่อนเปรียบเทียบความสำคัญของคุณลักษณะที่มีสเกลแตกต่างกัน และ Adjusted R² จะลงโทษคุณลักษณะที่เพิ่มเข้ามาเพื่อป้องกันการเรียนรู้มากเกินไประหว่างการเลือกแบบจำลอง บทถัดไป เราจะก้าวจากการทำนายตัวเลขไปสู่การทำนายหมวดหมู่ด้วยการถดถอยโลจิสติกและการจำแนกประเภทโดยใช้ค่าเกณฑ์
เรียนรู้ Python ด้วย AI tutor — ฟรี
เขียนและเรียกใช้โค้ดจริงในเบราว์เซอร์ของคุณ รับความช่วยเหลือทันทีจาก AI tutor 24/7 และเรียนรู้ต่อจากที่คุณหยุดบนเว็บหรือในแอป
- คอร์ส
- 30
- บทเรียน
- 120
คำถามที่พบบ่อย
บทเรียน “การถดถอยเชิงเส้นพหุคูณและความสำคัญของคุณลักษณะ” ฟรีหรือไม่
ใช่ — ข้อความเต็มของ “การถดถอยเชิงเส้นพหุคูณและความสำคัญของคุณลักษณะ” ฟรีให้อ่านที่นี่บนเว็บ เพื่อปฏิบัติแบบโต้ตอบ (ตัวแก้ไขโค้ดในตัวและติวเตอร์ AI ตลอด 24/7) และปลดล็อคส่วนที่เหลือของคอร์ส Machine Learning Academy ให้อัปเกรดเป็น CoddyKit PRO คอร์ส Machine Learning Academy มีบทเรียนทั้งหมด 4 บทเรียน
คุณจะเรียนรู้อะไรในบทเรียน “การถดถอยเชิงเส้นพหุคูณและความสำคัญของคุณลักษณะ”
ผู้เรียนจะขยายแบบจำลองให้รองรับคุณลักษณะข้อมูลนำเข้าหลายรายการ แปลความหมายสัมประสิทธิ์แต่ละตัวเป็นความสำคัญของคุณลักษณะ และประเมินผลด้วย R-squared คุณปฏิบัติ Machine Learning Academy ด้วยโค้ดที่ใช้งานได้จริงที่คุณเรียกใช้โดยตรงในเบราว์เซอร์ และติวเตอร์ AI ตลอด 24/7 ตอบคำถามของคุณขณะที่คุณไปผ่านบทเรียน
คุณต้องมีประสบการณ์ก่อนที่จะเริ่มเรียน Machine Learning Academy หรือไม่
ไม่จำเป็นต้องมีประสบการณ์มาก่อน Machine Learning Academy บน CoddyKit ออกแบบมาสำหรับผู้เริ่มต้นไปจนถึงผู้เรียนขั้นสูง คุณสามารถเริ่มต้นที่นี่หรือเริ่มจากตัวแรกและเรียนด้วยความเร็วของคุณเอง นี่คือบทเรียนที่ 4 จากทั้งหมด 4 บทเรียน
บทเรียน “การถดถอยเชิงเส้นพหุคูณและความสำคัญของคุณลักษณะ” ใช้เวลานานแค่ไหน
บทเรียน CoddyKit ส่วนใหญ่ใช้เวลาประมาณ 5–10 นาที แต่ละบทเรียนจึงสั้นและเป็นแบบโต้ตอบ คุณสามารถก้าวหน้าอย่างต่อเนื่องและกลับมาเรียนต่อจากตรงที่เพิ่งหยุดบนเว็บและแอปได้เลย
ฉันเขียนและรันโค้ดในบทเรียน Machine Learning Academy นี้ได้ไหม
ได้ บทเรียน Machine Learning Academy ทุกบทมีตัวแก้ไขโค้ดในตัว คุณจึงเขียนและรันโค้ดจริงได้เลยในเบราว์เซอร์ และได้รับข้อเสนอแนะจาก AI ในทันที — ไม่ต้องติดตั้งในเครื่องของคุณ
บทเรียนทั้งหมดในหลักสูตรนี้
- สมการเส้นตรง: ความชัน จุดตัด และการพยากรณ์
- ฟังก์ชันต้นทุนและกำลังสองน้อยที่สุด
- การฝึกการถดถอยเชิงเส้นด้วย scikit-learn
- การถดถอยเชิงเส้นพหุคูณและความสำคัญของคุณลักษณะ