MM-Parameter
Wie jeder Maschinenlern-Modelle, auch große Sprachmodelle haben verschiedene Parameter, die die Varianz der generierten Textausgaben steuern. Wir haben einen mehrteiligen Serie begonnen, um den Einfluss dieser Parameter detailliert zu erklären. Wir werden mit der perfekten Balance in der Inhaltserstellung abschließen, indem wir alle in unserer mehrteiligen Serie diskutierten Parameter verwenden.
Willkommen beim ersten Teil, wo wir den bekanntesten Parameter, „Temperatur,“ diskutieren.
Temperatur
Wenn das Ziel die Kontrolle der Randomisität der Voraussagen ist, dann ist die Temperatur das richtige für Sie. Niedrige Temperaturwerte machen die Ausgabe deterministischer, während höhere Werte kreativer werden, indem diverse Ergebnisse zugelassen werden.
Lassen Sie uns die Temperatur in Aktion sehen, indem wir folgenden Code und Ausgabe verwenden. Um die Bedeutung einfach zu präsentieren, haben wir beschlossen, hugging face transformers und das GPT2-Model insbesondere zu verwenden.
import torch
from transformers import GPT2LMHeadModel, GPT2Tokenizer
# Load GPT-2 model and tokenizer
tokenizer = GPT2Tokenizer.from_pretrained("gpt2")
model = GPT2LMHeadModel.from_pretrained("gpt2")
# Add pad token to tokenizer (GPT-2 doesn't have it by default)
tokenizer.pad_token = tokenizer.eos_token
# Function to generate response with varying temperature
def generate_with_temperature(prompt, temperature):
inputs = tokenizer(prompt, return_tensors='pt', padding=True)
# Set the attention_mask and pad_token_id
outputs = model.generate(
inputs.input_ids,
attention_mask=inputs['attention_mask'],
do_sample=True,
max_length=200,
temperature=temperature,
pad_token_id=tokenizer.eos_token_id
)
return tokenizer.decode(outputs[0], skip_special_tokens=True)
#Prompt on which we get the content generated based on temperature
prompt = "What are some of the best strategies within NFL Fantasy"
# Test temperature variations
print("Temperature 0.3 (Less deterministic but coherent):\n", generate_with_temperature(prompt, temperature=0.3))
print("\nTemperature 0.5 (Balanced):\n", generate_with_temperature(prompt, temperature=0.5))
print("\nTemperature 0.9 (More creative):\n", generate_with_temperature(prompt, temperature=0.9))
Ausgabe:
python test_temperature.py
Temperature 0.3 (Less deterministic but coherent):
What are some of the best strategies within NFL Fantasy Football?
I've seen a lot of great strategies for predicting the next NFL season. I've seen great strategies for predicting the next NFL season.
I've seen a lot of great strategies for predicting the next NFL season. I've seen great strategies for predicting the next NFL season.
I've seen a lot of great strategies for predicting the next NFL season. I've seen great strategies for predicting the next NFL season.
I've seen a lot of great strategies for predicting the next NFL season. I've seen great strategies for predicting the next NFL season.
I've seen a lot of great strategies for predicting the next NFL season. I've seen great strategies for predicting the next NFL season.
I've seen a lot of great strategies for predicting the next NFL season. I've seen great strategies for predicting the next NFL season.
I've seen a lot of great strategies for predicting the next
Temperature 0.5 (Balanced):
What are some of the best strategies within NFL Fantasy Football?
1. Pick up the first pick and use it to draft a QB
In the past, I've mentioned that I tend to pick up the first pick in the first round. The best way to pick up the first pick is to take the first pick and then use it to draft a QB. I find that the more I draft the QB, the more I draft the QB. This is why I like to draft the first pick in the first round.
2. Draft a QB for the first time
This is an important one, but it's not the only one. Drafting a QB for the first time is a great way to start your fantasy season.
3. Draft a QB for the first time
This is the most important one. Drafting a QB for the first time is the most important one. Drafting a QB for the first time is the most important one.
Temperature 0.9 (More creative):
What are some of the best strategies within NFL Fantasy?
If you are looking for players that will be good for you, here is an updated list of key stats, which you can find on our official website:
All players were ranked in the top 10 fantasy players. These players are all high-rated defensive backs or running backs with good play across all phases of their careers. The players above were ranked from 5-5 for total points scored.
The chart below will allow you to visualize the players in your league.
All players have 5.5 sacks, 5 sacks and 2.5 tackles for loss on the season. They have a combined 11.3 sacks with a 4.6, 1.6 and 2.1 yards per carry average, respectively.
Each player has three touchdowns. The three touchdowns are tied for the top five fantasy points with 3 points in an entire game. The three touchdowns are tied for the top ten points with 2 points
Lassen Sie uns die Ausgabe verstehen:
- Niedrige Temperatur (0,3): Das Modell wird sich auf die am ehesten zu erwartenden Wortwahl konzentrieren. Wenn Präzision und Konsistenz für Sie wichtig sind, dann geben Sie die Temperatur in diesem Bereich ein. Halten Sie jedoch im Hinterkopf, dass das Modell möglicherweise in die Wiederholung ähnlicher Phrasen abgleitet, wie es unsere Ausgabe hier gezeigt hat.
- Mittlere Temperatur (0,5): Diese Temperatur lässt perfekt Coherence und Kreativität balancieren. Es ist eine hervorragende Mitte, wenn Sie eine angemessene Variation haben wollen, ohne Struktur zu verlieren. Wie Sie in der Ausgabe sehen können, wurde ein bisschen Balance hinzugefügt, aber es könnte immer noch ein bisschen Wiederholung in der Ausgabe zu beobachten sein.
- Hohe Temperatur (0,9): Diese Temperatur lässt die LLM so kreativ wie möglich werden. Wie Sie sehen können, unterscheidet sich diese Ausgabe von den vorherigen zwei, bringt eine Menge Zufälligkeit und Variation im Inhalt mit.
Der oben genannte Beispiel legt eine grundlegende Verständnis der Temperatur fest. Lassen Sie uns uns jetzt in einer etwas detaillierteren Weise mit ein paar Anwendungsfälle anschauen: „Kreatives Erzählungsgenerieren“ und „Technische Erklärungen.“
Lassen Sie uns das mit dem folgenden Code verstehen, wie die Temperatur die oben genannten 2 Anwendungsfälle beeinflusst.
import torch
from transformers import GPT2LMHeadModel, GPT2Tokenizer
# Load GPT-2 model and tokenizer
tokenizer = GPT2Tokenizer.from_pretrained("gpt2")
model = GPT2LMHeadModel.from_pretrained("gpt2")
# Add pad token to tokenizer (GPT-2 doesn't have it by default)
tokenizer.pad_token = tokenizer.eos_token
# Function to generate response based on temperature
def generate_with_temperature(prompt, temperature, max_length=200):
inputs = tokenizer(prompt, return_tensors='pt', padding=True)
outputs = model.generate(
inputs.input_ids,
attention_mask=inputs['attention_mask'],
do_sample=True,
max_length=max_length,
temperature=temperature, # Only focusing on temperature
pad_token_id=tokenizer.eos_token_id
)
return tokenizer.decode(outputs[0], skip_special_tokens=True)
### USE CASE 1: CREATIVE STORY GENERATION ###
def creative_story_generation():
prompt = "Once upon a time, in a distant galaxy, there was a spaceship called Voyager."
# Negative Impact: Low temperature for creative writing (too deterministic, repetitive)
print("\n=== Creative Story with Low Temperature (0.2) - Negative Impact: ===")
low_temp_story = generate_with_temperature(prompt, temperature=0.2)
print(low_temp_story)
# Perfect Impact: High temperature for creative writing (more creative and varied)
print("\n=== Creative Story with High Temperature (0.9) - Perfect Impact: ===")
high_temp_story = generate_with_temperature(prompt, temperature=0.9)
print(high_temp_story)
### USE CASE 2: TECHNICAL EXPLANATION ###
def technical_explanation():
prompt = "Explain how blockchain works in simple terms."
# Negative Impact: High temperature for technical writing (too creative, inaccurate)
print("\n=== Technical Explanation with High Temperature (0.9) - Negative Impact: ===")
high_temp_explanation = generate_with_temperature(prompt, temperature=0.9)
print(high_temp_explanation)
# Perfect Impact: Optimal temperature for technical writing (accurate and focused)
print("\n=== Technical Explanation with Adjusted Temperature (0.7) - Perfect Impact: ===")
perfect_temp_explanation = generate_with_temperature(prompt, temperature=0.7)
print(perfect_temp_explanation)
# Run both use cases
creative_story_generation()
technical_explanation()
Ausgabe:
python temperature_impact.py
=== Creative Story with Low Temperature (0.2) - Negative Impact: ===
Once upon a time, in a distant galaxy, there was a spaceship called Voyager. It was a spaceship that had been brought back from the dead by the gods. It was a spaceship that had been brought back from the dead by the gods. It was a spaceship that had been brought back from the dead by the gods. It was a spaceship that had been brought back from the dead by the gods. It was a spaceship that had been brought back from the dead by the gods. It was a spaceship that had been brought back from the dead by the gods. It was a spaceship that had been brought back from the dead by the gods. It was a spaceship that had been brought back from the dead by the gods. It was a spaceship that had been brought back from the dead by the gods. It was a spaceship that had been brought back from the dead by the gods. It was a spaceship that had been brought back from the dead by the gods. It was a spaceship that had been
=== Creative Story with High Temperature (0.9) - Perfect Impact: ===
Once upon a time, in a distant galaxy, there was a spaceship called Voyager. The ship seemed to have been flying in space as well, like the spaceship in the movie "The Voyage Home". The Captain of the Voyager was Captain Jean-Luc Picard.
In the Star Trek movies, this is true. But in the movie, on Voyager, our hero is not Jean-Luc Picard. Jean-Luc, the villain, has no desire to lead us to vengeance against the dying star.
But what about Star Trek VI: The Undiscovered Country…
In a scene that's been in development for years (one you'll almost certainly see in an upcoming Star Trek film), in the middle of the movie (one you won't see until later in the film), we see that Picard is no longer in the Star Trek universe as is the story, to be played by the same actor who played Lieutenant Dax (who was in the movie), but Picard himself.
=== Technical Explanation with High Temperature (0.9) - Negative Impact: ===
Explain how blockchain works in simple terms.
Blockchain can be used to determine if the system is trustworthy and to prevent fraud, even if the system is used in a completely different manner. Blockchain can also be used to help determine how the system is run and to ensure that its operation is efficient.
This way all your trust in the system can be verified by your actions, and you can have full control over it. When you are not trusting a computer, it can be easy to get a hold of a server and then just change the software, allowing you to control and monitor transactions with the help of the blockchain. If your business uses distributed storage then it is easy to have more control over your activities.
What do I need to understand about blockchain?
To understand how blockchain works and how you can use it properly, you must first understand how blockchain works.
Bitcoins are digital tokens, created at the start of each generation that are used to
=== Technical Explanation with Adjusted Temperature (0.7) - Perfect Impact: ===
Explain how blockchain works in simple terms.
What are the key differences between Bitcoin and Ethereum?
Blockchain is a cryptographic protocol. It can be used to create any type of transaction. It is used to store data and create new entities. It is used as a system of communication in blockchain systems.
In Ethereum, the transaction is recorded, stored, and used to perform the transaction. It is a way to transfer information. The transaction is called a "blockchain."
Since the blockchain is used for many things, it is easy to understand how the technology works. The most important difference is that Ethereum uses the blockchain to create an interface to the Internet of Things. It is this interface that allows for data exchange and the creation of new entities.
Because of this, it is possible to perform the transactions on the blockchain. So, what is the difference between Bitcoin and Ethereum?
The Bitcoin and Ethereum blockchain is a distributed ledger.
Nun lassen Sie uns die Ausgabe für kreatives Erzählungsgenerieren und technische Erklärungen aufgrund der Temperatursetzungen und wie die Ausgabe beeinflusst wurde, break und analysieren. Außerdem werden wir beobachten, wie eine Temperatursetzung perfekt für einen Anwendungsfall ist und das genaue Gegenteil für den anderen Anwendungsfall macht.
Kreatives Erzählungsgenerieren
- Niedrige Temperatur (negative Auswirkung):Wie Sie sehen können, ist die Geschichte Ausgabe sehr repetitiv und fehlt an Vielfalt. Dieser Ergebnis ist für eine kreative Aufgabe nicht zufriedenstellend und die extreme Wiederholung durch die Unfähigkeit des Modells, neue und innovative Ideen einzubringen, macht es für Erzählungen unerwünscht.
- Hohe Temperatur (Perfekter Effekt): Wie Sie aus dem Output sehen können, nimmt die Geschichte interessante Richtungen und ist sehr kreativ. Der Output fügt der Geschichte auch mehrere Aspekte hinzu, was sie vielfältig, phantasievoll und perfekt für innovative Erzählungen macht.
Technische Erklärung
- Hohe Temperatur (Negativer Effekt): Es ist wichtig zu erinnern, dass der Aufbau von Tatsachengenauigkeit sehr wichtig ist für eine Anwendung wie eine technische Erklärung. Hohe Temperatur führt zu viel Zufall und weniger wahrscheinlichen Wörtern, die in die generierte Inhalte eingefügt werden, was sie für technisches Schreiben unzufriedenstellend macht. Das gleiche kann auch aus dem obenstehenden Output abgeleitet werden, dass es zu vage ist und irrelevante Ideen enthält.
- Adaptierte Temperatur (Perfekter Effekt): Wir haben die Temperatur auf einen Schalter gelegt, der einen perfekten Ausgleich für die Generierung von technischen Inhalten findet. Wie Sie sehen können, ist der Output momentan viel geordneter. Bei dieser Temperatur kann das Modell Vermeidung von Wiederholungen wie bei niedriger Temperatur und Verlust von Kohärenz wie bei hoher Temperatur erreichen.
Fazit
Sie haben alle Wege gesehen, wie Temperatur Inhaltserzeugung beeinflussen und bei welcher Temperaturstellung es perfekt für welche Anwendung ist. Außerdem sollten Sie beachten, dass diejustierung der Temperatur nicht das Alles und Alles der Inhaltserzeugung ist; Sie werden auch andere Parameter justieren müssen. Wir werden das alles in den bevorstehenden Artikeln der Reihe anschauen.
Source:
https://dzone.com/articles/decoding-llm-parameters-temperature