You are on page 1of 5

Để sử dụng thuật toán SVM trong sklearn, ta lựa chọn class SVC hoặc SVR trong

gói sklearn.svm. Chi tiết về các thông số điều khiển, thuộc tính, và phương pháp
của class này được liệt kê trong bảng 2.3. tuy nhiên chỉ có một số tham số quan
trọng mà người dùng cần quan tâm đó là hệ số điều khiển C và các thống số của
hàm kernel. Các ví dụ sau sẽ làm rõ những ảnh hưởng này.
Class sklearn.svm.SVC(*, C=1.0, kernel='rbf', degree=3, gamma='scale', c
oef0=0.0, shrinking=True, probability=False, tol=0.001, cache_size=200, class_
weight=None, verbose=False, max_iter=-1, decision_function_shape='ovr', break
_ties=False, random_state=None)
Thông số C: Kiểu số thực (float), mặc định bằng 1.0
Là tham số điều chỉnh, luôn lớn hơn 0
kernal: ‘linear’, ‘poly’, ’rbf’, ’sigmoid’, ’precomputed’, mặc
định là ‘rbf’
Chỉ định loại kernal sẽ được sử dụng trong thuật toán. Nếu
không chỉ định thì mặc định ‘rbf’ sẽ được sử dụng.
degree: Kiểu số nguyên (int), mặc định bằng 3
Chỉ ra mức độ của kernal (‘poly’). Không dùng cho các kernal
khác
gamma: ‘scale’, ‘auto’ hoặc là số thực (float), mặc định là ‘scale’
Hệ số cho kernal ‘rbf’, ‘poly’ và ‘sigmoid’
● Nếu gamma = ‘scale’ được sử dụng thì nó sử dụng
1/(n_features*X.var()) làm giá trị 
● Nếu  gamma = ‘auto’ được sử dụng thì nó sử dụng
1/n_features
class_weight_: Dạng ndarray của shape (n_classes,)
Các cấp số nhân của tham số C cho mỗi lớp. Tính toán dựa
trên class_weight tham số
classes_: Dạng ndarray shape (n_classes,)
Các nhãn của lớp
attribute coef_: Dạng ndarray của shape (n_classes*(n_classes – 1)/2,
n_features)
Trọng số được gán cho các đối tượng. Chỉ khả dụng khi kernal
là ‘linear’
dual_coef_: Dạng ndarray của shape (n_classes – 1, n_SV)
Hệ số kép của SVM trong hàm quyết định. Đối với đa lớp, hệ
số cho tất cả bộ phân loại là 1 và -1. 
fit_status_: Kiểu số nguyên (int)
0 nếu lắp đúng, 1 nếu không đúng cách
intercept_: Dạng ndarray của shape (n_classes*(n_classes –
1)/2,)
Hằng số của hàm quyết định
support_: Hình dạng ndarray(n_SV)
Chỉ số của SVM
support_vectors: Hình dạng ndarray (n_SV, n_features)
Hỗ trợ vector
n_support_: Hình dạng ndarray (n_classes,), thuộc tính int32
Số lượng vector hỗ trợ cho mỗi lớp
probA_ ndarray of shape (n_classes * (n_classes - 1) / 2)
probB_ ndarray of shape (n_classes * (n_classes - 1) / 2)
Nếu probability=True, nó tương ứng với các tham số đã học
trong quy mô Platt để tạo ra các ước tính xác suất từ các giá
trị quyết định. Nếu probability=False, đó là một mảng trống.
Chia tỷ lệ Platt sử dụng chức năng logistic ở đó và được học
từ tập dữ liệu [2] . Để biết thêm thông tin về hộp đa thủy tinh
và quy trình huấn luyện, hãy xem phần 8 của [1] .1 / (1 +
exp(decision_value * probA_ + probB_))probA_probB_
shape_fit_ tuple int of shape (n_dimensions_of_X,)
Kích thước mảng của vector huấn luyện X.
Method ● decision_function(X): Đánh giá hàm quyết định cho các mẫu
trong X
Thông số:
X – Hình dạng mảng (n_samples, n_features)
Trả về: 
X – Hình dạng dải mảng (n_samples, n_calsses*(n_classes -
1)/2)
● fit(X, y, sample_weight = None) : Mô hình huấn luyện SVM
theo dữ liệu đã cho
Thông số: 
X - {dạng mảng, ma trận thưa thớt} có hình dạng (n_samples,
n_features) hoặc (n_samples, n_samples)
Các vectơ huấn luyện, trong đó n_samples là số lượng mẫu
và n_features là số lượng tính năng. Đối với kernel =
”precomputed”, hình dạng mong đợi của X là (n_samples,
n_samples).
y : mảng giống hình dạng (n_samples,)
Giá trị đích (nhãn lớp trong phân loại, số thực trong hồi
quy).
sample_weight: mảng giống như hình dạng (n_samples,),
default = None
Trọng lượng mỗi mẫu. Trọng số cao hơn buộc bộ phân loại
phải chú trọng nhiều hơn vào những điểm này.
Trả về
Seft: Object
● get_params( deep = True ): Nhận các tham số cho công cụ
ước tính này.
Thông số
Deep: bool , mặc định = True
Nếu Đúng, sẽ trả về các tham số cho công cụ ước lượng này
và chứa các subobject là công cụ ước lượng.
Trả về
Params: dict
Tên tham số được ánh xạ tới giá trị của chúng.
● predict( X ): Thực hiện phân loại trên các mẫu trong X. Đối
với mô hình một lớp, +1 hoặc -1 được trả về.
Thông số
X: {dạng mảng, ma trận thưa thớt} có hình dạng (n_samples,
n_features) hoặc (n_samples_test, n_samples_train)
Đối với kernel = ”precomputed”, hình dạng mong đợi của X
là (n_samples_test, n_samples_train).
Trả về:
y_pred: ndarray của hình dạng (n_samples,)
Nhãn lớp cho các mẫu trong X.
● property predict_log_proba: Tính toán xác suất nhật ký của
các kết quả có thể xảy ra đối với các mẫu trong X. Mô hình
cần có thông tin xác suất được tính toán tại thời điểm huấn
luyện: phù hợp với thuộc tính probability được đặt thành
True.
Thông số
X: giống mảng của hình dạng (n_samples, n_features) hoặc
(n_samples_test, n_samples_train)
Đối với kernel = ”precomputed”, hình dạng mong đợi của X
là (n_samples_test, n_samples_train).
Trả về:
T:  ndarray of shape (n_samples, n_classes)
Trả về xác suất log của mẫu cho mỗi lớp trong mô hình. Các
cột tương ứng với các lớp theo thứ tự được sắp xếp, khi
chúng xuất hiện trong các lớp thuộc tính.
● property predict_proba: Tính xác suất của các kết quả có thể
xảy ra đối với các mẫu trong X. Mô hình cần có thông tin xác
suất được tính toán tại thời điểm huấn luyện: phù hợp với
thuộc tính probabilityđược đặt thành True.
Thông số:
X: giống mảng của hình dạng (n_samples, n_features)
Đối với kernel = ”precomputed”, hình dạng mong đợi của X
là (n_samples_test, n_samples_train).
Trả về:
T:  ndarray của hình dạng (n_samples, n_classes)
Trả về xác suất của mẫu cho mỗi lớp trong mô hình. Các cột
tương ứng với các lớp theo thứ tự được sắp xếp, khi chúng
xuất hiện trong các lớp thuộc tính.
● score( X , y , sample_weight = None ): Trả lại độ chính xác
trung bình trên các nhãn và dữ liệu kiểm tra đã cho. Trong
phân loại nhiều nhãn, đây là độ chính xác của tập hợp con,
đây là một số liệu khắc nghiệt vì bạn yêu cầu đối với mỗi
mẫu mà mỗi bộ nhãn phải được dự đoán chính xác.
Thông số
X: giống mảng của hình dạng (n_samples, n_features)
Mẫu thử nghiệm.
Y: mảng giống hình dạng (n_samples,) hoặc (n_samples,
n_outputs)
Đúng nhãn cho X.
sample_weight: mảng giống như hình dạng (n_samples,),
default = None
Khối lượng mẫu.
Trả về
Score: Dạng số thực (float)
Độ chính xác trung bình của self.predict(X)wrt. y.
● set_params( ** params ): Đặt các tham số của công cụ ước
tính này. Phương pháp này hoạt động trên các bộ ước lượng
đơn giản cũng như trên các đối tượng lồng nhau. Cái sau có
các tham số của biểu mẫu <component>__<parameter>để
có thể cập nhật từng thành phần của một đối tượng lồng
nhau.
Thông số
** params: Dạng dict
Các thông số của bộ ước lượng.
Trả về
Seft:  tự ước tính
Ví dụ về công cụ ước tính.

You might also like