Skip to content

Instantly share code, notes, and snippets.

View lizaku's full-sized avatar

Elizaveta Kuzmenko lizaku

View GitHub Profile
@lizaku
lizaku / word2vec_tutorial.ipynb
Created October 30, 2019 00:20
Word2Vec tutorial
Loading
Sorry, something went wrong. Reload?
Sorry, we cannot display this file.
Sorry, this file is invalid so it cannot be displayed.
@lizaku
lizaku / gist:4311d69a2fd48986bdf51ca5b5663fc3
Created May 14, 2017 18:38 — forked from ttezel/gist:4138642
Natural Language Processing Notes

#A Collection of NLP notes

##N-grams

###Calculating unigram probabilities:

P( wi ) = count ( wi ) ) / count ( total number of words )

In english..

@lizaku
lizaku / parse_BNC_for_clauses.py
Last active May 13, 2017 21:55
A script I wrote for the project on Data Analysis course. Extracts all participial and relative clauses from UD-parsed BNC, retrieves their basic features.
from conllu.parser import parse, parse_tree
import pandas as pd
import random
#PATH = 'BNC/2554/download/Texts/A/A0'
CONLLU_PATH = 'test.conllu'
RELS = {'acl', 'amod'}
DATA_NUM = 1000
@lizaku
lizaku / google_hashcode_2017.py
Created February 24, 2017 16:50
Online qualification round for Google Hashcode 2017
from urllib.request import urlopen
import numpy as np
import time
# DONE 1. Сортируем видео по приоритетности. Приоритетность = Size * sum(num_requests)
# DONE 2. Берем видео, начиная с самого приоритетного.
# DONE 3. Для видео находим приоритетный Endpoint. Приоритетный Endpoint = max(serv_latency) * число реквестов для этого видео
# DONE 4. Для текущего Endpoint перебираем кэши со свободным местом.
# DONE 5. Из этих кэшей них берем с самым быстрым соединением min(latency). Проверяем, что это быстрее, чем с датацентром.
# DONE 4. Туда и складываем.
@lizaku
lizaku / play_with_word2vec.py
Last active November 29, 2018 09:31
Скрипт, демонстрирующий основы работы с моделями векторного представления слов word2vec
#!/usr/bin/env python3
# coding: utf-8
import sys
import gensim, logging
# Что вообще происходит?
logging.basicConfig(format='%(asctime)s : %(levelname)s : %(message)s', level=logging.INFO)
@lizaku
lizaku / ann2rnc.py
Created November 22, 2016 22:11
Convert files in RNC xml to brat standoff format for disambiguation (RNC xml is precompiled with mystem). Convert files in brat standoff format to RNC xml (xml is precompiled with mystem and improved using information from .ann files)
from lxml import etree
import re
regAna = re.compile('lex="(.*?)" gr="(.*?)"')
def open_xml(fname):
tree = etree.parse(fname).getroot()
return tree
# статья про шифр -- https://ru.wikipedia.org/wiki/%D0%A8%D0%B8%D1%84%D1%80_%D0%92%D0%B8%D0%B6%D0%B5%D0%BD%D0%B5%D1%80%D0%B0
# 1. Создать таблицу
# 2. Спросить слово и ключ
# 3. Преобразовать ключ до нужной длины
# 4. Посимвольно кодирую
# таблица выглядит так [[], [], [], [], ...]
alphabet = list('abcdefghijklmnopqrstuvwxyz')
table = []