{"action":"created","comment":{"url":"https://api.github.com/repos/Akiiino/Ask-Me-Anything/pulls/comments/104489452","pull_request_review_id":25327991,"id":104489452,"diff_hunk":"@@ -0,0 +1,2654 @@\n+{\n+ \"cells\": [\n+  {\n+   \"cell_type\": \"markdown\",\n+   \"metadata\": {\n+    \"deletable\": true,\n+    \"editable\": true\n+   },\n+   \"source\": [\n+    \"# Lab 4. Word embeddings.\"\n+   ]\n+  },\n+  {\n+   \"cell_type\": \"markdown\",\n+   \"metadata\": {\n+    \"deletable\": true,\n+    \"editable\": true\n+   },\n+   \"source\": [\n+    \"Для начала, как всегда, всевозможные приготовления к работе. Использовать будем заранее предобработанные текты из трёх википедий — английской, русской и simple. Большая часть лабы выполнялась на full, но переключение на любую другую производится заменой единственного параметра (не то чтобы это было неочевидно, впрочем).\"\n+   ]\n+  },\n+  {\n+   \"cell_type\": \"code\",\n+   \"execution_count\": 64,\n+   \"metadata\": {\n+    \"collapsed\": false,\n+    \"deletable\": true,\n+    \"editable\": true\n+   },\n+   \"outputs\": [],\n+   \"source\": [\n+    \"import collections\\n\",\n+    \"import math\\n\",\n+    \"import os\\n\",\n+    \"import random\\n\",\n+    \"from datetime import datetime\\n\",\n+    \"from itertools import accumulate\\n\",\n+    \"import itertools\\n\",\n+    \"from IPython.display import clear_output\\n\",\n+    \"import matplotlib.pyplot as plt\\n\",\n+    \"from mpl_toolkits.mplot3d import Axes3D\\n\",\n+    \"\\n\",\n+    \"import numpy as np\\n\",\n+    \"import tensorflow as tf\\n\",\n+    \"import pickle\\n\",\n+    \"import stop_words\\n\",\n+    \"import regex as re\\n\",\n+    \"import sys\\n\",\n+    \"\\n\",\n+    \"import scipy\\n\",\n+    \"from scipy import sparse\\n\",\n+    \"\\n\",\n+    \"from sklearn.feature_extraction.text import TfidfVectorizer\\n\",\n+    \"from sklearn.metrics.pairwise import cosine_similarity, euclidean_distances, manhattan_distances\\n\",\n+    \"import sklearn.decomposition\\n\",\n+    \"from sklearn.manifold import TSNE\\n\",\n+    \"\\n\",\n+    \"wikis = {\\n\",\n+    \"    'full': {\\n\",\n+    \"        'lang': 'en',\\n\",\n+    \"        'counter_file': 'full/counter',\\n\",\n+    \"        'wiki_file': '/Users/akiiino/Documents/Wiki/full/processed.dat',\\n\",\n+    \"        'vocab_size': 100000,\\n\",\n+    \"        'W2V_embed_file': 'full/W2V_embed.npy',\\n\",\n+    \"        'LSA_embed_file': 'full/LSA_embed.npy',\\n\",\n+    \"        'LSA_TfIdf_file': 'full/LSA_TfIdf.npz',\\n\",\n+    \"        'LSA_vocab_file': 'full/LSA_vocab',\\n\",\n+    \"        'glove_coocc_file': 'full/glove_coocc.npz',\\n\",\n+    \"        'glove_embed_file': 'full/glove_embed.npy'\\n\",\n+    \"    },\\n\",\n+    \"    'simple': {\\n\",\n+    \"        'lang': 'en',\\n\",\n+    \"        'counter_file': 'simple/counter',\\n\",\n+    \"        'wiki_file': '/Users/akiiino/Documents/Wiki/simple/processed.dat',\\n\",\n+    \"        'vocab_size': 50000,\\n\",\n+    \"        'W2V_embed_file': 'simple/W2V_embed.npy',\\n\",\n+    \"        'LSA_embed_file': 'simple/LSA_embed.npy',\\n\",\n+    \"        'LSA_TfIdf_file': 'simple/LSA_TfIdf.npz',\\n\",\n+    \"        'LSA_vocab_file': 'simple/LSA_vocab',\\n\",\n+    \"        'glove_coocc_file': 'simple/glove_coocc.npz',\\n\",\n+    \"        'glove_embed_file': 'simple/glove_embed.npy'\\n\",\n+    \"    },\\n\",\n+    \"    'ru': {\\n\",\n+    \"        'lang': 'ru',\\n\",\n+    \"        'counter_file': 'ru/counter',\\n\",\n+    \"        'wiki_file': '/Users/akiiino/Documents/Wiki/ru/processed.dat',\\n\",\n+    \"        'vocab_size': 100000,\\n\",\n+    \"        'W2V_embed_file': 'ru/W2V_embed.npy',\\n\",\n+    \"        'LSA_embed_file': 'ru/LSA_embed.npy',\\n\",\n+    \"        'LSA_TfIdf_file': 'ru/LSA_TfIdf.npz',\\n\",\n+    \"        'LSA_vocab_file': 'ru/LSA_vocab',\\n\",\n+    \"        'glove_coocc_file': 'ru/glove_coocc.npz',\\n\",\n+    \"        'glove_embed_file': 'ru/glove_embed.npy'\\n\",\n+    \"    },\\n\",\n+    \"}\\n\",\n+    \"\\n\",\n+    \"def load_wiki(wiki):\\n\",\n+    \"    global LANG\\n\",\n+    \"    global WIKI_FILE\\n\",\n+    \"    global VOCAB_SIZE\\n\",\n+    \"    global LSA_TFIDF_FILE\\n\",\n+    \"    global LSA_EMBED_FILE\\n\",\n+    \"    global LSA_VOCAB_FILE\\n\",\n+    \"    global W2V_COUNT_FILE\\n\",\n+    \"    global W2V_EMBED_FILE\\n\",\n+    \"    global GLOVE_COOCC_FILE\\n\",\n+    \"    global GLOVE_EMBED_FILE\\n\",\n+    \"    LANG           = wikis[wiki]['lang']\\n\",\n+    \"    WIKI_FILE      = wikis[wiki]['wiki_file']\\n\",\n+    \"    VOCAB_SIZE     = wikis[wiki]['vocab_size']\\n\",\n+    \"    LSA_TFIDF_FILE = wikis[wiki]['LSA_TfIdf_file']\\n\",\n+    \"    LSA_EMBED_FILE = wikis[wiki]['LSA_embed_file']\\n\",\n+    \"    LSA_VOCAB_FILE = wikis[wiki]['LSA_vocab_file']\\n\",\n+    \"    W2V_COUNT_FILE = wikis[wiki]['counter_file']\\n\",\n+    \"    W2V_EMBED_FILE = wikis[wiki]['W2V_embed_file']\\n\",\n+    \"    GLOVE_COOCC_FILE = wikis[wiki]['glove_coocc_file']\\n\",\n+    \"    GLOVE_EMBED_FILE = wikis[wiki]['glove_embed_file']\\n\",\n+    \"\\n\",\n+    \"load_wiki(\\\"full\\\")\"\n+   ]\n+  },\n+  {\n+   \"cell_type\": \"markdown\",\n+   \"metadata\": {\n+    \"deletable\": true,\n+    \"editable\": true\n+   },\n+   \"source\": [\n+    \"Всё ещё вспомогательные вещи. Генератор статей из файла: читает статьи, нормализует, если нужно, переводит в индексы слов, возвращает.\"\n+   ]\n+  },\n+  {\n+   \"cell_type\": \"code\",\n+   \"execution_count\": 2,\n+   \"metadata\": {\n+    \"collapsed\": false,\n+    \"deletable\": true,\n+    \"editable\": true\n+   },\n+   \"outputs\": [],\n+   \"source\": [\n+    \"def normalize(text, punct, stops):\\n\",\n+    \"    text = text.lower()     # case\\n\",\n+    \"    text = punct.sub(\\\"\\\", text)      # punctuation\\n\",\n+    \"    text = (word for word in text.split() if word not in stops)       # stop words\\n\",\n+    \"    return text\\n\",\n+    \"\\n\",\n+    \"    \\n\",\n+    \"def wiki_gen(filename, trans=None, chunk=1024, one_pass=False, LSA=False):    \\n\",\n+    \"    read = 0\\n\",\n+    \"    cache = 0\\n\",\n+    \"    \\n\",\n+    \"    stops = set(stop_words.get_stop_words(LANG))\\n\",\n+    \"    punct = re.compile(r\\\"\\\\p{P}+\\\")\\n\",\n+    \"    with open(filename) as wiki_file:\\n\",\n+    \"        while True:\\n\",\n+    \"            lines = \\\" \\\".join(line for line in wiki_file.readlines(chunk))\\n\",\n+    \"            read += len(lines)\\n\",\n+    \"\\n\",\n+    \"            if read > cache + 2**26:\\n\",\n+    \"                print('pulling... total {} MB\\\\r'.format(read//2**20), end=\\\"\\\")\\n\",\n+    \"                cache = read\\n\",\n+    \"\\n\",\n+    \"            if not lines:\\n\",\n+    \"                if one_pass:\\n\",\n+    \"                    return\\n\",\n+    \"                wiki_file.seek(0)\\n\",\n+    \"                print(\\\"Starting over...\\\")\\n\",\n+    \"                continue\\n\",\n+    \"\\n\",\n+    \"            lines = normalize(lines, punct, stops)\\n\",\n+    \"\\n\",\n+    \"            if trans:\\n\",\n+    \"                lines = (trans[word] if word in trans else 0 for word in lines)\\n\",\n+    \"            if not LSA:\\n\",\n+    \"                yield lines\\n\",\n+    \"            else:\\n\",\n+    \"                yield \\\" \\\".join(lines)\"\n+   ]\n+  },\n+  {\n+   \"cell_type\": \"markdown\",\n+   \"metadata\": {\n+    \"deletable\": true,\n+    \"editable\": true\n+   },\n+   \"source\": [\n+    \"## LSA\"\n+   ]\n+  },\n+  {\n+   \"cell_type\": \"markdown\",\n+   \"metadata\": {\n+    \"deletable\": true,\n+    \"editable\": true\n+   },\n+   \"source\": [\n+    \"### **Задание**\\n\",\n+    \"**1**.  Вычислите $X$ понравившимся способом (возможно, стоит использовать разреженную матрицу).\\n\",\n+    \"\\n\",\n+    \"**2**. Обучите представления слов при $k = 128$ на своем корпусе.\"\n+   ]\n+  },\n+  {\n+   \"cell_type\": \"markdown\",\n+   \"metadata\": {\n+    \"deletable\": true,\n+    \"editable\": true\n+   },\n+   \"source\": [\n+    \"Обучение устроено просто: пайплайн из `sklearn`'ового `TfidfVectorizer` для построения самой матрицы $X$, после чего Truncated SVD в виде `scipy.sparse.linalg.svds`.\"\n+   ]\n+  },\n+  {\n+   \"cell_type\": \"code\",\n+   \"execution_count\": 3,\n+   \"metadata\": {\n+    \"collapsed\": false,\n+    \"deletable\": true,\n+    \"editable\": true\n+   },\n+   \"outputs\": [],\n+   \"source\": [\n+    \"if not os.path.exists(LSA_EMBED_FILE):\\n\",\n+    \"    vectorizer = TfidfVectorizer(min_df=3, max_df=0.7, stop_words=stop_words.get_stop_words(LANG))\\n\",\n+    \"    tfidf = vectorizer.fit_transform(wiki_gen(WIKI_FILE, chunk=1, one_pass=True, LSA=True)).T\\n\",\n+    \"    np.savez(LSA_TFIDF_FILE, tfidf)\\n\",\n+    \"\\n\",\n+    \"    print(\\\"Tf-Idf done                \\\")\\n\",\n+    \"    \\n\",\n+    \"    svd = sklearn.decomposition.TruncatedSVD(n_components=128)\\n\",\n+    \"    \\n\",\n+    \"    LSA_embeds = svd.fit_transform(tfidf)\\n\",\n+    \"    np.save(LSA_EMBED_FILE, LSA_embeds)\\n\",\n+    \"\\n\",\n+    \"    LSA_vocab = vectorizer.vocabulary_\\n\",\n+    \"\\n\",\n+    \"    with open(LSA_VOCAB_FILE, 'wb') as vocab_file:\\n\",\n+    \"        pickle.dump(LSA_vocab, vocab_file)\\n\",\n+    \"else:\\n\",\n+    \"    LSA_embeds = np.load(LSA_EMBED_FILE)\\n\",\n+    \"    with open(LSA_VOCAB_FILE, 'rb') as vocab_file:\\n\",\n+    \"        LSA_vocab = pickle.load(vocab_file)\"\n+   ]\n+  },\n+  {\n+   \"cell_type\": \"markdown\",\n+   \"metadata\": {\n+    \"deletable\": true,\n+    \"editable\": true\n+   },\n+   \"source\": [\n+    \"При этом после вычисления всё сохраняется на диск, чтобы лишний раз не считать, если понадобится снова.\"\n+   ]\n+  },\n+  {\n+   \"cell_type\": \"markdown\",\n+   \"metadata\": {\n+    \"deletable\": true,\n+    \"editable\": true\n+   },\n+   \"source\": [\n+    \" \"\n+   ]\n+  },\n+  {\n+   \"cell_type\": \"markdown\",\n+   \"metadata\": {\n+    \"deletable\": true,\n+    \"editable\": true\n+   },\n+   \"source\": [\n+    \"**3**. Реализуйте поиск k-ближайших соседей для Евклидовой меры в 128-мерном пространстве .\"\n+   ]\n+  },\n+  {\n+   \"cell_type\": \"markdown\",\n+   \"metadata\": {\n+    \"deletable\": true,\n+    \"editable\": true\n+   },\n+   \"source\": [\n+    \"Скелет для нахождения соседей: по вектору находим ближайшие слова; сложность линейная, т.к. использован `argpartition`. Сам вектор может быть получен как напрямую из слова, так и, например, сложениями и вычитаниями других векторов.\"\n+   ]\n+  },\n+  {\n+   \"cell_type\": \"code\",\n+   \"execution_count\": 4,\n+   \"metadata\": {\n+    \"collapsed\": true,\n+    \"deletable\": true,\n+    \"editable\": true\n+   },\n+   \"outputs\": [],\n+   \"source\": [\n+    \"def closest_to_vec(vec, embeds, rev_vocab, metric_name='euclid', count=10, with_dists=False):\\n\",\n+    \"        metrics = {\\n\",\n+    \"            'euclid': euclidean_distances,\\n\",\n+    \"            'cosine': cosine_similarity,\\n\",\n+    \"            'manhattan': manhattan_distances\\n\",\n+    \"        }\\n\",\n+    \"        \\n\",\n+    \"        metric = metrics[metric_name]\\n\",\n+    \"        \\n\",\n+    \"        dists = metric(\\n\",\n+    \"                [vec],\\n\",\n+    \"                embeds\\n\",\n+    \"        )[0]\\n\",\n+    \"        \\n\",\n+    \"        if metric_name == \\\"cosine\\\":\\n\",\n+    \"                closest_indexes = dists.argpartition(range(-count, 0))[-1:-count-1:-1]\\n\",\n+    \"        else:\\n\",\n+    \"                closest_indexes = dists.argpartition(range(0, count))[:count]\\n\",\n+    \"\\n\",\n+    \"        if with_dists:\\n\",\n+    \"            return list(zip(dists[closest_indexes], [rev_vocab.get(x, \\\"\\\") for x in closest_indexes]))\\n\",\n+    \"        else:\\n\",\n+    \"            return [rev_vocab.get(x, \\\"\\\") for x in closest_indexes]\\n\"\n+   ]\n+  },\n+  {\n+   \"cell_type\": \"markdown\",\n+   \"metadata\": {\n+    \"deletable\": true,\n+    \"editable\": true\n+   },\n+   \"source\": [\n+    \"Сам поиск по словам:\"\n+   ]\n+  },\n+  {\n+   \"cell_type\": \"code\",\n+   \"execution_count\": 5,\n+   \"metadata\": {\n+    \"collapsed\": false,\n+    \"deletable\": true,\n+    \"editable\": true\n+   },\n+   \"outputs\": [],\n+   \"source\": [\n+    \"def closest_words(word, embeds, vocab, rev_vocab=None, metric='euclid', count=10, with_dists=False):\\n\",","path":"Labs/Lab 4/Lab_4.ipynb","position":null,"original_position":342,"commit_id":"488df36d33d2de506ae42e15bc2cb2beb560e64b","original_commit_id":"279987b786d5f6c18128337e92e3bff6984aa396","user":{"login":"Akiiino","id":13392695,"avatar_url":"https://avatars2.githubusercontent.com/u/13392695?v=3","gravatar_id":"","url":"https://api.github.com/users/Akiiino","html_url":"https://github.com/Akiiino","followers_url":"https://api.github.com/users/Akiiino/followers","following_url":"https://api.github.com/users/Akiiino/following{/other_user}","gists_url":"https://api.github.com/users/Akiiino/gists{/gist_id}","starred_url":"https://api.github.com/users/Akiiino/starred{/owner}{/repo}","subscriptions_url":"https://api.github.com/users/Akiiino/subscriptions","organizations_url":"https://api.github.com/users/Akiiino/orgs","repos_url":"https://api.github.com/users/Akiiino/repos","events_url":"https://api.github.com/users/Akiiino/events{/privacy}","received_events_url":"https://api.github.com/users/Akiiino/received_events","type":"User","site_admin":false},"body":"Закрыто.","created_at":"2017-03-06T18:43:59Z","updated_at":"2017-03-06T19:03:21Z","html_url":"https://github.com/Akiiino/Ask-Me-Anything/pull/3#discussion_r104489452","pull_request_url":"https://api.github.com/repos/Akiiino/Ask-Me-Anything/pulls/3","_links":{"self":{"href":"https://api.github.com/repos/Akiiino/Ask-Me-Anything/pulls/comments/104489452"},"html":{"href":"https://github.com/Akiiino/Ask-Me-Anything/pull/3#discussion_r104489452"},"pull_request":{"href":"https://api.github.com/repos/Akiiino/Ask-Me-Anything/pulls/3"}}},"pull_request":{"url":"https://api.github.com/repos/Akiiino/Ask-Me-Anything/pulls/3","id":108650063,"html_url":"https://github.com/Akiiino/Ask-Me-Anything/pull/3","diff_url":"https://github.com/Akiiino/Ask-Me-Anything/pull/3.diff","patch_url":"https://github.com/Akiiino/Ask-Me-Anything/pull/3.patch","issue_url":"https://api.github.com/repos/Akiiino/Ask-Me-Anything/issues/3","number":3,"state":"open","locked":false,"title":"Merge Lab 4","user":{"login":"Akiiino","id":13392695,"avatar_url":"https://avatars2.githubusercontent.com/u/13392695?v=3","gravatar_id":"","url":"https://api.github.com/users/Akiiino","html_url":"https://github.com/Akiiino","followers_url":"https://api.github.com/users/Akiiino/followers","following_url":"https://api.github.com/users/Akiiino/following{/other_user}","gists_url":"https://api.github.com/users/Akiiino/gists{/gist_id}","starred_url":"https://api.github.com/users/Akiiino/starred{/owner}{/repo}","subscriptions_url":"https://api.github.com/users/Akiiino/subscriptions","organizations_url":"https://api.github.com/users/Akiiino/orgs","repos_url":"https://api.github.com/users/Akiiino/repos","events_url":"https://api.github.com/users/Akiiino/events{/privacy}","received_events_url":"https://api.github.com/users/Akiiino/received_events","type":"User","site_admin":false},"body":"","created_at":"2017-03-01T23:05:51Z","updated_at":"2017-03-06T19:03:21Z","closed_at":null,"merged_at":null,"merge_commit_sha":"1650c74d75993f938c9634ab3a05a8b17aa63e7d","assignee":null,"assignees":[],"milestone":null,"commits_url":"https://api.github.com/repos/Akiiino/Ask-Me-Anything/pulls/3/commits","review_comments_url":"https://api.github.com/repos/Akiiino/Ask-Me-Anything/pulls/3/comments","review_comment_url":"https://api.github.com/repos/Akiiino/Ask-Me-Anything/pulls/comments{/number}","comments_url":"https://api.github.com/repos/Akiiino/Ask-Me-Anything/issues/3/comments","statuses_url":"https://api.github.com/repos/Akiiino/Ask-Me-Anything/statuses/488df36d33d2de506ae42e15bc2cb2beb560e64b","head":{"label":"Akiiino:lab-4-indev","ref":"lab-4-indev","sha":"488df36d33d2de506ae42e15bc2cb2beb560e64b","user":{"login":"Akiiino","id":13392695,"avatar_url":"https://avatars2.githubusercontent.com/u/13392695?v=3","gravatar_id":"","url":"https://api.github.com/users/Akiiino","html_url":"https://github.com/Akiiino","followers_url":"https://api.github.com/users/Akiiino/followers","following_url":"https://api.github.com/users/Akiiino/following{/other_user}","gists_url":"https://api.github.com/users/Akiiino/gists{/gist_id}","starred_url":"https://api.github.com/users/Akiiino/starred{/owner}{/repo}","subscriptions_url":"https://api.github.com/users/Akiiino/subscriptions","organizations_url":"https://api.github.com/users/Akiiino/orgs","repos_url":"https://api.github.com/users/Akiiino/repos","events_url":"https://api.github.com/users/Akiiino/events{/privacy}","received_events_url":"https://api.github.com/users/Akiiino/received_events","type":"User","site_admin":false},"repo":{"id":74282413,"name":"Ask-Me-Anything","full_name":"Akiiino/Ask-Me-Anything","owner":{"login":"Akiiino","id":13392695,"avatar_url":"https://avatars2.githubusercontent.com/u/13392695?v=3","gravatar_id":"","url":"https://api.github.com/users/Akiiino","html_url":"https://github.com/Akiiino","followers_url":"https://api.github.com/users/Akiiino/followers","following_url":"https://api.github.com/users/Akiiino/following{/other_user}","gists_url":"https://api.github.com/users/Akiiino/gists{/gist_id}","starred_url":"https://api.github.com/users/Akiiino/starred{/owner}{/repo}","subscriptions_url":"https://api.github.com/users/Akiiino/subscriptions","organizations_url":"https://api.github.com/users/Akiiino/orgs","repos_url":"https://api.github.com/users/Akiiino/repos","events_url":"https://api.github.com/users/Akiiino/events{/privacy}","received_events_url":"https://api.github.com/users/Akiiino/received_events","type":"User","site_admin":false},"private":false,"html_url":"https://github.com/Akiiino/Ask-Me-Anything","description":"HSE FCS 2nd year project","fork":false,"url":"https://api.github.com/repos/Akiiino/Ask-Me-Anything","forks_url":"https://api.github.com/repos/Akiiino/Ask-Me-Anything/forks","keys_url":"https://api.github.com/repos/Akiiino/Ask-Me-Anything/keys{/key_id}","collaborators_url":"https://api.github.com/repos/Akiiino/Ask-Me-Anything/collaborators{/collaborator}","teams_url":"https://api.github.com/repos/Akiiino/Ask-Me-Anything/teams","hooks_url":"https://api.github.com/repos/Akiiino/Ask-Me-Anything/hooks","issue_events_url":"https://api.github.com/repos/Akiiino/Ask-Me-Anything/issues/events{/number}","events_url":"https://api.github.com/repos/Akiiino/Ask-Me-Anything/events","assignees_url":"https://api.github.com/repos/Akiiino/Ask-Me-Anything/assignees{/user}","branches_url":"https://api.github.com/repos/Akiiino/Ask-Me-Anything/branches{/branch}","tags_url":"https://api.github.com/repos/Akiiino/Ask-Me-Anything/tags","blobs_url":"https://api.github.com/repos/Akiiino/Ask-Me-Anything/git/blobs{/sha}","git_tags_url":"https://api.github.com/repos/Akiiino/Ask-Me-Anything/git/tags{/sha}","git_refs_url":"https://api.github.com/repos/Akiiino/Ask-Me-Anything/git/refs{/sha}","trees_url":"https://api.github.com/repos/Akiiino/Ask-Me-Anything/git/trees{/sha}","statuses_url":"https://api.github.com/repos/Akiiino/Ask-Me-Anything/statuses/{sha}","languages_url":"https://api.github.com/repos/Akiiino/Ask-Me-Anything/languages","stargazers_url":"https://api.github.com/repos/Akiiino/Ask-Me-Anything/stargazers","contributors_url":"https://api.github.com/repos/Akiiino/Ask-Me-Anything/contributors","subscribers_url":"https://api.github.com/repos/Akiiino/Ask-Me-Anything/subscribers","subscription_url":"https://api.github.com/repos/Akiiino/Ask-Me-Anything/subscription","commits_url":"https://api.github.com/repos/Akiiino/Ask-Me-Anything/commits{/sha}","git_commits_url":"https://api.github.com/repos/Akiiino/Ask-Me-Anything/git/commits{/sha}","comments_url":"https://api.github.com/repos/Akiiino/Ask-Me-Anything/comments{/number}","issue_comment_url":"https://api.github.com/repos/Akiiino/Ask-Me-Anything/issues/comments{/number}","contents_url":"https://api.github.com/repos/Akiiino/Ask-Me-Anything/contents/{+path}","compare_url":"https://api.github.com/repos/Akiiino/Ask-Me-Anything/compare/{base}...{head}","merges_url":"https://api.github.com/repos/Akiiino/Ask-Me-Anything/merges","archive_url":"https://api.github.com/repos/Akiiino/Ask-Me-Anything/{archive_format}{/ref}","downloads_url":"https://api.github.com/repos/Akiiino/Ask-Me-Anything/downloads","issues_url":"https://api.github.com/repos/Akiiino/Ask-Me-Anything/issues{/number}","pulls_url":"https://api.github.com/repos/Akiiino/Ask-Me-Anything/pulls{/number}","milestones_url":"https://api.github.com/repos/Akiiino/Ask-Me-Anything/milestones{/number}","notifications_url":"https://api.github.com/repos/Akiiino/Ask-Me-Anything/notifications{?since,all,participating}","labels_url":"https://api.github.com/repos/Akiiino/Ask-Me-Anything/labels{/name}","releases_url":"https://api.github.com/repos/Akiiino/Ask-Me-Anything/releases{/id}","deployments_url":"https://api.github.com/repos/Akiiino/Ask-Me-Anything/deployments","created_at":"2016-11-20T15:10:25Z","updated_at":"2016-12-12T15:29:29Z","pushed_at":"2017-03-06T16:13:36Z","git_url":"git://github.com/Akiiino/Ask-Me-Anything.git","ssh_url":"git@github.com:Akiiino/Ask-Me-Anything.git","clone_url":"https://github.com/Akiiino/Ask-Me-Anything.git","svn_url":"https://github.com/Akiiino/Ask-Me-Anything","homepage":null,"size":52212,"stargazers_count":0,"watchers_count":0,"language":"HTML","has_issues":true,"has_downloads":true,"has_wiki":true,"has_pages":false,"forks_count":0,"mirror_url":null,"open_issues_count":2,"forks":0,"open_issues":2,"watchers":0,"default_branch":"master"}},"base":{"label":"Akiiino:master","ref":"master","sha":"686b3591462e1a14c7164eabad75e7107ed9ad99","user":{"login":"Akiiino","id":13392695,"avatar_url":"https://avatars2.githubusercontent.com/u/13392695?v=3","gravatar_id":"","url":"https://api.github.com/users/Akiiino","html_url":"https://github.com/Akiiino","followers_url":"https://api.github.com/users/Akiiino/followers","following_url":"https://api.github.com/users/Akiiino/following{/other_user}","gists_url":"https://api.github.com/users/Akiiino/gists{/gist_id}","starred_url":"https://api.github.com/users/Akiiino/starred{/owner}{/repo}","subscriptions_url":"https://api.github.com/users/Akiiino/subscriptions","organizations_url":"https://api.github.com/users/Akiiino/orgs","repos_url":"https://api.github.com/users/Akiiino/repos","events_url":"https://api.github.com/users/Akiiino/events{/privacy}","received_events_url":"https://api.github.com/users/Akiiino/received_events","type":"User","site_admin":false},"repo":{"id":74282413,"name":"Ask-Me-Anything","full_name":"Akiiino/Ask-Me-Anything","owner":{"login":"Akiiino","id":13392695,"avatar_url":"https://avatars2.githubusercontent.com/u/13392695?v=3","gravatar_id":"","url":"https://api.github.com/users/Akiiino","html_url":"https://github.com/Akiiino","followers_url":"https://api.github.com/users/Akiiino/followers","following_url":"https://api.github.com/users/Akiiino/following{/other_user}","gists_url":"https://api.github.com/users/Akiiino/gists{/gist_id}","starred_url":"https://api.github.com/users/Akiiino/starred{/owner}{/repo}","subscriptions_url":"https://api.github.com/users/Akiiino/subscriptions","organizations_url":"https://api.github.com/users/Akiiino/orgs","repos_url":"https://api.github.com/users/Akiiino/repos","events_url":"https://api.github.com/users/Akiiino/events{/privacy}","received_events_url":"https://api.github.com/users/Akiiino/received_events","type":"User","site_admin":false},"private":false,"html_url":"https://github.com/Akiiino/Ask-Me-Anything","description":"HSE FCS 2nd year project","fork":false,"url":"https://api.github.com/repos/Akiiino/Ask-Me-Anything","forks_url":"https://api.github.com/repos/Akiiino/Ask-Me-Anything/forks","keys_url":"https://api.github.com/repos/Akiiino/Ask-Me-Anything/keys{/key_id}","collaborators_url":"https://api.github.com/repos/Akiiino/Ask-Me-Anything/collaborators{/collaborator}","teams_url":"https://api.github.com/repos/Akiiino/Ask-Me-Anything/teams","hooks_url":"https://api.github.com/repos/Akiiino/Ask-Me-Anything/hooks","issue_events_url":"https://api.github.com/repos/Akiiino/Ask-Me-Anything/issues/events{/number}","events_url":"https://api.github.com/repos/Akiiino/Ask-Me-Anything/events","assignees_url":"https://api.github.com/repos/Akiiino/Ask-Me-Anything/assignees{/user}","branches_url":"https://api.github.com/repos/Akiiino/Ask-Me-Anything/branches{/branch}","tags_url":"https://api.github.com/repos/Akiiino/Ask-Me-Anything/tags","blobs_url":"https://api.github.com/repos/Akiiino/Ask-Me-Anything/git/blobs{/sha}","git_tags_url":"https://api.github.com/repos/Akiiino/Ask-Me-Anything/git/tags{/sha}","git_refs_url":"https://api.github.com/repos/Akiiino/Ask-Me-Anything/git/refs{/sha}","trees_url":"https://api.github.com/repos/Akiiino/Ask-Me-Anything/git/trees{/sha}","statuses_url":"https://api.github.com/repos/Akiiino/Ask-Me-Anything/statuses/{sha}","languages_url":"https://api.github.com/repos/Akiiino/Ask-Me-Anything/languages","stargazers_url":"https://api.github.com/repos/Akiiino/Ask-Me-Anything/stargazers","contributors_url":"https://api.github.com/repos/Akiiino/Ask-Me-Anything/contributors","subscribers_url":"https://api.github.com/repos/Akiiino/Ask-Me-Anything/subscribers","subscription_url":"https://api.github.com/repos/Akiiino/Ask-Me-Anything/subscription","commits_url":"https://api.github.com/repos/Akiiino/Ask-Me-Anything/commits{/sha}","git_commits_url":"https://api.github.com/repos/Akiiino/Ask-Me-Anything/git/commits{/sha}","comments_url":"https://api.github.com/repos/Akiiino/Ask-Me-Anything/comments{/number}","issue_comment_url":"https://api.github.com/repos/Akiiino/Ask-Me-Anything/issues/comments{/number}","contents_url":"https://api.github.com/repos/Akiiino/Ask-Me-Anything/contents/{+path}","compare_url":"https://api.github.com/repos/Akiiino/Ask-Me-Anything/compare/{base}...{head}","merges_url":"https://api.github.com/repos/Akiiino/Ask-Me-Anything/merges","archive_url":"https://api.github.com/repos/Akiiino/Ask-Me-Anything/{archive_format}{/ref}","downloads_url":"https://api.github.com/repos/Akiiino/Ask-Me-Anything/downloads","issues_url":"https://api.github.com/repos/Akiiino/Ask-Me-Anything/issues{/number}","pulls_url":"https://api.github.com/repos/Akiiino/Ask-Me-Anything/pulls{/number}","milestones_url":"https://api.github.com/repos/Akiiino/Ask-Me-Anything/milestones{/number}","notifications_url":"https://api.github.com/repos/Akiiino/Ask-Me-Anything/notifications{?since,all,participating}","labels_url":"https://api.github.com/repos/Akiiino/Ask-Me-Anything/labels{/name}","releases_url":"https://api.github.com/repos/Akiiino/Ask-Me-Anything/releases{/id}","deployments_url":"https://api.github.com/repos/Akiiino/Ask-Me-Anything/deployments","created_at":"2016-11-20T15:10:25Z","updated_at":"2016-12-12T15:29:29Z","pushed_at":"2017-03-06T16:13:36Z","git_url":"git://github.com/Akiiino/Ask-Me-Anything.git","ssh_url":"git@github.com:Akiiino/Ask-Me-Anything.git","clone_url":"https://github.com/Akiiino/Ask-Me-Anything.git","svn_url":"https://github.com/Akiiino/Ask-Me-Anything","homepage":null,"size":52212,"stargazers_count":0,"watchers_count":0,"language":"HTML","has_issues":true,"has_downloads":true,"has_wiki":true,"has_pages":false,"forks_count":0,"mirror_url":null,"open_issues_count":2,"forks":0,"open_issues":2,"watchers":0,"default_branch":"master"}},"_links":{"self":{"href":"https://api.github.com/repos/Akiiino/Ask-Me-Anything/pulls/3"},"html":{"href":"https://github.com/Akiiino/Ask-Me-Anything/pull/3"},"issue":{"href":"https://api.github.com/repos/Akiiino/Ask-Me-Anything/issues/3"},"comments":{"href":"https://api.github.com/repos/Akiiino/Ask-Me-Anything/issues/3/comments"},"review_comments":{"href":"https://api.github.com/repos/Akiiino/Ask-Me-Anything/pulls/3/comments"},"review_comment":{"href":"https://api.github.com/repos/Akiiino/Ask-Me-Anything/pulls/comments{/number}"},"commits":{"href":"https://api.github.com/repos/Akiiino/Ask-Me-Anything/pulls/3/commits"},"statuses":{"href":"https://api.github.com/repos/Akiiino/Ask-Me-Anything/statuses/488df36d33d2de506ae42e15bc2cb2beb560e64b"}}}}
{"actor":{"display_login":"Akiiino"}}