在这篇文章中,我将用数学解释逻辑回归,介绍逻辑回归、sigmoid函数以及最大似然估计三者之间的关系。然后使用python中的梯度下降实现一个逻辑回归示例。本文主要包括五个问题:1.什么是Logistic回归?2.为什么不使用线性回归?3.最大似然估计(MLE)4.梯度下降5.附python梯度下降实现代码Logistic回归Logistic回归是一种经典的统计模型,已广泛应用于学术界和工业界。与
原创
2021-04-04 15:52:07
228阅读
感知器算法是神经网络最早的形式,随着神经网络的不断发展与深化,感知器算法现在已经不经常使用了,但其原理对我们理解神经网络是非常有帮助的,而且感知器算法原理比较简单,理解起来难度不大。下面我们将从三个方面来解读一下感知器算法。1.什么是Perceptron?2.目标优化3.在Python中实现什么是Perceptron?Perceptron由Frank Rosenblatt开发,并于1962年出版的
原创
2021-04-04 15:44:03
720阅读
在这篇文章中,我将介绍knn算法,knn算法是机器学习中十大经典算法之一。knn可用于分类和回归问题,其算法原理简单,没有涉及太多数学原理,准确的说用一个数学公式就可以表示整个算法的核心。本文主要包括以下四个问题:1.什么是knn?2.knn算法原理3.如何在KNN中选择k值?4.knn优缺点什么是knnKnn,也叫k近邻,是一种简单的机器学习算法,其中k是一个参数,是指包含的最近邻居的数量。它根
原创
2021-04-04 15:51:00
1220阅读
基础1、字符串处理函数常用“字符串数组互转、截取、查询位置、随机生成、判
原创
2023-04-04 22:02:11
36阅读
回溯算法框架回溯算法基本概念全排列问题回溯算法基本概念回溯算法框架
原创
2022-02-21 16:49:50
50阅读
算法研习指导算法的框架思维数据结构的存储方式算法的框架思维数据结构的存储方式数据结构的存储方式只有两种:数组: 顺序存储链表: 链式存储散列表, 栈, 队列, 堆, 树, 图都是通过数组和链表的结构基础实现的上层建筑...
原创
2022-03-09 16:27:53
58阅读
回溯算法框架回溯算法基本概念全排列问题回溯算法基本概念回溯算法框架 : 解决一个回溯问题,实际上就是一个决策树的遍历过程路径: 已经做出的选择选择列表: 当前可以做的选择结束条件: 到达决策树底层,无法再做选择的条件回溯算法框架代码:result[];def backTrack(路径, 选择列表): if 满足条件: result.add[路径] return for 选择 in 选择列表: 做选择 backTrack(路径, 选择列表) 撤销选择
原创
2021-05-18 14:35:47
214阅读
算法研习指导算法的框架思维数据结构的存储方式算法的框架思维数据结构的存储方式数据结构的存储方式只有两种:数组: 顺序存储链表: 链式存储散列表, 栈, 队列, 堆, 树, 图都是通过数组和链表的结构基础实现的上层建筑...
原创
2021-05-18 14:35:53
262阅读
双指针技巧基本概念快慢指针判断链表中是否包含环返回有环链表中环的起始位置当快慢指针相遇时,让其中的任意指针指向头结点**head.** 然后快慢指针以相同的速度前进,再次相遇时所在的节点位置就是环的开始位置:基本概念双指针技巧分为两类:快慢指针:主要解决链表中的问题比如判定链表中是否包含环左右指针:主要解决数组或者字符串问题比如二分查找快慢指针快指针:初始化指向链表的头结点head前进时快指针fast在前,慢指针slow在后可以巧妙解决链表中相关的问题
原创
2021-05-18 14:35:42
227阅读
滑动窗口基本概念基本概念滑动窗口: 是高级双指针技巧的算法框架,涉及字符串匹配问题滑动窗口使用的数据结构:unordered_map : 哈希表包含一个方法count(key), 相当于containsKey(key). 可以判断key是否存在map[key] :可以使用方括号访问键对应的值map[key].
原创
2022-02-14 15:32:12
75阅读
双指针技巧基本概念快慢指针判断链表中是否包含环返回有环链表中环的起始当快慢指针相遇时,让其中的任意指针指向头结点**head.
原创
2022-03-09 17:39:49
67阅读
滑动窗口基本概念基本概念滑动窗口: 是高级双指针技巧的算法框架,涉及字符串匹配问题滑动窗口使用的数据结构:unordered_map : 哈希表包含一个方法count(key), 相当于containsKey(key). 可以判断key是否存在map[key] :可以使用方括号访问键对应的值map[key]. 需要注意,如果该key不存在,会自动创建这个key, 并且将map[key] 赋值为0map[key]++ 相当于Java的map.put(key, map.getOrDe
原创
2021-05-18 14:35:44
244阅读
基本概念在Linux中,进程就是一个数据结构理解文件描述符,重定向,管道命令的底层工作原理,就可以从操作系统的角度理解Linux中的线程和进程是没有区别的进程计算机结构计算机结构:
上半部表示用户空间下半部表示内存空间内存空间:进程磁盘输入输出设备用户空间: 装着用户进程需要使用的资源内核空间: 存放内核进程需要加载的系统资源,这些资源一般是不允许用户访问的. 但是有的用户进程会共享一些内核
原创
2021-05-18 14:25:40
184阅读
Linux的进程,线程和文件描述符基本概念进程计算机结构基本概念在Linux中,进程就是一个数据结构理解文件描述符,重定向,管道命令的底层工作原理,就可以从操作系统的角度理解Linux中的线程和进程是没有区别的进程计算机结构计算机结构:内存空间:
原创
2022-02-14 15:37:34
108阅读
决策树(Decision Trees,DT)是一中监督机器学习算法,该算法根据数据的特征进行逐层划分直到划分完所有的特征,这一过程类似于树叶生长过程。决策树算法可用于解决分类和回归问题,在实际数据分析中有着广泛的应用。下面我们从以下5个方面来分析一下决策树算法:1.什么是决策树2.几种经典的决策树算法3.决策树如何解决分类问题4.决策树的优缺点5.决策树的实际应用什么是决策树DT由节点,分支和叶子
原创
2021-04-04 15:35:48
493阅读
决策树(Decision Trees,DT)是一中监督机器学习算法,该算法根据数据的特征进行逐层划分直到划分完所有的特征,这一过程类似于树叶生长过程。决策树算法可用于解决分类和回归问题,在实际数据分析中有着广泛的应用。下面我们从以下5个方面来分析一下决策树算法:1.什么是决策树2.几种经典的决策树算法3.决策树如何解决分类问题4.决策树的优缺点5.决策树的实际应用什么是决策树DT由节点,分支和叶子
原创
2021-04-04 15:35:53
562阅读
支持向量机(SVM)是一种监督学习算法,可用于分类和回归问题。支持向量机是最常用也是大家最熟悉的算法,你可能不懂其算法原理,但你绝对听说过这种算法。今天算法研习第三节就来说说关于向量机的基本思想,具体有以下五个问题。1、什么是SVM?2、超平面和支持向量3、SVM内核4、特征选择5、Python调用SVM什么是SVM支持向量机(SVM)是一种机器学习算法,可用于许多不同的任务。SVM的主要目标是找
原创
2021-04-04 15:50:05
666阅读
动态规划算法详解动态规划算法问题最优子结构动态规划算法问题什么叫作最优子结构? 和动态规划有什么关系?为什么动态规划遍历DP数组的方式有正着遍历,有倒着遍历,有斜着遍历?最优子结构最优子结构是某些问题的一种特定的性质,并不是动态规划问题所特有的.很多问题都具有最优子结构,但是其中大部分不具有重叠子问题,所以不会归为动态规划系列的问题最优子结构:可以从子问题的最优结果推导出更大规模问题的最优结果子问题之间必须相互独立通过改造问题来优化由于子问题之间不独立而导致的最优子结构失效的
原创
2021-05-18 14:35:49
235阅读
动态规划算法框架动态规划算法动态规划算法动态规划问题的一般形式就是求最值:动态规划是运筹学的一种最优化方法动态规划的应用场景:求最长递增子序列求最小编辑距离动态规划的核心问题:穷举因为要求最值,肯定要将所有可行的答案穷举出来,然后在其中找最值动态规划的穷举很特殊:存在重叠子问题:如果暴力穷举效率低下需要使用备忘录或者DP Table来优化穷举过程,避免不必要的计算具备最优子结构: 这样才能通过子问题的最值找到原问题的最值列出正确的状态转移方程才能正确
原创
2021-05-18 14:35:51
268阅读
动态规划算法框架动态规划算法动态规划算法动态规划问题的一般形式就是求最值列出正确的状态转移方程才能正确
原创
2022-03-09 15:53:40
113阅读