Tensorflow 只使用 CPU,不会使用 GPU。我认为它是因为它期望 Cuda 10.0 并找到 10.2。
我已经安装了 10.2,但已经清除并安装了 10.0。
我运行的是 Ubuntu 19.10、AMD Ryzen 2700 Cpu、RTX 2080 S。我已经安装了 440 Nvidia 驱动程序,当我检查 nvidia-smi 和 nvcc -version 时,它说 cuda 版本 10.2。
From pip3: tensorflow-gpu 1.14.0
tensorflow-datasets 2.0.0
tensorflow-estimator 1.14.0
tensorflow-metadata 0.21.1
Run Code Online (Sandbox Code Playgroud)
来自 Nvidia-smi
+-----------------------------------------------------------------------------+
| NVIDIA-SMI 440.44 Driver Version: 440.44 CUDA Version: 10.2 |
|-------------------------------+----------------------+----------------------+
| GPU Name Persistence-M| Bus-Id Disp.A | Volatile Uncorr. ECC |
| Fan Temp Perf Pwr:Usage/Cap| Memory-Usage | GPU-Util Compute M. |
|===============================+======================+======================|
| 0 GeForce …Run Code Online (Sandbox Code Playgroud) 我有一个字符串,我要变成一个列表。然后我计算该列表中的单词,并尝试使用该数字(长度)作为计数器,以便我可以将每个单词添加到以数字作为关键字的字典中。它似乎枚举正确,但它只读取列表中的最后一个条目,而不是逐字逐句。
知道为什么它只读取列表中的最后一个条目,即“你?”?
mystring = "Hello mate how are you?"
mylist = mystring.split()
lengh = len(mylist)
class my_dictionary(dict):
# __init__ function
def __init__(self):
self = dict()
# Function to add key:value
def add(self, key, value):
self[key] = value
# Main Function
dict_obj = my_dictionary()
for x in range(lengh):
for line in mylist:
for word in line.split():
dict_obj.add(x, line)
print(dict_obj)
Run Code Online (Sandbox Code Playgroud)
输出是:
{0: 'you?', 1: 'you?', 2: 'you?', 3: 'you?', 4: 'you?'}
Run Code Online (Sandbox Code Playgroud)
输出应该是:
{0: 'Hello?', 1: 'mate?', 2: 'how', 3: 'are', 4: 'you?'}
Run Code Online (Sandbox Code Playgroud)