01-赵志勇机器学习-Logistics_Regression-train
Logistics Regression
二分类问题。
模型 | 线性模型 |
响应 | sigmoid |
损失函数(显示) | 最小均方 |
优化方法 | BGD |
例子:
#coding utf-8
import numpy as npdef load_data(file_name):feature_data = []label_data = []f = open(file_name) # 打开文件for line in f.readlines():# @ strip() 去除字符串首尾的空格# @ split("\t") 以“\t”分割字符串lines = line.strip().split("\t")feature_tmp = []label_tmp = []feature_tmp.append(1) # 偏置项for i in range(len(lines)-1):feature_tmp.append(float(lines[i]))label_tmp.append(float(lines[-1]))feature_data.append(feature_tmp)label_data.append(label_tmp)f.close() # 关闭文件return np.mat(feature_data), np.mat(label_data)def sig(x):return 1.0/(1+np.exp(-x))def compute_error(h, label):# @ shape() 获得特征的长度,[0]行数,[1]列数n = np.shape(h)[0]err = 0for i in range(n):if h[i,0]>0 and (1-h[i,0])>0:err -= (label[i,0]*np.log(h[i,0]) + (1-label[i,0])*np.log(1-h[i,0]))else:err -= 0return errdef lr_train_bgd(feature, label, maxCycle, alpha):n = np.shape(feature)[1]W = np.mat(np.ones((n,1)))for i in range(maxCycle):h = sig(feature*W)err = label - hif i % 100 == 0:print(compute_error(h, label))W = W + alpha * feature.T * errreturn Wdef save_model(file_name, W):f = open(file_name, "w")w_array = []n = np.shape(W)[0]for i in range(n):w_array.append(str(W[i,0]))f.write("\t".join(w_array))f.close()if __name__ == "__main__":print("load data")feature, label = load_data("data.txt")print("train")w = lr_train_bgd(feature, label, 1000, 0.1)print("save")save_model("weights2018", w)
参考:
https://blog.csdn.net/google19890102/article/details/77996085
https://blog.csdn.net/google19890102?viewmode=contents
https://github.com/zhaozhiyong19890102/Python-Machine-Learning-Algorithm
转载于:https://www.cnblogs.com/alexYuin/p/8900028.html
01-赵志勇机器学习-Logistics_Regression-train相关推荐
- python3.6实现Softmax Regression测试训练模型(可视化)机器学习算法(赵志勇)学习笔记
使用Python3.6实现机器学习算法(赵志勇),并将训练结果可视化 import numpy as np import matplotlib.pyplot as pltdef gradientAsc ...
- 赵志勇记录下的算法+程序
赵志勇的博客地址: http://blog.csdn.net/google19890102?viewmode=contents [置顶] 新的10大数据挖掘.机器学习算法 2015-01- ...
- python机器学习算法(赵志勇)学习笔记( Logistic Regression,LR模型)
Logistic Regression(逻辑回归) 分类算法是典型的监督学习,分类算法通过对训练样本的学习,得到从样本特征到样本的标签之间的映射关系,也被称为假设函数,之后可利用该假设函数对新数据进行 ...
- python机器学习算法(赵志勇)学习笔记(基础部分)
文章目录 机器学习基础 机器学习概念 机器学习算法的分类 监督学习 监督学习重点 监督学习的流程 监督学习算法 分类问题(Classification) 回归问题(Regression) 无监督学习 ...
- python3.6实现随机森林算法(可视化)机器学习算法(赵志勇)学习笔记
# coding=utf-8 import numpy as np import random as rd from math import log import matplotlib.pyplot ...
- 12-赵志勇机器学习-Label_Propagation
(草稿) 过程: 1. 初始化所有节点的 labels 成唯一的值: 2. 对每个节点,将 label 更新为和其相连的所有节点中,标签最多的 节点的label: 2. 初始化情况下,假如所有相连的节 ...
- 09-赵志勇机器学习-k-means
(草稿) k-means: 1. 随机选取n个中心 2. 计算每个点到各个中心的距离 3. 距离小于阈值的归成一类. 4. 计算新类的质心,作为下一次循环的n个中心 5. 直到新类的质心和对应本次循环 ...
- 02-赵志勇机器学习-Logistics_Regression-test(转载)
# coding:UTF-8 ''' Date:20160901 @author: zhaozhiyong ''' import numpy as np from lr_train import si ...
- 10-赵志勇机器学习-meanshift
(草稿) meanshift 也是一种聚类方法. 优点在于:不需要提前指定类型数. 缺点就是计算量大 过程:(最一般的做法,没有使用核函数) 1. 逐点迭代,设置为位置中心 2. 计算所有点到位置中心 ...
最新文章
- 网页中插入VLC播放器播放rtsp视频流步骤
- JavaScript初学者编程题(5)
- /proc/sys/vm/ 内存参数
- koa2+vue实现登陆以及是否登陆控制
- Paper:《Realtime Multi-Person 2D Pose Estimation using Part Affinity Fields ∗》翻译并解读
- 2017-2018-1 20155332实验三 实时系统报告
- 周博磊自述5年研究经历:一个神经元的价值和一个神经病的坚持
- PEAR简介:用PEAR来写你的下一个php程序
- Kafka消息系统基础知识索引消息
- 有关Wiki的三个应用
- Python手册(Python Basics)--Python基础
- 测试计算机性能的软件比较专业,用什么软件测验电脑CPU性能最好
- raspbain系统连接家庭wifi的配置方法
- 花花公子 243线SLOT
- 浏览器百家争鸣,国产能打的浏览器来了!
- 新的Novidade漏洞利用工具包目标瞄准家用和SOHO路由器
- 你应该知道的 setTimeout 秘密
- codeforces1000a csdn-博客
- maven js css 压缩,使用wro4j和maven在编译期间压缩js和css文件(经典)
- mysql 梭镖_FreeBSD.6.2服务器架设视频教程下载_IT教程网
热门文章
- 计算机常用英语单词1500
- Github加速访问
- Kubernetes v1.19 正式发布
- 如何批量生成文件夹?
- 如果你爱上一个天枰座的女生。
- 用计算机算出神奇的数,神奇的数字:12345679!先随便乘一个数字,最后乘9,奇迹出现了...
- 数据结构与算法——6. 抽象数据类型:无序表与有序表及其链表实现
- 为什么厉害的人(我)都精力那么好?我有四大秘诀
- 吴忌寒入选福布斯2019最年轻亿万富豪榜;黑客已将价值近千万EOS偷跑 | 1分钟链圈...
- airpods二代降噪吗_2020年苹果无线蓝牙耳机AirPods/Airpods Pro选购指南和使用技巧 | 10月更新...