
机器学习
机器学习的一些笔记和案例等
Tomorrow'sThinker
这个作者很懒,什么都没留下…
展开
-
机器学习预测实战 -- 信用卡交易欺诈数据监测(含方案和代码思路)
项目背景一批交易数据,数据总量28万,其中正常交易数据量占比99.83%,欺诈交易数据量仅占比0.17%。目标训练出一个模型,能判断出交易数据是正常数据还是欺诈数据方案一:下采样的方法训练模型获取数据import pandas as pdimport numpy as npimport seaborn as snsimport matplotlib.pyplot as pltimport timeimport warningswarnings.filterwarning原创 2022-03-27 00:10:47 · 10946 阅读 · 82 评论 -
学习笔记 Day 46(逻辑回归制作评分卡)
api导入:import pandas as pdimport numpy as npfrom sklearn.linear_model import LogisticRegression as LR数据获取:df = pd.read_csv('./Data/rankingcard.csv',index_col=0)去除重复值:人为录入或者输入多一行时,很有可能出现重复数据,需要先去除重复值,# 去除重复值df.drop_duplicates(inplace=True原创 2022-02-21 19:56:06 · 997 阅读 · 0 评论 -
优化算法 -- 动量法Momentum
引入对于普通的梯度下降算法,就是重复正向传播,计算梯度,更新权重的过程。表示为:import torchimport torch.nn as nnclass Model(nn.Module): def __init__(self,in_feature=10,out_feature=3): super(Model, self).__init__() self.linear1 = nn.Linear(in_feature,13) self原创 2022-05-24 22:49:26 · 688 阅读 · 0 评论 -
学习笔记 Day 37 (机器学习中的数学 -- 1)
O(n):极限:当x趋近与无穷大时,f(x)/g(x) 趋近于 0导数:该点的切线的斜率,反应的是该点所在图像的处的圆滑程度 求导方法:链式法则:费马定理:函数逼近:...原创 2022-02-10 13:15:50 · 409 阅读 · 0 评论 -
学习笔记 Day 38 (机器学习中的 数学 -- 2)
多元函数:设D为一个非空的n 元有序数组的集合, f为某一确定的对应规则。若对于每一个有序数组( x1,x2,…,xn)∈D,通过对应规则f,都有唯一确定的实数y与之对应,则称对应规则f为定义在D上的n元函数偏导数:求f(xi)的导数时,让其它的x1,x2.。。。都固定。注: 即使偏导都存在,函数也不一定连续,方向导数:t为变化量。可微:满足上式 x0方存在微分。此时在x0上连续且任意方向偏导都存在等于Ai。梯度:(grad)链式法则:..原创 2022-02-10 16:09:29 · 240 阅读 · 0 评论 -
学习笔记 Day 39 (机器学习数学 -- 4)
全概率:逆概率:大数定律:原创 2022-02-11 14:18:09 · 347 阅读 · 0 评论 -
学习笔记 Day 40 (机器学习算法 -- 基础)
概念:领域:内容:什么是机器学习:sklearn:one—hot编码:字典特征抽取:文本特征抽取:from sklearn.feature_extraction.text import CountVectorizerimport jiebacv = CountVectorizer()text = '人生苦短。我用Python,你用不用,我数学看不懂'te = ' '.join(list(jieba.cut(text)))...原创 2022-02-11 19:49:42 · 1836 阅读 · 0 评论 -
学习笔记 Day 39 (机器学习数学 -- 3)
向量:标量:x向量:(x1,x2,x3...xn)矩阵和张量:向量和矩阵运算:范数:矩阵相乘:矩阵运算:张量的运算:矩阵的逆:一个矩阵和它的逆相乘会得到一个单位矩阵。...原创 2022-02-11 12:19:56 · 254 阅读 · 0 评论 -
学习笔记 Day 40 (数据的降维和划分)
数据降维特征选择:过滤式: var = VarianceThreshold(threshold=0) data = var.fit_transform([[0, 2, 0, 3], [0, 1, 4, 3], [0, 1, 1, 3]]) print(data)PCA pca = PCA(n_components=0.9) data = pca.fit_transform([[2,8,4,5],[6,3,0,8],[5,4,9,1]])..原创 2022-02-12 13:43:32 · 728 阅读 · 0 评论 -
学习笔记 Day 41 (监督学习分类算法)
knn:结果不太理想,可以删除row_id项。朴素贝叶斯:朴素贝叶斯预测:(api省略)def navie_bayes(): # 获取数据 fet = fetch_20newsgroups(subset='all') # print(fet) # 数据基本处理 ## 分割数据 x_train,x_test,y_train,y_test = train_test_split(fet.data,fet.target,test_..原创 2022-02-14 13:28:18 · 387 阅读 · 0 评论 -
学习笔记 Day 47 (SVM)
在乳腺癌数据上探索核函数的性质:from sklearn.preprocessing import StandardScalerfrom sklearn.datasets import load_breast_cancerfrom sklearn.svm import SVCfrom sklearn.model_selection import train_test_splitimport matplotlib.pyplot as pltimport numpy as npfro...原创 2022-02-24 20:12:11 · 314 阅读 · 0 评论 -
学习笔记 Day 42(决策树和随机森林)
信息熵:划分依据:信息增益:API:代码实现: ssl._create_default_https_context = ssl._create_unverified_context # 获取数据 df = pd.read_csv('https://datahub.csail.mit.edu/download/jander/historic/file/titanic.csv') print(df.head()) # 数据基本处理 .原创 2022-02-14 16:45:52 · 313 阅读 · 0 评论 -
学习笔记Day 43 (线性回归,岭回归,过拟合欠拟合)
线性回归:寻找一种能预测 的 趋势。原创 2022-02-15 15:54:23 · 493 阅读 · 0 评论 -
学习笔记 Day 44(模型保存,逻辑回归,聚类算法)
模型保存和加载:分类算法 -- 逻辑回归:原创 2022-02-16 12:26:16 · 506 阅读 · 0 评论 -
学习笔记 Day 45 (机器学习加强)
调参重要性:原创 2022-02-17 20:57:41 · 450 阅读 · 0 评论 -
学习笔记 Day 53 (PyTorch)
基本数据类型:string用one-hot编码表示data.cuda() 把data从cpu搬运到GPU上面标量:(1.表示维度为零)print(torch.tensor(1.))张量:(一维torch.tensor([1,1])创建tensor(张量):import numpy as npa = np.array([2,3.3])print(torch.from_numpy(a))b = np.ones([2,3])print(tor...原创 2022-03-09 16:58:28 · 979 阅读 · 0 评论 -
学习笔记 Day 48 (SVM)
二分类样本不均衡问题:参数class_weight的使用:import numpy as npimport matplotlib.pyplot as pltfrom sklearn.svm import SVCfrom sklearn.datasets import make_blobsclass_0 = 500class_1 = 50cluster_std = [1.5,0.5]# 设置方差centers = [[0.0,0.0],[2.0,2.0]] # 设置中心点.原创 2022-02-27 22:57:51 · 598 阅读 · 0 评论 -
学习笔记 Day49 (XGBoost)
流程:观察三种回归的效果:xgb效果是要更好的。GBDT的过程:subsample:随机抽样的时候抽取的样本比例 【0,1】axisx = np.linspace(0.05,1,25)rs = []for i in axisx: xgbr = XGBR(n_estimator=180,subsample=i,random_state=420,slient=False).fit(x_train,y_train) rs.append(c..原创 2022-02-28 23:18:49 · 655 阅读 · 0 评论 -
学习笔记 Day 50(XGBoost)
xgb的目标函数:选择参数:可选择的函数:在xgb中训练:# 在xgb中训练import xgboost # DMatrix 读取数据dm_train = xgboost.DMatrix(x_train,y_train)dm_test = xgboost.DMatrix(x_test,y_test)# 选择参数param = {'silent':False,'objective':'reg:linear','eta':0.1}num_roun...原创 2022-03-01 21:07:32 · 530 阅读 · 0 评论 -
学习笔记 Day 51(xgb参数应用)
默认参数下:defull = xgboost.DMatrix(data.data,data.target)param = {'silent':True,'obj':'reg:linear','subsample':1, 'max_depth':6,'eta':0.3,'gamma':0,'lambda':1, 'alpha':0,'colsample_bytree':1,'colsample_bylevel':1, 'colsample_byn原创 2022-03-02 15:18:03 · 441 阅读 · 0 评论 -
学习笔记 Day 52 (深度学习的回归,分类问题)
回归问题:求最优的w,bimport numpy as npimport pandas as pd# y = wx + bdef compute_error_for_line_given_points(b,w,points):# 计算损失 totalError = 0 for i in range(len(points)): x = points[i,0] y = points[i,1] totalError += (y原创 2022-03-07 21:16:33 · 1021 阅读 · 1 评论 -
学习笔记 Day54(梯度,激活函数)
1,梯度:2,激活函数1,sigmoid1,torch.sigmoidimport torcha = torch.linspace(-100,100,10)print(a)print(torch.sigmoid(a))2, tanh1,torch.tanhb = torch.linspace(-1,1,10)print(b)print(torch.tanh(b))3,Relu目录1,梯度:2,激活函数...原创 2022-03-16 15:56:23 · 2979 阅读 · 0 评论