自定义博客皮肤VIP专享

*博客头图:

格式为PNG、JPG,宽度*高度大于1920*100像素,不超过2MB,主视觉建议放在右侧,请参照线上博客头图

请上传大于1920*100像素的图片!

博客底图:

图片格式为PNG、JPG,不超过1MB,可上下左右平铺至整个背景

栏目图:

图片格式为PNG、JPG,图片宽度*高度为300*38像素,不超过0.5MB

主标题颜色:

RGB颜色,例如:#AFAFAF

Hover:

RGB颜色,例如:#AFAFAF

副标题颜色:

RGB颜色,例如:#AFAFAF

自定义博客皮肤

-+
  • 博客(33)
  • 收藏
  • 关注

原创 leetcode算法(一)

leetcode算法(一)时间复杂度1.时间复杂度:忽略所有常数项,取最高次。eg: aN2+bN +c时间复杂度为O(n2)2.评价一个算法的好坏:先看时间复杂度,然后在分析不同数据样本下的实际运行时间,也就是“常数项时间”3.交换另一种写法#在数组中当i!=j的时候可以这样,必须要i j指向不同的内存空间swap(arr, i , j):arr[i] = arr[i] ^ arr[j]arr[j] = arr[i] ^ arr[j]arr[i] = arr[i] ^ arr[j]

2021-09-11 12:58:06 242

原创 人工智能基础(二十二)决策树API

决策树APIsklearn.tree.DecisionTreeClassifier(criterion=‘gini’, max_depth=None, random_state=None)参数:criterion:特征选择标准min_samples_split内部节点再划分所需最小样本数min_samples_leaf叶子节点最小样本数max_depth决策树最大深度1、流程分析:1.获取数据2.数据基本处理2.1 确定特征值,目标值2.2 缺失值处理2.3 数据集划分3.

2021-08-02 15:40:24 425

原创 人工智能基础(二十一)TF-IDF

TF-IDF主要思想:如果某个词在一篇文章中出现的概率高,在其他文章中很少出现,则认为此词或者短语具有很好的类别区分能力,适合用来分类TF-IDF:tf — 词频idf — 逆向文档频率API:sklearn.feature_extraction.text.TfidfVectorizer注意:分类机器学习算法进行文章分类中前期数据处理方式def cut_word(sen): """ 中文分词 :return: sen """ # print

2021-08-02 09:16:42 506

原创 人工智能基础(二十)特征提取

特征工程----特征提取1、特征提取将任意数据 (如文本图像)转换为可用于机器学习的数字特征2、特征提取分类:字典特征提取(特征离散化)文本特征提取图像特征提取(深度学习将介绍 )3、apisklearn.feature.extraction4、字典特征提取字典特征提取就是对类别数据进行转换api:sklearn.feature_extraction.DictVectorizer(sparse=True,…)sparse矩阵节省内存提高读写效率属性:DictVectoriz

2021-07-27 00:41:27 2060

原创 人工智能基础(十九)决策树

决策树决策树分类原理1、信息增益信息增益 = entroy (前) - entroy (后)注意:信息增益越大,我们优先选择这个属性进行计算信息增益优先选择属性总类别比较多的进行划分2、信息增益率维持了一个分离信息度量,通过这个分离信息度量当分母,进行限制3、基尼增益基尼值: 从数据集D中随机抽取两个样本,其类别标记不一致的概率Gini(D)值越小,数据集D的纯度越高基尼指数:选择使划分后基尼系数最小的属性作为最优划分属性基尼增益:选择基尼增益最大的点,进行优化划分基尼增益构造过程

2021-07-24 23:05:48 339

原创 人工智能基础(十八)ROC和AUC

