Esempio n. 1
0
num_classes = 6  # количество классов изображений
# размер изображения, класс изображения
one_layer_net = OneLayerNet(input_height * input_width, num_classes)

#путь деррикториям с картинками
train_dir = "data/train"
test_dir = "data/test"

train_generator = DataReader(train_dir, [input_height, input_width], True,
                             input_channels, num_classes).get_generator()
# берется с помощью DataReader изображения, тренировочную и тестовую выборку
test_generator = DataReader(test_dir, [input_height, input_width], False,
                            input_channels, num_classes).get_generator()

print('Size of training set: {}'.format(
    train_generator.get_data_size()))  # вес тренировочных изображений
print('Size of testing set: {}'.format(
    test_generator.get_data_size()))  # вес тесовых изображенй изображений

print("{} Start training...".format(datetime.now()))  # время начала обучения

# функция ,которая для каждой итерации считает ошибочность распознавания в обучении
for epoch in range(num_epochs):
    print("{} Epoch number: {}".format(datetime.now(), epoch + 1))
    loss = 0
    for m in range(train_generator.get_data_size()):  # переборка векторов
        x, d = train_generator.next()
        loss += one_layer_net.train(Vector(x, d),
                                    learning_rate)  # подсчет ошибок
    print("loss = {}".format(loss / train_generator.get_data_size()))
    train_generator.reset_pointer()
Esempio n. 2
0
merged_summary = tf.summary.merge_all()

valid_summary = tf.Summary()

# Инициализируем FileWriter
writer_1 = tf.summary.FileWriter(filewriter_path + 'train')
writer_2 = tf.summary.FileWriter(filewriter_path + 'validation')

# Инициализируем заставку для контрольных точек модели чекпоинт
saver = tf.train.Saver()
train_dir = '../data/train'
test_dir = '../data/test'
train_generator = DataReader(train_dir, [input_height, input_width], True, input_channels, num_classes).get_generator()
test_generator = DataReader(test_dir, [input_height, input_width], False, input_channels, num_classes).get_generator()

print('Размер обучающего набора: {}'.format(train_generator.get_data_size()))
print('Размер испытательного комплекта: {}'.format(test_generator.get_data_size()))

train_patterns_per_epoch = train_generator.get_data_size()

# Начнаем сеанс
with tf.Session() as sess:
    # Инициализация всех переменных
    sess.run(tf.global_variables_initializer())

    # Добавим грфик модели в  TensorBoard
    writer_1.add_graph(sess.graph)

    print("{} приступить к тренировкам...".format(datetime.now()))
    print("{} Откройте Tensorboard по команде: tensorboard --logdir {}".format(datetime.now(),
                                                      log_path))
Esempio n. 3
0
# Инициализируйте FileWriter
writer_1 = tf.summary.FileWriter(filewriter_path + 'train')
writer_2 = tf.summary.FileWriter(filewriter_path + 'validation')

# Инициализируйте заставку для контрольных точек модели чекпоинт
saver = tf.train.Saver()

train_dir = '../data/train'
test_dir = '../data/test'

train_generator = DataReader(train_dir, [input_height, input_width], True,
                             input_channels, num_classes).get_generator()
test_generator = DataReader(test_dir, [input_height, input_width], False,
                            input_channels, num_classes).get_generator()

print('Size of training set: {}'.format(train_generator.get_data_size()))
print('Size of testing set: {}'.format(test_generator.get_data_size()))

train_patterns_per_epoch = train_generator.get_data_size()

# начать сеанс
with tf.Session() as sess:
    # инициализация всех переменных
    sess.run(tf.global_variables_initializer())

    # добавит грфик модели в  TensorBoard
    writer_1.add_graph(sess.graph)

    print("{} Start training...".format(datetime.now()))
    print("{} Open Tensorboard by command: tensorboard --logdir {}".format(
        datetime.now(), log_path))
Esempio n. 4
0
input_channels = 1
input_height = 28
input_width = 28
num_classes = 6

one_layer_net = OneLayerNet(input_height * input_width, num_classes)

train_dir = "data/train"
test_dir = "data/test"

train_generator = DataReader(train_dir, [input_height, input_width], True,
                             input_channels, num_classes).get_generator()
test_generator = DataReader(test_dir, [input_height, input_width], False,
                            input_channels, num_classes).get_generator()

print('Size of training set: {}'.format(train_generator.get_data_size()))
print('Size of testing set: {}'.format(test_generator.get_data_size()))

print("{} Start training...".format(datetime.now()))
for epoch in range(num_epochs):
    print("{} Epoch number: {}".format(datetime.now(), epoch + 1))
    loss = 0
    for m in range(train_generator.get_data_size()):
        x, d = train_generator.next()
        loss += one_layer_net.train(Vector(x, d), learning_rate)
    print("loss = {}".format(loss / train_generator.get_data_size()))
    train_generator.reset_pointer()
    train_generator.shuffle_data()

passed = 0
for i in range(test_generator.get_data_size()):