吴恩达机器学习第三周-逻辑回归作业-Python

不加正则项的逻辑回归

数据可视化

需要安装Python的第三方库numpy、matplotlib,安装好后:

import numpy as np
import matplotlib.pyplot as plt

给的数据是TXT文件,因此要读取TXT文件中的数据,将TXT文件中的数据读入列表,定义了函数:

def file2matrix(filename):
    fr = open(filename)
    numberOfLines = len(fr.readlines())         #get the number of lines in the file
    returnMat = np.zeros((numberOfLines,2))        #prepare matrix to return
    labeldata = np.zeros((numberOfLines,1))#prepare labels return
    fr = open(filename)
    index = 0
    for line in fr.readlines():
        line = line.strip()
        listFromLine = line.split(',')
        returnMat[index,:] = listFromLine[0:2]
        labeldata[index] = int(listFromLine[-1])
        index += 1
    return returnMat,labeldata

然后可视化数据:

data1mat,labeldata = file2matrix('ex2data1.txt')
fig = plt.figure()
ax = fig.add_subplot(111)
ax.scatter(data1mat[:,0],data1mat[:,1],c=np.array(labeldata),s=15)
plt.show()

Sigmoid函数

import numpy as np
def sigmoid(x):
    y = 1/(1+np.exp(-x))
    return y

代价函数、梯度以及训练代价函数

代价函数
在这里插入图片描述
代价函数代码:

import numpy as np
import Sigmoid
def cost
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值