小编sop*_*ros的帖子

无法使用 warnings.filterwarnings("ignore") 抑制 Python 警告

我正在使用以下内容来抑制我的警告。有时警告会被抑制,而最近它们没有用,警告仍然出现。

> import warnings  
> warnings.filterwarnings("ignore")
Run Code Online (Sandbox Code Playgroud)

我正在使用 Jupyter-notebook 并使用 Tensorflow(也使用 Keras,但不是针对这个特定问题,但同样的事情也发生在 Keras 上)

python warnings jupyter-notebook

5
推荐指数
1
解决办法
5898
查看次数

如何恢复 BERT/XLNet 嵌入?

我最近一直在尝试堆叠语言模型,并注意到一些有趣的事情:BERT 和 XLNet 的输出嵌入与输入嵌入不同。例如,这个代码片段:

bert = transformers.BertForMaskedLM.from_pretrained("bert-base-cased")
tok = transformers.BertTokenizer.from_pretrained("bert-base-cased")

sent = torch.tensor(tok.encode("I went to the store the other day, it was very rewarding."))
enc = bert.get_input_embeddings()(sent)
dec = bert.get_output_embeddings()(enc)

print(tok.decode(dec.softmax(-1).argmax(-1)))
Run Code Online (Sandbox Code Playgroud)

为我输出这个:

,,,,,,,,,,,,,,,,,
Run Code Online (Sandbox Code Playgroud)

我本来期望返回(格式化的)输入序列,因为我的印象是输入和输出令牌嵌入是绑定的。

有趣的是,大多数其他模型没有表现出这种行为。例如,如果您在 GPT2、Albert 或 Roberta 上运行相同的代码片段,它将输出输入序列。

这是一个错误吗?或者是 BERT/XLNet 的预期?

python nlp transformer-model pytorch huggingface-transformers

5
推荐指数
1
解决办法
1619
查看次数

re.sub()后错误的字符集

我有这个代码

import chardet, re    

content = "????? ????????????? ? ???????."
print content
print chardet.detect(content)
content = re.sub(u"(?i)[^-0-9a-z?-??«»\&\;\/\<\>\.,\s\(\)\*:!\?]", "", content)
print content
print chardet.detect(content)
Run Code Online (Sandbox Code Playgroud)

并输出

????? ????????????? ? ???????.
{'confidence': 0.99, 'encoding': 'utf-8'}
? ?  .
{'confidence': 0.5, 'encoding': 'windows-1252'}
Run Code Online (Sandbox Code Playgroud)

我做错了什么?我如何在re.sub()之后获得uft-8 str?(Python 2.7,re.sub()UTF-8文件,IDE Pycharm).

谢谢.

python regex python-2.7

4
推荐指数
1
解决办法
2543
查看次数

NLTK 协议与距离度量

我有一个任务来计算,注释间协议多标签分类,其中对于每个例子不止一个标签可以被分配。我发现NLTK可以根据距离度量来衡量一致性。

我正在寻找使用 MASI 距离计算 krippendorff alpha 的示例。

这就是我所拥有的。

import nltk
from nltk.metrics import masi_distance


toy_data = [['1', 5723, [1,2]],['2', 5723, [2,3]]]

task = nltk.metrics.agreement.AnnotationTask(data=toy_data, distance=masi_distance)
print task.alpha()
Run Code Online (Sandbox Code Playgroud)

此代码失败

TypeError: unhashable type: 'list'
Run Code Online (Sandbox Code Playgroud)

显然,以下方法不起作用。

toy_data = [['1', 5723, set([1,2])],['2', 5723, set([2,3])]]
Run Code Online (Sandbox Code Playgroud)

你有一个工作示例吗?谢谢!

python nlp machine-learning nltk

4
推荐指数
1
解决办法
862
查看次数

Pandas 适用于除缺失值以外的所有值

假设我有一个系列,例如:

[1,2, 南, 4]

