thưa thầy, ở bước dự đoán thì có các giá trị là 1,-1 bên cạnh các trọng số a. thì cho em hỏi cơ sở tính toán nào để có thể đưa ra được con số dự đoán đó v ạ? em cảm ơn thầy
dạ thầy cho e hỏi nếu trong trường hợp tập dữ liệu của mình có nhiều hơn 2 nhãn đầu ra thì sao ạ, ví dụ thay vì nhãn chỉ có 2 loại là yes và no thì nó sẽ có nhiều hơn 2 giá trị như táo, cam, xoài,...thì sao ạ
Chào em, trong Adaboost, mô hình được huấn luyện của mỗi người học cơ bản (base learner) là một h(t)(x) (h(t) là người học thứ t). X là feature input. Khi em cung cấp một input mới X cho Adaboost, mỗi người học cơ bản sẽ thực hiện dự đoán và cho ra một kết quả y(t) = h(t)(X). Kết quả cuối cùng của mô hình adaboost H(x) sẽ là sự kết hợp của tất cả các giá trị y(t) này lại, với trọng số của nó. Như vậy h(x) chính là kết quả dự đoán của các base learner. Trong Adaboost, giải thuật trên scikit-learn chỉ cung cấp cho em kết quả dự đoán cuối H(x) của mô hình, mà không cung cấp kết quả dự đoán riêng của từng h(x). Nếu em muốn có các giá trị h(x), em có thể thực hiện thêm đoan code này (đặt ở cuối chương trình, khi adaboost đã huấn luyện xong): #huấn luyện adaboost ada_boost.fit(X_train, y_train) #Dự đoán của Adaboost predictions = ada_boost.predict(X_test) #Kết quả dự đoán của từng base model riêng lẻ base_learner_predictions = [] for base_model in ada_boost.estimators_: base_predictions = base_model.predict(X_test) base_learner_predictions.append(base_predictions) Chúc em thành công trong học tập
Cảm ơn thầy đã chia sẻ kiến thức đến cộng đồng. Chúc thầy sức khoẻ và ra thêm nhiều clip hay
thầy giảng rất dễ hiểu, mong thầy ra thêm các video về mạng thần kinh nhân tạo ạ!
Cám ơn comment của em. Thầy sẽ chuẩn bị bài và hướng dẫn các em trong khóa học về Deep Learning nhé
Em cám ơn Thầy, video giải thích dễ hiểu
hay quá thầy ơi
Mong thầy có thêm các bài giảng về Deep Learning nữa ạ.
Cám ơn sự ủng hộ của các em. Sau series bai giảng về Máy Học Ứng Dụng. Thầy sẽ hướng dẫn các em các vấn đề trong Deep learning
thưa thầy, ở bước dự đoán thì có các giá trị là 1,-1 bên cạnh các trọng số a. thì cho em hỏi cơ sở tính toán nào để có thể đưa ra được con số dự đoán đó v ạ? em cảm ơn thầy
dạ thầy cho e hỏi nếu trong trường hợp tập dữ liệu của mình có nhiều hơn 2 nhãn đầu ra thì sao ạ, ví dụ thay vì nhãn chỉ có 2 loại là yes và no thì nó sẽ có nhiều hơn 2 giá trị như táo, cam, xoài,...thì sao ạ
Mong thầy ra video về gradient boosting ạ
Cám ơn comment của em. Nếu các em có nhu cầu, Thầy sẽ tạo bài và upload cho các em sớm nhé
Dạ thưa thầy, giá trị của h(x) mình lấy ở đâu vậy thầy?
Chào em, trong Adaboost, mô hình được huấn luyện của mỗi người học cơ bản (base learner) là một h(t)(x) (h(t) là người học thứ t). X là feature input. Khi em cung cấp một input mới X cho Adaboost, mỗi người học cơ bản sẽ thực hiện dự đoán và cho ra một kết quả y(t) = h(t)(X). Kết quả cuối cùng của mô hình adaboost H(x) sẽ là sự kết hợp của tất cả các giá trị y(t) này lại, với trọng số của nó.
Như vậy h(x) chính là kết quả dự đoán của các base learner.
Trong Adaboost, giải thuật trên scikit-learn chỉ cung cấp cho em kết quả dự đoán cuối H(x) của mô hình, mà không cung cấp kết quả dự đoán riêng của từng h(x). Nếu em muốn có các giá trị h(x), em có thể thực hiện thêm đoan code này (đặt ở cuối chương trình, khi adaboost đã huấn luyện xong):
#huấn luyện adaboost
ada_boost.fit(X_train, y_train)
#Dự đoán của Adaboost
predictions = ada_boost.predict(X_test)
#Kết quả dự đoán của từng base model riêng lẻ
base_learner_predictions = []
for base_model in ada_boost.estimators_:
base_predictions = base_model.predict(X_test)
base_learner_predictions.append(base_predictions)
Chúc em thành công trong học tập
@@ovnewdạ em cảm ơn thầy ạ