FRED T5 Large Habr Summarizer
F
FRED T5 Large Habr Summarizer
basic-goによって開発
FRED-T5-largeをベースに訓練されたHabr記事向け抽象要約生成器、ロシア語テキスト要約タスク専用
ダウンロード数 70
リリース時間 : 12/17/2023
モデル概要
これはHabr技術記事向けの抽象要約生成モデルで、基盤にはai-forever/FRED-T5-largeアーキテクチャを採用し、多段階の最適化訓練を経て、高品質なロシア語技術記事の要約を生成できます。
モデル特徴
多段階最適化訓練
SFT、DPOなどの多段階訓練戦略を採用し、データ拡張と後処理技術を組み合わせることで、要約品質を大幅に向上
専門領域適応
Habr技術記事に特化して最適化され、技術用語と文脈を理解
インテリジェント後処理
自動クリーンアップと切り捨てメカニズムを含み、未完成文末生成などのモデル出力の一般的な問題を解決
モデル能力
ロシア語テキスト理解
技術記事要約生成
長文処理
使用事例
コンテンツ要約
技術記事要約
Habrなどの技術プラットフォームの長文記事に対して簡潔な要約を生成
テストデータセットで0.6075の指標値を達成
コンテンツ前処理
下流のNLPタスク向けに前処理済みテキスト要約を提供
🚀 クイックスタート
このREADMEは、Habrの記事を要約するための抽象的な要約器に関するものです。この要約器は、GPT Weekのテスト課題のデータを使用して、ai-forever/FRED-T5-largeをベースモデルとして学習されています。
✨ 主な機能
- Habrの記事を要約することができます。
- テキストの前処理と後処理を行い、要約の質を向上させます。
📦 インストール
インストールに関する具体的な手順は提供されていません。
💻 使用例
基本的な使用法
import re
from transformers import pipeline
clean_expr = re.compile(r"[\xa0\x1a\x16\x1b\x17\x15\u2004]")
spaces_expr = re.compile(r"\s{2,}")
def process_text(text: str) -> str:
"""Осуществляет пред- и постобработку текста."""
text = clean_expr.sub(" ", text)
text = spaces_expr.sub(" ", text)
if "." in text:
index = text.rindex(".")
text = text[:index + 1]
return text
summarizer = pipeline("summarization", model="basic-go/FRED-T5-large-habr-summarizer", device=0)
ARTICLE = """
Трогательный инженерный бизиборд, Новый Год и волонтеры / Хабр
31-12-2019
Зачем нужен бизиборд, когда у папы много интересных инструментов? Опасные убраны, а пассатижами пусть ребенок играет, шуруповерт нажимает, ручки осциллографа крутит. Но наступил момент и сделан инженерный бизиборд. Таким каким он должен быть, в противоположность фабричному изделию – красивому, глянцевому, красочному, со всеми закругленными углами и краями. Разноцветному для глаз, но однородному и скучному на ощупь. С чего все началось Началось с объявления чуть больше года назад в социальной сети, что московскому психоневралогическому интернату (ПНИ) требуются бизиборды: Что это такое Что такое ПНИ трудно представить, но можно посмотреть в youtube. И если волонтеры пишут, что в ПНИ проблема дефицита сенсорных впечатлений, значит это ОЧЕНЬ большая проблема. Мы, взрослые, ходим по строительному гипермаркету и крутим в руках железки, щупаем трубки, проводим рукой по оплетке и т.д. Женщины в магазине трогают вообще всё. Я инженер, регулярно покупаю какие-то детали, чтобы на столе лежали, и я достаточное количество раз их потрогал и постепенно понял – смогу ли применить как задумал. Каждый в детстве лежал на кровати и бесконечно долго разглядывал и щупал ковер. Или, провинившись, стоял в углу и ковырял обои. Щупать – это способность и потребность человека. Когда мы с товарищем увидели бизиборды, которые планируется купить для ПНИ, решили сделать максимально трогательный бизиборд сами. Трогательный в прямом смысле. Куплены парные раскручивающиеся фитинги из пластика, никелированной стали, бронзы, чугуна оцинкованного и черного чугуна. Медные трубки, гофрированная трубка из нержавеющей стали, по которой со звоном долго спускается шайба, если ее поднять и отпустить. Самый красивый материал, конечно, никелированная сталь. Но красота не главное, главное контраст. Поэтому рядом с никелированной деталью висит деталь из черного чугуна, и трудно сказать – какой материал даст больший чувственный опыт. «Чугунные игрушки» из анекдота – не насмешка, а необходимость; ребенку важно почувствовать тяжесть и грубую фактуру материала. Все фитинги по-разному закручиваются, интересней других крутить сложные составные фитинги для труб ПНД. Гофра для унитаза удивляет диаметром, и ее можно растягивать. Пеньковая веревка впечатляюще колюча. Отрезной диск красивый, брутальный, и на ощупь грубый. Образцы керамики вдали выглядят обычно, но красивые, если рассматривать их многослойное покрытие вблизи, проводя по рельефу пальцами. Как это сделано За основу взят лист фанеры 1500×1000×10 мм. В строительном гипермаркете есть услуга пила в размер, к основному листу дополнительно нарезали ребер жесткости. С размером листа ошибся, лист чуть-чуть не влез в автомобиль, а гипермаркет уже закрылся и пришлось в ночь идти с этим листом домой пешком – не надо так. Ребра жесткости прикручены шурупами 16 мм – стянут оба листа, но не выйдут с другой стороны. Всюду, где можно, использован детский труд. Детский труд экономит деньги – не нужно покупать очередной конструктор. Вон папе купили новое кресло, иди распаковывай и собирай, нужна будет помощь — позовешь. И детский труд – это педагогично, ребенок вырастет умеющим не только работать руками, но и делегировать задачи. Дети учатся не тому, чему их учат взрослые, а тому что взрослые при детях делают. Покрасили на лестничной площадке, постелив полиэтилен. Закрепили детали тросами в ПВХ-оплетке. Стальные тросы в ПВХ-оплетке — прекрасный материал, только пришлось отдельно ехать в магазин за кусачками, которые этот трос смогут перекусить. На обратной стороне тросы затянули узлами, а узлы залили термоклеем. Термоклей имеет хорошую адгезию к ПВХ, залитый узел сам не распустится и выдернуть его с лицевой стороны стенда невозможно. Чем все закончилось В «наш» ПНИ уже успели закупить готовые бизиборды, меня переправили к волонтерам другого ПНИ. Там фотографии посмотрели и сказали – а давайте отправим ваш стенд в Азовский интернат для умственно отсталых детей. Сказали – и отправили. В новогоднюю ночь приехала еще одна бригада волонтеров, погрузили стенд в огромный прицеп к АЗЛК 2141 уже забитый коробками с подарками интернату, и в метель уехали. Очень романтично. Дальше я долго пытался получить какую-то обратную связь от волонтеров, но смог лишь узнать телефон интерната. Там звонку удивились, обрадовались, сказали, что не поняли, что это им привезли и отдали в уголок труда. И сказали, что примут любую помощь, и чтобы я приходил и помогал. Я посмотрел фотографии интерната, посмотрел на детей и увидел, что стенд отправили совершенно не туда. Ситуация в интернате по сравнению с ПНИ роскошная, проблемы запертости в своем теле и на своей кровати у детей нет. Жил бы рядом с интернатом – приходил бы по субботам, учил бы этих детей программировать Ардуино. Опыт преподавания робототехники в школе есть, справился бы и в интернате. Но между нами 1100 км. А стенд все же нужен был в ПНИ. Выводы Все сделано правильно, только нужно самому говорить с тем, для кого что-то делаешь. Самому изучать потребность, самому получать обратную связь и самому делать следующий шаг. Стенд делается относительно легко, технология «фанера + тросы в пвх + термоклей» рабочая, предлагаю использовать наш опыт.
"""
ARTICLE = process_text(ARTICLE)
response = summarizer(ARTICLE, max_new_tokens=360, num_beams=2, do_sample=True, top_k=100,
repetition_penalty=2.5, length_penalty=1.0)
summary = process_text(response[0]["summary_text"])
print(summary)
# Трогательный инженерный бизиборд, сделанный для московского психоневралогического интерната, был сделан самим автором. Он использовал парные раскручивающиеся фитинги из пластика, никелированной стали, бронзы, чугуна оцинкованного и черного чугуна, а также детские труд и инструменты. В новогоднюю ночь стенд был отправлен в Азовский интернат для умственно отсталых детей. Автор выражает благодарность волонтерам, которые помогли сделать этот стенд, и предлагает использовать их опыт для улучшения ситуации в интернате.
📚 ドキュメント
アプローチの歴史
テストデータセットにおけるメトリクスは、以下の表のようにアプローチによって異なります。
# | extra | SFT | DPO | 後処理 | メトリクス |
---|---|---|---|---|---|
1 | ✓ | 0.5168 | |||
2 | ✓ | ✓ | 0.5525 | ||
3 | ✓ | ✓ | ✓ | 0.5664 | |
4 | ✓ | ✓ | ✓ | 0.6075 |
初期段階では、モデルには以下の問題があり、メトリクスに悪影響を与えていました。
- バイト列の生成:この問題は、前処理と後処理によって解決されました。
- モデルが最後の文を完了しないことが多い:後処理で未完了部分を切り捨てることで解決しました。最終モデルでは、後処理がメトリクスに僅かな貢献をしています。
- テキストの一部の繰り返しや言い換え:最終モデルではこの問題が大幅に軽減されていますが、繰り返しが見られることがあります。
1. SFT
- 学習データセットから
metric > 0.65
の条件でスライスを作成します。 - 得られたスライスを学習用と検証用に4:1の比率で分割します。
- 学習率を1e-4から減少させながら、4エポック学習します。
2. SFT + 後処理
- モデルのテキスト応答に、例の
process_text
関数を適用します。
3. SFT + DPO + 後処理
- SFTモデルで学習用スライスの推論を行います。
- 得られた候補に対して、学習率1e-7で1エポックのDPO学習を行います。
4. Extra + SFT + 後処理
Extraは、より大きなデータセットで学習することを意味します。
- 前のステップで得られたモデルで、元の学習データセットの半分に対して推論を行います。
- 前の生成結果と結合し、各記事に対して最良の候補を選択します。
metric > 0.65
の条件で新しい候補のスライスを作成し、データセットを30%増やします。- 学習率を1e-4から減少させながら、8エポック学習します。
できなかったこと
extra + SFT + DPO [+ 後処理]
の設定を機能させることができませんでした。学習が不安定で、ある時点からモデルが劣化し始めました。
改善の可能性
4番目のアプローチ(extraなど)では、元の学習データセットの約20%を使用することができました。生成パラメータを変更して再度推論を行うことで、metric > 0.65
の条件を満たす候補を増やすことができると考えられます。質の高い候補が多いデータセットでモデルを学習させることで、目的のメトリクスが向上すると予想されます。
📄 ライセンス
このプロジェクトは、Apache-2.0ライセンスの下でライセンスされています。
Bart Large Cnn
MIT
英語コーパスで事前学習されたBARTモデルで、CNNデイリーメールデータセットに特化してファインチューニングされ、テキスト要約タスクに適しています。
テキスト生成 英語
B
facebook
3.8M
1,364
Parrot Paraphraser On T5
ParrotはT5ベースの言い換えフレームワークで、自然言語理解(NLU)モデルのトレーニング加速のために設計され、高品質な言い換えによるデータ拡張を実現します。
テキスト生成
Transformers

