I want to fine tune an LLM to “steer” it in the right direction. I have plenty of training examples in which I stop the generation early and correct the output to go in the right direction, and then resume generation.

Basically, for my dataset doing 100 “steers” on a single task is much cheaper than having to correct 100 full generations completely, and I think each of these “steer” operations has value and could be used for training.

So maybe I’m looking for some kind of localized DPO. Does anyone know if something like this exists?

  • hok@lemmy.dbzer0.comOP
    link
    fedilink
    English
    arrow-up
    1
    ·
    3 days ago

    The article you linked to uses SFT (supervised fine tuning, a specific training technique) as its alignment strategy. There are other ways to fine-tune a model.

    I guess I’m wondering if you can train on these partial responses without needing the full rest of the output, without the stop token, or if you need full examples as the article hints to.

    • iii@mander.xyz
      link
      fedilink
      English
      arrow-up
      1
      ·
      2 days ago

      I was unaware of that acronym, thank you. It does make me wonder: is there unsupervised training of LLMs?

      Yes, you can train without the stop token. The stop token is just that: another token. I do not expect the model to unlearn the usage of the stop token from training on a few 100 new examples.

      • hok@lemmy.dbzer0.comOP
        link
        fedilink
        English
        arrow-up
        1
        ·
        2 days ago

        Unsupervised training happens during the pre-training phase when you dump all kinds of quality documents and it learns the relationship between tokens

        • iii@mander.xyz
          link
          fedilink
          English
          arrow-up
          1
          ·
          2 days ago

          Could you perhaps share a reference for this? I’m eager to learn as I don’t quite understand.

          I’ve always trained LLM supervised: predict token N+1 based on tokens 1 to N.

          • hok@lemmy.dbzer0.comOP
            link
            fedilink
            English
            arrow-up
            1
            ·
            2 days ago

            This pre-training was done by Meta. It’s what Llama-3.1-405B is (in contrast to Llama-3.1-405B-Instruct). https://huggingface.co/meta-llama/Llama-3.1-405B

            Training Data

            Overview: Llama 3.1 was pretrained on ~15 trillion tokens of data from publicly available sources. The fine-tuning data includes publicly available instruction datasets, as well as over 25M synthetically generated examples.

            • iii@mander.xyz
              link
              fedilink
              English
              arrow-up
              1
              ·
              edit-2
              2 days ago

              Oh I see the origin of my confusion. The terminology “supervised learning” got repurposed.

              It’s all supervised learning if the model is learning the relationship between input and expected output (using supervised learning as described in (1)). The methodology of “pre-training” is the same as that of “supervised fine tuning”.

              There’s no unsupervised learning happening, as described in (2)

              • hok@lemmy.dbzer0.comOP
                link
                fedilink
                English
                arrow-up
                1
                ·
                edit-2
                2 days ago

                No, it’s unsupervised. In pre-training, the text data isn’t structured at all. It’s books, documents, online sources, all put together.

                Supervised learning uses data with “ground truth” labels.

                • iii@mander.xyz
                  link
                  fedilink
                  English
                  arrow-up
                  1
                  ·
                  2 days ago

                  Have you worked with (variational) auto-encoders? I think they’re a great example of what I would call unsupervised learning.

                  Supervised learning uses data with “ground truth” labels.

                  What are “ground truth” labels?

                  • hok@lemmy.dbzer0.comOP
                    link
                    fedilink
                    English
                    arrow-up
                    1
                    ·
                    2 days ago

                    Ground truth labels are just prescriptive labels that we recognize as being true. The main thing that distinguishes unsupervised from supervised is that in unsupervised learning, what is “good” is learned from the unstructured data itself. In supervised learning, what is “good” is learned from some external input, like “good” human-provided examples.