sejarah baru

Mengapa Menukar Grafik Ke Kod Python Meningkatkan Alasan AI

Terlalu panjang; Untuk membaca

COCOGEN menukar tugas grafik akal biasa kepada kod Python, membolehkan CodeLLM seperti CODEX untuk mewujudkan struktur pertimbangan yang tepat melalui sintaks yang biasa.
featured image - Mengapa Menukar Grafik Ke Kod Python Meningkatkan Alasan AI
The FewShot Prompting Publication  HackerNoon profile picture
0-item

Jadual kiri

Abstrak dan 1 pengenalan

2 COCOGEN: mewakili struktur Commonsense dengan kod dan 2.1 Menukar (T,G) kepada kod Python

2.2 Prompting beberapa tembakan untuk menghasilkan G

3 Penilaian dan 3.1 Persediaan percubaan

3.2 Generasi skrip: PROSCRIPT

3.3 Penjejakan keadaan entiti: PROPARA

3.4 Generasi grafik argumen: EXPLAGRAPHS

4 Analisis

5 Kerja berkaitan

6 Kesimpulan, pengiktirafan, batasan dan rujukan

A Few-shot model saiz perkiraan

B Penciptaan dinamik yang cepat

C Penilaian Manusia

D Dataset Statistik

dan sampel output

F Kelajuan

G Reka bentuk kelas Python untuk tugas terstruktur

h Kesan saiz model

Perbezaan dalam prompt

2 COCOGEN: mewakili struktur Commonsense dengan kod

Kami memberi tumpuan kepada tugas-tugas pengeluaran akal biasa terstruktur. Setiap contoh latihan untuk tugas-tugas sedemikian adalah dalam bentuk (T, G), di mana T adalah input teks, dan G adalah struktur yang akan dihasilkan (biasanya grafik). Gagasan utama COCOGEN ialah mengubah grafik output G ke dalam program Gc yang setara secara semantik yang ditulis dalam bahasa pemrograman tujuan umum. Dalam kerja ini, kami memilih Python kerana populariti dalam data latihan CodeLLMs moden (Xu et al., 2022), tetapi pendekatan kami adalah agnostik kepada bahasa pemrograman. Grafik yang diubahsuai oleh kod serupa dalam format mereka dengan data pra-pelatihan Code-MLLs, dan oleh itu berfungsi sebagai lebih mudah untuk menggeneralisasi latihan atau contoh-shot sedikit daripada grafik asli. COCOGEN menggunakan Code-LLMs untuk menghasilkan Gc yang diberikan T


Kami menggunakan tugas penciptaan skrip (PROSCRIPT, Gambar 1) sebagai contoh berjalan untuk memotivasi kaedah kami: penciptaan skrip bertujuan untuk mencipta skrip (G) untuk mencapai matlamat tahap tinggi yang diberikan (T).

2.1 Menukar (T, G) kepada kod Python

Kami menukar pasangan (T, G) kepada kelas atau fungsi Python. Prosedur umum melibatkan menambah teks input T pada permulaan kod sebagai atribut kelas atau komentar deskriptif dan mengkodkan struktur G menggunakan struktur standard untuk mewakili struktur dalam kod (contohnya, hashmaps, atribut objek) atau panggilan fungsi. Tujuan di sini adalah untuk menyusun kod Python yang mewakili pasangan (T, G), tetapi mengekalkan sintaks dan konvensi kod kod kod kod Python biasa.


Sebagai contoh, untuk tugas pengeluaran skrip, kita menukar pasangan (T, G) kepada kelas Tree (Gambar 1b). Matlamat T ditambah sebagai atribut kelas (target), dan skrip G ditambah dengan senarai nod dan tepi secara berasingan. Kita pertama-tama menginstansi senarai nod sebagai objek kelas Node. Kemudian, tepi ditambah sebagai anak atribut untuk setiap node (Gambar 1b). Sebagai contoh, kita menginstansi node "Take out several plates" sebagai take_out_several_plates = Node(), dan menambah sebagai anak node take_pies_out_to_cool.


Walaupun terdapat beberapa cara untuk mewakili contoh latihan sebagai kelas Python, kami mendapati secara empiris bahawa format yang agak mudah ini adalah yang paling berkesan, terutamanya dengan model yang lebih besar.

2.2 Prompting beberapa tembakan untuk menghasilkan G





Figure 2: COCOGEN uses a prompt consisting of k (5-10) Python classes. During inference, the test input is converted to a partial class, as shown above, appended to the prompt, and completed by a code generation model such as CODEX.



Dalam eksperimen kami, kami menggunakan CODEX (Chen et al., 2021a) dan mendapati bahawa ia hampir sentiasa menghasilkan Python yang sah secara sintaksis. Oleh itu, kod yang dihasilkan boleh dengan mudah ditukar semula ke dalam grafik dan dinilai menggunakan standard, asal, metrik set data. Tambahan F senarai petunjuk sampel untuk setiap tugas yang kami eksperimen dengan.


Melayu

Dokumen ini boleh didapati di archiv di bawah lesen CC BY 4.0 DEED.

Melayu

Dokumen ini ialahTersedia dalam Archivedi bawah lesen CC BY 4.0 DEED.


Melayu

Penulis :

Melayu

(1) Aman Madaan, Institut Teknologi Bahasa, Universiti Carnegie Mellon, Amerika Syarikat ([email protected]);

Melayu

(2) Shuyan Zhou, Institut Teknologi Bahasa, Universiti Carnegie Mellon, Amerika Syarikat ([email protected]);

Melayu

(3) Uri Alon, Institut Teknologi Bahasa, Universiti Carnegie Mellon, Amerika Syarikat ([email protected]);

Melayu

(4) Yiming Yang, Institut Teknologi Bahasa, Universiti Carnegie Mellon, Amerika Syarikat ([email protected]);

Melayu

(5) Graham Neubig, Institut Teknologi Bahasa, Universiti Carnegie Mellon, Amerika Syarikat ([email protected]).

Melayu

Authors:

(1) Aman Madaan, Institut Teknologi Bahasa, Universiti Carnegie Mellon, Amerika Syarikat ([email protected]);

(2) Shuyan Zhou, Institut Teknologi Bahasa, Universiti Carnegie Mellon, Amerika Syarikat ([email protected]);

(3) Uri Alon, Institut Teknologi Bahasa, Universiti Carnegie Mellon, Amerika Syarikat ([email protected]);

(4) Yiming Yang, Institut Teknologi Bahasa, Universiti Carnegie Mellon, Amerika Syarikat ([email protected]);

(5) Graham Neubig, Institut Teknologi Bahasa, Universiti Carnegie Mellon, Amerika Syarikat ([email protected]).


L O A D I N G
. . . comments & more!

About Author

The FewShot Prompting Publication  HackerNoon profile picture
The FewShot Prompting Publication @fewshot
Spearheading research, publications, and advancements in few-shot learning, and redefining artificial intelligence.

GANTUNG TANDA

ARTIKEL INI DIBENTANGKAN DALAM...

Trending Topics

blockchaincryptocurrencyhackernoon-top-storyprogrammingsoftware-developmenttechnologystartuphackernoon-booksBitcoinbooks