MongoDB 教程
MongoDB 教程
MongoDB 是一个基于分布式文件存储的数据库。由 C++ 语言编写。旨在为 WEB 应用提供可扩展的高性能数据存储解决方案。
MongoDB 是一个介于关系数据库和非关系数据库之间的产品,是非关系数据库当中功能最丰富,最像关系数据库的。
MongoDB简介
什么是MongoDB?
MongoDB 是由C++语言编写的,是一个基于分布式文件存储的开源数据库系统。
在高负载的情况下,添加更多的节点,可以保证服务器性能。
MongoDB 旨在为WEB应用提供可扩展的高性能数据存储解决方案。
MongoDB 将数据存储为一个文档,数据结构由键值(key=>value)对组成。MongoDB 文档类似于 JSON 对象。字段值可以包含其他文档,数组及文档数组。
window安装MongoDBMongoDB安装包括两部分,一个是将MongoDB的服务下载下来并且安装到自己电脑;
一个是可视化界面(解释:你下了MongoDB服务当然要用起来啊,固然你可以使用命令行的客户端,但是建议你安装MongoDB Compass可视化界面,用起来很方便) ...
深度分析Jieba
Jiebajieba库是一款优秀的 Python 第三方中文分词库
特点
支持三种分词模式:
精确模式:试图将语句最精确的切分,不存在冗余数据,适合做文本分析
全模式:将语句中所有可能是词的词语都切分出来,速度很快,但是存在冗余数据
搜索引擎模式:在精确模式的基础上,对长词再次进行切分
支持繁体分词
支持自定义词典
MIT 授权协议
安装说明代码对 Python 2/3 均兼容
全自动安装:easy_install jieba 或者 pip install jieba / pip3 install jieba
半自动安装:先下载 http://pypi.python.org/pypi/jieba/ ,解压后运行 python setup.py install
手动安装:将 jieba 目录放置于当前目录或者 site-packages 目录
通过 import jieba 来引用
算法
基于前缀词典实现高效的词图扫描,生成句子中汉字所有可能成词情况所构成的有向无环图 (DAG)
采用了动态规划查找最大概率路径, 找出基于词频的最大切分组合
对于未登录词,采 ...
python基础部分和numpy简单应用
Python基础部分我们首先巩固一下Python的基础知识。Python有6种标准数据类型:Number(数字),String(字符串),List(列表),Tuple(元组),Set(集合),Dictionary(字典)。其中:不可变数据:Number(数字)、String(字符串)、Tuple(元组)。可变数据:List(列表)、Dictionary(字典)、Set(集合)。
1. List[列表]
列表由方括号[]包裹,每个位置的数值可变
1list = [1, 2, 3, 4, 5, 6]
根据位置取值,如取第2个位置的值:
1234list[1]out: 2a[2: ]out: [3, 4, 5, 6]
改变指定位置的值:
1list[0] = 9
列表a此时输出为 [9, 2, 3, 4, 5, 6]。
2. Tuple(元组)
元组由圆括号 ( ) 包裹,每个位置的数值不可变。允许数据重复
1tuple = ('a', 'a, 'c', 1, 2, 3.0)
输出('a', ...
数学符号及希腊字母
数学符号及希腊字母本文列出了常用的机器学习数学符号(Mathematical notations),包含代数、微积分、线性代数、概率论、集合论、统计学以及希腊字母。
代数
符号
名称
描述
例子
(f∘g)
复合函数
嵌套函数
(f∘g)(x)=f(g(x))
∆
德耳塔
变化/区别
∆x=x_1-x_0
e
欧拉数
e=2.718281828
$ s=$ s= \frac{1}{1+e^{-z}}$
∑
求和
求和
∑x_i=x_1+x_2+x_3
∏
大写派
所有数的乘积
∏x_i=x_1∙x_2∙x_3
ϵ
艾普西隆
0附近的小数
lr=1e-4
微积分
符号
名称
描述
例子
x′
一阶导数
一阶导数
(x^2)′ =2x
x″
二阶导数
二阶导数
(x^2)″ =2
lim
极限
x接近0时的函数值
∇
nabla
梯度
∇f(a,b,c)
线性代数
符号
名称
描述
例子
...
备份压缩命令
备份压缩命令!!! 如果是在jupyter下使用,每天命令开头需要加!
zip使用
1zip [参数] [打包后的文件名] [打包的目录路径]
常用参数:-a 将文件转成ASCII模式
-F 尝试修复损坏的压缩文件
-h 显示帮助界面
-m 将文件压缩之后,删除源文件
-n 特定字符串 不压缩具有特定字尾字符串的文件
-o 将压缩文件内的所有文件的最新变动时间设为压缩时候的时间
-q 安静模式,在压缩的时候不显示指令的执行过程
-r 将指定的目录下的所有子目录以及文件一起处理
-S 包含系统文件和隐含文件(S是大写)
例如:
将指定目录/tmp压缩成test.zip文件
1zip -r test.zip tmb/
unzip使用:
1unzip [参数] [待解压缩文件]
常用参数:-n 解压缩时不要覆盖原有的文件;
-o 不必先询问用户,unzip执行后覆盖原有的文件;
-P [密码] 使用zip的密码选项;
-q 执行时不显示任何信息;
-d [目录] 指定文件解压缩后所要存储的目录;
例如:
将压缩文件text.zip在当前目录下解压缩。
1unzip ...
sklearn.datasets.fetch_20newsgroups下载报错的问题
下载报错的问题报错1forbidden 403
解决方案
手动下载正确的安装包
https://ndownloader.figshare.com/files/5975967
在我的电脑C:\Users(你的 user_name)\scikit_learn_data\20news_home 目录下,将下载好的压缩包拖进去(如果之前没有的需要自己手动创建)
python 下载的文件叫20new-sbydate.tar.gz,自己下载的叫20newsbydate.tar.gz,所以需要改文件名字;
改成->
中间的-一定看清楚!!!
通过 D:你的项目下\venv\Lib\site-packages\sklearn\datasets找到其中的 twenty_newsgroups.py,打开进行如下的修改
python如果用本机python就找 python 的安装目录
打开文件位置
这里打开的只是快捷方式, 再从快捷方式找到实际文件位置
再按流程来
jupyter如果用的jupyter
之后流程和python一样
修改文件查找twenty_newsgroups.p ...
真正学会用jupyter
前言
数据分析为什么常用 Jupyter 而不是直接使用 Python 脚本或 Excel?
jupyter 的优势
无需 IDE,一个浏览器搞定
互式开发和直观的数据展示
叙述性文本的特性让其直接变成展示文档
多种类型变化,可直接转换成 python,md 等类型文件
完全免费
还支持 R 语言
最主要的优势就是交互式开发和实时展示功能
这基本上能保证每一步的结果都是正确可靠的
这对于数据分析尤为重要,因为中间只要写错一步,最后的结果可能跟真实结果大相径庭
同时 jupyter 还可以远程连接云服务做大数据,甚至深度学习
食用建议
首先熟练适用键盘,确定自己打字没问题,键盘的效率比鼠标高得不是一星半点
最好先学习一下 Markdown 语法, 对于做笔记来说实在是太好用了! 在我的其他文章里有教程,只需要花十几二十分钟就会用了
jupyter 使用命令模式jupyter 里有命令模式和编辑模式
命令模式下 代码块左边显示为蓝色
编辑模式变为命令模式需要按下 键盘左上角的ESC键
我们可以使用很多快捷键
例如
dd:删除当前代码块
b:在下方添加一个代码块
a:在上方添加一个 ...
机器学习代码全收录
前言本文章用于收录本学期所有机器学习代码, 欢迎大家查看
如代码有误可联系我!
本人会在最快的时间内把Bug修复
2023/2/23
归一化
123456789101112131415161718192021222324import numpy as npfrom sklearn.neighbors import KNeighborsClassifier as knnar_x = [[4032, 1680, 1450, 5.3, 5.6], [4330, 1535, 1885, 7.8, 14.5], [4053, 1740, 1449, 6.2, 10.8], [5087, 1868, 1500, 8.5, 25.6], [4560, 1822, 1645, 7.8, 15.8], [3797, 1510, 1820, 5.5, 9.6]]ar_y = [0, 1, 0, 1]ar_yy = [0, 1, 0, 1, 1, 0]ar_min = np.min(ar_x, 0)print(ar_ ...
机器学习
KNNkNN 算法概述KNN 可以说是最简单的分类算法之一,同时,它也是最常用的分类算法之一,注意 KNN 算法是有监督学习中的分类算法,它看起来和另一个机器学习算法 Kmeans 有点像(Kmeans 是无监督学习算法),但却是有本质区别的。那么什么是 KNN 算法呢,接下来我们就来介绍介绍吧。
算法介绍KNN 的全称是 K Nearest Neighbors,意思是 K 个最近的邻居
K 个最近邻居,毫无疑问,K 的取值肯定是至关重要的。
KNN 的原理就是当预测一个新的值 x 的时候,根据它距离最近的 K 个点是什么类别来判断 x 属于哪个类别
图中绿色的点就是我们要预测的那个点,假设 K=3。
那么 KNN 算法就会找到与它距离最近的三个点(这里用圆圈把它圈起来了),看看哪种类别多一些,比如这个例子中是蓝色三角形多一些,新来的绿色点就归类到蓝三角了。
但是,当 K=5 的时候,判定就变成不一样了。这次变成红圆多一些,所以新来的绿点被归类成红圆。从这个例子中,我们就能看得出 K 的取值是很重要的。
明白了大概原理后,我们就来说一说细节的东西吧,主要有两个, ...
JAVA教程
前言JAVA的三大版本JAVA最大的特点:
Java的主要优势在于其做出的WORA:即一次编写(Write Once)、随处运行(Run Anywhere)。简 单来讲,这意味着开发团队能够利用Java编写一款应用程序,并将其编译为可执行形式,而后将其运行 在任何支持Java的平台之上。这显然能够极大提高编程工作的实际效率,这种优势来源于Java Virtual Machine(JAVA虚拟机的缩写),JVM是一种用于计算设备的规范,它是一个虚构出来的计算机,是通过在 实际的计算机上仿真模拟各种计算机功能来实现的。JAVA语言的一个非常重要的特点就是与平台的无关 性,而使用Java虚拟机是实现这一特点的关键。
JAVA的三大版本:
JAVA SE:它是JAVA的标准版,是整个JAVA的基础和核心,这是我们主要学习的一个部分,也是 JAVAEE和JAVAME技术的基础,主要用于开发桌面应用程序。学会后可以做一些简单的桌面应用 如:扫雷,连连看等。
JAVA ME:它是JAVA的微缩版,主要应用于嵌入式开发,比如手机程序的开发。目前来说就业范围 不是很广,在一些城市可能相对的不好找工作 ...