NSDI26fall论文写作经验总结

Alice Yu Lv3

写在前面

  • NSDI26fall,不是一作,大概率陪跑
  • 感谢鹅厂提供机器和资源,感谢我的超级赛亚人企业mentor,感谢我们的一作小老板,亲力亲为,一作值得,并且我确实学到了不少经验,一开始怨气为主,后面只想写完然后中稿
  • 总结了一些论文写作过程中的小tip

画图

  • 画图讲究最多,计算机顶会的图重点就是紧凑,少空白多信息

latex图片插入语法

普通一张图插入

1
2
3
4
5
6
\begin{figure}[t]
\centering
\includegraphics[scale=0.2]{figures/xxx.pdf}
\caption{xxx.}
\label{fig_xxx}
\end{figure}
  • 如果想要剪裁图片,可以使用trim参数
    1
    \includegraphics[trim=left bottom right top, clip, scale=0.2]{figures/xxx.pdf}

多张子图插入

1
2
3
4
5
6
7
8
9
10
11
12
13
\begin{figure}[t]
\centering
\subfigure[xxxA.]{
\includegraphics[scale=0.21]{figures/xxxA.pdf}
\label{fig_xxxA}
}
\subfigure[xxxB.]{
\includegraphics[scale=0.17]{figures/}
\label{fig_xxxB}
}
\caption{xxx.}
\label{fig_xxx}
\end{figure}

多张不相关的图,放到同一行里面

  • 这种情况一般是为了压篇幅
  • 核心:minipage
  • 我们的会议论文一般都是双栏,所以这种图分成两种情况,一种是跨双栏,一种是不跨双栏
  • 这两种的差异其实不大
  • 先看不跨双栏的,其主要是两个的textwidth和不能超过0.5,以及用的是figure而不是figure*
    1
    2
    3
    4
    5
    6
    7
    8
    9
    10
    11
    12
    13
    14
    15
    \begin{figure}[t]
    \begin{minipage}{0.2\textwidth}
    \centering
    \includegraphics[scale=0.2]{figures/xxxA.pdf}
    \caption{xxxA.}
    \label{fig_xxxA}
    \end{minipage}
    \hfill
    \begin{minipage}{0.25\textwidth}
    \centering
    \includegraphics[scale=0.27]{figures/xxxB.pdf}
    \caption{xxxB.}
    \label{fig_xxxB}
    \end{minipage}
    \end{figure}
  • 下面是跨双栏的
    1
    2
    3
    4
    5
    6
    7
    8
    9
    10
    11
    12
    13
    14
    15
    16
    17
    18
    19
    20
    21
    22
    23
    24
    25
    26
    27
    \begin{figure*}[!t]
    \centering
    \begin{minipage}{0.48\textwidth}
    \centering
    \subfigure[xxxA.]{
    \includegraphics[scale=0.14]{figures/xxxA.pdf}
    \label{fig_xxxA}
    }
    \subfigure[xxxB.]{
    \includegraphics[scale=0.14]{figures/xxxB.pdf}
    \label{fig_xxxB}
    }
    \subfigure[xxxC.]{
    \includegraphics[scale=0.14]{figures/xxxC.pdf}
    \label{fig_xxxC}
    }
    \caption{xxx.}
    \label{fig_xxx}
    \end{minipage}
    \hfill
    \begin{minipage}{0.48\textwidth}
    \centering
    \includegraphics[scale=0.3]{figures/yyy.pdf}
    \caption{yyy.}
    \label{fig_yyy}
    \end{minipage}
    \end{figure*}

画图软件

  • PPT画图可定制化更高一点,但是windows系统不能直接选中一部分导出PDF格式,mac可以

图标搜索网站

  • 比如会需要搜索一些小图标,比如小公文包,小网卡,小GPU
  • 网站:flaticon

配色

  • 参考这篇知乎回答:知乎

字体

  • Times New Roman就很好看了
    • 如果用python的matplotlib画图,可以用下面的代码设置,放在import后面,整个代码的最前面就行
      1
      2
      import matplotlib.pyplot as plt
      plt.rcParams["font.family"] = ["Times New Roman"]
  • 字体的大小在画出来本地看起来有点夸张的大的时候,放在论文里就正好了

一些图表的其他建议

  • y轴的字可以小,但是坐标轴上的刻度一定要大,为了防止重叠可以用下面的python代码减少刻度数量
    1
    2
    3
    4
    import matplotlib.pyplot as plt
    import matplotlib.ticker as ticker
    # nbins=4表示Y轴最多显示4个主要刻度(包括最小值和最大值)
    plt.gca().yaxis.set_major_locator(ticker.MaxNLocator(nbins=4))
  • 如果画分布图,不是非常漂亮的正态分布,可以考虑用箱线图或者CDF图
  • 最后要让图紧凑,用python代码:
    1
    plt.tight_layout()
  • 如果坐标轴上要写的字想表达的是某个东西的数量,那么可以考虑不用num of xxx,而是直接用一个井号#表达
    • 例如:#GPUs, #Servers, #Messages
  • 如果是我们的方案和别的差方案对比,用柱状图的画,一般我们的(好的)结果打斜杠花纹
  • 如果y轴上的字太长了,可以换行,直接加”\n”就行
  • 一般柱状图y轴最高点设置在所有数据里面最大值的1.1倍,稍微高出一点点会好看

文字

  • 论文中大段落开头可以用黑体字提一个小核心内容出来
    1
    \noindent \textbf{xxx.} Main text...
  • 论文文字润色交给chatgpt,免费版就行,别用国内的AI
  • 要引用一个章节的格式:
    1
    2
    % 在被引用的这章的正文前面要加上\label{sec_xxx}
    \S~\ref{sec_xxx}