Skip to content

Instantly share code, notes, and snippets.

View giuseppebonaccorso's full-sized avatar
🎯
Focusing

Giuseppe Bonaccorso giuseppebonaccorso

🎯
Focusing
View GitHub Profile
@giuseppebonaccorso
giuseppebonaccorso / knn_benchmark.py
Created August 29, 2017 14:56
K-Nearest Neighbors Perfomance Benchmark
from sklearn.datasets import make_blobs
from sklearn.neighbors import NearestNeighbors
import matplotlib.pyplot as plt
import multiprocessing
import numpy as np
import time
# Set random seed (for reproducibility)
np.random.seed(1000)
@giuseppebonaccorso
giuseppebonaccorso / hmm_fixed_delay_smoothing.py
Created August 28, 2017 09:26
Fixed-delay smoothing in HMM
import numpy as np
from Queue import Queue
class HMM:
def __init__(self, transition_matrix, observation_matrix, delay, initial_state):
self.TM = transition_matrix
self.OM = observation_matrix
self.delay = delay
@giuseppebonaccorso
giuseppebonaccorso / sanger.py
Last active February 13, 2024 19:34
Sanger's rule (Hebbian Learning)
import numpy as np
from sklearn.datasets import make_blobs
from sklearn.preprocessing import StandardScaler
# Set random seed for reproducibility
np.random.seed(1000)
# Create and scale dataset
X, _ = make_blobs(n_samples=500, centers=2, cluster_std=5.0, random_state=1000)
@giuseppebonaccorso
giuseppebonaccorso / oja.py
Last active June 8, 2019 00:19
Oja's rule (Hebbian Learning)
import numpy as np
from sklearn.datasets import make_blobs
from sklearn.preprocessing import StandardScaler
# Set random seed for reproducibility
np.random.seed(1000)
# Create and scale dataset
X, _ = make_blobs(n_samples=500, centers=2, cluster_std=5.0, random_state=1000)
@giuseppebonaccorso
giuseppebonaccorso / hodgkin-huxley-main.py
Created August 19, 2017 15:06
Hodgkin-Huxley spiking neuron model in Python
import matplotlib.pyplot as plt
import numpy as np
from scipy.integrate import odeint
# Set random seed (for reproducibility)
np.random.seed(1000)
# Start and end time (in milliseconds)
tmin = 0.0
@giuseppebonaccorso
giuseppebonaccorso / twitter_sentiment_analysis_convnet.py
Last active March 16, 2020 19:26
Twitter Sentiment Analysis with Gensim Word2Vec and Keras Convolutional Networks
import keras.backend as K
import multiprocessing
import tensorflow as tf
from gensim.models.word2vec import Word2Vec
from keras.callbacks import EarlyStopping
from keras.models import Sequential
from keras.layers.core import Dense, Dropout, Flatten
from keras.layers.convolutional import Conv1D
@giuseppebonaccorso
giuseppebonaccorso / cluster_instability.py
Created August 3, 2017 13:47
Assessing clustering optimality with instability index
from sklearn.cluster import KMeans
from sklearn.datasets import make_blobs
from sklearn.metrics.pairwise import pairwise_distances
import multiprocessing
# Set random seed for reproducibility
np.random.seed(1000)
# Generate a dummy dataset
@giuseppebonaccorso
giuseppebonaccorso / svd_recommender_tensorflow.py
Last active February 12, 2023 11:07
SVD Recommendations using Tensorflow
import numpy as np
import tensorflow as tf
# Set random seed for reproducibility
np.random.seed(1000)
nb_users = 5000
nb_products = 2000
nb_factors = 500
max_rating = 5
@giuseppebonaccorso
giuseppebonaccorso / math_expression_learning.py
Created May 20, 2017 15:00
Mathematica expression learning experiment using a Seq2Seq approach
'''
Mathematical expression learning experiment
Giuseppe Bonaccorso (https://www.bonaccorso.eu)
Based on: http://machinelearningmastery.com/learn-add-numbers-seq2seq-recurrent-neural-networks/
'''
from __future__ import print_function
from keras.models import Sequential
@giuseppebonaccorso
giuseppebonaccorso / cifar_convnet.py
Last active September 30, 2019 01:48
CIFAR-10 image classification with Keras ConvNet
'''
Cifar-10 classification
Original dataset and info: https://www.cs.toronto.edu/~kriz/cifar.html for more information
See: https://www.bonaccorso.eu/2016/08/06/cifar-10-image-classification-with-keras-convnet/ for further information
'''
from __future__ import print_function
import numpy as np