Мы в Telegram
Добавить новость

В Москве плановые отключения горячей воды отложили до 20 мая

Депутат Вшивцев поздравил ветерана из Волоколамского округа с Днем Победы

В Екатеринбурге женщина зарезала ветерана СВО, отказавшегося купить ей подарок

Под Биробиджаном медведь растерзал мужчину и охранял его труп





Новости сегодня

Новости от TheMoneytizer

Разработать библиотеку на python3

Необходимо написать модуль на основе или по подобию библиотеки capturemock, который позволяет
записывать фикстуры и затем воспроизводить из фикстур вызовы Model.fit из библиотеки keras.
при этом нужно также записывать/воспроизводить обратные вызовы callbacks.
Пример использования модуля - capturemock_test.py (см ниже)

  • Результатом успешного выполнения задания будет работающий код теста в 2-х режимах по аналогии с capturemock, В режиме mode=RECORD происходит формирование файлов с фикстурами с учетом последовательности вызовов функций и callbacks. В режиме mode=REPLAY тест может работать без установленной библиотеки keras:
@capturemock("keras.models.Sequential.fit", mode=REPLAY)
def test_training():
....
@capturemock("keras.models.Sequential.fit", mode=RECORD)
def test_training():
...
  • Полезные ссылки
capture-replay mock
https://github.com/texttest/capturemock/tree/master/capturemock
Intercepting Python modules, attributes and functions
http://texttest.sourceforge.net/index.php?page=capturemock&n=python_basic



capturemock_test.py
import pytest
import tensorflow as tf
from tensorflow.keras.models import Sequential
from tensorflow.keras.layers import Dense
from tensorflow.keras.datasets import mnist
from tensorflow.keras import utils
from capturemock import capturemock, RECORD, REPLAY

fitback_logs

class FitCallback(tf.keras.callbacks.Callback):
def on_train_end(self, logs=None):
global fitback_logs
fitback_logs = logs

#@capturemock("keras.models.Sequential.fit", mode=REPLAY)
#@capturemock("keras.models.Sequential.fit", mode=RECORD)
def test_training():
global fitback_logs
CLASS_COUNT = 10
(x_train, y_train), (x_test, y_test) = mnist.load_data()

x_train = x_train.reshape(x_train.shape[0], -1)
x_train = x_train.astype('float32') / 255.
y_train = utils.to_categorical(y_train, CLASS_COUNT)

model = Sequential()
model.add(Dense(800, input_dim=x_train.shape[1], activation='relu'))
model.add(Dense(100, activation='relu'))
model.add(Dense(CLASS_COUNT, activation='softmax'))
model.compile(loss='categorical_crossentropy', optimizer='adam', metrics=['accuracy'])
res = model.fit(x_train, y_train,
callbacks=[FitCallback()],
batch_size=128, epochs=15, verbose=1)
assert ['loss', 'accuracy']==list(res.history.keys())
assert [1, 15, 469]==list(res.params.values())
assert ['loss', 'accuracy']==list(fitback_logs.keys())

Читайте на 123ru.net


Новости 24/7 DirectAdvert - доход для вашего сайта



Частные объявления в Вашем городе, в Вашем регионе и в России



Smi24.net — ежеминутные новости с ежедневным архивом. Только у нас — все главные новости дня без политической цензуры. "123 Новости" — абсолютно все точки зрения, трезвая аналитика, цивилизованные споры и обсуждения без взаимных обвинений и оскорблений. Помните, что не у всех точка зрения совпадает с Вашей. Уважайте мнение других, даже если Вы отстаиваете свой взгляд и свою позицию. Smi24.net — облегчённая версия старейшего обозревателя новостей 123ru.net. Мы не навязываем Вам своё видение, мы даём Вам срез событий дня без цензуры и без купюр. Новости, какие они есть —онлайн с поминутным архивом по всем городам и регионам России, Украины, Белоруссии и Абхазии. Smi24.net — живые новости в живом эфире! Быстрый поиск от Smi24.net — это не только возможность первым узнать, но и преимущество сообщить срочные новости мгновенно на любом языке мира и быть услышанным тут же. В любую минуту Вы можете добавить свою новость - здесь.




Новости от наших партнёров в Вашем городе

Ria.city

В ТиНАО Москвы реконструируют очистные сооружения «Пучково»

Как получать доход от вкладов и не платить налог

Пассажирам автобусов Подмосковья рассказали, как получить страховую выплату

«Меня вытаскивали с того света»: Куклачева выписали из больницы после инфаркта

Музыкальные новости

«СВЯТОЙ ЛЕНИН» и все правительства могут отменить либо собрать все налоги!

Таунхаусы в Подмосковье за год подорожали в среднем на 6% — до $258,9 тыс

Дети из Узбекского землячества Бурятии увидели театр кукол «Ульгэр»: Россия и Культура

Бастрыкин вмешался в расследование дела о нападении детей мигрантов на 7-летнего мальчика

Новости России

"Как раньше" уже не получается: Мигранты взвыли из-за проверок при перемещении из России домой

Производство бумаги и продукции из нее в Москве выросло более чем в 4,7 раза

Эксперт Президентской академии в Санкт-Петербурге о новой комплексной программе в рамках нацпроекта «Семья»

Как получать доход от вкладов и не платить налог

Экология в России и мире

Google вводит новую кнопку "Поделиться" для результатов поиска, расширяя возможности обмена данными

В День Пушкина театр кукол «Ульгэр» в райцентре Бурятии: Россия, Культура, Дети

Традиции и инновации: Развитие онлайн-казино в Казахстане

10 полезных продуктов для сердца

Спорт в России и мире

Потапова проиграла Остапенко во втором круге турнира WTA 1000

Теннисист Джокович раздавал автографы в шлеме после попадания бутылкой в голову

Калинская проиграла Свитолиной и не смогла выйти в 1/8 финала турнира в Риме

Ангеліна Калініна поступилася восьмій ракетці світу Саккарі на турнірі WTA 1000 у Римі: результат

Moscow.media

OpenAI готовит конкурента поисковику Google, но на базе ИИ

При силовой поддержке столичного спецназа Росгвардии задержан домушник, маскировавшийся под курьера службы доставки

Еще 36 м надвижки на мосту через Каму

Коровы











Топ новостей на этот час

Rss.plus






Свыше 100 тысяч ям отремонтировали в Подмосковье с начала сезона

Врач Королева: зеленый картофель может спровоцировать отравление

Эксперт Президентской академии в Санкт-Петербурге о новой комплексной программе в рамках нацпроекта «Семья»

На юго-востоке Москвы построят три дома по программе реновации