Áp dụng Deep Learning để dự báo kết quả tiếp cận thành công một campaign quảng cáo

Bài viết này mình thử dùng thuật toán Artificial Neural Network (ANN) để xử lí một tệp dữ liệu marketing đơn giản, mục đích thử phân loại xem hành vi Yes/No của người dùng trong dataset có những yếu tố nào ảnh hưởng, cũng như thử build một mô hình dự báo bằng Deep Learning. Mô hình cho ra kết quả với độ chính xác accuracy (test data) = 90.8% - Final loss (Test data): 0.2293

Quan sát kết quả EDA label tổng quát trong data này:

  • Nhận thấy có tỉ lệ thành công tốt đặc biệt với poutcome = success(yếu tố này cho biết là campaign trước thành công là dấu hiệu cho tỉ lệ thành công lần này cũng cao)
  • Người thất nghiệp và đã nghỉ hưu lại có tỉ lệ tiếp cận thành công cao hơn các job khác
  • Người không vay nợ lại có tỉ lệ tiếp cận thành công tốt hơn người có vay nợ.
  • Người tốt nghiệp đại học có tỉ lệ tiếp cận thành công hơn những người mới có bằng primary hay secondary
  • Người độc thân có tỉ lệ tiếp cận thành công hơn người đã có gia đình
  • Người không có nhà có tỉ lệ tiếp cận thành công hơn người có nhà
  • Tiếp cận bằng thiết bị di động có tỉ lệ tiếp cận thành công hơn người dùng các phương tiện khác

