AI机器学习: 在 macOS 上安装谷歌的TensorFlow, machine learning, 人工智能学习

在 macOS 上安装 TensorFlow 本指南将介绍如何在 macOS 上安装 TensorFlow。虽然这些指令可能也适用于其他 macOS 版本,但我们只在满足以下要求的计算机上对这些指令进行过测试(并仅支持这些指令): macOS 10.12.6 (Sierra) 或更高版本 注意:GitHub#15933 中介绍了在低于 macOS 10.12.6 (Sierra) 的版本上已知的一些影响准确率的数值问题。… Read More

AI机器学习: 在 Windows 上安装谷歌的TensorFlow, machine learning, 人工智能学习

在 Windows 上安装 TensorFlow 本指南将介绍如何在 Windows 上安装 TensorFlow。虽然这些说明可能也适用于其他 Windows 版本,但我们只在满足以下要求的计算机上验证过这些说明(而且我们只支持在此类计算机上按这些说明操作): 64 位、x86 台式机或笔记本电脑 Windows 7 或更高版本 确定要安装哪种 TensorFlow 您必须从以下 TensorFlow… Read More

AI机器学习: 在 Ubuntu 上安装谷歌的TensorFlow, machine learning, 人工智能学习

  本指南将介绍如何在 Ubuntu 上安装 TensorFlow。虽然这些说明可能也适用于其他 Linux 版本,但我们只在满足以下要求的计算机上验证过这些说明(而且我们只支持在此类计算机上按这些说明操作): 64 位台式机或笔记本电脑 Ubuntu 16.04 或更高版本 确定要安装哪种 TensorFlow 您必须从以下 TensorFlow 类型中选择其一来进行安装: 仅支持 CPU 的… Read More

Ubuntu:为Python3安装 pip3, 绑定 pip3到 python3, How to install pip for Python 3.6 on Ubuntu 16.10?

  首先通过以下命令查看 Python 的版本 python -V 关于切换 Python 默认版本,可以参考文章:转换Python默认版本 安装 pip3,很多时候,你会发现,自己已经安装了,但是系统会提示没有这个命令,例如: sudo pip3 install virtualenv sudo: pip3: command not found… Read More

Linux: chattr 、lsattr 命令详解, 防止文件被删除, 添加修改文件属性, 禁止删除或只能追加内容

有时候你发现用root权限都不能修改某个文件,大部分原因是曾经用chattr命令锁定该文件了。chattr命令的作用很大,其中一些功能是由Linux内核版本来支持的,不过现在生产绝大部分跑的linux系统都是2.6以上内核了。通过chattr命令修改属性能够提高系统的安全性,但是它并不适合所有的目录。chattr命令不能保护/、/dev、/tmp、/var目录。lsattr命令是显示chattr命令设置的文件属性。 什么?文件还有隐藏属性?光是那九个权限就快要疯掉了,竟然还有隐藏属性,真是要命~ 但是没办法,就是有文件的隐藏属性存在啊!不过,这些隐藏的属性确实对於系统有很大的帮助的~ 尤其是在系统安全 (Security) 上面,重要的紧呢!不过要先强调的是,底下的chattr命令只能在Ext2/Ext3的文件系统上面生效, 其他的文件系统可能就无法支持这个命令了。底下我们就来谈一谈如何配置与检查这些隐藏的属性吧! 这两个命令是用来查看和改变文件、目录属性的,与chmod这个命令相比,chmod只是改变文件的读写、执行权限,更底层的属性控制是由chattr来改变的。 chattr 命令 chattr – 改变 Linux 文件系统中的文件属性(change file attributes on a Linux… Read More

PHP: 修改post 数组容量, 修改post变量容量, max_input_vars默认值为1000导致多表单提交失败

今天接到客服部工作人员反馈的一个客户的问题,产品是允许用户添加一个产品属性的,而每个属性是由多个表单域组成 ,这样当每添加一个属性就等于添加了n个表单域,这个客户添加的非常的多,发现在提交保存的时候总是失败,提示其中一个表单元素的索引值不存在,经测试是发现服务端接收的一些表单域丢失了一部分。 起初分析的是服务器接收的数据超出了php设置的max_post_size(其实当时已经设置了8M,足够使用了),修改了测试发现此问题仍然存在。后来将用户原来的一些添加的表单元素进行删除,再重新添加同样数据库表单域可以成功,但一旦超出一定数量的表单域就会发生丢失的情况,这个时候首先怀疑的是apache是否有类似限制接收隐藏域的指令,找了没有找到,紧接着在php中批到一个max_input_vars这个指令,意思就是说php中允许接收的最大表单域数据,到目前为止基本上是确定这个原因引起的了,奖其修改为2000,重启Apache,发现一切正常。 修改php.ini中的max_input_vars参数限制提交的表单数量 比如phpmysqladmin读取数据库表,然后写入编辑,但是数据库字段有128个,然后每个字段有11个input框,大概有1400多个input,而ax_input_vars默认值为1000. 修改php.ini里面加入max_input_vars ;;;;;;;;;;;;;;;;;;; ; Resource Limits ; ;;;;;;;;;;;;;;;;;;; max_execution_time = 30 //每个脚本的最大执行时间,以秒为单位 max_input_time = 60 //每个脚本解析请求的数据可能花费的最大时间,以秒为单位… Read More

MySQL:多表查询, 连表操作和GROUP_CONCAT函数的使用, GROUP BY结合GROUP_CONCAT, GROUP_CONCAT DISTINCT multiple columns

在开发网站的时候,数据库操作是必须,复杂的网站有时要涉及到几张表的同时操作。以下简单讲解一下多表查询和GROUP_CONCAT函数的使用。例如有三张表 jd_role:角色表,jd_role_privilege:角色权限id关联表,jd_privilege:权限表,三张表的结构如下: 1、要求查询每个角色拥有的权限: 使用left join左外连进行连表操作: 此时,就可以查询出每个角色拥有哪些权限,但是这样查询不是很符合实际开发,比如说在修改角色权限的时候,如何把一个角色的权限放入下拉选择框中,这需要把一个角色拥有的所有的权限转换成字符串或者数组,这时候可以使用GROUP_CONCAT函数: 2、以id分组,把权限名称打印成一行,用分号隔开: 3、以id分组,把权限名称打印成一行,去除重复字段: 4、以id分组,把权限名称打印成一行,用逗号隔开,根据权限id排序: 本质上就是用到了下面的样板句: group_concat([DISTINCT] 要连接的字段 [Order BY ASC/DESC 排序字段] [Separator '分隔符']) 例如: select… Read More

Mysql: 外键约束, CASCADE、SET NULL、RESTRICT、NO ACTION分析和作用, Cannot delete or update a parent row: a foreign key constraint fails

  MySQL有两种常用的引擎类型:MyISAM和InnoDB。目前只有InnoDB引擎类型支持外键约束。InnoDB中外键约束定义的语法如下: ALTER TABLE tbl_name ADD [CONSTRAINT [symbol]] FOREIGN KEY [index_name] (index_col_name, ...) REFERENCES tbl_name (index_col_name,...) [ON DELETE reference_option] [ON… Read More