Rumah  >  Artikel  >  Peranti teknologi  >  Masa depan pengaturcara adalah milik "pseudokod"! Lajur alam semula jadi: Tiga cara untuk menggunakan ChatGPT untuk mempercepatkan pengaturcaraan penyelidikan saintifik

Masa depan pengaturcara adalah milik "pseudokod"! Lajur alam semula jadi: Tiga cara untuk menggunakan ChatGPT untuk mempercepatkan pengaturcaraan penyelidikan saintifik

WBOY
WBOYke hadapan
2023-05-16 22:19:041307semak imbas

Kemunculan chatbots berdasarkan alat kecerdasan buatan generatif, seperti ChatGPT, Bard, dan cara menggunakan alatan AI untuk penyelidikan akademik telah menyebabkan kontroversi besar, tetapi pada masa yang sama, kod yang dijana AI digunakan dalam sains Nilai penyelidikan diabaikan.

Berbanding dengan masalah plagiarisme yang disebabkan oleh teks yang dijana oleh ChatGPT, penggunaan AI untuk menyalin kod jelas kurang kontroversi malah menggalakkan "perkongsian kod" dan "penggunaan semula kod", dan memang begitu juga mudah untuk mengesan sumber Mudah, sebagai contoh, menggunakan "import" dalam Python untuk mengimport pakej bergantung dianggap sebagai rujukan.

Sebuah artikel ulasan diterbitkan baru-baru ini dalam Nature Pasukan pengarang membincangkan tiga keupayaan berpotensi ChatGPT dalam bidang pengaturcaraan saintifik, termasuk sumbang saran dan tugasan yang kompleks. dan mengendalikan tugas yang mudah tetapi memakan masa.

Masa depan pengaturcara adalah milik pseudokod! Lajur alam semula jadi: Tiga cara untuk menggunakan ChatGPT untuk mempercepatkan pengaturcaraan penyelidikan saintifik

Pautan artikel: https://www.nature.com/articles/s41559-023-02063 -3

Penyelidik telah meneroka keupayaan dan had penggunaan AI generatif untuk meningkatkan pengekodan saintifik dengan menggunakan ChatGPT untuk menterjemah bahasa semula jadi kepada kod yang boleh dibaca komputer.

Contoh dalam eksperimen terutamanya meneroka tugas umum yang mungkin berkaitan dengan ekologi, evolusi dan bidang lain Para penyelidik mendapati bahawa 80%-90% daripada tugas pengekodan boleh diselesaikan menggunakan SembangGPT .

ChatGPT boleh menjana kod yang sangat berguna jika tugasan dipecahkan kepada cebisan kecil kod yang boleh diurus dengan pembayang yang tepat sebagai pertanyaan.

Perlu diambil perhatian bahawa menjalankan percubaan yang sama dengan Bard Google biasanya akan menghasilkan hasil yang serupa, tetapi dengan lebih banyak ralat dalam kod, jadi artikel ini menggunakan ChatGPT untuk percubaan.

Pengarang pertama, Cory Merow, ialah ahli ekologi kuantitatif yang hala tuju penyelidikan utamanya ialah membina model mekanisme untuk meramalkan tindak balas populasi dan komuniti terhadap perubahan alam sekitar. Malah set data terbaik tidak sempurna dalam meramalkan tindak balas kepada perubahan global, jadi alatan perlu dibangunkan untuk menggabungkan sumber data dan meneroka set data untuk mendapatkan cerapan tentang kemungkinan perubahan dalam sistem biologi.

ChatGPT membantu pengekodan saintifik

ChatGPT adalah berdasarkan model regresi GPT-3 dan melaksanakan latihan yang sesuai pada halaman web besar, buku dan teks lain, tanpa mencari Text can dijana.

Jadi ChatGPT lebih baik dalam interpolasi (meramal teks yang serupa dengan data latihan), tetapi tidak pandai mengekstrapolasi (meramal teks baru yang berbeza daripada sampel latihan).

Saiz set latihan yang besar adalah satu kelebihan dan bermakna GPT-3 telah melihat sejumlah besar corak bahasa, membolehkannya interpolasi dan meningkatkan kemungkinan menjana balasan yang berguna kepada manusia.

Tetapi untuk tugas penjanaan kod, GPT-3 tidak tahu cara memprogram, ia hanya tahu rupa kod itu dan perkataan yang paling berkemungkinan akan muncul seterusnya Tugasnya adalah serupa dengan penyiapan automatik. Ia meramalkan blok kod seterusnya (chunk) berdasarkan model kebarangkalian >Kebarangkalian untuk menghasilkan token yang betul Berdasarkan hasil darab kebarangkalian semua token, iaitu, menambah bilangan token yang diramalkan atau mengurangkan kepastian token yang dipilih akan meningkatkan kesukaran tugasan, seterusnya mengurangkan kebarangkalian untuk mendapatkan token yang betul. token.

Oleh itu, jika anda ingin meningkatkan kebarangkalian token yang betul, anda perlu memendekkan panjang tugas penjanaan atau memberikan arahan yang lebih khusus.