P
prithivida
910.07k
152
Distilbart Cnn 12 6
Apache-2.0
DistilBARTはBARTモデルの蒸留バージョンで、テキスト要約タスクに特化して最適化されており、高い性能を維持しながら推論速度を大幅に向上させています。
テキスト生成 英語
D
sshleifer
783.96k
278
T5 Base Summarization Claim Extractor
T5アーキテクチャに基づくモデルで、要約テキストから原子声明を抽出するために特別に設計されており、要約の事実性評価プロセスの重要なコンポーネントです。
テキスト生成
Transformers 英語

T
Babelscape
666.36k
9
Unieval Sum
UniEvalは自然言語生成タスクの自動評価のための統一された多次元評価器で、複数の解釈可能な次元での評価をサポートします。
テキスト生成
Transformers

U
MingZhong
318.08k
3
Pegasus Paraphrase
Apache-2.0
PEGASUSアーキテクチャを微調整したテキスト再述モデルで、意味は同じだが表現が異なる文章を生成できます。
テキスト生成
Transformers 英語

P
tuner007
209.03k
185
T5 Base Korean Summarization
これはT5アーキテクチャに基づく韓国語テキスト要約モデルで、韓国語テキスト要約タスク用に設計され、paust/pko-t5-baseモデルを微調整して複数の韓国語データセットで訓練されました。
テキスト生成
Transformers 韓国語

