Select Language

Open Dataset

ELI5スコアラーの訓練データ原型816000例、評価モデルの作成に使用

ELI5スコアラーの訓練データ原型816000例、評価モデルの作成に使用

672.61M
306 hits
0 likes
1 downloads
0 discuss
NLP,Earth and Nature,Arts and Entertainment,Education,Social Science,Sports,Regression,Transformers Classification

ELI5は「5歳児に説明するように」を意味します。これはもともと、Redditのeli5サブレディットから収集された、自由形式の長い質問と回答です。......

Data Structure ? 672.61M

    Data Structure ?

    *The above analysis is the result extracted and analyzed by the system, and the specific actual data shall prevail.

    README.md

    ELI5は「5歳児に説明するように」を意味します。もともとはredditのeli5サブフォーラムから抽出された「長文で自由形式」の質問と回答のセットです。
    元のELI5データセット(https://github.com/facebookresearch/ELI5)は、「長文で自由形式」の質問応答モデルを訓練するために使用できます。
    例えば、T5やBartのようなエンコーダ・デコーダモデルを使ってです。

    従来の性能評価:ROUGEスコア

    モデルを取得したら、どのようにしてモデルの性能(高品質な回答を与える能力)を評価できるでしょうか?
    従来の方法はROUGEファミリーの指標です(上記のELI5論文を参照)。

    しかし、ROUGEスコアはn-gramに基づいており、生成された回答と正解回答を比較する必要があります。
    残念ながら、n-gramスコアリングでは高品質な言い換え回答を評価できません。

    さらに悪いことに、(ROUGE)スコアを比較して計算するために正解回答が必要です。このスコアリングの考え方は、多くの可能な(言い換えではない)有効で良い回答がある「自由形式」の質問応答の「精神」に反しています。

    要するに、「創造的で高品質」な回答はROUGEで評価できず、これが創造的なモデルを構築(および評価)する妨げになっています。

    このデータセット:より良いスコアリングモデルを作成するため

    これに対して、このデータセットは「スコアリング」(回帰)モデルを訓練することを目的としています。このモデルは、各質問と回答のペアに対して個別にアップボートスコアを予測できます(ROUGEのような回答と回答のペアではなく)。

    データは単に質問と回答のペアとそのスコアを含むCSVファイルです。
    各行には質問と回答のテキスト(Roberta形式)とそのアップボートスコア(非負の整数)が含まれています。

    Roberta(または区切りトークンを変更した他のTransformerモデル)を使ってスコアリングモデルを簡単かつ直接的に作成できるように意図されています。

    CSVファイル

    csvファイルには、qa列とanswer_score列があります。
    qaの各行はRobertaのペア文形式で書かれています -- 回答

    answer_scoreに関しては、以下の原則があります:

    • 質問に関連する高品質な回答は高いスコア(アップボート)を得るべきです。

    • 質問に関連する低品質な回答は低いスコアを得るべきです。

    • 質問に関連しない文章がきれいな回答は0点を得るべきです。

    各正のスコアの質問と回答のペアは元のELI5データセットから取得されています(実際のアップボートスコア)。
    各0点の質問と回答のペアは次のサブセクションで詳細に説明する方法で構築されています。

    RetriBERTとFAISSを用いた0点ペアの構築詳細

    原理は対照的な訓練です。モデルが一般化できるように、ある程度高品質な0点ペアが必要です。
    簡単すぎる0点ペア(例えば、質問にランダムな回答を付けたもの)は簡単すぎて、モデルは何も学習できません。

    したがって、各質問に対して、質問のトピックに関連しているが質問に答えていない2つの回答(2つの0点ペア)を構築しようとします。

    これは、RetriBERTを使ってすべての質問をベクトル化し、FAISSで保存することで達成できます。そして、コサイン距離を使って2つの質問ベクトル間の距離を測定できます。

    より正確には、質問Q1に対して、関連する(ただし同一ではない)質問Q2とQ3の2つの回答、つまり回答A2とA3を選んで、Q1-A2とQ1-A3の0点ペアを構築します。正のスコアのQ1-A1ペアと組み合わせると、Q1について3つのペアができ、各質問について合計3つのペアができます。したがって、元のELI5の272,000の例から、このデータセットではその3倍のサイズ、すなわち816,000の例があります。

    非常に近い2つの質問ベクトルは同じ(言い換え)質問になる可能性があり、非常に離れた2つの質問はまったく異なる質問です。
    したがって、あまり近すぎず、あまり離れすぎない質問のペアを決定するための閾値が必要です。こうすることで、同一ではないが同じトピックの質問ペアを得ることができます。
    簡単な実験では、RetriBERTベクトルのコサイン距離が10 - 11の場合がうまくいくようです。そこで、この数値を閾値として0点の質問と回答のペアを構築します。

    ベースラインモデル

    検証セットでMAE 3.91のroberta-baseベースラインはここで見つけることができます:
    https://www.kaggle.com/ratthachat/eli5-scorer-roberta-base-500k-mae391

    謝辞

    元のELI5データセットを作成してくれたFacebook AIチームと、このデータセットに簡単にアクセスできるようにしてくれたHuggingface NLPライブラリに感謝します。

    インスピレーション

    私のELI5に関するプロジェクトは、主にYacine Jerniteのこの素晴らしい作品からインスピレーションを得ています:https://yjernite.github.io/lfqa.html


    ×

    The dataset is currently being organized and other channels have been prepared for you. Please use them

    The dataset is currently being organized and other channels have been prepared for you. Please use them

    Note: Some data is currently being processed and cannot be directly downloaded. We kindly ask for your understanding and support.
    No content available at the moment
    No content available at the moment
    • Share your thoughts
    Go share your ideas~~

    ALL

      Welcome to exchange and share
      Your sharing can help others better utilize data.
    Points:20 Go earn points?
    • 306
    • 1
    • 0
    • collect
    • Share