众智科学与网络化产业知识梳理
这是山东大学软件学院鹿旭东老师《众智科学与网络化产业》课程的笔记,主要涉及网络、群体与市场。教材是 2011年清华大学出版社出版图书《网络群体与市场》,作者是(美)大卫·伊斯利。 很喜欢课件上的一句话:计算思维+社会科学:让我们更加热爱科学,更加热爱生活。
一、图论基础图=事物+联系,同构:画法不同,但本质上(结构上)相同
连通分量:节点相互连通 不包含在其他的连通分量中
AB相连,如去掉边则会导致AB分属不同的连通分量,则为桥
AB相连且AB没有共同的相邻节点,则成为捷径
欧拉路:从图中某个点出发,遍历整个图,图中每条边通过且只通过一次。一个无向图有欧拉回路:图中的点都具有偶数度一个无向图有欧拉通路:图中有且仅有两个奇数度点,其余点都是偶数度
二部图(二分图):节点可以被分成两组,组内节点之间没有边一个图是二部图,当且仅当其中不存在长度为奇数的圈
二、社会网络三元闭包:如果两个互不相识的人有了一个共同的朋友,则他们俩将来成为朋友的可能性提高。
节点A的聚集系数 = A的任意两个朋友之间也是朋友的概率(即邻居间朋友对的个数除以总对数)
度分布函数P(k)表示网络中度为k的节点在整个网络 ...
《深度学习进阶:自然语言处理处理》读书笔记
第1章 前言这是学习《深度学习进阶:自然语言处理》一书的过程中所作摘要。作者是斋藤康毅。 《深度学习入门:基于python的理论与实现》和《深度学习进阶:自然语言处理》两书深入浅出,写的很精彩,个人认为即使是非计算机专业的人员也能够几乎没有门槛的阅读。原书第一章是对神经网络的复习,故不再赘述。感兴趣的读者可阅读《深度学习入门:基于python的理论与实现》读书笔记这篇博客。
第2章 自然语言和单词的分布式表示我们平常使用的语言称为自然语言。所谓自然语言处理(NLP),顾名思义,就是处理自然语言的科学。一种能够让计算机理解人类语言的技术。
同义词词典:具有相同含义的单词(同义词)或含义类似的单词(近义词)被归类到同一个组中。
问题:难以顺应时代变化:新词不断出现,而那些落满尘埃的旧词不知哪天就会被遗忘。语言的含义也会随着时间的推移而变化。人力成本高无法表示单词的微妙差异
语料库就是大量的文本数据。
预处理是指,将文本分割为单词(分词),并将分割后的单词列表转化为单词 ID 列表。
单词的分布式表示将单词表示为固定长度的向量。
“某个单词的含义由它周围的单词形成”,称为分布式假设。
上下 ...
《深度学习入门:基于python的理论与实现》读书笔记
第1章 前言这是学习《深度学习入门:基于python的理论与实现》一书的过程中所作摘要。作者是斋藤康毅。 《深度学习入门:基于python的理论与实现》和《深度学习进阶:自然语言处理》两书深入浅出,写的很精彩,个人认为即使是非计算机专业的人员也能够几乎没有门槛的阅读。原书第一章是介绍python基础知识,故不再赘述。
第2章 感知机感知机接收多个输入信号,输出一个信号: $ y=\begin{cases}0, & (b+w_1x_1+w_2x_2\le0)\1, & (b+w_1x_1+w_2x_2>0)\end{cases}$
感知机会计算输入信号和权重的乘积,然后加上偏置,如果这个值大于0则输出1,否则输出0。
具体地说,$w_1$和$w_2$表示各个信号的权重,是控制输入信号的重要性的参数,而偏置是调整神经元被激活的容易程度(输出信号为 1 的程度)的参数。
与门:and 全1为1否则为0 与非门则相反或门:or 有1为1异或门:xor 仅当有1有0时为1
单层感知机的局限性就在于它只能表示由一条直线分割的空间(线性空间),无法分离非线性空间。
因此 ...
WEB数据管理知识梳理
第1讲 前言本文是根据山东大学软件学院连莉老师的《WEB数据管理》课程课件所整理的。近三万字长文,实在充实。
第2讲 网络爬虫技术一 、爬虫定义一种自动获取网页内容的程序,是搜索引擎的重要组成部分。通俗的讲,也就是通过HTML源码解析来获得想要的内容
二、爬取过程从一个或若干初始网页的URL开始,直到满足系统的一定停止条件。
三、 URL 判重•访问标记
由于搜索引擎在爬取时要访问大量的网页,因此在查找网址l是否访问过及标记网址l已经访问时为了提高查找和访问效率通常建立一个散列,其中存放访问过每一个网址,为了减少这个散列表所占用的空间, 通常在其中存放网址经过散列函数(如MD5、SHA-1等)计算出的对应的固定长度的散列值,这样便可以在平均情况下O(1)的时间内查找和更新占用O(n)空间的网址列表(n为已访问的网址数目)。
四、 必须具有的功能•4.1 礼貌性Web服务器有显式或隐式的策略控制爬虫的访问
–只爬允许爬的内容、尊重 robots.txt
•隐式的礼貌:即使没有特别的说明,也不应该频繁的访问同一个网站
•显式的礼貌:根据网站站长的说明,选择允许爬取的部分进行爬取
•4 ...
多核平台下的并行计算复习题
1.矩阵向量乘法,行数或者列数不能被线程数整除的情况下,如何分配数据
串行代码:
答案:
Pthreads可整除代码
Pthreads不可整除的计算 : 小于余数的rank多算一份,然后考虑用什么公式去划定一个范围my_first和my_last
123456789q=n/p //n是行数or列数,p是线程数re=n%p //余数if (rank<re) //小于余数的rank多算一份 count=q+1 firsti=rank*countelse count=q firsti=rank*count+re //不需处理lasti=firsti+count-1
假设每个进程调用MPI_Reduce运算符 MPI_SUM,目标进程 0。乍一看,似乎在两次调用 MPI_Reduce 之后,b 的值将是 3,d 的值将是 6。 但是,内存位置的名称与对MPI_Reduce调用的匹配无关。调用的顺序将决定匹配,因此存储在 b 中的值将为 1+2+1 = 4,存储在 d 中的值将为 2+1+2 = 5。 若Process 1为目标进程,则执行结束后,d = 1 + 2 + ...
编译原理知识梳理
笔记编译流程图
词法分析器:输入源程序,进行词法分析,输出单词符号;语法分析器:根据文法构建分析表,对单词符号进行语法分析,检查程序是否符合语法规则;语义分析与中间代码生成器:按照文法翻译规则对语法分析器归约出的语法单位进行语义分析,并把它们翻译成一定形式的中间代码;优化器:对中间代码进行优化处理;目标代码生成器:把中间代码翻译成目标代码。
运行环境寄存器、虚拟内存属于运行时环境
有穷自动机有穷自动机的概念,说明 NFA DFA的区别
有穷自动机是一种计算模型,它能够根据有限的输入和状态转移规则产生有限的输出。
•非确定有限自动机 (Nondeterministic Finite Automata/NFA):对边上的标号没有限制,一个符号可以作为标号出现在离开同一个状态的多条边上,ϵ可以做标号
•确定有限自动机 (Deterministic Finite Automata/DFA):对于每个状态以及每个标号,有且只有一条边
语法制导翻译的思想如何表示语义信息?为CFG(上下文无关文法)中的文法符号设置语义属性,以表示其对应的语义信息。
如何计算语义属性的值?
通过语义规则来计算文 ...
与Chatgpt聊聊天
有一段时间之前的对话了,趁chaigpt还没过气蹭一蹭热度。
Q:chatgpt是什么ChatGPT是一个由OpenAI开发的大型语言模型。它是使用机器学习算法对海量的自然语言文本进行训练得到的。ChatGPT具有广泛的语言理解能力,能够处理文本的意义、语法和语境等方面的信息。它可以用于各种自然语言处理任务,如对话生成、文本分类、语言翻译等。在对话生成方面,ChatGPT可以模仿人类的对话方式来回答各种问题或参与对话。
Q:我可以使用chatgpt做些什么您可以使用ChatGPT进行各种自然语言处理任务。以下是一些可能的用途:
对话生成:您可以使用ChatGPT创建一个聊天机器人或虚拟助手,与用户进行对话,回答问题,提供信息等。
文本分类:ChatGPT可以对文本进行分类,例如将新闻文章分为政治,体育,娱乐等类别。
语言翻译:ChatGPT可以进行机器翻译,将一种语言的文本转化为另一种语言。
情感分析:ChatGPT可以分析文本中的情感,例如判断一篇文章是正面的,负面的,还是中性的。
信息提取:ChatGPT可以从文本中提取关键信息,例如从一篇新闻文章中提取人名,地名,事件等。
内容生 ...
Linux知识梳理
几个shell编程题 #! 是一个约定的标记,它告诉系统这个脚本需要什么解释器来执行,即使用哪一种 Shell。
1、检查进程写一个shell脚本,每隔10秒,检查当前系统中有没有进程名字为“firefox”的进程,如果有的话显示“firefox 进程出现了!”并退出,返回码设置为等待的秒数。
12345678910111213141516while truedoprocess = `pgrep -f firefox`#pgrep命令以名称为依据从运行进程队列中查找进程,并显示查找到的进程id#ps -ef | grep 'firefox' ?i=0if [ ${#process} -gt 0 ]# ${#string}获取字符串长度 then echo “firefox进程出现了!” echo “等待时间为:$i” break else i = i+10 sleep 10fidone
2、解释这行命令的含义如果输入123,会显示什么?如果输入1234显示什么?
123456#从标准输入中读取abc的值read ...
软件工程知识梳理
第一章 软件工程概述1.1软件工程(SE)的定义、目的、方法、作用定义:在将有关软件开发与应用的概念科学体系化的基础上,研究如何有计划、有效率、经济的开发和利用能在计算机上正确运行的软件的理论和技术工程的方法学,以及一些开发和维护软件的方法、过程、原则。是一个系统工程,既有对技术问题的分析与综合,也有对开发过程和参与者的管理。
方法:面向对象模式,结构化模式,基于过程的模式等。
作用:付出较低的开发成本,达到要求的软件功能,取得较好的软件性能,开发的软件易于移植,需要较低的维护费用,能按时完成开发工作,及时交付使用。
1.2开发模式软件开发的全部过程,活动和任务的结构框架,它能直观的表达软件开发全过程,明确要完成的主要活动,任务和开发策略。
1.3说明错误、缺陷和失败的含义及联系错误(error):是在软件开发过程中人为产生的错误(如:需求说明中的错误,代码中的错误)
缺陷(故障fault):是在软件功能实现过程中产生的问题;是错误导致的结果,是在软件中一个错误的表现(如:代码写错了导致系统无法启动,一个错误可能产生多个缺陷,静态存在的)
失败(failure):系统违背了它应有的行为 ...
计算机网络知识梳理
协议总结数据链路层:
MAC: 介质访问控制(medium access control)
Goback N:回退n帧协议
SN:选择性重传
介质访问控制子层:
ALOHA:想发就发,随机时间后重传
时隙ALOHA(分槽ALOHA):只在时间片开始时发送/重传
CSMA:载波监听多路访问协议,先听后发
1-坚持:信道空闲马上发,信道忙继续坚持监听
非坚持:信道空闲马上发,信道忙放弃监听,随机事件后再监听
p-坚持:信道空闲p概率马上发,1-p概率下一个时隙再发,如果下一个时隙空闲,仍然概率p发送,1-p推迟…
CSMA/CD:载波监听多路访问/碰撞检测协议
先检测是否空闲,边发送边监听,如果冲突就停止
CSMA/CA:载波监听多路访问/碰撞避免协议 ,是802.11 MAC 子层协议的核心协议
用于无线网络,先检测是否空闲,如果空闲则发送RTS,接收方返回CTS,预约信道开始发送,接收方收到后响应ACK
MACA 冲突避免多路访问 有RTS,CTS
MACAW: MACA for Wireless,无线的MACA(MACA:Multiple Access with Collision ...