ROC和AUCTPR = TP / (TP + FN)所有真实类别为1的样本中,预测类别为1的比例FPR = FP / (FP + TN)所有真实类别为0的样本中,预测类别为1的比例注意:AUC只能用来评价二分类ROC曲线和AUC指标ROC曲线:通过tpr和fpr来进行图形绘制,然后把绘制之后,形成一个指标AUC:越接近1,效果越好越接近0,效果越差注意:这个指标主要用于评价不平衡的二分类问题API:sklearn.metrics.roc_auc_score(y_true, y

2021-07-12 12:06:22 167

原创 人工智能基础(十七)逻辑回归

逻辑回归1、逻辑回归的概念:解决的是一个二分类的问题逻辑回归的输入是线性回归的输出2、原理:输入:线性回归的输出激活函数:sigmod函数,把整体映射到0和1上,再设置一个阈值,进行分类判断损失:对数自然损失,借助了log思想,进行完成,真实值等于0,等于1两种情况进行划分。优化:提升原本属于1的概率,降低原本类别是0的概率3、逻辑回归API介绍sklearn.linear_mode.LogisticRegression()注意:回归、分类的API有时候是可以混合使用的4、案例

2021-07-09 19:42:04 199

原创 人工智能基础(十六)模型的保存与加载

模型的保存与加载from sklearn.datasets import load_bostonfrom sklearn.model_selection import train_test_splitfrom sklearn.preprocessing import StandardScalerfrom sklearn.linear_model import LinearRegression, SGDRegressor, Ridge, RidgeCVfrom sklearn.metrics imp

2021-07-09 11:52:06 271

原创 人工智能基础(十五)欠拟合过拟合、正则化线性模型

欠拟合与过拟合欠拟合在训练集上表现不好,在测试集上表现不好解决方法:继续学习1、添加其他特征项2、添加多项式特征过拟合在训练集上表现好,在测试接上表现不好解决方法:1、重新清洗数据集2、增大数据的3、正则化4、减少特征纬度...

2021-07-09 11:23:42 132

原创 人工智能基础(十四)线性回归API

人工智能基础(十四)线性回归APIapi介绍1、梯度下降法sklearn.linear_model.SGDRegressor(loss=“squared_loss”, fit_intercept=True, learning_rate =‘invscaling’, eta0=0.01)参数:1、loss — 损失(最小二乘)2、learning rate — 学习率一般时都是进行动态的更新,也可以指定成为一个常数,但是不推荐 。梯度下降法介绍1、全梯度下降算法(FG)在进

2021-06-16 12:17:38 76

原创 人工智能基础(十三)线性回归

线性回归线性回归简介1、定义利用回归方程(函数)对一个活多个自变量(特征值)和因变量(目标值)之间关系进行建模的一种分析方式2、表示方式:h(w) = w1 *1+ w2 2 + w33 +… +b= w转置 * x + b3、分类线性关系非线性关系线性回归API初步使用1、APIsklearn.linear_modlel. LinearRegression()属性:linearRegression.conf_:回归系数线性回归的损失和优化1、损失最小二乘法2、优化正规

2021-06-10 10:24:58 563

原创 人工智能基础(十二)案例预测流程分析

Facebook签到位置流程分析:1、获取数据集2、基本数据处理2.1 缩小数据范围2.2 选择时间特征2.3 去掉签到较少的地方2.4 确定特征值和目标值2.5 分割数据集3、特征工程 — 特征预处理(标准化)4、机器学习 — knn+cv5、模型评估...

2021-06-03 17:12:04 248

原创 人工智能基础(十一)交叉验证与网格搜索

交叉验证与网格搜索1、交叉验证1.定义:将拿到的训练数据,分为训练和验证集N折交叉验证2.分割方式:训练集:训练集+验证集测试集:测试集3.为什么需要交叉验证为了让被评估的模型更加准确可信注意:交叉验证不能提高模型的准确率2、网格搜索超参数:sklearn中,需要手动指定的参数,叫做超参数网格搜索就是把这些超参数的值,通过字典的形式传递进去,然后进行选择最优值3、APIestimator = GridSearchCV(estimator, param_grid=param_g

2021-06-02 11:47:19 334

原创 人工智能基础(十)K近邻算法

1.K-近邻算法1.1 K-近邻算法简介1.定义: 就是通过你的"邻居"来判断你属于哪个类别2.如何计算你到你的"邻居"的距离 一般时候,都是使用欧氏距离1.2 k近邻算法api初步使用1.sklearn 优势: 1.文档多,且规范 2.包含的算法多 3.实现起来容易2.sklearn中包含内容 分类、聚类、回归 特征工程 模型选择、调优3.knn中的api sklearn.neighbors.KNeigh

2021-05-31 20:51:30 312

原创 人工智能基础(九)Pandas基础操作

pandas基础1.pandas的优势增强图表可读性便捷的数据处理能力读取文件方便封装了Matplotlib、Numpy的画图和计算2.数据基本操作1.索引操作直接 – 先列后行.loc – 先行后列,索引值iloc – 先行后列,索引值的下标ix – 先行后列,混合索引2.赋值操作对象[‘’]对象. close3.排序操作1.dataframe对象.sort_vlaues()by – 按照什么排序ascending – 升降

2021-04-23 15:10:26 262

原创 人工智能基础(八)Pandas基础介绍

Pandas介绍1.Pandas概念开源的数据挖掘库用于数据探索封装了matplorlib, numpy2.案例知识点1.创建DataFramepd.DataFrame(ndarry)2.创建日期pd.date_range()start — 开始日期end — 结束日期periods — 时间跨度freq — 统计方式3.DataFrame介绍1.dataframe属性对象.shape对象.index对象.columns对象.values

2021-04-21 12:59:19 123

原创 人工智能基础(七)矩阵与数字运算

矩阵1.矩阵和向量矩阵:理解-二维数组向量:理解-一维数组2.加法和标量乘法加法:对应位置相加乘法:标量和每个位置的元素相乘3.矩阵向量(矩阵)乘法4.矩阵乘法性质满足结合律,不满足交换律5.单位矩阵对角线为1,其他位置为0的矩阵6.逆矩阵A*矩阵B = 单位矩阵那么A和B就互为逆矩阵7.转置行列互换数组间运算1.数组与数字是直接可以进行运算*2.数组和数组需要满足广播机制纬度相同shape对应位置为13.矩阵乘法apinp.dot – 点乘np.ma

2021-04-19 10:39:37 366

原创 人工智能基础(六) numpy基础学习

numpy基础学习numpy 优势1.定义开源的Python科学计算库,用于快速处理任意纬度的数组numpy中,存储对象是ndarry2.创建np.array([])3.numpy的优势内存块风格 ----- 一体式存储ndarray支持并行化运算(向量化运算)效率远高于纯Python代码 — 底层使用了C,内部释放了GILN维数组 – ndarry1.ndarray属性属性名字 属性解释ndarray.shape 数组维度的元组ndarr

2021-04-19 09:21:34 90

原创 人工智能基础(五)

人工智能基础(五)Matplotlib学习1、定义主要用于开发2D图表(3D)数据分析,基于分析,进行展示2、绘图流程创建画布绘制图像显示图像3、三层结构容器层canvasfigureaxes辅助显示层添加x轴,y轴描述,标题图像层绘制什么图像的声明...

2021-04-13 11:31:16 339

原创 人工智能基础(四)

人工智能基础(四)机器学习基础环境安装与使用1、库的安装使用matplotlib == 2.2.2numpy == 1.14.2pandas == 0.20.3tables == 3.4.2jupyter == 1.0.02、Jupyter Notebook使用名字来源于Julia、Python、R画图方便、数据展示美观、探索性数据,一边分析,一边运行定义:开源的科学计算平台类比ipython可以运行代码,可以做笔记文件后缀:.ipynbcell: 一对In Out会话被视作一

2021-04-11 10:07:31 83

原创 人工智能基础(三)

人工智能基础(三)机器学习算法分类与模型评估1、监督学习 – 有特征值有目标值目标值连续 — 回归目标值离散 — 分类2、无监督学习 – 仅有特征值3、半监督学习有特征值,但是一部分数据有目标值,一部分没有4、强化学习动态的过程,上一步数据的输出是下一步数据的输入四要素:agent, action, environment, reward模型评估1、分类模型评估准确率精确率召回率F1-scoreAUC指标2、回归模型评估均方根误差相对平方误差

2021-04-09 10:22:07 68

原创 人工智能基础(二)

人工智能基础(二)什么是机器学习:机器学习是从数据中自动分析获得模型,并利用模型对未知数据进行预测。机器学习工作流程:获取数据数据基本处理特征工程机器学习(模型训练)模型评估获取到的数据集介绍:1、专有名词样本特征目标值特征值2、数据类型构成类型一:特征值+目标值目标值分为离散还是连续类型二:只有特征值,没有目标值3、数据划分:训练数据(训练集) — 构建模型0.7–0.8测试数据(测试集) — 模型评估0.2–0.34、数据基本处理即对数据

2021-04-08 17:14:58 105

原创 人工智能基础(一)

人工智能基础(一)人工智能整体分支:计算机视觉(CV)自然语言处理(NLP)机器人人工智能必备三要素:数据算法计算力

2021-04-08 15:48:00 86

原创 NLP基础学习(五)

NLP基础学习(五)模型复杂度O = E * T * QO是模型复杂度E是训练迭代次数T是数据集的大小Q是模型计算复杂度基于NNLM的模型复杂度:基于循环神经网络的语言模型(RNNLM)skip-gram模型复杂度:CBOW模型复杂度:总体的比较:三点结论:采用层次softmax与负采样比前馈神经网络与循环神经网络要快CBOW比skip-gram要快负采样不层次softmax要快...

2021-04-07 19:41:20 66

原创 NLP基础学习(五)

NLP基础学习(五)复杂度降低其中U为周围词矩阵,V为中心词矩阵。方法一:层次softmax

2021-04-07 12:23:27 113

原创 NLP基础学习(四)

NLP基础学习(四)Word2vec知识树log-linear model定义:将语言模型的建立看成是一个多分类的问题,相当于线性分类器加上softmaxY = softmax(wx+b)Word2vec原理语言模型的基本思想:句子中下一个词的出现与前一个词是有关系的,所以可以使用前面的词预测下一个词Word2vec基本思想:句子中相近词是有联系的,比如今天后面常常出现上午,中午,晚上等词语。所以Word2vec的基本思想就是用词来预测词,skip-gram使用中心词预测周围词,而cbow使

2021-04-02 18:13:27 65

原创 NLP基础学习(三)

NLP基础学习(三)Efficient Estimation of Word Representations in Vector Space论文精读对比模型:NNLM(前馈神经网络语言模型)RNNLM(循环神经网络语言模型)第一种Feedforward Neural Net Language Model输入层:隐藏层:输出层:softmax两个性质:1、得到的所有数都是0到1之间的2、所有数相加是1困惑度的计算(困惑度与loss之间的关系):对困惑度求log就是求L

2021-04-02 10:46:37 136

原创 NLP基础学习(二)

NLP基础学习论文一:NLP-baseline-word2vec1、词的表示方法ONE-hot表示形式一个向量只有一个地方是1,其他全是0通过共现次数先构造共现矩阵,但是此时如果词数过多,构造的共现矩阵就会过大,所以这个时候需要进行降维度。SVD:继续向下演进,本文采用word2vec的是分布式表示方法。此时向量里的内容都是一个浮点数而不是0或者1,而这些数是通过训练而得到的。每个词都表示成一个D维的向量,但是这个D远小于词表的大小V。这时候可以通过余弦夹角来表示词与词之间的相似度

2021-04-01 13:48:35 131

原创 NLP基础学习(一)

NLP基础学习首先我们先弄清楚为什么要学自然语言处理,我们的目的就是从大规模文本数据中提取信息,有以下几个场景机器阅读理解信息抽取舆情分析文本分类同时我们需要清楚为什么学习自然语言处理要阅读大量论文技术发展日新月异,通过读论文可以获得最前沿的技术论文可以获取一手的知识熟读唐诗三百首,不会作诗也会吟复现论文也可以提高编程技术:算法工程师:理论水平+工程能力发展方向:ONE-HOT向分布式表示的发展(从一维到多维的发展)机器学习向深度学习发展(自动提取特征)大粒度向小粒度发展

2021-03-30 17:20:34 112

原创 IDA反汇编学习(四)

IDA反汇编学习(四)默认构造函数编译器在什么情况下会提供默认构造函数父类有构造函数本类的成员对象有构造函数需要构造虚函数表#include<stdio.h>class Test{ public: int i; int n; char c; bool b; void fun() { printf('i = %d', i); } };int main{ Test test; //在此处下断点,会发现断点无效 return 0;}

2021-03-30 10:02:01 354

原创 IDA反汇编学习(二)

IDA反汇编函数参数传递函数的栈空间函数的返回值通常把返回值保存在EAX寄存器返回长整型时用EDX传递高32位返回浮点数时使用ST(0)来传递

2021-03-25 09:44:56 242

原创 IDA反汇编基础(三)

IDA反汇编基础变量基础#include'stdio.h'int n = 0x12345678;int main(){ printf('%d\n', n); return 0;}局部变量自动变量,由auto关键词修饰,可省略存在与栈空间中生命周期与所属函数相同访问方式为寄存器相对寻址静态变量由static关键词修饰生命周期与全局变量相同局部静态变量通过标志位来控制初始化全局静态变量本质与全局变量一样堆变量C++用new操作符分配用delete操作符释放

2021-03-24 08:59:34 83

原创 IDA反汇编学习(一)

@TOC**欢迎使用Markdown编辑器你好! 这是你第一次使用 Markdown编辑器 所展示的欢迎页。如果你想学习如何使用Markdown编辑器, 可以仔细阅读这篇文章,了解一下Markdown的基本语法知识。新的改变我们对Markdown编辑器进行了一些功能拓展与语法支持,除了标准的Markdown编辑器功能,我们增加了如下几点新功能,帮助你用它写博客:全新的界面设计 ,将会带来全新的写作体验;在创作中心设置你喜爱的代码高亮样式,Markdown 将代码片显示选择的高亮样式 进行展示;

2021-03-22 10:04:56 636 1

空空如也

空空如也

TA创建的收藏夹 TA关注的收藏夹

TA关注的人

提示
确定要删除当前文章?
取消 删除