Akhir sekali, penyelidik mengingatkan bahawa beberapa teks yang dijana oleh ChatGPT kelihatan seperti kod, tetapi mungkin tidak boleh dilaksanakan, jadi pemerhatian dan penyahpepijatan yang teliti diperlukan semasa proses pengekodan.

Alat sumbang saran

ChatGPT berfungsi dengan baik Dapatkan semula berbilang data sumber Sebagai contoh, dalam bidang ekologi, ciri tumbuhan, kawasan taburan spesies, dan data meteorologi boleh diperolehi secara serentak.

Walaupun beberapa data yang disediakan oleh ChatGPT tidak betul, ralat ini boleh dibetulkan dengan cepat melalui pautan yang disediakannya.

Walau bagaimanapun, ChatGPT tidak boleh menulis perangkak untuk memuat turun data daripada tapak web Ini mungkin kerana pakej bahasa R dan antara muka pengaturcaraan aplikasi (seperti protokol untuk R untuk mengakses pangkalan data ) dikemas kini terlalu cepat Lagipun, ChatGPT Data latihan telah dibina pada tahun 2021.

ChatGPT boleh mencadangkan pelbagai teknik statistik apabila menghadapi masalah tertentu Dalam soalan seterusnya, ia boleh menjana lebih banyak panduan berdasarkan andaian pengguna dan memberikan kod awal.

Walau bagaimanapun, proses sintesis hanya sesuai untuk mencadangkan dan menyampaikan idea-idea masih perlu dilakukan melalui sumber data tradisional (seperti kertas, dll.).

Perlu diingatkan bahawa sesetengah laman web mendakwa bahawa ChatGPT mempunyai keupayaan untuk menulis ringkasan buku Namun, berdasarkan keputusan ujian penyelidik, keputusan komprehensif ringkasan ini adalah sepenuhnya salah, mungkin kerana Buku yang digunakan untuk ujian tidak muncul dalam set latihan GPT-3.

Tugas yang lebih sukar memerlukan lebih banyak debugging

CtGPT sangat pandai menjana kod templat, menyediakan kod skrip pendek yang mengandungi sebilangan kecil fungsi di bawah arahan tertentu.

Sebagai contoh, dalam contoh di bawah, penyelidik meminta ChatGPT untuk menyusun input dan output bagi empat fungsi yang biasa digunakan. dan sediakan kod sampel yang menggunakan fungsi ini pada data simulasi.

Anda dapat melihat bahawa hasil yang dijana oleh ChatGPT hampir sempurna Hanya mengambil masa beberapa minit untuk menyahpepijat kod tersebut , termasuk menyediakan fungsi penamaan dan penggunaan.

Masa depan pengaturcara adalah milik pseudokod! Lajur alam semula jadi: Tiga cara untuk menggunakan ChatGPT untuk mempercepatkan pengaturcaraan penyelidikan saintifik

Penyelidik mendapati bahawa kunci kejayaan ialah:

1. Uraikan tugasan kompleks kepada berbilang subtugas, dan setiap subtugas sebaik-baiknya hanya memerlukan beberapa langkah untuk diselesaikan Lagipun, kod yang dijana oleh ChatGPT adalah berdasarkan keputusan model ramalan teks kebarangkalian.

2. ChatGPT berprestasi terbaik apabila menggunakan fungsi sedia ada, kerana ia hanya melibatkan interpolasi dan bukannya ekstrapolasi.

Sebagai contoh, kod yang menggunakan ungkapan biasa (regex) untuk mengekstrak maklumat daripada teks adalah sangat sukar bagi kebanyakan pembangun, tetapi sudah ada tapak web regex biasa yang menyediakan sejumlah besar contoh dalam talian . , dan mungkin muncul dalam contoh ChatGPT, jadi prestasi ChatGPT menulis ungkapan biasa masih baik.

3. Salah satu kritikan terbesar terhadap ChatGPT oleh ahli akademik ialah kekurangan ketelusan dalam sumber maklumatnya.

Untuk tugas penjanaan kod, tahap ketelusan tertentu boleh dicapai dengan menentukan "ruang nama", iaitu, memanggil nama pakej secara eksplisit apabila menggunakan fungsi tersebut.

Walau bagaimanapun, ChatGPT boleh menyalin terus kod awam individu tanpa memetiknya dan penyelidik masih bertanggungjawab untuk mengesahkan atribusi kod yang betul.

Pada masa yang sama, memerlukan penjanaan skrip yang lebih panjang akan mendedahkan beberapa kelemahan ChatGPT, seperti nama fungsi atau parameter palsu, dll. Inilah sebabnya StackOverflow melumpuhkan penjanaan kod ChatGPT.

Tetapi jika pengguna menyediakan set langkah pelaksanaan yang jelas, ChatGPT masih boleh menjana templat aliran kerja berguna yang mentakrifkan sambungan antara input dan output antara langkah, yang mungkin merupakan cara yang paling berguna untuk menjana kod baharu menggunakan ekstrapolasi GPT-3.

