Python implementation of semi-supervised learning algorithm
Project description
SemiSupervised
Describe
This is a Semi-supervised learning framework of Python. You can use it for classification task in machine learning.
Install
pip install semisupervised
API
We have implemented following semi-supervised learning algorithm.
LabelPropagation
S3VM
Statement
Some of the code comes from the Internet.
Examples
from __future__ import absolute_import
import numpy as np
from sklearn import datasets
from sklearn import metrics
from sklearn.model_selection import train_test_split
# normalization
def normalize(x):
return (x - np.min(x))/(np.max(x) - np.min(x))
def get_data():
X, y = datasets.load_breast_cancer(return_X_y=True)
X = normalize(X)
X_train, X_test, y_train, y_test = train_test_split(X, y, test_size = 0.6, random_state = 0)
rng = np.random.RandomState(42)
random_unlabeled_points = rng.rand(len(X_train)) < 0.1
y_train[random_unlabeled_points] = -1
#
index, = np.where(y_train != -1)
label_X_train = X_train[index,:]
label_y_train = y_train[index]
index, = np.where(y_train == -1)
unlabel_X_train = X_train[index,:]
unlabel_y = -1*np.ones(unlabel_X_train.shape[0]).astype(int)
return label_X_train, label_y_train, unlabel_X_train, unlabel_y, X_test, y_test
label_X_train, label_y_train, unlabel_X_train, unlabel_y, X_test, y_test = get_data()
# import
from semisupervised import SKTSVM
model = SKTSVM()
model.fit(np.vstack((label_X_train, unlabel_X_train)), np.append(label_y_train, unlabel_y))
# predict
predict = model.predict(X_test)
acc = metrics.accuracy_score(y_test, predict)
# metric
print("accuracy", acc)
Project details
Release history Release notifications | RSS feed
Download files
Download the file for your platform. If you're not sure which to choose, learn more about installing packages.
Source Distribution
semisupervised-0.0.28.tar.gz
(20.9 kB
view details)
File details
Details for the file semisupervised-0.0.28.tar.gz
.
File metadata
- Download URL: semisupervised-0.0.28.tar.gz
- Upload date:
- Size: 20.9 kB
- Tags: Source
- Uploaded using Trusted Publishing? No
- Uploaded via: Python-urllib/3.6
File hashes
Algorithm | Hash digest | |
---|---|---|
SHA256 | 9cf912ba2ed6ee990b44046eb55c69bbe79ce1dd479ebcb159cb65fa13bec3ca |
|
MD5 | 6f604b0c467a72e4a5aad79fd6c3a554 |
|
BLAKE2b-256 | f8a171e1fbc1987e9b7f51160405c9e9148247658033d8692ae0db8b1913de47 |