小编Mic*_*l S的帖子

C89/C90,C99和C11的兼容性

我刚才读到:C维基百科条目.据我所知,有三种不同版本的C被广泛使用:C89,C99和C11.我的问题涉及不同版本的源代码的兼容性.假设我要编写一个程序(在C11中,因为它是最新版本)并导入一个用C89编写的库.根据C11规范编译所有文件时,这两个版本是否能够正常工作?

问题1:较新版本的C即旧C版本的C99,C11超集?我认为,超集我的意思是,根据较新的C规范编译时,旧代码将编译时没有错误和相同的含义.

我刚才读到,//在C89和C99中有不同的含义.除了这个功能,还是C89的C99和C11超集?

如果问题1的答案是否定的,那么我又得到了2个问题.

  1. 如何将旧代码"移植"到新版本?有没有解释这个程序的文件?

  2. 使用C89或C99或C11更好吗?

感谢您的帮助.

编辑:将ISO C更改为C89.

c iso c99 c89 c11

9
推荐指数
1
解决办法
6168
查看次数

pandas Dataframe.loc 如何接受 [...] 语法?

我已阅读此文档:

https://pandas.pydata.org/pandas-docs/stable/reference/api/pandas.DataFrame.loc.html

您可以使用类似的语法df.loc[df['shield'] > 6, ['max_speed']]

我尝试使用 Github 并发现:

假设您有一个pandas.core.frame.DataFrame对象,即一个DataFrame被调用的对象df

的类型df.locpandas.core.indexing._LocIndexer

尽管如此,我还是无法理清这些问题:

  1. 您如何使 Python 函数/类接受上述语法?

  2. pandas.core.frame.DataFrame属性在源代码中的哪里self.loc定义?

python pandas

7
推荐指数
1
解决办法
265
查看次数

SEC 公司备案:<SEC-HEADER> 标签是否有效 SGML?如果是的话,如何解析呢?

我尝试解析 SEC 公司文件sec.gov。从fb 10-Q index.htm开始,让我们看一下完整的文本提交归档,例如完整的提交文本归档。它的结构如下:

<SEC-DOCUMENT>
<SEC-HEADER>
<ACCEPTANCE-DATETIME>"some content" This tag is not closed.

"some lines resembling yaml markup" 
These are indented lines with a 
"key": "value" structure.

</SEC-HEADER>
<DOCUMENT>
.
.
some content
.
.

</DOCUMENT>

"several DOCUMENT tags" ...


</SEC-DOCUMENT>
Run Code Online (Sandbox Code Playgroud)

我试图弄清楚标签的结构,并在公共传播服务(PDS)技术规范(pdf)<SEC-HEADER>下找到了一些信息,并得出标题的内容应该是SGML。

尽管如此,我对格式一无所知,因为没有尖括号,并且键-值对是用冒号分隔的,而key: value不是<key>value</key>。在 pdf 链接中我找不到任何有关冒号的信息。

问题: <SEC-HEADER>标签是否有效 SGML?如果是的话如何解析?

我很乐意提供任何帮助。

sgml parsing edgar

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

Tensorflow ResNet 模型加载使用 **~5 GB 的 RAM** - 而从权重加载仅使用~200 MB

我通过迁移学习使用 Tensorflow 2.0 训练了一个 ResNet50 模型。我稍微修改了架构(新的分类层)并在训练期间使用 ModelCheckpoint 回调https://keras.io/callbacks/#modelcheckpoint保存模型。训练很好。回调保存的模型在硬盘驱动器上占用约 206 MB。

为了使用我所做的模型进行预测:

  • 我创建了一个 Jupyter Lab 笔记本。我用于my_model = tf.keras.models.load_model('../models_using/my_model.hdf5')加载模型。(顺便说一句,使用 IPython 也会发生同样的情况)。

  • 我使用freelinux 命令行工具来测量加载之前和之后的可用 RAM。模型加载需要大约 5 GB 的 RAM

  • 我将模型和配置的权重保存为 json。这大约需要 105 MB。

  • 我从 json 配置和权重加载了模型。这需要大约 200 MB 的 RAM。

  • 比较了两种模型的预测。完全相同的。

  • 我用稍微不同的架构(以相同的方式训练)测试了相同的程序,结果是相同的。

谁能解释一下巨大的 RAM 使用量,以及硬盘驱动器上模型大小的差异?

顺便说一句,给定一个 Keras 模型,你能找出编译过程(优化器,..)吗?Model.summary() 没有帮助..

2019-12-07 - 编辑:感谢这个答案,我进行了一系列测试:

我使用!freeJupyterLab 中的命令来测量每次测试前后的可用内存。因为我get_weights返回一个列表,所以我曾经copy.deepcopy真正复制对象。请注意,下面的命令是单独的 Jupyter 单元,并且仅为此答案添加了内存注释。

!free

model = tf.keras.models.load_model('model.hdf5', compile=True)
# 25278624 - …
Run Code Online (Sandbox Code Playgroud)

keras tensorflow tensorflow2.0

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

标签 统计

c ×1

c11 ×1

c89 ×1

c99 ×1

edgar ×1

iso ×1

keras ×1

pandas ×1

parsing ×1

python ×1

sgml ×1

tensorflow ×1

tensorflow2.0 ×1