1.逻辑回归python实现
# -*- coding: utf-8 -*-
"""
@author: 蔚蓝的天空Tom
"""
import numpy as np
import os
import matplotlib.pyplot as plt
from sklearn.datasets import make_blobs
#global variable
path = r'D:\tom\data'
train_set = 'train_lr.txt'
test_set = 'test_lr.txt'
#load data set from txt file
def load_data_set(path, file_name):
data_list = []
label_list = []
f = open(os.path.join(path, file_name))
for line in f.readlines():
#feature1 feature2 label
text = line.strip().split()
#data_m追加[feature0=1, feature1, feature2]
#样本的实际特征值有2个,附加一个恒值为1的特征值feature0,以便运算
#记作features_cnt = 1 + n_features
data_list.append([1.0, float(text[0]), float(text[1])])
#label_m追加label value
label_list.append(int(text[2]))
return data_list, label_list
#sigmoid function
def sigmoid(z):