Đây là bộ dữ liệu marketing ngân hàng trong Kho dữ liệu Machine Learning của UCI (https://archive.ics.uci.edu/ml/index.php). Trong dữ liệu có các sub dữ liệu là: nhân khẩu học, thông tin vay nợ và thông tin chăm sóc khách hàng (CRM) theo thời gian. Tổng cộng 17 đặc tính và 45000 kết quả ghi nhận.

Noted: Kiến thức người viết hạn hẹp, cũng như mô hình này mắc một problem là chưa xử lí dữ liệu unbalance tỉ lệ 8:1 nên mình chọn ngưỡng baseline là 88.88%, do đó chỉ mang tính chất tham khảo học thuật là chính. Trong bài mình cũng không reScale lại data trong quá trình tiền xử lí dữ liệu.

kết nối bạn bè và trao đổi học tập:

Quan sát qua bảng dữ liệu

Nguồn data chính xác: http://archive.ics.uci.edu/ml/datasets/bank+marketing

Mục tiêu: phân loại Yes/No (feature 'y' trong dataset) những người có thực hiện ý đồ của campaign marketing (ví dụ mua hàng, vay tiền, sử dụng coupon)

Đây là bộ dữ liệu marketing ngân hàng trong Kho dữ liệu Machine Learning của UCI (https://archive.ics.uci.edu/ml/index.php). Bộ dữ liệu cung cấp thông tin về một chiến dịch tiếp thị của một tổ chức tài chính. Nhiệm vụ phân tích trong vấn đề này là để tìm cách tìm kiếm các chiến lược trong tương lai nhằm cải thiện các chiến dịch tiếp thị trong tương lai cho ngân hàng.

Các yếu tố (Feature) trong dữ liệu bao gồm:

  • age: tuổi của người tiếp cận
  • job: nghề nghiệp bao gồm admin, blue-collar, entrepreneur, housemaid, management, retired, self-employed, services, student, technician, unemployed
  • marital: tình trạng hôn nhân bao gồm: married, single, divorced
  • education: trình độ học vấn hiện tại bao gồm primary,secondary,tertiary (đại học)
  • balance: Số tiền trên tài khoản giao dịch bao gồm tất cả các giao dịch đầy đủ và hoàn chỉnh cũng như các hoạt động phi thương mại như nạp và rút tiền.
  • housing: có nhà hay chưa
  • loan: có vay hay không
  • day: ngày campaign tiếp cận gần nhất (ngày mấy của tháng, số kéo dài từ 1 đến 31 ngày)
  • month: tháng campaign tiếp cận gần nhất của năm (phân loại: 'jan', 'feb', ' mar ', ...,' nov ',' dec ')
  • contact: loại phương tiện liên lạc (phân loại: 'di động', 'điện thoại')
  • duration: thời lượng liên lạc cuối cùng, tính bằng giây.
  • campaign: số thứ tự chiến dịch
  • pday: số ngày trôi qua sau khi khách hàng được liên hệ lần cuối từ chiến dịch trước đó
  • previous: số lượng liên hệ được thực hiện trước chiến dịch này và cho khách hàng này
  • poutcome: kết quả của chiến dịch tiếp thị trước đó (phân loại: 'thất bại', 'không tồn tại', 'thành công')
In [2]:
eda = pd.read_csv(r"https://raw.githubusercontent.com/cafechungkhoan/chu_gia/master/bank%20marketing.csv",delimiter=';')
eda = pd.DataFrame(eda)
eda
Out[2]:
agejobmaritaleducationdefaultbalancehousingloancontactdaymonthdurationcampaignpdayspreviouspoutcomey
058managementmarriedtertiaryno2143yesnounknown5may2611-10unknownno
144techniciansinglesecondaryno29yesnounknown5may1511-10unknownno
233entrepreneurmarriedsecondaryno2yesyesunknown5may761-10unknownno
347blue-collarmarriedunknownno1506yesnounknown5may921-10unknownno
433unknownsingleunknownno1nonounknown5may1981-10unknownno
......................................................
4520651technicianmarriedtertiaryno825nonocellular17nov9773-10unknownyes
4520771retireddivorcedprimaryno1729nonocellular17nov4562-10unknownyes
4520872retiredmarriedsecondaryno5715nonocellular17nov112751843successyes
4520957blue-collarmarriedsecondaryno668nonotelephone17nov5084-10unknownno
4521037entrepreneurmarriedsecondaryno2971nonocellular17nov361218811otherno

45211 rows × 17 columns

Xử lí tiền dữ liệu

Mình xử lí bằng cách Drop các feature thiếu trên 30% dữ liệu, còn lại loại bỏ các hàng chứa dữ liệu thiếu dropna()

Mình trực quan dữ liệu thiếu bằng 'Missing Value Heatmaps'. Nếu chưa biết dạng chart bên dưới có thể đọc thêm về (Missing Value Heatmaps). Nó cho biết dữ liệu thiếu nằm tại vị trí nào của dataset https://dev.to/tomoyukiaota/visualizing-the-patterns-of-missing-value-occurrence-with-python-46dj

In [61]:

In [7]:
target = 'y'

Giai đoạn exploratory data analysis (EDA) đầu vào

Đây là loại dữ liệu không cân bằng. Tuy nhiên, dữ liệu không cân bằng trong marketing là chuyện thường thấy, như số lượng click / không click trong một lượng tiếp cận, số lượng churn / not churn,... Problem về dữ liệu không cân bằng mình tìm hiểu nhiều, nhưng vẫn chưa có một phương pháp thỏa đáng xử lí. Hơn nữa cũng chưa thấy có report nào nói về tỉ lệ không cân bằng là bao nhiêu (trường hợp trong bài viết này là 8:1)

EDA sơ bộ những ý tưởng của mình trả lời những câu hỏi sau:

  • Có sự khác biệt nào giữa người mua / không mua dựa vào tuổi hay không?
  • Có sự khác biệt nào giữa người mua / không mua dựa vào yếu tố nghề nghiệp không?
  • Có sự khác biệt nào giữa người mua / không mua dựa vào yếu tố học vấn không?
  • Có tính chất gì lạ trong dữ liệu không?

Quan sát trước về các ditribution Numeric Feature

In [36]:
import hieu_viet_code_ne
In [5]:
eda = pd.read_csv(r"https://raw.githubusercontent.com/cafechungkhoan/chu_gia/master/bank%20marketing.csv",delimiter=';')
yes = eda[eda.y=='yes']
no = eda[eda.y=='no']
plt.figure(figsize=(12,8))
sns.set_style("darkgrid")
plt.title("Quan sát phân phối xác suất giữa Yes và No của Feature age, không thấy sự khác biệt đáng kể",{'fontsize': 15})
a = sns.kdeplot(data=yes['age'], label="yes", shade=True)
b = sns.kdeplot(data=no['age'],label="no" ,shade=True)
<IPython.core.display.Javascript object>
<IPython.core.display.Javascript object>
<IPython.core.display.Javascript object>
<IPython.core.display.Javascript object>
<IPython.core.display.Javascript object>
<IPython.core.display.Javascript object>
In [25]:

<IPython.core.display.Javascript object>
<IPython.core.display.Javascript object>
<IPython.core.display.Javascript object>
<IPython.core.display.Javascript object>
<IPython.core.display.Javascript object>
In [24]:

<IPython.core.display.Javascript object>
<IPython.core.display.Javascript object>
<IPython.core.display.Javascript object>
<IPython.core.display.Javascript object>
<IPython.core.display.Javascript object>

PCA & EDA tổng quát các label Feature

In [64]:

Target looks like classification
Linear Discriminant Analysis training set score: 0.613

Quan sát kết quả EDA label tổng quát

  • Nhận thấy có tỉ lệ thành công tốt đặc biệt với poutcome = success(yếu tố này cho biết là campaign trước thành công là dấu hiệu cho tỉ lệ thành công lần này cũng cao)
  • Người thất nghiệp và đã nghỉ hưu lại có tỉ lệ tiếp cận thành công cao hơn các job khác
  • Người không vay nợ lại có tỉ lệ tiếp cận thành công tốt hơn người có vay nợ.
  • Người tốt nghiệp đại học có tỉ lệ tiếp cận thành công hơn những người mới có bằng primary hay secondary
  • Người độc thân có tỉ lệ tiếp cận thành công hơn người đã có gia đình
  • Người không có nhà có tỉ lệ tiếp cận thành công hơn người có nhà
  • Tiếp cận bằng thiết bị di động có tỉ lệ tiếp cận thành công hơn người dùng các phương tiện khác

Encoder dữ liệu để chạy mô hình

Hiện tại mình dùng Label Encoder cho yes/no feature và dùng OneHot Encoder cho các feature label còn lại

In [3]:
data = eda
data = data.drop(['poutcome','contact'] , axis = 1)
data = data.replace('yes',1)
data = data.replace('no',0)
data = pd.get_dummies(data)
data.head()
Out[3]:
agedefaultbalancehousingloandaydurationcampaignpdaysprevious...month_decmonth_febmonth_janmonth_julmonth_junmonth_marmonth_maymonth_novmonth_octmonth_sep
058021431052611-10...0000001000
1440291051511-10...0000001000
23302115761-10...0000001000
34701506105921-10...0000001000
433010051981-10...0000001000

5 rows × 42 columns

Dùng data.shape thấy sau khi Onehot encoder dữ liệu, phát sinh ra đến 42 Feature, do đó cần lọc lại dữ liệu

In [66]:
data.shape
Out[66]:
(45211, 42)

Feature Selection

Có 4 vấn đề cần xử lí trong Feature Selection, trước khi vào giai đoạn Deep Learning: loại bỏ giá trị duy nhất (single unique value), tìm và xử lí các tính năng cộng tuyến (collinear features),tính năng có tầm quan trọng = 0 và tính năng kém quan trọng ( hiện tại bài viết mình xử lí bằng bằng gradient boosting machine)

Đọc thêm về Feture Selection bằng Gradient Boosting Machine https://arxiv.org/abs/1901.04055

In [26]:

Thử ngưỡng đa cộng tuyến 0.8 thì vẫn ko có nên mình pass qua vấn đề này

Trực quan kết quả đa cộng tuyến bằng Dendogram

In [41]:

Out[41]:
<matplotlib.axes._subplots.AxesSubplot at 0x1b503c6ce88>
In [29]:

0 features with a correlation magnitude greater than 0.80.

[]
Out[29]:
drop_featurecorr_featurecorr_value
In [30]:

Training Gradient Boosting Model

Training until validation scores don't improve for 100 rounds
Early stopping, best iteration is:
[344]	valid_0's auc: 0.935519	valid_0's binary_logloss: 0.194667
Training until validation scores don't improve for 100 rounds
Early stopping, best iteration is:
[278]	valid_0's auc: 0.935839	valid_0's binary_logloss: 0.194577
Training until validation scores don't improve for 100 rounds
Early stopping, best iteration is:
[311]	valid_0's auc: 0.942968	valid_0's binary_logloss: 0.186193
Training until validation scores don't improve for 100 rounds
Early stopping, best iteration is:
[198]	valid_0's auc: 0.934594	valid_0's binary_logloss: 0.196641
Training until validation scores don't improve for 100 rounds
Early stopping, best iteration is:
[342]	valid_0's auc: 0.936459	valid_0's binary_logloss: 0.193615
Training until validation scores don't improve for 100 rounds
Early stopping, best iteration is:
[471]	valid_0's auc: 0.94093	valid_0's binary_logloss: 0.188461
Training until validation scores don't improve for 100 rounds
Early stopping, best iteration is:
[254]	valid_0's auc: 0.93385	valid_0's binary_logloss: 0.198337
Training until validation scores don't improve for 100 rounds
Early stopping, best iteration is:
[281]	valid_0's auc: 0.935248	valid_0's binary_logloss: 0.196619
Training until validation scores don't improve for 100 rounds
Early stopping, best iteration is:
[284]	valid_0's auc: 0.938564	valid_0's binary_logloss: 0.192148
Training until validation scores don't improve for 100 rounds
Early stopping, best iteration is:
[228]	valid_0's auc: 0.939406	valid_0's binary_logloss: 0.190966

0 features with zero importance after one-hot encoding.

Biểu diễn 20 Feature có ảnh hưởng đến kết quả

Chỉ nhìn vào đây, có thể cải thiện kết quả quảng cáo thông qua những feature hàng đầu như: duration, balance, day, age,...

Dựa vào kết quả Cumulative, mình giữ lại luôn 41 Feature để chạy mô hình, không drop feature nào cả.

In [34]:

44 features required for 0.99 of cumulative importance

Áp dụng Deep Learning để phân loại

Mình đã Tuning Model bằng RandomSearchCV và pick activation = sigmoid, optimizer = Adagrad và batch_size = 16. Loss function là: binary_crossentropy, metrics đánh giá mô hình là accuracy

Và bên dưới là kết quả:

In [ ]:

In [ ]:

In [69]:

Model: "sequential_3"
_________________________________________________________________
Layer (type)                 Output Shape              Param #   
=================================================================
dense_9 (Dense)              (None, 41)                1722      
_________________________________________________________________
dense_10 (Dense)             (None, 41)                1722      
_________________________________________________________________
dense_11 (Dense)             (None, 41)                1722      
_________________________________________________________________
dense_12 (Dense)             (None, 1)                 42        
=================================================================
Total params: 5,208
Trainable params: 5,208
Non-trainable params: 0
_________________________________________________________________
In [70]:
a = model.fit(X_train, y_train, batch_size = 16, epochs = 500)
final_loss, final_acc = model.evaluate(X_test, y_test, verbose = 0)
print("Final loss (Test data): {0:.4f}, final accuracy (Test data): {1:.4f}".format(final_loss, final_acc))
Epoch 1/500
31647/31647 [==============================] - 2s 71us/step - loss: 0.3022 - accuracy: 0.8829
Epoch 2/500
31647/31647 [==============================] - 2s 70us/step - loss: 0.2784 - accuracy: 0.8886
Epoch 3/500
31647/31647 [==============================] - 2s 71us/step - loss: 0.2727 - accuracy: 0.8888
Epoch 4/500
31647/31647 [==============================] - 2s 71us/step - loss: 0.2670 - accuracy: 0.8890
Epoch 5/500
31647/31647 [==============================] - 2s 71us/step - loss: 0.2628 - accuracy: 0.8897
Epoch 6/500
31647/31647 [==============================] - 2s 71us/step - loss: 0.2565 - accuracy: 0.8908
Epoch 7/500
31647/31647 [==============================] - 2s 71us/step - loss: 0.2523 - accuracy: 0.8906
Epoch 8/500
31647/31647 [==============================] - 2s 70us/step - loss: 0.2489 - accuracy: 0.8913
Epoch 9/500
31647/31647 [==============================] - 2s 69us/step - loss: 0.2463 - accuracy: 0.8917
Epoch 10/500
31647/31647 [==============================] - 2s 69us/step - loss: 0.2437 - accuracy: 0.8922
Epoch 11/500
31647/31647 [==============================] - 2s 70us/step - loss: 0.2437 - accuracy: 0.8924
Epoch 12/500
31647/31647 [==============================] - 2s 71us/step - loss: 0.2408 - accuracy: 0.8935
Epoch 13/500
31647/31647 [==============================] - 2s 69us/step - loss: 0.2400 - accuracy: 0.8942
Epoch 14/500
31647/31647 [==============================] - 2s 69us/step - loss: 0.2394 - accuracy: 0.8947
Epoch 15/500
31647/31647 [==============================] - 2s 70us/step - loss: 0.2386 - accuracy: 0.8943
Epoch 16/500
31647/31647 [==============================] - 2s 70us/step - loss: 0.2379 - accuracy: 0.8941
Epoch 17/500
31647/31647 [==============================] - 2s 71us/step - loss: 0.2371 - accuracy: 0.8952
Epoch 18/500
31647/31647 [==============================] - 2s 70us/step - loss: 0.2363 - accuracy: 0.8941
Epoch 19/500
31647/31647 [==============================] - 2s 69us/step - loss: 0.2352 - accuracy: 0.8946
Epoch 20/500
31647/31647 [==============================] - 2s 69us/step - loss: 0.2355 - accuracy: 0.8953
Epoch 21/500
31647/31647 [==============================] - 2s 70us/step - loss: 0.2344 - accuracy: 0.8949
Epoch 22/500
31647/31647 [==============================] - 2s 70us/step - loss: 0.2348 - accuracy: 0.8948
Epoch 23/500
31647/31647 [==============================] - 2s 70us/step - loss: 0.2333 - accuracy: 0.8957
Epoch 24/500
31647/31647 [==============================] - 2s 69us/step - loss: 0.2337 - accuracy: 0.8950
Epoch 25/500
31647/31647 [==============================] - 2s 69us/step - loss: 0.2331 - accuracy: 0.8955
Epoch 26/500
31647/31647 [==============================] - 2s 70us/step - loss: 0.2326 - accuracy: 0.8948
Epoch 27/500
31647/31647 [==============================] - 2s 70us/step - loss: 0.2325 - accuracy: 0.8957
Epoch 28/500
31647/31647 [==============================] - 2s 69us/step - loss: 0.2314 - accuracy: 0.8961
Epoch 29/500
31647/31647 [==============================] - 2s 69us/step - loss: 0.2321 - accuracy: 0.8965
Epoch 30/500
31647/31647 [==============================] - 2s 70us/step - loss: 0.2314 - accuracy: 0.8961
Epoch 31/500
31647/31647 [==============================] - 2s 70us/step - loss: 0.2311 - accuracy: 0.8961
Epoch 32/500
31647/31647 [==============================] - 2s 70us/step - loss: 0.2308 - accuracy: 0.8966
Epoch 33/500
31647/31647 [==============================] - 2s 70us/step - loss: 0.2304 - accuracy: 0.8963
Epoch 34/500
31647/31647 [==============================] - 2s 69us/step - loss: 0.2302 - accuracy: 0.8959
Epoch 35/500
31647/31647 [==============================] - 2s 69us/step - loss: 0.2296 - accuracy: 0.8954
Epoch 36/500
31647/31647 [==============================] - 2s 70us/step - loss: 0.2299 - accuracy: 0.8962
Epoch 37/500
31647/31647 [==============================] - 2s 69us/step - loss: 0.2297 - accuracy: 0.8963
Epoch 38/500
31647/31647 [==============================] - 2s 69us/step - loss: 0.2293 - accuracy: 0.8973
Epoch 39/500
31647/31647 [==============================] - 2s 69us/step - loss: 0.2291 - accuracy: 0.8965
Epoch 40/500
31647/31647 [==============================] - 2s 74us/step - loss: 0.2290 - accuracy: 0.8963
Epoch 41/500
31647/31647 [==============================] - 2s 75us/step - loss: 0.2288 - accuracy: 0.8965
Epoch 42/500
31647/31647 [==============================] - 2s 72us/step - loss: 0.2284 - accuracy: 0.8965
Epoch 43/500
31647/31647 [==============================] - 2s 70us/step - loss: 0.2287 - accuracy: 0.8964
Epoch 44/500
31647/31647 [==============================] - 2s 70us/step - loss: 0.2283 - accuracy: 0.8975
Epoch 45/500
31647/31647 [==============================] - 2s 70us/step - loss: 0.2279 - accuracy: 0.8968
Epoch 46/500
31647/31647 [==============================] - 2s 69us/step - loss: 0.2279 - accuracy: 0.8976
Epoch 47/500
31647/31647 [==============================] - 2s 69us/step - loss: 0.2272 - accuracy: 0.8975
Epoch 48/500
31647/31647 [==============================] - 2s 70us/step - loss: 0.2272 - accuracy: 0.8968
Epoch 49/500
31647/31647 [==============================] - 2s 69us/step - loss: 0.2274 - accuracy: 0.8972
Epoch 50/500
31647/31647 [==============================] - 2s 69us/step - loss: 0.2269 - accuracy: 0.8977
Epoch 51/500
31647/31647 [==============================] - 2s 69us/step - loss: 0.2271 - accuracy: 0.8974
Epoch 52/500
31647/31647 [==============================] - 2s 69us/step - loss: 0.2268 - accuracy: 0.8979
Epoch 53/500
31647/31647 [==============================] - 2s 68us/step - loss: 0.2265 - accuracy: 0.8966
Epoch 54/500
31647/31647 [==============================] - 2s 68us/step - loss: 0.2267 - accuracy: 0.8977
Epoch 55/500
31647/31647 [==============================] - 2s 69us/step - loss: 0.2265 - accuracy: 0.8980
Epoch 56/500
31647/31647 [==============================] - 2s 68us/step - loss: 0.2264 - accuracy: 0.8979
Epoch 57/500
31647/31647 [==============================] - 2s 70us/step - loss: 0.2263 - accuracy: 0.8971
Epoch 58/500
31647/31647 [==============================] - 2s 69us/step - loss: 0.2257 - accuracy: 0.8986
Epoch 59/500
31647/31647 [==============================] - 2s 69us/step - loss: 0.2260 - accuracy: 0.8980
Epoch 60/500
31647/31647 [==============================] - 2s 70us/step - loss: 0.2260 - accuracy: 0.8978
Epoch 61/500
31647/31647 [==============================] - 2s 69us/step - loss: 0.2257 - accuracy: 0.8986
Epoch 62/500
31647/31647 [==============================] - 2s 69us/step - loss: 0.2256 - accuracy: 0.8989
Epoch 63/500
31647/31647 [==============================] - 2s 69us/step - loss: 0.2251 - accuracy: 0.8983
Epoch 64/500
31647/31647 [==============================] - 2s 69us/step - loss: 0.2251 - accuracy: 0.8982
Epoch 65/500
31647/31647 [==============================] - 2s 70us/step - loss: 0.2251 - accuracy: 0.8978
Epoch 66/500
31647/31647 [==============================] - 2s 69us/step - loss: 0.2250 - accuracy: 0.8988
Epoch 67/500
31647/31647 [==============================] - 2s 70us/step - loss: 0.2251 - accuracy: 0.8976
Epoch 68/500
31647/31647 [==============================] - 2s 70us/step - loss: 0.2249 - accuracy: 0.8980
Epoch 69/500
31647/31647 [==============================] - 2s 70us/step - loss: 0.2246 - accuracy: 0.8982
Epoch 70/500
31647/31647 [==============================] - 2s 69us/step - loss: 0.2245 - accuracy: 0.8987
Epoch 71/500
31647/31647 [==============================] - 2s 69us/step - loss: 0.2246 - accuracy: 0.8988
Epoch 72/500
31647/31647 [==============================] - 2s 70us/step - loss: 0.2243 - accuracy: 0.8985
Epoch 73/500
31647/31647 [==============================] - 2s 70us/step - loss: 0.2240 - accuracy: 0.8983
Epoch 74/500
31647/31647 [==============================] - 2s 69us/step - loss: 0.2243 - accuracy: 0.8988
Epoch 75/500
31647/31647 [==============================] - 2s 70us/step - loss: 0.2240 - accuracy: 0.8990
Epoch 76/500
31647/31647 [==============================] - 2s 69us/step - loss: 0.2242 - accuracy: 0.8991
Epoch 77/500
31647/31647 [==============================] - 2s 70us/step - loss: 0.2240 - accuracy: 0.8986
Epoch 78/500
31647/31647 [==============================] - 2s 70us/step - loss: 0.2235 - accuracy: 0.8990
Epoch 79/500
31647/31647 [==============================] - 2s 71us/step - loss: 0.2239 - accuracy: 0.8986
Epoch 80/500
31647/31647 [==============================] - 2s 70us/step - loss: 0.2238 - accuracy: 0.8989
Epoch 81/500
31647/31647 [==============================] - 2s 70us/step - loss: 0.2236 - accuracy: 0.8991
Epoch 82/500
31647/31647 [==============================] - 2s 70us/step - loss: 0.2235 - accuracy: 0.8988
Epoch 83/500
31647/31647 [==============================] - 2s 71us/step - loss: 0.2235 - accuracy: 0.8988
Epoch 84/500
31647/31647 [==============================] - 2s 71us/step - loss: 0.2236 - accuracy: 0.8993
Epoch 85/500
31647/31647 [==============================] - 2s 70us/step - loss: 0.2236 - accuracy: 0.8992
Epoch 86/500
31647/31647 [==============================] - 2s 70us/step - loss: 0.2235 - accuracy: 0.8985
Epoch 87/500
31647/31647 [==============================] - 2s 70us/step - loss: 0.2234 - accuracy: 0.8994
Epoch 88/500
31647/31647 [==============================] - 2s 71us/step - loss: 0.2230 - accuracy: 0.8989
Epoch 89/500
31647/31647 [==============================] - 2s 70us/step - loss: 0.2233 - accuracy: 0.8991
Epoch 90/500
31647/31647 [==============================] - 2s 69us/step - loss: 0.2231 - accuracy: 0.8991
Epoch 91/500
31647/31647 [==============================] - 2s 70us/step - loss: 0.2228 - accuracy: 0.8993
Epoch 92/500
31647/31647 [==============================] - 2s 70us/step - loss: 0.2229 - accuracy: 0.8984
Epoch 93/500
31647/31647 [==============================] - 2s 70us/step - loss: 0.2225 - accuracy: 0.8989
Epoch 94/500
31647/31647 [==============================] - 2s 70us/step - loss: 0.2228 - accuracy: 0.8994
Epoch 95/500
31647/31647 [==============================] - 2s 70us/step - loss: 0.2222 - accuracy: 0.8991
Epoch 96/500
31647/31647 [==============================] - 2s 70us/step - loss: 0.2226 - accuracy: 0.9000
Epoch 97/500
31647/31647 [==============================] - 2s 70us/step - loss: 0.2225 - accuracy: 0.8990
Epoch 98/500
31647/31647 [==============================] - 2s 71us/step - loss: 0.2224 - accuracy: 0.8995
Epoch 99/500
31647/31647 [==============================] - 2s 70us/step - loss: 0.2222 - accuracy: 0.8994
Epoch 100/500
31647/31647 [==============================] - 2s 69us/step - loss: 0.2223 - accuracy: 0.8998
Epoch 101/500
31647/31647 [==============================] - 2s 70us/step - loss: 0.2220 - accuracy: 0.8992
Epoch 102/500
31647/31647 [==============================] - 2s 71us/step - loss: 0.2220 - accuracy: 0.8999
Epoch 103/500
31647/31647 [==============================] - 2s 73us/step - loss: 0.2218 - accuracy: 0.8997
Epoch 104/500
31647/31647 [==============================] - 2s 73us/step - loss: 0.2220 - accuracy: 0.9000
Epoch 105/500
31647/31647 [==============================] - 2s 74us/step - loss: 0.2218 - accuracy: 0.8997
Epoch 106/500
31647/31647 [==============================] - 2s 73us/step - loss: 0.2218 - accuracy: 0.9001
Epoch 107/500
31647/31647 [==============================] - 2s 70us/step - loss: 0.2214 - accuracy: 0.8995
Epoch 108/500
31647/31647 [==============================] - 2s 70us/step - loss: 0.2216 - accuracy: 0.8997
Epoch 109/500
31647/31647 [==============================] - 2s 69us/step - loss: 0.2217 - accuracy: 0.9000
Epoch 110/500
31647/31647 [==============================] - 2s 70us/step - loss: 0.2212 - accuracy: 0.9006
Epoch 111/500
31647/31647 [==============================] - 2s 70us/step - loss: 0.2214 - accuracy: 0.8998
Epoch 112/500
31647/31647 [==============================] - 2s 71us/step - loss: 0.2211 - accuracy: 0.9002
Epoch 113/500
31647/31647 [==============================] - 2s 70us/step - loss: 0.2215 - accuracy: 0.9002
Epoch 114/500
31647/31647 [==============================] - 2s 69us/step - loss: 0.2211 - accuracy: 0.9001
Epoch 115/500
31647/31647 [==============================] - 2s 70us/step - loss: 0.2212 - accuracy: 0.9001
Epoch 116/500
31647/31647 [==============================] - 2s 70us/step - loss: 0.2211 - accuracy: 0.9002
Epoch 117/500
31647/31647 [==============================] - 2s 70us/step - loss: 0.2209 - accuracy: 0.9001
Epoch 118/500
31647/31647 [==============================] - 2s 69us/step - loss: 0.2209 - accuracy: 0.9002
Epoch 119/500
31647/31647 [==============================] - 2s 71us/step - loss: 0.2204 - accuracy: 0.9004
Epoch 120/500
31647/31647 [==============================] - 2s 70us/step - loss: 0.2208 - accuracy: 0.9003
Epoch 121/500
31647/31647 [==============================] - 2s 71us/step - loss: 0.2206 - accuracy: 0.9010
Epoch 122/500
31647/31647 [==============================] - 2s 70us/step - loss: 0.2202 - accuracy: 0.8996
Epoch 123/500
31647/31647 [==============================] - 2s 70us/step - loss: 0.2206 - accuracy: 0.9001
Epoch 124/500
31647/31647 [==============================] - 2s 69us/step - loss: 0.2209 - accuracy: 0.8998
Epoch 125/500
31647/31647 [==============================] - 2s 71us/step - loss: 0.2208 - accuracy: 0.9005
Epoch 126/500
31647/31647 [==============================] - 2s 71us/step - loss: 0.2202 - accuracy: 0.9013
Epoch 127/500
31647/31647 [==============================] - 2s 69us/step - loss: 0.2206 - accuracy: 0.9005
Epoch 128/500
31647/31647 [==============================] - 2s 69us/step - loss: 0.2202 - accuracy: 0.9006
Epoch 129/500
31647/31647 [==============================] - 2s 70us/step - loss: 0.2202 - accuracy: 0.9013
Epoch 130/500
31647/31647 [==============================] - 2s 70us/step - loss: 0.2200 - accuracy: 0.9005
Epoch 131/500
31647/31647 [==============================] - 2s 71us/step - loss: 0.2202 - accuracy: 0.9009
Epoch 132/500
31647/31647 [==============================] - 2s 70us/step - loss: 0.2199 - accuracy: 0.9009
Epoch 133/500
31647/31647 [==============================] - 2s 70us/step - loss: 0.2200 - accuracy: 0.9003
Epoch 134/500
31647/31647 [==============================] - 2s 70us/step - loss: 0.2195 - accuracy: 0.9004
Epoch 135/500
31647/31647 [==============================] - 2s 70us/step - loss: 0.2201 - accuracy: 0.9010
Epoch 136/500
31647/31647 [==============================] - 2s 71us/step - loss: 0.2201 - accuracy: 0.9010
Epoch 137/500
31647/31647 [==============================] - 2s 69us/step - loss: 0.2198 - accuracy: 0.9006
Epoch 138/500
31647/31647 [==============================] - 2s 70us/step - loss: 0.2193 - accuracy: 0.9004
Epoch 139/500
31647/31647 [==============================] - 2s 70us/step - loss: 0.2197 - accuracy: 0.9012
Epoch 140/500
31647/31647 [==============================] - 2s 71us/step - loss: 0.2196 - accuracy: 0.9007
Epoch 141/500
31647/31647 [==============================] - 2s 70us/step - loss: 0.2195 - accuracy: 0.9010
Epoch 142/500
31647/31647 [==============================] - 2s 71us/step - loss: 0.2192 - accuracy: 0.9005
Epoch 143/500
31647/31647 [==============================] - 2s 70us/step - loss: 0.2196 - accuracy: 0.9013
Epoch 144/500
31647/31647 [==============================] - 2s 70us/step - loss: 0.2194 - accuracy: 0.9011
Epoch 145/500
31647/31647 [==============================] - 2s 71us/step - loss: 0.2191 - accuracy: 0.9006
Epoch 146/500
31647/31647 [==============================] - 2s 70us/step - loss: 0.2190 - accuracy: 0.9021
Epoch 147/500
31647/31647 [==============================] - 2s 70us/step - loss: 0.2196 - accuracy: 0.9001
Epoch 148/500
31647/31647 [==============================] - 2s 70us/step - loss: 0.2192 - accuracy: 0.9007
Epoch 149/500
31647/31647 [==============================] - 2s 70us/step - loss: 0.2190 - accuracy: 0.9019
Epoch 150/500
31647/31647 [==============================] - 2s 71us/step - loss: 0.2191 - accuracy: 0.9008
Epoch 151/500
31647/31647 [==============================] - 2s 70us/step - loss: 0.2190 - accuracy: 0.9012
Epoch 152/500
31647/31647 [==============================] - 2s 71us/step - loss: 0.2185 - accuracy: 0.9014
Epoch 153/500
31647/31647 [==============================] - 2s 70us/step - loss: 0.2190 - accuracy: 0.9013
Epoch 154/500
31647/31647 [==============================] - 2s 72us/step - loss: 0.2188 - accuracy: 0.9017
Epoch 155/500
31647/31647 [==============================] - 2s 71us/step - loss: 0.2189 - accuracy: 0.9013
Epoch 156/500
31647/31647 [==============================] - 2s 70us/step - loss: 0.2187 - accuracy: 0.9013
Epoch 157/500
31647/31647 [==============================] - 2s 70us/step - loss: 0.2190 - accuracy: 0.9008
Epoch 158/500
31647/31647 [==============================] - 2s 70us/step - loss: 0.2192 - accuracy: 0.9018
Epoch 159/500
31647/31647 [==============================] - 2s 71us/step - loss: 0.2186 - accuracy: 0.9016
Epoch 160/500
31647/31647 [==============================] - 2s 70us/step - loss: 0.2183 - accuracy: 0.9020
Epoch 161/500
31647/31647 [==============================] - 2s 71us/step - loss: 0.2184 - accuracy: 0.9009
Epoch 162/500
31647/31647 [==============================] - 2s 70us/step - loss: 0.2186 - accuracy: 0.9013
Epoch 163/500
31647/31647 [==============================] - 2s 70us/step - loss: 0.2184 - accuracy: 0.9020
Epoch 164/500
31647/31647 [==============================] - 2s 71us/step - loss: 0.2180 - accuracy: 0.9010
Epoch 165/500
31647/31647 [==============================] - 2s 71us/step - loss: 0.2182 - accuracy: 0.9015
Epoch 166/500
31647/31647 [==============================] - 2s 70us/step - loss: 0.2184 - accuracy: 0.9017
Epoch 167/500
31647/31647 [==============================] - 2s 70us/step - loss: 0.2178 - accuracy: 0.9017
Epoch 168/500
31647/31647 [==============================] - 2s 70us/step - loss: 0.2183 - accuracy: 0.9015
Epoch 169/500
31647/31647 [==============================] - 2s 71us/step - loss: 0.2179 - accuracy: 0.9018
Epoch 170/500
31647/31647 [==============================] - 2s 71us/step - loss: 0.2183 - accuracy: 0.9021
Epoch 171/500
31647/31647 [==============================] - 2s 70us/step - loss: 0.2181 - accuracy: 0.9023
Epoch 172/500
31647/31647 [==============================] - 2s 70us/step - loss: 0.2178 - accuracy: 0.9022
Epoch 173/500
31647/31647 [==============================] - 2s 71us/step - loss: 0.2180 - accuracy: 0.9021
Epoch 174/500
31647/31647 [==============================] - 2s 71us/step - loss: 0.2177 - accuracy: 0.9017
Epoch 175/500
31647/31647 [==============================] - 2s 70us/step - loss: 0.2173 - accuracy: 0.9019
Epoch 176/500
31647/31647 [==============================] - 2s 70us/step - loss: 0.2177 - accuracy: 0.9019
Epoch 177/500
31647/31647 [==============================] - 2s 71us/step - loss: 0.2177 - accuracy: 0.9022
Epoch 178/500
31647/31647 [==============================] - 2s 74us/step - loss: 0.2175 - accuracy: 0.9022
Epoch 179/500
31647/31647 [==============================] - 2s 74us/step - loss: 0.2174 - accuracy: 0.9014
Epoch 180/500
31647/31647 [==============================] - 2s 73us/step - loss: 0.2177 - accuracy: 0.9021
Epoch 181/500
31647/31647 [==============================] - 2s 71us/step - loss: 0.2173 - accuracy: 0.9025
Epoch 182/500
31647/31647 [==============================] - 2s 70us/step - loss: 0.2175 - accuracy: 0.9023
Epoch 183/500
31647/31647 [==============================] - 2s 70us/step - loss: 0.2175 - accuracy: 0.9026
Epoch 184/500
31647/31647 [==============================] - 2s 70us/step - loss: 0.2173 - accuracy: 0.9025
Epoch 185/500
31647/31647 [==============================] - 2s 70us/step - loss: 0.2172 - accuracy: 0.9024
Epoch 186/500
31647/31647 [==============================] - 2s 70us/step - loss: 0.2174 - accuracy: 0.9032
Epoch 187/500
31647/31647 [==============================] - 2s 72us/step - loss: 0.2174 - accuracy: 0.9026
Epoch 188/500
31647/31647 [==============================] - 2s 70us/step - loss: 0.2169 - accuracy: 0.9022
Epoch 189/500
31647/31647 [==============================] - 2s 70us/step - loss: 0.2173 - accuracy: 0.9022
Epoch 190/500
31647/31647 [==============================] - 2s 71us/step - loss: 0.2169 - accuracy: 0.9032
Epoch 191/500
31647/31647 [==============================] - 2s 70us/step - loss: 0.2169 - accuracy: 0.9027
Epoch 192/500
31647/31647 [==============================] - 2s 71us/step - loss: 0.2168 - accuracy: 0.9027
Epoch 193/500
31647/31647 [==============================] - 2s 71us/step - loss: 0.2170 - accuracy: 0.9026
Epoch 194/500
31647/31647 [==============================] - 2s 71us/step - loss: 0.2169 - accuracy: 0.9027
Epoch 195/500
31647/31647 [==============================] - 2s 71us/step - loss: 0.2168 - accuracy: 0.9028
Epoch 196/500
31647/31647 [==============================] - 2s 71us/step - loss: 0.2167 - accuracy: 0.9030
Epoch 197/500
31647/31647 [==============================] - 2s 71us/step - loss: 0.2169 - accuracy: 0.9024
Epoch 198/500
31647/31647 [==============================] - 2s 71us/step - loss: 0.2169 - accuracy: 0.9025
Epoch 199/500
31647/31647 [==============================] - 2s 70us/step - loss: 0.2167 - accuracy: 0.9029
Epoch 200/500
31647/31647 [==============================] - 2s 70us/step - loss: 0.2164 - accuracy: 0.9030
Epoch 201/500
31647/31647 [==============================] - 2s 70us/step - loss: 0.2166 - accuracy: 0.9034
Epoch 202/500
31647/31647 [==============================] - 2s 70us/step - loss: 0.2162 - accuracy: 0.9028
Epoch 203/500
31647/31647 [==============================] - 2s 70us/step - loss: 0.2163 - accuracy: 0.9032
Epoch 204/500
31647/31647 [==============================] - 2s 70us/step - loss: 0.2165 - accuracy: 0.9026
Epoch 205/500
31647/31647 [==============================] - 2s 70us/step - loss: 0.2166 - accuracy: 0.9030
Epoch 206/500
31647/31647 [==============================] - 2s 71us/step - loss: 0.2165 - accuracy: 0.9030
Epoch 207/500
31647/31647 [==============================] - 2s 70us/step - loss: 0.2162 - accuracy: 0.9033
Epoch 208/500
31647/31647 [==============================] - 2s 70us/step - loss: 0.2162 - accuracy: 0.9027
Epoch 209/500
31647/31647 [==============================] - 2s 70us/step - loss: 0.2164 - accuracy: 0.9033
Epoch 210/500
31647/31647 [==============================] - 2s 70us/step - loss: 0.2161 - accuracy: 0.9034
Epoch 211/500
31647/31647 [==============================] - 2s 71us/step - loss: 0.2160 - accuracy: 0.9036
Epoch 212/500
31647/31647 [==============================] - 2s 70us/step - loss: 0.2163 - accuracy: 0.9032
Epoch 213/500
31647/31647 [==============================] - 2s 70us/step - loss: 0.2161 - accuracy: 0.9034
Epoch 214/500
31647/31647 [==============================] - 2s 70us/step - loss: 0.2159 - accuracy: 0.9034
Epoch 215/500
31647/31647 [==============================] - 2s 70us/step - loss: 0.2162 - accuracy: 0.9036
Epoch 216/500
31647/31647 [==============================] - 2s 71us/step - loss: 0.2159 - accuracy: 0.9032
Epoch 217/500
31647/31647 [==============================] - 2s 70us/step - loss: 0.2158 - accuracy: 0.9036
Epoch 218/500
31647/31647 [==============================] - 2s 69us/step - loss: 0.2161 - accuracy: 0.9036
Epoch 219/500
31647/31647 [==============================] - 2s 70us/step - loss: 0.2159 - accuracy: 0.9036
Epoch 220/500
31647/31647 [==============================] - 2s 70us/step - loss: 0.2157 - accuracy: 0.9033
Epoch 221/500
31647/31647 [==============================] - 2s 70us/step - loss: 0.2155 - accuracy: 0.9037
Epoch 222/500
31647/31647 [==============================] - 2s 70us/step - loss: 0.2157 - accuracy: 0.9038
Epoch 223/500
31647/31647 [==============================] - 2s 70us/step - loss: 0.2158 - accuracy: 0.9038
Epoch 224/500
31647/31647 [==============================] - 2s 70us/step - loss: 0.2154 - accuracy: 0.9032
Epoch 225/500
31647/31647 [==============================] - 2s 70us/step - loss: 0.2157 - accuracy: 0.9037
Epoch 226/500
31647/31647 [==============================] - 2s 70us/step - loss: 0.2155 - accuracy: 0.9038
Epoch 227/500
31647/31647 [==============================] - 2s 70us/step - loss: 0.2156 - accuracy: 0.9033
Epoch 228/500
31647/31647 [==============================] - 2s 70us/step - loss: 0.2154 - accuracy: 0.9042
Epoch 229/500
31647/31647 [==============================] - 2s 70us/step - loss: 0.2154 - accuracy: 0.9028
Epoch 230/500
31647/31647 [==============================] - 2s 70us/step - loss: 0.2151 - accuracy: 0.9038
Epoch 231/500
31647/31647 [==============================] - 2s 69us/step - loss: 0.2153 - accuracy: 0.9035
Epoch 232/500
31647/31647 [==============================] - 2s 70us/step - loss: 0.2155 - accuracy: 0.9036
Epoch 233/500
31647/31647 [==============================] - 2s 70us/step - loss: 0.2150 - accuracy: 0.9037
Epoch 234/500
31647/31647 [==============================] - 2s 70us/step - loss: 0.2150 - accuracy: 0.9038
Epoch 235/500
31647/31647 [==============================] - 2s 70us/step - loss: 0.2153 - accuracy: 0.9041
Epoch 236/500
31647/31647 [==============================] - 2s 70us/step - loss: 0.2151 - accuracy: 0.9042
Epoch 237/500
31647/31647 [==============================] - 2s 70us/step - loss: 0.2149 - accuracy: 0.9045
Epoch 238/500
31647/31647 [==============================] - 2s 70us/step - loss: 0.2152 - accuracy: 0.9042
Epoch 239/500
31647/31647 [==============================] - 2s 70us/step - loss: 0.2150 - accuracy: 0.9038
Epoch 240/500
31647/31647 [==============================] - 2s 70us/step - loss: 0.2147 - accuracy: 0.9046
Epoch 241/500
31647/31647 [==============================] - 2s 70us/step - loss: 0.2151 - accuracy: 0.9040
Epoch 242/500
31647/31647 [==============================] - 2s 73us/step - loss: 0.2150 - accuracy: 0.9033
Epoch 243/500
31647/31647 [==============================] - 2s 73us/step - loss: 0.2146 - accuracy: 0.9043
Epoch 244/500
31647/31647 [==============================] - 2s 73us/step - loss: 0.2148 - accuracy: 0.9038
Epoch 245/500
31647/31647 [==============================] - 2s 72us/step - loss: 0.2148 - accuracy: 0.9043
Epoch 246/500
31647/31647 [==============================] - 2s 72us/step - loss: 0.2150 - accuracy: 0.9041
Epoch 247/500
31647/31647 [==============================] - 2s 71us/step - loss: 0.2147 - accuracy: 0.9032
Epoch 248/500
31647/31647 [==============================] - 2s 70us/step - loss: 0.2147 - accuracy: 0.9043
Epoch 249/500
31647/31647 [==============================] - 2s 71us/step - loss: 0.2145 - accuracy: 0.9044
Epoch 250/500
31647/31647 [==============================] - 2s 69us/step - loss: 0.2147 - accuracy: 0.9041
Epoch 251/500
31647/31647 [==============================] - 2s 71us/step - loss: 0.2145 - accuracy: 0.9047
Epoch 252/500
31647/31647 [==============================] - 2s 71us/step - loss: 0.2146 - accuracy: 0.9034
Epoch 253/500
31647/31647 [==============================] - 2s 70us/step - loss: 0.2143 - accuracy: 0.9047
Epoch 254/500
31647/31647 [==============================] - 2s 70us/step - loss: 0.2146 - accuracy: 0.9044
Epoch 255/500
31647/31647 [==============================] - 2s 71us/step - loss: 0.2143 - accuracy: 0.9041
Epoch 256/500
31647/31647 [==============================] - 2s 70us/step - loss: 0.2145 - accuracy: 0.9042
Epoch 257/500
31647/31647 [==============================] - 2s 70us/step - loss: 0.2144 - accuracy: 0.9039
Epoch 258/500
31647/31647 [==============================] - 2s 70us/step - loss: 0.2142 - accuracy: 0.9037
Epoch 259/500
31647/31647 [==============================] - 2s 69us/step - loss: 0.2142 - accuracy: 0.9043
Epoch 260/500
31647/31647 [==============================] - 2s 70us/step - loss: 0.2142 - accuracy: 0.9048
Epoch 261/500
31647/31647 [==============================] - 2s 70us/step - loss: 0.2141 - accuracy: 0.9044
Epoch 262/500
31647/31647 [==============================] - 2s 70us/step - loss: 0.2143 - accuracy: 0.9044
Epoch 263/500
31647/31647 [==============================] - 2s 70us/step - loss: 0.2143 - accuracy: 0.9040
Epoch 264/500
31647/31647 [==============================] - 2s 70us/step - loss: 0.2141 - accuracy: 0.9046
Epoch 265/500
31647/31647 [==============================] - 2s 70us/step - loss: 0.2142 - accuracy: 0.9045
Epoch 266/500
31647/31647 [==============================] - 2s 69us/step - loss: 0.2142 - accuracy: 0.9044
Epoch 267/500
31647/31647 [==============================] - 2s 70us/step - loss: 0.2137 - accuracy: 0.9043
Epoch 268/500
31647/31647 [==============================] - 2s 70us/step - loss: 0.2139 - accuracy: 0.9047
Epoch 269/500
31647/31647 [==============================] - 2s 69us/step - loss: 0.2136 - accuracy: 0.9039
Epoch 270/500
31647/31647 [==============================] - 2s 70us/step - loss: 0.2138 - accuracy: 0.9048
Epoch 271/500
31647/31647 [==============================] - 2s 69us/step - loss: 0.2140 - accuracy: 0.9048
Epoch 272/500
31647/31647 [==============================] - 2s 70us/step - loss: 0.2137 - accuracy: 0.9047
Epoch 273/500
31647/31647 [==============================] - 2s 70us/step - loss: 0.2138 - accuracy: 0.9044
Epoch 274/500
31647/31647 [==============================] - 2s 69us/step - loss: 0.2137 - accuracy: 0.9047
Epoch 275/500
31647/31647 [==============================] - 2s 70us/step - loss: 0.2137 - accuracy: 0.9047
Epoch 276/500
31647/31647 [==============================] - 2s 70us/step - loss: 0.2140 - accuracy: 0.9050
Epoch 277/500
31647/31647 [==============================] - 2s 70us/step - loss: 0.2138 - accuracy: 0.9045
Epoch 278/500
31647/31647 [==============================] - 2s 69us/step - loss: 0.2136 - accuracy: 0.9048
Epoch 279/500
31647/31647 [==============================] - 2s 69us/step - loss: 0.2134 - accuracy: 0.9055
Epoch 280/500
31647/31647 [==============================] - 2s 70us/step - loss: 0.2135 - accuracy: 0.9043
Epoch 281/500
31647/31647 [==============================] - 2s 70us/step - loss: 0.2136 - accuracy: 0.9039
Epoch 282/500
31647/31647 [==============================] - 2s 70us/step - loss: 0.2135 - accuracy: 0.9043
Epoch 283/500
31647/31647 [==============================] - 2s 69us/step - loss: 0.2137 - accuracy: 0.9048
Epoch 284/500
31647/31647 [==============================] - 2s 70us/step - loss: 0.2131 - accuracy: 0.9038
Epoch 285/500
31647/31647 [==============================] - 2s 70us/step - loss: 0.2134 - accuracy: 0.9043
Epoch 286/500
31647/31647 [==============================] - 2s 70us/step - loss: 0.2134 - accuracy: 0.9041
Epoch 287/500
31647/31647 [==============================] - 2s 70us/step - loss: 0.2132 - accuracy: 0.9050
Epoch 288/500
31647/31647 [==============================] - 2s 70us/step - loss: 0.2132 - accuracy: 0.9046
Epoch 289/500
31647/31647 [==============================] - 2s 70us/step - loss: 0.2134 - accuracy: 0.9049
Epoch 290/500
31647/31647 [==============================] - 2s 70us/step - loss: 0.2132 - accuracy: 0.9049
Epoch 291/500
31647/31647 [==============================] - 2s 70us/step - loss: 0.2131 - accuracy: 0.9050
Epoch 292/500
31647/31647 [==============================] - 2s 70us/step - loss: 0.2133 - accuracy: 0.9050
Epoch 293/500
31647/31647 [==============================] - 2s 69us/step - loss: 0.2128 - accuracy: 0.9049
Epoch 294/500
31647/31647 [==============================] - 2s 69us/step - loss: 0.2130 - accuracy: 0.9049
Epoch 295/500
31647/31647 [==============================] - 2s 69us/step - loss: 0.2127 - accuracy: 0.9047
Epoch 296/500
31647/31647 [==============================] - 2s 70us/step - loss: 0.2131 - accuracy: 0.9047
Epoch 297/500
31647/31647 [==============================] - 2s 70us/step - loss: 0.2132 - accuracy: 0.9047
Epoch 298/500
31647/31647 [==============================] - 2s 70us/step - loss: 0.2129 - accuracy: 0.9048
Epoch 299/500
31647/31647 [==============================] - 2s 70us/step - loss: 0.2130 - accuracy: 0.9059
Epoch 300/500
31647/31647 [==============================] - 2s 70us/step - loss: 0.2129 - accuracy: 0.9050
Epoch 301/500
31647/31647 [==============================] - 2s 70us/step - loss: 0.2131 - accuracy: 0.9045
Epoch 302/500
31647/31647 [==============================] - 2s 70us/step - loss: 0.2128 - accuracy: 0.9053
Epoch 303/500
31647/31647 [==============================] - 2s 69us/step - loss: 0.2129 - accuracy: 0.9051
Epoch 304/500
31647/31647 [==============================] - 2s 69us/step - loss: 0.2128 - accuracy: 0.9045
Epoch 305/500
31647/31647 [==============================] - 2s 69us/step - loss: 0.2126 - accuracy: 0.9055
Epoch 306/500
31647/31647 [==============================] - 2s 70us/step - loss: 0.2127 - accuracy: 0.9048
Epoch 307/500
31647/31647 [==============================] - 2s 69us/step - loss: 0.2125 - accuracy: 0.9045
Epoch 308/500
31647/31647 [==============================] - 2s 70us/step - loss: 0.2127 - accuracy: 0.9047
Epoch 309/500
31647/31647 [==============================] - 2s 70us/step - loss: 0.2125 - accuracy: 0.9053
Epoch 310/500
31647/31647 [==============================] - 2s 70us/step - loss: 0.2127 - accuracy: 0.9048
Epoch 311/500
31647/31647 [==============================] - 2s 69us/step - loss: 0.2126 - accuracy: 0.9051
Epoch 312/500
31647/31647 [==============================] - 2s 69us/step - loss: 0.2122 - accuracy: 0.9053
Epoch 313/500
31647/31647 [==============================] - 2s 70us/step - loss: 0.2125 - accuracy: 0.9051
Epoch 314/500
31647/31647 [==============================] - 2s 69us/step - loss: 0.2123 - accuracy: 0.9050
Epoch 315/500
31647/31647 [==============================] - 2s 70us/step - loss: 0.2124 - accuracy: 0.9051
Epoch 316/500
31647/31647 [==============================] - 2s 72us/step - loss: 0.2124 - accuracy: 0.9051
Epoch 317/500
31647/31647 [==============================] - 2s 73us/step - loss: 0.2122 - accuracy: 0.9053
Epoch 318/500
31647/31647 [==============================] - 2s 73us/step - loss: 0.2124 - accuracy: 0.9056
Epoch 319/500
31647/31647 [==============================] - 2s 70us/step - loss: 0.2123 - accuracy: 0.9058
Epoch 320/500
31647/31647 [==============================] - 2s 70us/step - loss: 0.2125 - accuracy: 0.9057
Epoch 321/500
31647/31647 [==============================] - 2s 70us/step - loss: 0.2122 - accuracy: 0.9049
Epoch 322/500
31647/31647 [==============================] - 2s 71us/step - loss: 0.2121 - accuracy: 0.9052
Epoch 323/500
31647/31647 [==============================] - 2s 71us/step - loss: 0.2123 - accuracy: 0.9055
Epoch 324/500
31647/31647 [==============================] - 2s 70us/step - loss: 0.2122 - accuracy: 0.9049
Epoch 325/500
31647/31647 [==============================] - 2s 71us/step - loss: 0.2121 - accuracy: 0.9052
Epoch 326/500
31647/31647 [==============================] - 2s 70us/step - loss: 0.2122 - accuracy: 0.9056
Epoch 327/500
31647/31647 [==============================] - 2s 70us/step - loss: 0.2120 - accuracy: 0.9054
Epoch 328/500
31647/31647 [==============================] - 2s 70us/step - loss: 0.2120 - accuracy: 0.9056
Epoch 329/500
31647/31647 [==============================] - 2s 71us/step - loss: 0.2121 - accuracy: 0.9051
Epoch 330/500
31647/31647 [==============================] - 2s 70us/step - loss: 0.2119 - accuracy: 0.9058
Epoch 331/500
31647/31647 [==============================] - 2s 70us/step - loss: 0.2121 - accuracy: 0.9056
Epoch 332/500
31647/31647 [==============================] - 2s 70us/step - loss: 0.2118 - accuracy: 0.9054
Epoch 333/500
31647/31647 [==============================] - 2s 71us/step - loss: 0.2119 - accuracy: 0.9053
Epoch 334/500
31647/31647 [==============================] - 2s 71us/step - loss: 0.2119 - accuracy: 0.9053
Epoch 335/500
31647/31647 [==============================] - 2s 70us/step - loss: 0.2117 - accuracy: 0.9062
Epoch 336/500
31647/31647 [==============================] - 2s 70us/step - loss: 0.2117 - accuracy: 0.9050
Epoch 337/500
31647/31647 [==============================] - 2s 71us/step - loss: 0.2120 - accuracy: 0.9060
Epoch 338/500
31647/31647 [==============================] - 2s 70us/step - loss: 0.2117 - accuracy: 0.9052
Epoch 339/500
31647/31647 [==============================] - 2s 70us/step - loss: 0.2118 - accuracy: 0.9056
Epoch 340/500
31647/31647 [==============================] - 2s 69us/step - loss: 0.2117 - accuracy: 0.9055
Epoch 341/500
31647/31647 [==============================] - 2s 70us/step - loss: 0.2120 - accuracy: 0.9059
Epoch 342/500
31647/31647 [==============================] - 2s 70us/step - loss: 0.2118 - accuracy: 0.9057
Epoch 343/500
31647/31647 [==============================] - 2s 70us/step - loss: 0.2116 - accuracy: 0.9049
Epoch 344/500
31647/31647 [==============================] - 2s 70us/step - loss: 0.2113 - accuracy: 0.9056
Epoch 345/500
31647/31647 [==============================] - 2s 69us/step - loss: 0.2117 - accuracy: 0.9053
Epoch 346/500
31647/31647 [==============================] - 2s 69us/step - loss: 0.2114 - accuracy: 0.9054
Epoch 347/500
31647/31647 [==============================] - 2s 70us/step - loss: 0.2113 - accuracy: 0.9056
Epoch 348/500
31647/31647 [==============================] - 2s 70us/step - loss: 0.2114 - accuracy: 0.9060
Epoch 349/500
31647/31647 [==============================] - 2s 69us/step - loss: 0.2114 - accuracy: 0.9062
Epoch 350/500
31647/31647 [==============================] - 2s 69us/step - loss: 0.2114 - accuracy: 0.9060
Epoch 351/500
31647/31647 [==============================] - 2s 70us/step - loss: 0.2113 - accuracy: 0.9053
Epoch 352/500
31647/31647 [==============================] - 2s 70us/step - loss: 0.2114 - accuracy: 0.9059
Epoch 353/500
31647/31647 [==============================] - 2s 70us/step - loss: 0.2112 - accuracy: 0.9064
Epoch 354/500
31647/31647 [==============================] - 2s 69us/step - loss: 0.2113 - accuracy: 0.9058
Epoch 355/500
31647/31647 [==============================] - 2s 70us/step - loss: 0.2111 - accuracy: 0.9052
Epoch 356/500
31647/31647 [==============================] - 2s 71us/step - loss: 0.2112 - accuracy: 0.9062
Epoch 357/500
31647/31647 [==============================] - 2s 69us/step - loss: 0.2112 - accuracy: 0.9058
Epoch 358/500
31647/31647 [==============================] - 2s 71us/step - loss: 0.2111 - accuracy: 0.9056
Epoch 359/500
31647/31647 [==============================] - 2s 70us/step - loss: 0.2112 - accuracy: 0.9059
Epoch 360/500
31647/31647 [==============================] - 2s 69us/step - loss: 0.2107 - accuracy: 0.9064
Epoch 361/500
31647/31647 [==============================] - 2s 68us/step - loss: 0.2112 - accuracy: 0.9053
Epoch 362/500
31647/31647 [==============================] - 2s 70us/step - loss: 0.2109 - accuracy: 0.9058
Epoch 363/500
31647/31647 [==============================] - 2s 70us/step - loss: 0.2111 - accuracy: 0.9061
Epoch 364/500
31647/31647 [==============================] - 2s 70us/step - loss: 0.2110 - accuracy: 0.9062
Epoch 365/500
31647/31647 [==============================] - 2s 70us/step - loss: 0.2110 - accuracy: 0.9061
Epoch 366/500
31647/31647 [==============================] - 2s 70us/step - loss: 0.2106 - accuracy: 0.9059
Epoch 367/500
31647/31647 [==============================] - 2s 71us/step - loss: 0.2109 - accuracy: 0.9062
Epoch 368/500
31647/31647 [==============================] - 2s 70us/step - loss: 0.2108 - accuracy: 0.9052
Epoch 369/500
31647/31647 [==============================] - 2s 70us/step - loss: 0.2107 - accuracy: 0.9059
Epoch 370/500
31647/31647 [==============================] - 2s 70us/step - loss: 0.2108 - accuracy: 0.9057
Epoch 371/500
31647/31647 [==============================] - 2s 69us/step - loss: 0.2107 - accuracy: 0.9059
Epoch 372/500
31647/31647 [==============================] - 2s 70us/step - loss: 0.2110 - accuracy: 0.9060
Epoch 373/500
31647/31647 [==============================] - 2s 69us/step - loss: 0.2108 - accuracy: 0.9059
Epoch 374/500
31647/31647 [==============================] - 2s 70us/step - loss: 0.2108 - accuracy: 0.9052
Epoch 375/500
31647/31647 [==============================] - 2s 69us/step - loss: 0.2107 - accuracy: 0.9057
Epoch 376/500
31647/31647 [==============================] - 2s 69us/step - loss: 0.2107 - accuracy: 0.9058
Epoch 377/500
31647/31647 [==============================] - 2s 69us/step - loss: 0.2109 - accuracy: 0.9055
Epoch 378/500
31647/31647 [==============================] - 2s 68us/step - loss: 0.2107 - accuracy: 0.9060
Epoch 379/500
31647/31647 [==============================] - 2s 69us/step - loss: 0.2107 - accuracy: 0.9062
Epoch 380/500
31647/31647 [==============================] - 2s 69us/step - loss: 0.2107 - accuracy: 0.9061
Epoch 381/500
31647/31647 [==============================] - 2s 70us/step - loss: 0.2108 - accuracy: 0.9061
Epoch 382/500
31647/31647 [==============================] - 2s 71us/step - loss: 0.2103 - accuracy: 0.9061
Epoch 383/500
31647/31647 [==============================] - 2s 73us/step - loss: 0.2106 - accuracy: 0.9058
Epoch 384/500
31647/31647 [==============================] - 2s 73us/step - loss: 0.2104 - accuracy: 0.9062
Epoch 385/500
31647/31647 [==============================] - 2s 73us/step - loss: 0.2104 - accuracy: 0.9063
Epoch 386/500
31647/31647 [==============================] - 2s 73us/step - loss: 0.2106 - accuracy: 0.9055
Epoch 387/500
31647/31647 [==============================] - 2s 71us/step - loss: 0.2102 - accuracy: 0.9066
Epoch 388/500
31647/31647 [==============================] - 2s 70us/step - loss: 0.2105 - accuracy: 0.9059
Epoch 389/500
31647/31647 [==============================] - 2s 70us/step - loss: 0.2104 - accuracy: 0.9061
Epoch 390/500
31647/31647 [==============================] - 2s 70us/step - loss: 0.2103 - accuracy: 0.9067
Epoch 391/500
31647/31647 [==============================] - 2s 70us/step - loss: 0.2106 - accuracy: 0.9063
Epoch 392/500
31647/31647 [==============================] - 2s 70us/step - loss: 0.2102 - accuracy: 0.9057
Epoch 393/500
31647/31647 [==============================] - 2s 69us/step - loss: 0.2105 - accuracy: 0.9064
Epoch 394/500
31647/31647 [==============================] - 2s 69us/step - loss: 0.2102 - accuracy: 0.9066
Epoch 395/500
31647/31647 [==============================] - 2s 69us/step - loss: 0.2103 - accuracy: 0.9059
Epoch 396/500
31647/31647 [==============================] - 2s 70us/step - loss: 0.2102 - accuracy: 0.9067
Epoch 397/500
31647/31647 [==============================] - 2s 70us/step - loss: 0.2099 - accuracy: 0.9066
Epoch 398/500
31647/31647 [==============================] - 2s 70us/step - loss: 0.2101 - accuracy: 0.9060
Epoch 399/500
31647/31647 [==============================] - 2s 70us/step - loss: 0.2102 - accuracy: 0.9061
Epoch 400/500
31647/31647 [==============================] - 2s 70us/step - loss: 0.2101 - accuracy: 0.9059
Epoch 401/500
31647/31647 [==============================] - 2s 71us/step - loss: 0.2100 - accuracy: 0.9059
Epoch 402/500
31647/31647 [==============================] - 2s 69us/step - loss: 0.2101 - accuracy: 0.9063
Epoch 403/500
31647/31647 [==============================] - 2s 69us/step - loss: 0.2099 - accuracy: 0.9065
Epoch 404/500
31647/31647 [==============================] - 2s 70us/step - loss: 0.2098 - accuracy: 0.9062
Epoch 405/500
31647/31647 [==============================] - 2s 70us/step - loss: 0.2100 - accuracy: 0.9071
Epoch 406/500
31647/31647 [==============================] - 2s 70us/step - loss: 0.2098 - accuracy: 0.9063
Epoch 407/500
31647/31647 [==============================] - 2s 70us/step - loss: 0.2102 - accuracy: 0.9065
Epoch 408/500
31647/31647 [==============================] - 2s 69us/step - loss: 0.2099 - accuracy: 0.9063
Epoch 409/500
31647/31647 [==============================] - 2s 70us/step - loss: 0.2096 - accuracy: 0.9063
Epoch 410/500
31647/31647 [==============================] - 2s 69us/step - loss: 0.2099 - accuracy: 0.9063
Epoch 411/500
31647/31647 [==============================] - 2s 70us/step - loss: 0.2098 - accuracy: 0.9061
Epoch 412/500
31647/31647 [==============================] - 2s 69us/step - loss: 0.2097 - accuracy: 0.9062
Epoch 413/500
31647/31647 [==============================] - 2s 69us/step - loss: 0.2097 - accuracy: 0.9069
Epoch 414/500
31647/31647 [==============================] - 2s 70us/step - loss: 0.2097 - accuracy: 0.9062
Epoch 415/500
31647/31647 [==============================] - 2s 70us/step - loss: 0.2095 - accuracy: 0.9063
Epoch 416/500
31647/31647 [==============================] - 2s 70us/step - loss: 0.2099 - accuracy: 0.9056
Epoch 417/500
31647/31647 [==============================] - 2s 69us/step - loss: 0.2096 - accuracy: 0.9063
Epoch 418/500
31647/31647 [==============================] - 2s 70us/step - loss: 0.2097 - accuracy: 0.9070
Epoch 419/500
31647/31647 [==============================] - 2s 69us/step - loss: 0.2094 - accuracy: 0.9072
Epoch 420/500
31647/31647 [==============================] - 2s 69us/step - loss: 0.2097 - accuracy: 0.9061
Epoch 421/500
31647/31647 [==============================] - 2s 70us/step - loss: 0.2095 - accuracy: 0.9062
Epoch 422/500
31647/31647 [==============================] - 2s 70us/step - loss: 0.2097 - accuracy: 0.9065
Epoch 423/500
31647/31647 [==============================] - 2s 70us/step - loss: 0.2095 - accuracy: 0.9065
Epoch 424/500
31647/31647 [==============================] - 2s 70us/step - loss: 0.2096 - accuracy: 0.9069
Epoch 425/500
31647/31647 [==============================] - 2s 70us/step - loss: 0.2092 - accuracy: 0.9066
Epoch 426/500
31647/31647 [==============================] - 2s 70us/step - loss: 0.2096 - accuracy: 0.9071
Epoch 427/500
31647/31647 [==============================] - 2s 70us/step - loss: 0.2092 - accuracy: 0.9070
Epoch 428/500
31647/31647 [==============================] - 2s 70us/step - loss: 0.2093 - accuracy: 0.9066
Epoch 429/500
31647/31647 [==============================] - 2s 69us/step - loss: 0.2095 - accuracy: 0.9067
Epoch 430/500
31647/31647 [==============================] - 2s 70us/step - loss: 0.2093 - accuracy: 0.9068
Epoch 431/500
31647/31647 [==============================] - 2s 70us/step - loss: 0.2093 - accuracy: 0.9060
Epoch 432/500
31647/31647 [==============================] - 2s 70us/step - loss: 0.2095 - accuracy: 0.9065
Epoch 433/500
31647/31647 [==============================] - 2s 70us/step - loss: 0.2089 - accuracy: 0.9080
Epoch 434/500
31647/31647 [==============================] - 2s 70us/step - loss: 0.2093 - accuracy: 0.9065
Epoch 435/500
31647/31647 [==============================] - 2s 70us/step - loss: 0.2093 - accuracy: 0.9072
Epoch 436/500
31647/31647 [==============================] - 2s 69us/step - loss: 0.2091 - accuracy: 0.9068
Epoch 437/500
31647/31647 [==============================] - 2s 68us/step - loss: 0.2093 - accuracy: 0.9069
Epoch 438/500
31647/31647 [==============================] - 2s 70us/step - loss: 0.2090 - accuracy: 0.9074
Epoch 439/500
31647/31647 [==============================] - 2s 70us/step - loss: 0.2091 - accuracy: 0.9068
Epoch 440/500
31647/31647 [==============================] - 2s 70us/step - loss: 0.2088 - accuracy: 0.9070
Epoch 441/500
31647/31647 [==============================] - 2s 70us/step - loss: 0.2089 - accuracy: 0.9071
Epoch 442/500
31647/31647 [==============================] - 2s 69us/step - loss: 0.2090 - accuracy: 0.9069
Epoch 443/500
31647/31647 [==============================] - 2s 69us/step - loss: 0.2090 - accuracy: 0.9065
Epoch 444/500
31647/31647 [==============================] - 2s 70us/step - loss: 0.2090 - accuracy: 0.9069
Epoch 445/500
31647/31647 [==============================] - 2s 70us/step - loss: 0.2091 - accuracy: 0.9073
Epoch 446/500
31647/31647 [==============================] - 2s 70us/step - loss: 0.2090 - accuracy: 0.9069
Epoch 447/500
31647/31647 [==============================] - 2s 70us/step - loss: 0.2088 - accuracy: 0.9069
Epoch 448/500
31647/31647 [==============================] - 2s 70us/step - loss: 0.2091 - accuracy: 0.9069
Epoch 449/500
31647/31647 [==============================] - 2s 70us/step - loss: 0.2089 - accuracy: 0.9067
Epoch 450/500
31647/31647 [==============================] - 2s 70us/step - loss: 0.2087 - accuracy: 0.9072
Epoch 451/500
31647/31647 [==============================] - 2s 70us/step - loss: 0.2087 - accuracy: 0.9069
Epoch 452/500
31647/31647 [==============================] - 2s 70us/step - loss: 0.2085 - accuracy: 0.9071
Epoch 453/500
31647/31647 [==============================] - 2s 70us/step - loss: 0.2087 - accuracy: 0.9073
Epoch 454/500
31647/31647 [==============================] - 2s 71us/step - loss: 0.2086 - accuracy: 0.9065
Epoch 455/500
31647/31647 [==============================] - 2s 72us/step - loss: 0.2088 - accuracy: 0.9067
Epoch 456/500
31647/31647 [==============================] - 2s 73us/step - loss: 0.2086 - accuracy: 0.9071
Epoch 457/500
31647/31647 [==============================] - 2s 71us/step - loss: 0.2086 - accuracy: 0.9071
Epoch 458/500
31647/31647 [==============================] - 2s 70us/step - loss: 0.2088 - accuracy: 0.9070
Epoch 459/500
31647/31647 [==============================] - 2s 70us/step - loss: 0.2084 - accuracy: 0.9071
Epoch 460/500
31647/31647 [==============================] - 2s 70us/step - loss: 0.2086 - accuracy: 0.9074
Epoch 461/500
31647/31647 [==============================] - 2s 70us/step - loss: 0.2084 - accuracy: 0.9072
Epoch 462/500
31647/31647 [==============================] - 2s 70us/step - loss: 0.2088 - accuracy: 0.9072
Epoch 463/500
31647/31647 [==============================] - 2s 71us/step - loss: 0.2084 - accuracy: 0.9072
Epoch 464/500
31647/31647 [==============================] - 2s 69us/step - loss: 0.2084 - accuracy: 0.9065
Epoch 465/500
31647/31647 [==============================] - 2s 70us/step - loss: 0.2083 - accuracy: 0.9068
Epoch 466/500
31647/31647 [==============================] - 2s 72us/step - loss: 0.2084 - accuracy: 0.9078
Epoch 467/500
31647/31647 [==============================] - 2s 70us/step - loss: 0.2084 - accuracy: 0.9073
Epoch 468/500
31647/31647 [==============================] - 2s 70us/step - loss: 0.2085 - accuracy: 0.9072
Epoch 469/500
31647/31647 [==============================] - 2s 70us/step - loss: 0.2083 - accuracy: 0.9075
Epoch 470/500
31647/31647 [==============================] - 2s 70us/step - loss: 0.2083 - accuracy: 0.9074
Epoch 471/500
31647/31647 [==============================] - 2s 70us/step - loss: 0.2084 - accuracy: 0.9074
Epoch 472/500
31647/31647 [==============================] - 2s 70us/step - loss: 0.2083 - accuracy: 0.9076
Epoch 473/500
31647/31647 [==============================] - 2s 71us/step - loss: 0.2081 - accuracy: 0.9068
Epoch 474/500
31647/31647 [==============================] - 2s 70us/step - loss: 0.2082 - accuracy: 0.9071
Epoch 475/500
31647/31647 [==============================] - 2s 70us/step - loss: 0.2082 - accuracy: 0.9073
Epoch 476/500
31647/31647 [==============================] - 2s 70us/step - loss: 0.2079 - accuracy: 0.9075
Epoch 477/500
31647/31647 [==============================] - 2s 70us/step - loss: 0.2086 - accuracy: 0.9071
Epoch 478/500
31647/31647 [==============================] - 2s 70us/step - loss: 0.2081 - accuracy: 0.9074
Epoch 479/500
31647/31647 [==============================] - 2s 71us/step - loss: 0.2079 - accuracy: 0.9078
Epoch 480/500
31647/31647 [==============================] - 2s 70us/step - loss: 0.2081 - accuracy: 0.9070
Epoch 481/500
31647/31647 [==============================] - 2s 70us/step - loss: 0.2079 - accuracy: 0.9073
Epoch 482/500
31647/31647 [==============================] - 2s 71us/step - loss: 0.2081 - accuracy: 0.9073
Epoch 483/500
31647/31647 [==============================] - 2s 69us/step - loss: 0.2080 - accuracy: 0.9074
Epoch 484/500
31647/31647 [==============================] - 2s 70us/step - loss: 0.2082 - accuracy: 0.9067
Epoch 485/500
31647/31647 [==============================] - 2s 69us/step - loss: 0.2080 - accuracy: 0.9072
Epoch 486/500
31647/31647 [==============================] - 2s 70us/step - loss: 0.2079 - accuracy: 0.9074
Epoch 487/500
31647/31647 [==============================] - 2s 70us/step - loss: 0.2080 - accuracy: 0.9076
Epoch 488/500
31647/31647 [==============================] - 2s 69us/step - loss: 0.2078 - accuracy: 0.9081
Epoch 489/500
31647/31647 [==============================] - 2s 70us/step - loss: 0.2080 - accuracy: 0.9075
Epoch 490/500
31647/31647 [==============================] - 2s 70us/step - loss: 0.2080 - accuracy: 0.9071
Epoch 491/500
31647/31647 [==============================] - 2s 69us/step - loss: 0.2078 - accuracy: 0.9080
Epoch 492/500
31647/31647 [==============================] - 2s 70us/step - loss: 0.2077 - accuracy: 0.9071
Epoch 493/500
31647/31647 [==============================] - 2s 70us/step - loss: 0.2079 - accuracy: 0.9068
Epoch 494/500
31647/31647 [==============================] - 2s 68us/step - loss: 0.2079 - accuracy: 0.9073
Epoch 495/500
31647/31647 [==============================] - 2s 69us/step - loss: 0.2077 - accuracy: 0.9077
Epoch 496/500
31647/31647 [==============================] - 2s 70us/step - loss: 0.2076 - accuracy: 0.9077
Epoch 497/500
31647/31647 [==============================] - 2s 70us/step - loss: 0.2076 - accuracy: 0.9080
Epoch 498/500
31647/31647 [==============================] - 2s 69us/step - loss: 0.2077 - accuracy: 0.9071
Epoch 499/500
31647/31647 [==============================] - 2s 70us/step - loss: 0.2075 - accuracy: 0.9074
Epoch 500/500
31647/31647 [==============================] - 2s 69us/step - loss: 0.2079 - accuracy: 0.9075
Final loss (Test data): 0.2293, final accuracy (Test data): 0.8980

Biểu diễn kết quả mô hình phân loại

Mô hình đơn giản nên khỏi biểu diễn Confusion Matrix, ROC,... nha mọi người

Chỉ biểu diễn Acuuracy và Loss của Model

In [73]: