Проблема заключается в том, что вы передаете последовательности двух измерений в сеть, в то время как LSTM нужны трехмерные последовательности. Измените свой ввод на кодировку one_hot и затем передайте его в LSTM или используйте слой внедрения. Вот как должен выглядеть ваш Netowrk:
import numpy as np
from tensorflow.python.keras.layers import Dense, LSTM
from tensorflow.python.keras.models import Sequential
model = Sequential()
model.add(LSTM(100, activation="relu"))
model.add(Dense(100, input_dim=100, activation='relu'))
model.add(Dense(200, input_dim=100, activation='relu'))
model.add(Dense(100, input_dim=100, activation='relu'))
model.add(Dense(3, activation='softmax'))
model.compile(loss='mse', optimizer='adam', metrics=['accuracy'])
x = np.zeros(shape=(10000, 32, 50))
y = np.zeros(shape=(10000, 3))
model.fit(x, y, batch_size=128)
Обратите внимание на размеры x
и y
.
Альтернативный подход:
model = Sequential()
model.add(Embedding(10000, 50))
model.add(LSTM(100, activation="relu"))
model.add(Dense(100, input_dim=100, activation='relu'))
model.add(Dense(200, input_dim=100, activation='relu'))
model.add(Dense(100, input_dim=100, activation='relu'))
model.add(Dense(3, activation='softmax'))
model.compile(loss='mse', optimizer='adam', metrics=['accuracy'])
x = np.zeros(shape=(10000, 32))
y = np.zeros(shape=(10000, 3))
model.fit(x, y, batch_size=128)
Для отчетов я использую управление RDLC.
Для всего остального я использую свойственные объекты печати в.NET.
Редактирование свойственные объекты печати все найдено в Системе. Рисование. Печать пространства имен. При использовании PrintDialog или PrintPreviewDialog в WinForms (или WPF) приложение именно к этим объектам Вы переворачиваете управление.
Фундаментальное понятие - то, что Вы тянете к принтеру. Самая простая форма этого:
Sub MyMethod()
Dim x as New PrintDocument
AddHandler x.PrintPage, AddressOf printDoc_PrintPage
x.Print
End Sub
Sub printDoc_PrintPage( sender as Object, e as PrintPageEventArgs)
Dim textToPrint as String= ".NET Printing is easy"
dim printFont as new Font("Courier New", 12)
dim leftMargin as int= e.MarginBounds.Left
dim topMargin as int = e.MarginBounds.Top
e.Graphics.DrawString(textToPrint, printFont, Brushes.Black, leftMargin, topMargin)
End Sub
Что происходит, вот то, что, когда мой объект (x) отправляется команду печати, он генерирует событие "PRINT PAGE" (который разработан для печати 1 страницы за один раз). Это событие затем использует Графический атрибут PrintPageEventArgs для рисования соответствующей строки непосредственно к спулеру печати.
Вот одно учебное руководство и быстрый поиск Google "учебных возвратов" печати.NET немногим выше результатов 200K.
Загрузки материала, Вы говорите. Гудите, кажется, что необходимо использовать решение с разработчиком, таким образом, необходимо изучить Crystal Reports и RDLC. Существует также решение Reporting Services, но в этом случае Вам был бы нужен сервер с SQL Server.
Crystal Reports, кажется, дает Вам больше вариантов, но нужен в немного большем количестве изучения, чем RDLC.
Я не рекомендовал бы создать тех, которые в HTML + CSS из-за ограничений и дополнительной работы, которую необходимо было бы бросить в него.
Мы использовали ряд третьего лица DLLs от PDFSharp, кто в свою очередь использует DLLs от MigraDoc. Я не посвящен во все причины, что мы пошли, что направление (решение было принято старшим разработчиком), но я могу сказать Вам что:
Если можно создать вывод как FlowDocument, можно превратить его в XPS легко для получения "электронной" версии и печати XPS.
Это во многом зависит от требований Вашего приложения.
Даже при том, что это не идеальный инструмент (действительно далекий от этого), Crystal Reports имеет тенденцию быть хорошим выбором. Это дает Вам опцию получения данных непосредственно из Базы данных или, если у Вас уже есть список объектов, Вы хотите распечатать, можно передать их документу и связать свойства объектов с маркировками отчета.
Но дайте нам еще некоторую информацию того, что Вы пытаетесь сделать, таким образом, можно получить лучшие предложения.