T
eenzeenee
148.32k
25
Pegasus Xsum
PEGASUSは、Transformerに基づく事前学習モデルで、抽象的なテキスト要約タスクに特化しています。
テキスト生成 英語
P
google
144.72k
198
Bart Large Cnn Samsum
MIT
BART-largeアーキテクチャに基づく対話要約モデルで、SAMSumコーパス用に微調整され、対話要約の生成に適しています。
テキスト生成
Transformers 英語

B
philschmid
141.28k
258
Kobart Summarization
MIT
KoBARTアーキテクチャに基づく韓国語テキスト要約モデルで、韓国語ニュース記事の簡潔な要約を生成できます。
テキスト生成
Transformers 韓国語

K
gogamza
119.18k
12
おすすめAIモデル
Llama 3 Typhoon V1.5x 8b Instruct
タイ語専用に設計された80億パラメータの命令モデルで、GPT-3.5-turboに匹敵する性能を持ち、アプリケーションシナリオ、検索拡張生成、制限付き生成、推論タスクを最適化
大規模言語モデル
Transformers 複数言語対応

L
scb10x
3,269
16
Cadet Tiny
Openrail
Cadet-TinyはSODAデータセットでトレーニングされた超小型対話モデルで、エッジデバイス推論向けに設計されており、体積はCosmo-3Bモデルの約2%です。
対話システム
Transformers 英語

C
ToddGoldfarb
2,691
6
Roberta Base Chinese Extractive Qa
RoBERTaアーキテクチャに基づく中国語抽出型QAモデルで、与えられたテキストから回答を抽出するタスクに適しています。
質問応答システム 中国語
R
uer
2,694
98