4 Q0 B) S. y9 S: Z! v% S在 GIJN 的“我最喜爱的工具”系列中,我们采访了彭博社数据记者莱昂纳多·尼科莱蒂(Leonardo Nicoletti)。他近期的项目深入探讨了社交媒体上的极端主义、生成式 AI 中的种族和性别刻板印象,以及美国的阿片类药物危机。
- _# d# w1 { O! k1 l' W . n$ Y. t, S1 [9 U
莱昂纳多·尼科莱蒂在 2024 年佩鲁贾国际新闻节上,与 Sigma 奖得主们一起讨论他们的工作。图:由 Ascanio Pepe 为 IJF 拍摄,遵循 CC 许可协议使用
4 t1 f; w: ]" u" c' E4 W尼科莱蒂进入新闻业的道路颇为曲折——他曾在学术界工作多年。但即使在学生时代,他就对视觉表达有着敏锐的洞察力。 , I- Z# m- P$ W6 @2 P% ?
“我在学生时期热衷于摄影,主要是街头摄影,这份热情至今未减,”他说。“那时我意识到自己对讲故事、尤其是人文故事非常感兴趣。”% A, Q6 P* @( u; L6 s* c! _
' A+ b4 ] Q9 b& Y. U
毕业后,他继续在学术界深耕,利用开源技术衡量城市中的不平等,并量化与环境脆弱性相关的挑战。“那段时间,我对数据可视化以及如何用它向更广泛的受众传达复杂理念产生了浓厚兴趣,并开始在网络上构建应用程序。”
; T% a( |8 i* v+ ]2 W! E在与他人合作为《The Pudding》撰写的一篇关于新闻中女性代表性的视觉文章后,尼科莱蒂开始全职进入新闻领域,并于同年晚些时候加入彭博社。此后,他的工作获得了全球认可,特别是他对生成式 AI 和文本到图像模型在放大种族和性别刻板印象方面的影响的研究。他与同事合作撰写的文章《人类有偏见,但生成式 AI 更甚》(Humans Are Biased. Generative AI Is Even Worse)获得了 2024 年 Sigma 奖。 7 p. ]7 d; p( }' I5 F% G) @
“这是新闻领域首个数据驱动的调查,关注图像生成器,并大规模量化其中存在的性别和种族偏见,”他解释道。
( |/ Y" S2 \. Z. @1 ?3 U; u尼科莱蒂的工作还获得了其他许多荣誉,如新闻设计学会的认可。他的研究,特别是关于生成式 AI 风险的研究,被联合国和国际货币基金组织引用。
% p7 ?) W, w2 J+ f2 t! r S% k“由于我的工作介于分析、数据调查,以及数据可视化和交互式图形之间,我使用了许多与数据科学相关的编程语言和工具。” ——莱昂纳多・尼科莱蒂
/ b' y. P0 U1 U' G4 A6 S" j尼科莱蒂在彭博社的工作让他深入研究了技术问责的问题,将技术对人的影响放在首位。
: m# z0 l4 Y; R& S5 J+ U3 t& Z
6 G/ h! g& l1 \4 E2 R" s. B0 B“彭博社报道不一定都是金融故事,但总有商业视角或某种金融角度,”尼科莱蒂指出:“这看似有局限性,但我发现并非如此,几乎任何故事都能与某家公司、经济趋势或资金流动关联起来。”
9 }" w; q6 G4 V3 z9 ? k- W9 y近期,他制作了各种各样的报道,从探讨 OpenAI 的 GPT 如何导致招聘中的种族偏见,到 AI 如何“扰乱”全球电力系统的调查,再到深入研究隐藏的芬太尼如何将美国阿片类药物死亡推向新阶段。以下是他最喜欢的一些工具。
; }; {" S+ B: c/ r& ?" A
4 i& V; l. E2 ]2 N2 G) E/ N" j' aPython
4 ?! n1 p$ Y+ P; H6 v& q“我的工作涉及数据分析、调查、可视化和交互图形,主要使用Python和R这类数据科学工具,其中以Python为主,”尼科莱蒂说。 6 {% S, _3 d0 U3 J( K
“我使用 Jupyter Notebook 上使用 pandas 和 geopandas 等 Python 库”他补充道。Pandas 通过构建、操作和转换数据来分析大型数据集;geopandas则简化了Python中地理空间数据的处理流程。
- u5 \* q& {; d他还使用 spaCy 这个开源Python库,用于处理大量文本并构建自然语言处理应用,比如根据情感分析对演讲等文本进行分类,判断表达的语气或观点。
- d# h$ n# k+ i: N0 A) ]“有时我们需要进行自然语言处理,这时会用到 spaCy 等工具,具体使用什么要看项目需求。但主要还是用Python做数据分析,网页抓取也经常用到,”他说。
- R! J' F* ?" _D3.js and Svelte c2 G4 f1 E8 z/ ^
D3.js 是一个用于在网络上创建自定义图形的 JavaScript 库,能够对可视化进行全面定制。 ! L; C2 S: |* B! P) ? `# j
“在网络上构建数据可视化和交互式图形都是用网络语言完成的,所以都是 JavaScript、HTML、CSS,还有像 D3 这样非常有用的 JavaScript 库,”尼科莱蒂指出。
3 Q G0 Z T3 x& {“在网络上构建数据可视化和交互式图形都需要用到网络语言,也就是 JavaScript、HTML、CSS,还有像 D3 这样非常实用的JavaScript库,”尼科莱蒂指出。 & p' L. E. G3 ^$ o
Svelte 是一个开源JavaScript框架,用于构建具有交互设计的网络应用程序,当底层数据发生变化时,它会自动更新用户界面。 : r! }, K2 H. O) r6 e
“它让你能够创建响应迅速的网页,用简洁的方式实现丰富的交互,而无需处理繁琐的网络基础问题。这些都由它来处理,”尼科莱蒂说。
; M/ @& {0 i) v“它让过渡效果变得容易实现。比如,你有一个散点图,每个点代表一个国家,你想将这些点移动到实际的国家位置,再转换成条形图。在关于 Stable Diffusion 的文章中——或者看看我参与的大多数作品,都有大量动画和过渡效果。这些基本上都是通过 D3 来计算位置,然后用 Svelte 实现数据点的平滑过渡,比如当用户滚动到页面特定位置时。”
* W$ S4 O) g5 q2 T4 B0 D5 IQGIS
9 j/ J9 s' y# c2 q3 GQGIS 是一款开源软件,是想要在不购买专有软件的情况下进行制图的人们的首选工具。
9 K2 c% j1 ?2 `5 b2 h& q# p“我的理念是尽可能使用开源软件,这样你可以重复使用,不必担心服务的API是否会改变。这样可以减少依赖,获得更多自由,”尼科莱蒂解释道。
' l2 s! t; g2 ~& \8 \QGIS 可用于使用矢量和栅格数据来分析和编辑几乎所有形式的地图和空间数据。
5 r. K% X8 f" ~1 i尼科莱蒂的一个个人项目使用 QGIS 绘制了全球范围内的城市,这些城市为居民提供了在 15 分钟步行范围内可达的服务。City Access Map 使用了 Mapbox,但尼科莱蒂的大部分数据探索都是在 QGIS 中完成的。“我写了一个 Python 脚本,利用了 QGIS 的功能,因为它有许多非常强大的地理空间功能,这些功能并不总是在 Python 中实现。我处理了全球约 11000 个城市,数据量巨大,而 QGIS 的效率最高,”尼科莱蒂说。 , i2 P/ x# q4 \% P) _8 J: _
“我经常使用 QGIS 来探索数据,有时我只是想把数据放在地图上,看看它的样子并进行放大,所以这非常有用,”他补充道。“QGIS 中也有很多插件,有时在 QGIS 脚本中做一些事情比在 Python 中更容易。”
) P( l, g' e! u; u* Q![]() 尼科莱蒂的 CityAccessMap 从全球角度展示了为居民提供15分钟步行范围内可达服务的人口中心。图:CityAccessMap 截图
: @2 v1 l& C$ l/ Q- S' c$ g( P6 wHTML Canvas
; V7 O- L. D/ ~: W5 X, X9 EHTML的功能使在网络上生成动态交互式图形成为可能。由于它基于栅格,通常用于更复杂的可视化和动画。使用JavaScript可以直接将图形绘制到网站上。 : J9 u2 C$ y, r
“大多数可视化使用SVG(可缩放矢量图形),但它处理大量数据点的效果不够理想,”尼科莱蒂说。“在我参与的许多项目中,我一直在使用 canvas 这种网络技术,它不是矢量的,而是像素的。它可以直接绘制形状,能处理更多的数据点。虽然在编程上使用和理解都有点难度,但功能非常强大。”
: d% G3 b# M5 A& B/ r跨学科的思维方式 9 E! A2 `" B: |8 W1 r+ Z# q
除了尼科莱蒂使用的传统数据分析和可视化工具外,他还提倡在构思和制作故事时采用跨学科的方法。 ; c* P4 D+ m( v8 u2 S
“我认为拥有社会科学背景很有帮助,掌握一些数据科学和编程知识对于使用这些工具来说很重要,”他说。“但作为一个学习过其他学科的人,比如城市规划和城市中的社会技术挑战,我觉得这很有价值,因为你会接触到很多复杂的问题,这在想出创意和更深入地了解世界方面是一个优势。”
+ A9 `1 D, E2 a来源:GIJN(公众号) 编辑:李佳
+ o6 H& A4 C; @) [ % w! Q5 H2 U: F# \
8 x5 `2 i7 m9 ]: l1 J7 z |