Skip to content

Instantly share code, notes, and snippets.

@Koziev
Koziev / train_intent_classifier_elmo.py
Created September 6, 2019 08:03
Intent classifier using ELMo embeddings
# coding: utf-8
"""
Тренер классификатора интентов для чатбота - нейросетка поверх ELMO.
05.09.2019 первая реализация, за основу взят код train_intent_classifier_bert.py
"""
from __future__ import print_function
import numpy as np
import argparse
import platform
@Koziev
Koziev / gist:06795638e9b9931292dd25dafaa55e11
Created September 6, 2019 07:57
Классификатор интентов для чатбота на базе BERT
# coding: utf-8
"""
Тренер классификатора интентов для чатбота - нейросетка поверх BERT.
13.07.2019 первая реализация
13.07.2019 сделан gridsearch для подбора параметров сетки
20.07.2019 переделка для прямого использования nlu.md
26.07.2019 в кач-ве метрики кроссвалидации используется f1_weighted
"""
from __future__ import print_function
@Koziev
Koziev / nn_answer_generator.py
Created May 12, 2019 11:04
экспериментальная нейросетевая модель для генерации ответа
# -*- coding: utf-8 -*-
'''
Тренировка модели, которая посимвольно в режиме teacher forcing учится генерировать
ответ для заданной предпосылки и вопроса.
В качестве классификационного движка для выбора символов используется нейросетка
За один запуск модели выбирается один новый символ, который добавляется к ранее сгенерированной
цепочке символов ответа (см. функцию generate_answer). Генерация через повторные запуски продолжается
до появления специального маркера конца цепочки END_CHAR.
@Koziev
Koziev / find_prefixes.py
Created May 3, 2019 04:15
Скрип для поиска всех префиксов составных прилагательных в русском языке
import io
import collections
import re
import ruword2tags
regex1 = re.compile(u'[%s ]+' % re.escape(u'"«».,:;!?=()\t\u00a0\u202F\u2060\u200A\s'))
@Koziev
Koziev / generate_invalid_syntax_samples3.py
Created April 22, 2019 11:20
Использование ruword2tags.RuFlexer (а также rulemma, rupostagger, rutokenizer) для полуавтоматической генерации NLP датасета
# -*- coding: utf-8 -*-
"""
Подбор сырья для формирования датасета для тренировки валидатора синтаксиса.
Берем фразы с правильным синтаксисом и заменяем в них предлоги на рандомные,
при необходимости пересогласуя подчиненные существительные и прилагательные.
"""
from __future__ import division # for python2 compatibility
from __future__ import print_function
# -*- coding: utf-8 -*-
"""
Решение задачи линейно регрессии по МНК с помощью Keras.
"""
from __future__ import print_function
import random
import numpy as np
# -*- coding: utf-8 -*-
"""
Использование автоматического дифференцирования autograd (https://github.com/HIPS/autograd)
для решения линейной регрессии МНК.
"""
from __future__ import print_function
import autograd.numpy as np
# -*- coding: utf-8 -*-
"""
Использование автоматического дифференцирования autograd (https://github.com/HIPS/autograd)
для решения линейной регрессии МНК.
Код может решать только задачу линейно регрессии, так как
в нем отдельно выписывается градиентный спуск по каждому из двух
компонентов решения через частные производные.
"""
@Koziev
Koziev / Program.cs
Last active October 25, 2018 09:21
Проверка либы NNSharp: использование в .NET моделей, обученных в Python+Keras
using System;
using System.Collections.Generic;
using System.Linq;
using System.Text;
using System.Threading.Tasks;
using NNSharp.DataTypes;
namespace sample1
{
class Program
@Koziev
Koziev / Program.cs
Created October 25, 2018 08:31
Тест библиотеки NNSharp: тренировка Keras-модели в питоне, загрузка и использование в C#
using System;
using System.Collections.Generic;
using System.Linq;
using System.Text;
using System.Threading.Tasks;
using NNSharp.DataTypes;
namespace sample1
{
class Program