我试图计算两个单词之间的语义相似性.我正在使用基于Wordnet的相似性度量,即Resnik度量(RES),Lin度量(LIN),Jiang和Conrath度量(JNC)以及Banerjee和Pederson度量(BNP).
为此,我使用的是nltk和Wordnet 3.0.接下来,我想结合从不同度量获得的相似度值.为此,我需要对相似度值进行标准化,因为某些度量值会给出介于0和1之间的值,而其他值则会给出大于1的值.
所以,我的问题是如何规范化从不同测量中获得的相似性值.
关于我实际上要做的事情的更多细节:我有一套单词.我计算单词之间的成对相似性.并删除与集合中其他单词不强相关的单词.
我正在尝试设计一个缓存模拟器。为了找到一个块的缓存命中/未命中,我将它的索引和偏移量与缓存中已经存在的块进行比较。在 n 关联缓存的情况下,我只检查该块可以去的那些缓存条目。
找到命中和冷未命中的数量是微不足道的。如果缓存已满(或者块可以进入的所有条目都已被占用),那么我们就会出现容量缺失。
有人可以告诉我如何找到冲突未命中的数量吗?冲突未命中的定义说:
Conflict misses are those misses that could have been avoided,
had the cache not evicted an entry earlier
Run Code Online (Sandbox Code Playgroud)
如何确定较早从缓存中删除的条目是否应该或不应该被删除?
memory caching cpu-architecture computer-architecture cpu-cache
我想用n个元素填充nxn矩阵,这样每行和每列只有1个元素.例如,3x3矩阵可以具有以下可能的解决方案:
1 0 0 0 1 0 0 0 1
0 1 0 1 0 0 1 0 0
0 0 1 0 0 1 0 1 0
Run Code Online (Sandbox Code Playgroud)
以下是我写的代码:
arr=[[0 for x in xrange(n)] for x in xrange(n)]
i=0
while i<n:
j=0
while j<n:
arr[i][j]=0
j+=1
i+=1
i=0
while i<n:
j=0
while j<n:
x=0
while x<n:
if((arr[i][x-1]==1) or (arr[x-1][j]==1)):
break
x+=1
if(x==n-1 and arr[i][n-1]==0 and arr[n-1][j]==0):
arr[i][j]=1
j+=1
i+=1
Run Code Online (Sandbox Code Playgroud)
但所有的元素都是标准的0.有人可以指出我的错误.
我写了以下python代码.我期待它做的是将文件"noise"中的随机单词添加到"raw"的每一行,并将其打印到文件"dataset"
#! /usr/bin/python
from random import randint
raw = open("raw_dataset_1", "r")
noise = open("random", "r")
dataset = open("raw_noisy", "w")
lines = noise.readlines()
for line in raw:
a = randint(1, 5449)
addNoise = lines[a-1]
#print a
#print addNoise
noisy = (line + addNoise)
noisy1= noisy.rstrip()
#print noisy1
dataset.write(noisy1)
Run Code Online (Sandbox Code Playgroud)
我期望的"数据集"文件是:
city mountain sky sun chalk
bay lake sun tree discussions
beach sea sky sun background
Run Code Online (Sandbox Code Playgroud)
但我得到:
city mountain sky sun
chalk
bay lake sun tree
discussions
beach sea sky sun
background
Run Code Online (Sandbox Code Playgroud)
有人可以指出我的错误吗?