Skip to content

Instantly share code, notes, and snippets.

View miracleyoo's full-sized avatar

Miracleyoo miracleyoo

  • University of California San Diego
  • San Diego, USA
  • 11:46 (UTC -07:00)
View GitHub Profile
@miracleyoo
miracleyoo / keras_attention.py
Created November 21, 2018 07:08
[Keras Attention Layer] #python #keras
# https://www.kaggle.com/qqgeogor/keras-lstm-attention-glove840b-lb-0-043
class Attention(Layer):
def __init__(self, step_dim,
W_regularizer=None, b_regularizer=None,
W_constraint=None, b_constraint=None,
bias=True, **kwargs):
self.supports_masking = True
self.init = initializers.get('glorot_uniform')
self.W_regularizer = regularizers.get(W_regularizer)
@miracleyoo
miracleyoo / BiLSTM_Attention_Keras.py
Created November 21, 2018 07:59
[Simple keras BiLSTM Attention Model Pipeline] #python #keras
from keras import Sequential
from keras.preprocessing.sequence import pad_sequences
from sklearn.model_selection import train_test_split
from keras.models import Sequential,Model
from keras.layers import LSTM, Dense, Bidirectional, Input,Dropout,BatchNormalization
from keras import backend as K
from keras.engine.topology import Layer
from keras import initializers, regularizers, constraints
# Definition of model
@miracleyoo
miracleyoo / k_fold_keras.py
Created November 23, 2018 03:13
[K-fold train function on Keras] #python #keras
from sklearn.model_selection import KFold
from sklearn.metrics import *
def kf_fit(model, x_train=X, y_train=y, test_data=test):
kf = KFold(n_splits=10, shuffle=True, random_state=42069)
preds = []
# test_data = pad_sequences(test_data)
fold = 0
aucs = 0
for train_idx, val_idx in kf.split(x_train):
@miracleyoo
miracleyoo / random_choice_files_in_batch.py
Created December 1, 2018 16:21
[random_choice_files_in_batch] #python
import random
import os
from shutil import copyfile
ori_path = './your-original-path'
out_path = './your-output-path'
dirs = [os.path.join(ori_path, adir) for adir in os.listdir(ori_path) if not adir.startswith('.')]
pure_dirs = [adir for adir in os.listdir(ori_path) if not adir.startswith('.')]
for adir, pure_adir in zip(dirs, pure_dirs):
print("==> Now processing:", adir)
@miracleyoo
miracleyoo / test_pytorch_init_test.py
Created December 4, 2018 07:13
[Simple-tseter-of-pytorch-code] #python #pytorch
import numpy as np
import torch
from models import miracle_net
from config import Config
opt=Config()
net = miracle_net.MiracleNet(opt)
import numpy as np
from torch.utils.data import DataLoader
from torch.utils.data import Dataset
class Template(Dataset):
@miracleyoo
miracleyoo / read_jsonl.py
Last active December 12, 2019 03:56
[read jsonl] #python
with open(file_path) as f:
for line in f:
j_content = json.loads(line)
@miracleyoo
miracleyoo / count-numpy-array.py
Last active December 12, 2019 03:56
[count numpy array] #python
import collections, numpy
a = numpy.array([0, 3, 0, 1, 0, 1, 2, 1, 0, 0, 0, 0, 1, 3, 4])
collections.Counter(a)
# [Out]: Counter({0: 7, 1: 4, 3: 2, 2: 1, 4: 1})
@miracleyoo
miracleyoo / plot_wordcloud.py
Last active December 12, 2019 03:55
[plot wordcloud] #python
from wordcloud import WordCloud, STOPWORDS
# Thanks : https://www.kaggle.com/aashita/word-clouds-of-various-shapes ##
def plot_wordcloud(text, mask=None, max_words=200, max_font_size=100, figure_size=(24.0,16.0),
title = None, title_size=40, image_color=False):
stopwords = set(STOPWORDS)
more_stopwords = {'one', 'br', 'Po', 'th', 'sayi', 'fo', 'Unknown'}
stopwords = stopwords.union(more_stopwords)
wordcloud = WordCloud(background_color='black',
@miracleyoo
miracleyoo / plot_loss_acc.py
Last active December 12, 2019 03:56
[plot loss acc] #python #pytorch #keras
import os
import seaborn as sns
import matplotlib.pyplot as plt
def plot_history(history, save_path:str=None, figsize = (20, 9)):
f, axes = plt.subplots(1, 2, figsize=figsize)
sns.lineplot(range(1, history.epochs+1), history.history['acc'], label='Train Accuracy', ax=axes[0])
sns.lineplot(range(1, history.epochs+1), history.history['val_acc'], label='Val Accuracy', ax=axes[0])
sns.lineplot(range(1, history.epochs+1), history.history['loss'], label='Train Loss', ax=axes[1])
sns.lineplot(range(1, history.epochs+1), history.history['val_loss'], label='Val Loss', ax=axes[1])
@miracleyoo
miracleyoo / useful_pandas_snippets.md
Created December 12, 2019 04:15 — forked from bsweger/useful_pandas_snippets.md
Useful Pandas Snippets

Useful Pandas Snippets

A personal diary of DataFrame munging over the years.

Data Types and Conversion

Convert Series datatype to numeric (will error if column has non-numeric values)
(h/t @makmanalp)