Record your life!
DashboardMy Blogs
Hugging face笔记
Blog
hobby
By sakopqiu2025-11-25 14:49

Hugging face的重要模块

  • pipeline模块有很多nlp的使用场景,比如情感分析,zero shot classification, NER(Named Entity Recognition), Text generation(默认模型是gpt-2), mask filling(完形填空),翻译,总结等。
from transformers import pipeline

translator = pipeline('translator', model="some language")
translator('....')
  • 迁移学习指的是用A模型作为基础,训练出用作其他目的的B模型,哪怕目的不同。已经预训练的模型,哪怕目的不同,因为见过了大量的数据,在统计意义上已经习得了规律。 一般的做法是把A模型的head(即神经网络的最后一个输出删除,替换成B模型想要的输出。但还是尽可能保证两个模型覆盖的话题尽可能相近。

gpt-2的数据来自于海量的reddit的用户评论。图片相关的模型都是基于Imagenet上的数据集训练的,该dataset提供1000个标签,用于图片分类,但是基于Imagenet训练的模型有一个问题,他都是基于美国和欧洲的图片训练的。 Bert是基于维基百科和11000本没有发布的书训练的。

                Transformer
                      │
      ┌──────────────┼──────────────┐
      │              │              │
Encoder-only    Decoder-only   Encoder–Decoder
(BERT family)       (GPT)            (T5)
      │              │              │
  理解任务         生成任务      理解+生成任务
      │              │              │
 ┌────┴─────┐        │        ┌────┴─────────────┐
 │           │        │        │                  │
情感分析   抽取QA   文本生成   翻译/摘要/QA  任何 NLP 任务
分类       填空      对话       (text-to-text)
  • 列存储的优势,每个列一个文件,且可以做数据压缩(如RLE,差分编码,字典索引等),所以在写少读多,且有聚合的场景下性能比行数据库强很多

  • Parquet是一种Big data领域经常使用到的列存储格式

Parquet File
 ├── RowGroup 1
 │    ├── ColumnChunk(id)
 │    │      └── Page 1: Delta Encoding
 │    │              Data: [1, +1, +1]
 │    │
 │    ├── ColumnChunk(name)
 │    │      ├── Dictionary Page:
 │    │      │       ["Alice", "Bob", "Carol"]
 │    │      └── Data Page:
 │    │              Data: [0, 1, 2]
 │    │
 │    └── ColumnChunk(age)
 │           └── Page 1: Delta Encoding
 │                  Data: [20, +1, +1]
 │
 └── File Footer(元数据:schema、编码方式、统计信息)

Edit