и посмотреть медиа
Data Science - собесы
и посмотреть медиа
Собесы Data Science.
AI бот для озвучки текста и клонирования голоса в Telegram. Создавай аудио с помощью нейросети быстро и просто.
Вопросы для собеседований по Data Science.
🤔 Как работает dropout? Dropout — это техника регуляризации, используемая в нейронных сетях для предотвращения переобучения. Она заключается в случайном "отключении" (или обнулении) определенного процента нейронов во время обучения, что помогает модели обобщать данные и не подстраиваться под шум или специфические особенности обучающего набора данных. 🚩Механизм работы 🟠Во время обучения: На каждом шаге обучения случайным образом выбирается подмножество нейронов, которые будут отключены. Отключенные нейроны не участвуют в прямом и обратном проходе на текущем этапе. Этот процесс повторяется на каждом этапе обучения, причем каждое отключение производится независимо. 🟠Во время тестирования: На этапе предсказания (тестирования) dropout не применяется. Для компенсации эффекта, вызванного отключением нейронов на этапе обучения, все веса сети масштабируются в соответствии с вероятностью dropout import tensorflow as tf from tensorflow.keras.models import Sequential from tensorflow.keras.layers import Dense, Dropout from tensorflow.keras.datasets import mnist from tensorflow.keras.utils import to_categorical # Загрузка данных (X_train, y_train), (X_test, y_test) = mnist.load_data() X_train = X_train.reshape((X_train.shape[0], 28 * 28)).astype('float32') / 255 X_test = X_test.reshape((X_test.shape[0], 28 * 28)).astype('float32') / 255 y_train = to_categorical(y_train) y_test = to_categorical(y_test) # Создание модели model = Sequential() model.add(Dense(512, activation='relu', input_shape=(28 * 28,))) model.add(Dropout(0.5)) # Dropout с вероятностью 0.5 model.add(Dense(512, activation='relu')) model.add(Dropout(0.5)) model.add(Dense(10, activation='softmax')) # Компиляция модели model.compile(loss='categorical_crossentropy', optimizer='adam', metrics=['accuracy']) # Обучение модели model.fit(X_train, y_train, epochs=20, batch_size=128, validation_data=(X_test, y_test)) # Оценка модели score = model.evaluate(X_test, y_test) print(f'Точность на тестовых данных: {score[1] * 100:.2f}%') 🚩Зачем нужен 🟠Предотвращение переобучения: Dropout помогает нейронной сети не запоминать обучающие данные, а обучаться выявлять общие закономерности. 🟠Снижение взаимозависимости нейронов: Отключение случайных нейронов заставляет остальные нейроны адаптироваться и работать независимо, что улучшает устойчивость модели. 🟠Улучшение обобщающей способности: Dropout повышает способность модели хорошо работать на новых, невидимых данных. Ставь 👍 и забирай 📚 Базу знаний
Открыть канал и посмотреть медиаТолько зарегистрированные пользователи могут делиться своим мнением.
Станьте первым, кто поделится своим впечатлением об этом ресурсе!