Tôi đang làm việc trên nghiên cứu, nơi nhu cầu một classify ba sự kiện WINNER = ( win
, draw
, lose
)
WINNER LEAGUE HOME AWAY MATCH_HOME MATCH_DRAW MATCH_AWAY MATCH_U2_50 MATCH_O2_50
3 13 550 571 1.86 3.34 4.23 1.66 2.11
3 7 322 334 7.55 4.1 1.4 2.17 1.61
Mô hình hiện tại của tôi là:
def build_model(input_dim, output_classes):
model = Sequential()
model.add(Dense(input_dim=input_dim, output_dim=12, activation=relu))
model.add(Dropout(0.5))
model.add(Dense(output_dim=output_classes, activation='softmax'))
model.compile(loss='categorical_crossentropy', optimizer='adadelta')
return model
- Tôi không chắc đó là cách chính xác để phân loại nhiều lớp
- Thiết lập tốt nhất để phân loại nhị phân là gì?
EDIT: # 2 - Như thế?
model.add(Dense(input_dim=input_dim, output_dim=12, activation='sigmoid'))
model.add(Dropout(0.5))
model.add(Dense(output_dim=output_classes, activation='softmax'))
model.compile(loss='binary_crossentropy', optimizer='adadelta')
architecture
các lớp chủ yếu. Có lời khuyên nào cho câu hỏi số 2 của tôi không?
activation='sigmoid'
vàloss='binary_crossentropy'
activation='sigmoid'
trong lớp đầu ra . Lớp ẩn có thể giữ nguyên như 'relu'
bạn muốn (mặc dù tôi có thể bắt đầu với 'tanh'
vấn đề này, đó là sở thích cá nhân với rất ít sự hỗ trợ từ lý thuyết)
activation='softmax'
và lựa chọn biên dịchloss='categorical_crossentropy'
? IMO, các lựa chọn của bạn cho những điều đó là tốt cho một mô hình để dự đoán nhiều lớp loại trừ lẫn nhau. Nếu bạn muốn tư vấn cho toàn bộ mô hình, điều đó khá khác biệt, và bạn nên giải thích thêm về mối quan tâm của bạn là gì, nếu không có quá nhiều điều để giải thích trong một câu trả lời.