参考项目:文本分类

1.加载数据

此数据集为在excel中随机生成的数据
cj.xlsx

数据处理如下:(文件名data_load.py)

  1. # coding=utf-8
  2. import xlrd
  3. data = xlrd.open_workbook('cj.xlsx')
  4. # 查看工作表
  5. data.sheet_names()
  6. # print("sheets:" + str(data.sheet_names()))
  7. # print(data.sheet_names())
  8. # 通过文件名获得工作表,获取工作表1
  9. # table = data.sheet_by_name('Sheet1')
  10. # 打印data.sheet_names()可发现,返回的值为一个列表,通过对列表索引操作获得工作表1
  11. table = data.sheet_by_index(0)
  12. # 获取行数和列数
  13. # 行数:table.nrows
  14. # 列数:table.ncols
  15. # print("总行数:" + str(table.nrows))
  16. # print("总列数:" + str(table.ncols))
  17. # 获取整行的值 和整列的值,返回的结果为数组
  18. # 整行值:table.row_values(start,end)
  19. # 整列值:table.col_values(start,end)
  20. # 参数 start 为从第几个开始打印,
  21. # end为打印到那个位置结束,默认为none
  22. # print("整行值:" + str(table.row_values(0)))
  23. # print("整列值:" + str(table.col_values(1)))
  24. # 获取某个单元格的值,例如获取B3单元格值
  25. # cel_B3 = table.cell(3,2).value
  26. # print("第三行第二列的值:" + str(cel_B3))
  27. def get_data():
  28. labels = []
  29. inputs = []
  30. for rowNum in range(1,table.nrows):
  31. rowVale = table.row_values(rowNum)
  32. inputs.append([rowVale[:3]])
  33. labels.append([rowVale[-1]])
  34. return inputs,labels

2.创建模型 、训练模型

代码

  1. # coding=utf-8
  2. from __future__ import absolute_import, division, print_function, unicode_literals
  3. import tensorflow as tf
  4. model = tf.keras.Sequential()
  5. model.add(tf.keras.layers.Dense(3))
  6. model.add(tf.keras.layers.Dropout(0.5))
  7. model.build((None,3))
  8. model.summary()
  9. print(model.summary())
  10. model.compile(optimizer='adam',
  11. loss='binary_crossentropy',
  12. metrics=['accuracy'])
  13. #创建验证集
  14. from data_load import get_data
  15. inputs,labels = get_data()
  16. train_data = inputs[:4000]
  17. train_label = labels[:4000]
  18. val_data = inputs[4000:]
  19. val_label = labels[4000:]
  20. model.fit(train_data,
  21. train_label,
  22. epochs=100,
  23. batch_size=64,
  24. validation_data=(val_data, val_label),
  25. verbose=1)

运行结果

参数个数

image.png

loss及accuracy

image.png