Pada masa ini ChatGPT tidak boleh menukar pseudokod (langkah algoritma yang diterangkan dalam bahasa mudah) kepada kod boleh laku komputer yang sempurna, tetapi ini mungkin tidak jauh dari realiti.

ChatGPT amat membantu untuk pemula dan bahasa pengaturcaraan yang tidak dikenali, kerana pemula hanya boleh menulis beberapa skrip yang lebih pendek, menjadikan penyahpepijatan lebih mudah.

CtGPT lebih baik dalam tugasan bukan kreatif

CtGPT terbaik dalam menyelesaikan masa -memakan tugas Tugas yang dirumus untuk nyahpepijat, mengesan dan menerangkan ralat dalam kod anda.

CtGPT juga sangat berkesan semasa menulis dokumen fungsi Contohnya, menggunakan sintaks dokumen sebaris roxygen 2 sangat cekap dalam mengenal pasti semua parameter dan kelas, tetapi ia jarang menerangkan cara menggunakannya. fungsi.

Penghadan utama ialah penjanaan ChatGPT dihadkan kepada kira-kira 500 perkataan dan hanya boleh menumpukan pada penjanaan blok kod yang lebih kecil, sambil juga menjana ujian unit untuk mengesahkan fungsi kod secara automatik.

Kebanyakan cadangan yang diberikan oleh ChatGPT membantu dalam mentakrifkan struktur ujian dan menyemak kelas objek yang dijangkakan.

Akhir sekali, ChatGPT sangat berkesan dalam memformat semula kod untuk mengikut gaya kod piawai (cth. Google).

Masa depan adalah milik pseudokod

ChatGPT dan alatan pemprosesan bahasa semula jadi dipacu AI yang lain bersedia untuk mengautomasikan tugas mudah untuk pembangun, seperti menulis fungsi pendek, nyahpepijat Sintaks , anotasi dan pemformatan, manakala kerumitan sambungan bergantung pada kesediaan pengguna untuk nyahpepijat (dan kecekapan mereka).

Para penyelidik merumuskan fungsi ChatGPT dalam penjanaan kod, yang boleh memudahkan proses penulisan kod dalam bidang saintifik Walau bagaimanapun, pemeriksaan manual masih diperlukan, dan kod boleh dijalankan tidak semestinya bermakna Kod ini dapat melaksanakan tugas yang dimaksudkan, jadi ujian unit atau ujian interaktif tidak formal masih kritikal.

Masa depan pengaturcara adalah milik pseudokod! Lajur alam semula jadi: Tiga cara untuk menggunakan ChatGPT untuk mempercepatkan pengaturcaraan penyelidikan saintifik

Pastikan atribusi kod yang betul dalam kes di mana penyelesaian mungkin telah dibangunkan oleh manusia dan dihasilkan oleh salinan ringkas ChhatGPT Orang penting.

Sudah ada chatbot yang mula menyediakan pautan ke sumbernya secara automatik (cth., Microsoft Bing), walaupun ini masih di peringkat awal.

ChatGPT menawarkan cara alternatif untuk mempelajari kemahiran pengekodan berbanding kaedah tradisional, mengurangkan halangan tugas awal menulis dengan menukar pseudokod terus kepada kod.

Para penyelidik mengesyaki bahawa kemajuan masa hadapan akan menggunakan alat seperti ChatGPT untuk menyahpepijat kod yang ditulis secara automatik, menjana secara berulang, menjalankan dan mencadangkan kod baharu berdasarkan ralat yang dihadapi semasa percubaan, penyelidik mendapati bahawa keupayaan untuk membetulkan kod adalah terhad, hanya sekali-sekala berjaya apabila arahan yang sangat khusus disasarkan pada blok kecil kod, dan proses penyahpepijatan adalah jauh kurang cekap daripada penyahpepijatan manual.

Penyelidik mengesyaki bahawa penyahpepijatan automatik akan bertambah baik seiring dengan kemajuan teknologi (seperti model GPT-4 yang dikeluarkan baru-baru ini, yang dikatakan 10 kali lebih besar daripada model GPT-3).

Masa depan akan datang dan kini tiba masanya untuk pembangun mempelajari kemahiran kejuruteraan segera untuk memanfaatkan alatan AI yang baru muncul Penyelidik meramalkan bahawa kod yang dijana menggunakan kecerdasan buatan akan menjadi faktor yang semakin penting dalam semua aspek pembangunan perisian yang semakin bernilai yang menjadi asas kepada penemuan dan pemahaman saintifik.

Atas ialah kandungan terperinci Masa depan pengaturcara adalah milik "pseudokod"! Lajur alam semula jadi: Tiga cara untuk menggunakan ChatGPT untuk mempercepatkan pengaturcaraan penyelidikan saintifik. Untuk maklumat lanjut, sila ikut artikel berkaitan lain di laman web China PHP!

Kenyataan:
Artikel ini dikembalikan pada:51cto.com. Jika ada pelanggaran, sila hubungi admin@php.cn Padam