如果我这样做:

series.apply(lambda a: a+2)
Run Code Online (Sandbox Code Playgroud)

由于 NAN,我会收到错误消息。在应用我的更改时,是否有一种优雅的方法来保留 NAN?

python nan pandas

4
推荐指数
1
解决办法
4847
查看次数

在Python中如何做多列多于2个变量的相关性?

我有一个 Pandas 数据框,如下所示:

id    cat1    cat2    cat3    num1    num2
1     0       WN      29      2003    98
2     1       TX      12      755     76
3     0       WY      11      845     32
4     1       IL      19      935     46
Run Code Online (Sandbox Code Playgroud)

我想找出之间的相关性cat1和柱cat3num1以及num2 之间或cat1num1num2 之间或cat2cat1, cat3, num1, num2

当我使用df.corr()它时,会给出数据框中所有列之间的相关性,但我只想查看上面详述的这些选择性列之间的相关性。

我如何在 Python 熊猫中做到这一点?

一千提前感谢您的回答。

python correlation python-3.x pandas

4
推荐指数
1
解决办法
1万
查看次数

有没有更快的方法使用python从CSV中分离重复和不同的数据?

我有一个包含数百万数据的数据帧.假设这是名为的数据帧mydataframe:

filename | #insert-1 | #insert-2 | #delete-1 | #delete-2
---------------------------------------------------------
A        |         4 |         4 |         3 |         3
B        |         3 |         5 |         2 |         2
C        |         5 |         5 |         6 |         7
D        |         2 |         2 |         3 |         3
E        |         4 |         5 |         5 |         3
---------------------------------------------------------
Run Code Online (Sandbox Code Playgroud)

我需要根据插入或删除的不同数量来分离文件,然后将它们保存到新CSV文件中,命名为different.csv.并且还在CSV名为的单独文件中保存具有相同插入和删除数量的其余数据same.csv.在换句话说,如果该文件之间具有不同数目的#insert-1#insert-2,或#delete-1#delete-2然后将其保存在different.csv,否则,将其保存在same.csv. …

python csv duplicates dataframe pandas

4
推荐指数
1
解决办法
131
查看次数

我尝试在我的 python 上安装 httplib,但出现错误

$ pip install httplib

Collecting httplib

Could not find a version that satisfies the requirement httplib (from versions: )
No matching distribution found for httplib
Run Code Online (Sandbox Code Playgroud)

如何使它工作?

python installation pip httplib python-3.x

4
推荐指数
1
解决办法
4818
查看次数

在计算 networkx 中的传出和传入边时,len 抛出“dict_keyiterator”没有 len()

我正在实现一个图形操作脚本,但我对以下错误感到困惑:

Traceback (most recent call last):
  File ".....py", line 12, in <module>
    print(len(graph.predecessors(i)), len(graph.successors(i)))
>>TypeError: object of type 'dict_keyiterator' has no len()<<
Run Code Online (Sandbox Code Playgroud)

这是代码:

import networkx as nx

graph = nx.DiGraph()

for i in range(10):
  graph.add_node(i)

for i in range(9):
  graph.add_edge(i, i+1)

for i in range(10):
  print(len(graph.predecessors(i)), len(graph.successors(i)))
Run Code Online (Sandbox Code Playgroud)

这是什么dict_keyiterator以及如何修复我的代码?谢谢!

python networkx python-3.x

4
推荐指数
1
解决办法
6165
查看次数

gensim word2vec 打印日志丢失

使用 gensim word2vec 模型时,如何打印以记录(文件或粗壮)训练阶段每个时期的损失。

我试过 :

 logging.basicConfig(format='%(asctime)s: %(levelname)s: %(message)s')
 logging.root.setLevel(level=logging.INFO)
Run Code Online (Sandbox Code Playgroud)

但我没有看到任何损失打印。

python gensim word2vec

4
推荐指数
1
解决办法
4519
查看次数