![](https://img-blog.csdnimg.cn/20201014180756757.png?x-oss-process=image/resize,m_fixed,h_64,w_64)
人工智能
文章平均质量分 79
breakloop
芸芸众生,你总得做点特别的事情。不是矫情,只是不想凑合罢了。
展开
-
我的人工智能之旅——逻辑回归
本文,将涉及以下知识点,(1)决策边界,decision boundary(2)凸函数,convex function(3)非凸函数,non convex function此前所讨论的问题,都为线性回归问题。本文将介绍逻辑回归算法,该算法为分类问题提出解决方案。正文如下逻辑回归逻辑回归,logistic regression,由于历史问题,算法名称中包含“回归”字样,但其解...原创 2018-08-31 14:21:00 · 1335 阅读 · 0 评论 -
我的人工智能之旅——微积分基础
1.导数从一元函数图像上看,某一点的导数,即曲线在该点的切线。一个函数在某一点的导数,描述了这个函数在这一点附近的变化率。当函数f(x)的自变量,在一点x上产生了一个增量h,若因变量的增量与自变量h的比值,在h趋于0时的极限如果存在,那该比值即为f(x)在点x处的导数。这里要注意一下几点(1)不是所有的函数都是可导的。(2)可导的函数一定是连续的。(3)不连续的函数...原创 2018-08-31 14:25:55 · 6263 阅读 · 0 评论 -
我的人工智能之旅——引子
人工智能不想人云亦云,于是来刨别家祖坟,一探究竟。人工智能,一个热得不知所措的话题。就跟当年的“云”一样,聊得臭大街了,但什么是云?就想把你绕晕,其实都在云里雾里。人工智能,artificial intelligence,缩写AI。由于命名的开放性,使得其定义轮廓较为模糊。简单来说,它是计算机学科的分支之一,是使用计算机模拟和学习人类思维过程和智能行为的学科。人工智能已经存在人们身边很...原创 2018-08-31 14:19:31 · 469 阅读 · 0 评论 -
我的人工智能之旅——线性回归
本文将涉及以下知识点(1)线性关系(2)线性回归(3)假设函数(4)代价函数(5)学习速率(6)梯度下降(7)特征向量相关的线性代数或微积分知识,可参照另两篇博文我的人工智能之旅----线性代数基础知识我的人工智能之旅----微积分基础知识以下是正文。线性关系解释线性回归之前,先来看一下线性关系。什么是线性关系?如果自变量与因变量存在一次方函...原创 2018-08-31 14:20:39 · 5588 阅读 · 1 评论 -
LaTeX详解
函数、符号及特殊字符声调语法效果语法效果语法效果\bar{x}latex数学符号表(2)” style=”border:none; max-width:100%”>\acute{\eta}latex数学符号表(2)” style=”border:none...转载 2018-07-20 15:05:10 · 4738 阅读 · 0 评论 -
我的人工智能之旅——梯度下降vs正规方程法
本文将涉及以下知识点(1)特征缩放(2)均值归一化(3)正规方程优化梯度下降算法在上一篇博文中,我们了解了梯度下降算法,它为解决线性回归问题提供了思路。但梯度下降的迭代推算过程,较为耗时。简单地说,整个算法是一个不断尝试收敛的过程。如果能够降低算法的尝试次数,以及每次迭代的算法复杂度,那么,便能更高效的解决线性回归问题。影响梯度下降算法收敛速度的因素很多,例如样本集合大小,...原创 2018-08-31 14:23:39 · 1875 阅读 · 0 评论 -
我的人工智能之旅——正则化
无论线性回归,还是逻辑回归,都需要对假设函数进行设定。而假设函数的设定,将影响到预测结果的准确性。因此,如何判断假设函数是否合适,以及如何修改假设函数将变得十分重要。本文,我们将记录假设函数的正则化。在记录的过程当中,将涉及以下概念。(1)过度拟合,overfitting(2)欠拟合,underfitting(3)正则化,regularization(4)惩罚项(或正则化项),pe...原创 2018-08-31 14:25:13 · 945 阅读 · 0 评论 -
我的人工智能之旅——神经网络
神经元,neuron神经网络,Neural Networks激活函数,activation function权重,weight输入层,input layer输出层,output layer隐藏层,hidden layer向前传播,forward propagation人工神经网络人工神经网络是一种机器学习算法,兴起于上世纪八九十年代,但由于其本身计算量较大,受制...原创 2018-08-31 14:39:02 · 2622 阅读 · 0 评论 -
我的人工智能之旅——基本数学基础
1.自然常数自然常数e,为无限不循环小数,数值约为2.71828...,其数学定义为,即。2.幂&指数幂(power),是指乘方运算的结果。是指x个a相乘,称为a的x次幂。其中,a为底数,x为指数。指数运算,也称为幂运算。常用的幂运算公式如下:(1)(2)(3)(4)(5)(6),其中(7),其中3.对数若,其中a>0且a1,则,a...原创 2018-08-31 14:26:16 · 3429 阅读 · 1 评论 -
我的人工智能之旅——假设函数模型的选择
如何选择假设函数模型通常假设函数的模型为,其中n为最高次数,那么如何来确定n的取值呢?通常的做法是,(1)确定多个n值,例如,形成多个假设函数(2)将数据集分成三部分,训练集,交叉验证集,测试集,通常所占比例分别为60%,20%,20%。(注意,测试集选定后,不再变动。)(3)使用训练集对不同的假设函数模型进行训练,确定最优参数。(注意,在训练过程中,需要假如正则化惩罚...原创 2018-10-12 10:12:53 · 884 阅读 · 1 评论 -
我的人工智能之旅——概率统计基础(更新中)
偏差体现的是,学习算法的期望预测与真实结果的偏离程度。通常出现在欠拟合的情况下。方差体现的是,同样大小的训练集的变动所导致的学习性能的变化。通常出现在过拟合的情况下。训练效果不错,但测试效果不好。数学期望,即平均值。公式为方差是指,每个样本值与全体样本值的平均数之差的平方值的平均数。公式为均方差即为标准差,是方差的算术平方根。公式为均方误差,与均方差一字之差,但却与方差相近,将...原创 2018-10-12 11:12:02 · 1068 阅读 · 1 评论 -
我的人工智能之旅——近邻算法KNN(K-Nearest Neighbor)
在图像识别中,图像分类是首要工作。因为需要将不同类型的图像先进行排除。近邻算法是最简单的算法之一,但由于其弊端的存在,本篇只做了解性的简单介绍,K近邻算法的实质将测试图片在已经分类好的,具有不同标签的训练数据图片中,找到K张最相似的图片,进而根据K张图片中类型的比例大小,推断图片类型。判断图片的相似程度,就需要用到距离算法。我们知道,图片的电子存在形式是多维的矩阵数据,不同的维度代表区域(...原创 2018-10-09 10:30:49 · 1061 阅读 · 0 评论 -
我的人工智能之旅——偏斜类问题
偏斜类问题正样本数占样本总数的比例极小时,容易出现偏斜类问题。例如癌症测试。样本集合中仅有0.5%的癌症样本,99.5%的正常样本。通过某一假设函数后,得到1%为癌症患者,99%为正常样本。虽然总的正确率高达99%,但假设函数并不理想。因为,我们的目的是为了,检测出是否得癌。这时候,如果将99%的准确率提升至99.2%,无疑是一个较大的提升,虽然,在数值上来看,只有0.2%。因此,...原创 2018-10-16 15:14:54 · 965 阅读 · 0 评论 -
android_native_app_glue框架使用流程
使用原因最近项目中用到ndk camera,因此,学习了一下google所提供的ndk sample。sample中有两个module,分别是basic和texture-view。texture-view module将textureview作为传参,传入ndk camera。而basic module通过android_native_app_glue框架绑定对应Activity,无需传入...原创 2019-08-13 18:56:20 · 4399 阅读 · 0 评论 -
我的人工智能之旅——线性代数基础
1.矩阵矩阵,matrix,为m行n列的数据阵列。例如下例,为4x3阶矩阵。2.方阵mxn阶矩阵的m=n时,称为方阵,n阶方阵。3.单位矩阵单位矩阵,是指对角线数据为1,其它数据为0的n阶方阵。4.逆矩阵逆矩阵,matrix inverse。只有方阵才有逆矩阵。n阶矩阵A的逆矩阵,必须满足以下条件其中I为n阶单位矩阵。不是所有的矩阵都有逆矩阵。对...原创 2018-08-31 14:25:41 · 2233 阅读 · 0 评论 -
Python3学习笔记:逻辑语句
Python中没有类似于java的边界符{},而是使用缩进来划定逻辑边界,此外逻辑条件语句后,都带有“:”。条件语句条件语句的格式如下: if condition1: action1 elif condition2: action2 else: action3示例如下: A=int(input("input A Pleas...原创 2018-06-19 22:37:37 · 309 阅读 · 0 评论 -
Python3学习笔记:异常
错误类型编程过程中,通常存在三种错误。语法错误,逻辑错误和异常。语法错误,通常IDE会给出提示,例如丢失“:”。逻辑错误和异常,则多是因为设计缺陷造成。逻辑错误的输出,与期望不同。例如缺少了“==”判断时,compare(1,1),将输出“1<1”。而异常则直接叫停程序。还以compare方法为例,当输入皆为数字时,不会出错。但类型不同时,输出便不那么友好了。例如compare(1,"1")...原创 2018-06-24 14:37:18 · 535 阅读 · 0 评论 -
Python3学习笔记:数字运算
Python3中只有三种数据类型:整数,浮点数,复数(包括实数和虚数)。我们通过一段代码来看一下显示效果。if __name__ == '__main__': a=1 b=2 c=3 d=4 e=5.0 f=3.1 g=-1 print("a=",a) print("b=",b) print("c=",c)...原创 2018-06-14 17:36:16 · 463 阅读 · 0 评论 -
Python3学习笔记:逻辑运算中的AND, OR
Python3中的逻辑运算,跟其它语言的逻辑运算存在差别。当运算数据皆为布尔类型时,逻辑运算思路相同。例如if __name__ == '__main__': print("true and true =", True and True) print("true and false =", True and False) print("false and true =", ...原创 2018-06-14 16:33:13 · 4662 阅读 · 1 评论 -
Python3学习笔记:类
Python的类定义相对java要简单的多。Python类没有修饰符,成员对象的定义也相对灵活。首先,需要了解一下点原创 2018-06-24 12:58:56 · 261 阅读 · 0 评论 -
Python3学习笔记:函数
函数结构先来看个例子,原创 2018-06-21 00:02:47 · 246 阅读 · 0 评论 -
Python3学习笔记:模块
Python代码通常以.py文件形式保存。而每个.py文件都可以看作是一个模块。当一个模块调用另一个模块时,便需要import语句。在此前的章节中,我们以看到import语句的使用。若在同一package下,则只需要调用import moduleName即可。否则需要使用from package.moduleName import moduleName。...原创 2018-06-25 23:56:09 · 551 阅读 · 0 评论 -
Python3学习笔记:Debugger speedups using cython not found
1.warning: Debugger speedups using cython not found. warning: Debugger speedups using cython not found. Run '"C:\Python\Python36\python.exe" "C:\D\J2EESpace\eclipseNEON2\plugins\org.python.pydev.core_...原创 2018-06-25 13:18:39 · 3336 阅读 · 5 评论 -
Python3学习笔记:文件
目录操作os模块提供了很多方法来完成常见的目录操作。本节我们介绍几个常用方法。至于其他方法,可以通过dir(),help()了解。示例为目录的创建和删除操作。import osdirname=os.path.abspath('.')+'\\txt\\' if not os.path.exists(dirname): os.makedirs(dirname) print("c...原创 2018-06-27 17:25:56 · 388 阅读 · 0 评论 -
Python3学习笔记:包
若目录下存在__init__.py,则该目录被python视为一个包(package)。__init__.py也是一个模块,可以编写代码。但其主要功能是定义__all__。当执行from packageName import *时,仅导入__all__所指定的内容。__all__默认为package下所有模块,但不包括子package。例如,目录结构为在P1下的__init__.py中,重新定义_...原创 2018-06-26 13:06:33 · 341 阅读 · 0 评论 -
Python3学习笔记:队列
队列,即先进先出的数据存储容器。与栈(后进先出)相反。Python中有单独的模块用来实现队列,即collections中的deque。deque初始化时,需要以列表作为传参。from collections import dequeif __name__ == '__main__': list1=[1,2.0,3+4j,5-6j,-7+8j,-9-1j,"breakloop"] ...原创 2018-06-18 22:34:35 · 438 阅读 · 0 评论 -
Python3学习笔记:集合
集合集合的表现形式跟元组类似,元组用()包含所有元素,集合则用{}包含所有元素。集合的作用在于计算交集,并集,差集。集合有如下特点:(1)确定性:集合中的元素不能为变量(2)唯一性:集合中元素的值不能重复(3)无序性:集合中的元素没有索引创建集合if __name__ == '__main__': set1={"abc","def",1,0,-5,2.343,-9+6j} set2...原创 2018-06-18 21:55:31 · 424 阅读 · 0 评论 -
Python3学习笔记:字典
Python中的字典用于存储 key-value(键值对)类型数据。字典的表现形式if __name__ == '__main__': dict1={1:"a",2:23,4:1+5j} dict2={"1":"j","2":2} dict3={} dict4={"1+2j":4,"4-5j":5} dict5={"1+7j":4原创 2018-06-18 16:28:57 · 200 阅读 · 0 评论 -
Python3学习笔记:元组
Python中的元组,等同于java中的finial对象。一旦定义不能修改。元组的表现形式if __name__ == '__main__': tuple1 =() tuple2=(1,) tuple3=(1,2.345,-6,7+8j,"breakloop") tuple4=9,10,22,-1,4-1j tuple5=(tuple1,tuple2,tup...原创 2018-06-18 15:20:21 · 283 阅读 · 0 评论 -
Python3学习笔记:列表
列表Python中的列表,可以视为java中的集合,是一个各种类型数据的集合。当然列表可以为空。 list1=[1,2.34,"name",4+5j] list2=[2,34,567,89] list3=[] list4=[list1,list2,list3]访问列表内容Python中的列表,可以访问一个元素或多个元素的子集。访问子集的方法跟字符串类型类似,同样范围为...原创 2018-06-18 14:33:21 · 343 阅读 · 0 评论 -
Python3学习笔记:字符串
if __name__ == '__main__': str1 ="my name is XXX" str2 ="XXX" str3 ="breakloop" str4=17 str5=234.56789字符串,字符数组Python3中的字符串可以等同于字符串数组。例如 print("str1[0] =", str1[0]) print("st...原创 2018-06-18 12:33:40 · 490 阅读 · 0 评论