For OpenAI, o1 represents a step toward its broader goal of human-like artificial intelligence. More practically, it does a better job at writing code and solving multistep problems than previous models. But it’s also more expensive and slower to use than GPT-4o. OpenAI is calling this release of o1 a “preview” to emphasize how nascent it is.

The training behind o1 is fundamentally different from its predecessors, OpenAI’s research lead, Jerry Tworek, tells me, though the company is being vague about the exact details. He says o1 “has been trained using a completely new optimization algorithm and a new training dataset specifically tailored for it.”

OpenAI taught previous GPT models to mimic patterns from its training data. With o1, it trained the model to solve problems on its own using a technique known as reinforcement learning, which teaches the system through rewards and penalties. It then uses a “chain of thought” to process queries, similarly to how humans process problems by going through them step-by-step.

At the same time, o1 is not as capable as GPT-4o in a lot of areas. It doesn’t do as well on factual knowledge about the world. It also doesn’t have the ability to browse the web or process files and images. Still, the company believes it represents a brand-new class of capabilities. It was named o1 to indicate “resetting the counter back to 1.”

I think this is the most important part (emphasis mine):

As a result of this new training methodology, OpenAI says the model should be more accurate. “We have noticed that this model hallucinates less,” Tworek says. But the problem still persists. “We can’t say we solved hallucinations.”

  • Echo Dot
    link
    fedilink
    English
    63 months ago

    To be a little nitpicky most of the AI that can play Mario kart are trained not with a reinforcement learning algorithm, but woth a genetic algorithm, which is a sort of different thing.

    Reinforcement learning is rather like how you teach a child. Show them a bunch of good stuff, and show them a bunch of bad stuff, and tell them which is the good stuff and which is the bad stuff.

    Genetic algorithms are where you just leave it alone, simulate the evolutionary process on an accelerated time scale, and let normal evolutionary processes take over. Much easier, and less processor intensive, plus you don’t need huge corpuses of data. But it takes ages, and it also sometimes results in weird behaviors because evolution finds a solution you never thought of, or it finds a solution to a different problem to the one you were trying to get it to find a solution to.

    • Nougat
      link
      fedilink
      23 months ago

      … sometimes results in weird behaviors because evolution finds a solution you never thought of, or it finds a solution to a different problem to the one you were trying to get it to find a solution to.

      Those outcomes seem especially beneficial.

      But it takes ages, …

      Is this process something that distributed computing could be leveraged for, akin to SETI@home?

      • Echo Dot
        link
        fedilink
        English
        23 months ago

        I work in computer science but not really anything to do with AI so I’m only adjacently knowledgeable about it. But my understanding is unfortunately, no not really. The problem would be that if you run a bunch of evolutions in parallel you just get a bunch of independent AIs, all with slightly different parameters but they’re incapable of working together because they weren’t evolved to work together, they were evolved independently.

        In theory you could come up with some kind of file format that allowed for the transfer of AI between each cluster, but you’d probably spend as much time transferring AI as you saved by having multiple iterations run at the same time. It’s n^n problem, where n is the number of AIs you have.

        • @[email protected]
          link
          fedilink
          English
          22 months ago

          Genetic algorithms is a sort of broad category and there’s certainly ways you could federate and parallelize. I think autoML basically applies this within the ML space (multiple trainings explore a solution topology and convergence progress is compared between epochs, with low performers dropping out). Keep in mind, you can also use a genetic algorithm to learn how to explore an old fashioned state tree.