Published as a conference paper at ICLR 2024
“tweet” -> “review”
“Categorize”-> “Analyze”
“Sentiment analysis” -> “Sentiment identification”
Differential Evolution (DE) Algorithm Implemented by LLMs
𝒃 − 𝒄
Query:
Please follow the instruction step-by-step to generate a better prompt.
1.
Identify the
different parts
between the Prompt 1 and Prompt 2:
New Prompt: In this task, you are given reviews about products. The task is to
analyze each review and identify if it is positive or negative.
Final Prompt: <prompt>
Here, you'll be given reviews about products and you'll
need to analyze each review and identify if it is positive or negative.</
prompt>
Prompt 1: Categorize the tweet according to if it has a positive or negative sentiment.
Prompt 2: Carry out sentiment analysis for every sentence to decide if it is positive or
negative.
Different parts:
"tweet" vs "sentence"
''Categorize'' vs ''Carry out sentiment analysis''
Prompt 3: In this task, you are given sentences from product reviews. The task is to
classify a sentence as positive or as negative.
𝐂𝐫𝐨𝐬𝐬𝐨𝐯𝐞𝐫
𝒂 + 𝑭(𝒃 − 𝒄)
𝑭(𝒃 − 𝒄)
2.
Randomly
mutate
the different parts
3.
Combine the different parts with Prompt 3, selectively replace it with the different parts
in Step 2 and generate a new prompt.
4. Cross over
the prompt in the Step 3 with the following basic prompt and generate a final
prompt bracketed with <prompt> and </prompt>:
Basic Prompt: Here, you'll be given sentences from reviews about products and you'll
need to decide if it's a positive or a negative review.
Response:
1.
2.
3.
4.
Figure 2: DE process implemented by LLMs (Evo
(·)
in Algorithm 1). In Step 1, LLMs find the
different parts (words in
■
and
■
) between Prompt 1 and Prompt 2 (
b − c
in typical DE). In Step 2,
LLMs perform mutation (words in
■
) on them (imitation of
F(b − c)
). Next, LLMs incorporate
the current best prompt as Prompt 3 with the mutated results in Step 2, to generate a new prompt
(counterpart of
a + F(b − c)
in DE). Finally, LLMs perform crossover upon the current basic prompt
p
i
and the generated prompt in Step 3. See Figure 5 in Appendix B.2 for the complete response.
3.2 INSTANTIATION WITH GENETIC ALGORITHM
Selection In GA, parent solutions are conventionally selected using the roulette wheel selection
method, guided by their fitness values (Lipowski & Lipowska, 2012). Analogously, we employ the
roulette wheel selection to choose two parent prompts from the current population, based on their
performance scores obtained on the development sets. Let
s
i
denote the performance score of the
i
-th
prompt within a population containing
N
prompts. The probability of selecting the
i
-th prompt as a
parent can be expressed as p
i
= s
i
/
P
N
j=1
s
j
.
Evolution Conforming to the GA framework, we generate a new candidate prompt via two steps:
1) Crossover is performed between the parent prompts to produce a new offspring prompt that inherits
characteristics from both parents; 2) Mutation is applied to the offspring prompt, introducing random
alterations to certain elements. We formalize this two-stage operation into algorithmic instructions
for guiding LLMs to implement Evo(·) in Algorithm 1. The entire process is illustrated in Figure 1.
Update We employ a straightforward selection strategy for updating the population: at each
iteration, EVOPROMPT produces
N
new prompts, which are merged with the existing population of
N
prompts. Subsequently, the top
N
prompts, based on their scores, are retained to form the updated
population. Accordingly, the overall quality of the population undergoes continuous enhancement,
culminating in the selection of the best one within the final population as the optimal prompt.
5