Strategi kecerdasan buatan apa yang berguna untuk peringkasan?

8

Jika saya memiliki paragraf yang ingin saya rangkum, misalnya:

Ponzo dan Fila pergi ke mal di siang hari. Mereka berjalan cukup lama, berhenti di toko-toko. Mereka pergi ke banyak toko. Pada awalnya, mereka tidak membeli apa pun. Setelah pergi ke sejumlah toko, mereka akhirnya membeli baju, dan celana panjang.

Lebih baik diringkas sebagai:

Mereka berbelanja di mal hari ini dan membeli beberapa pakaian.

Apa strategi AI terbaik untuk mengotomatisasi proses ini, jika ada? Jika tidak ada, apakah itu karena akan tergantung pada terlebih dahulu memiliki sumber daya informasi eksternal yang akan menginformasikan algoritma apa pun? Atau apakah itu karena masalahnya secara inheren kontekstual?

dynrepsys
sumber

Jawaban:

6

Posting berikut memiliki sedikit matematika, yang saya harap membantu menjelaskan masalahnya dengan lebih baik. Sayangnya sepertinya, situs SE ini tidak mendukung LaTex:

Peringkasan dokumen sangat banyak merupakan masalah terbuka dalam penelitian AI. Salah satu cara tugas ini saat ini ditangani disebut "summarization ekstraktif". Strategi dasarnya adalah sebagai berikut: Membagi dokumen ini menjadi kalimat dan kami akan menyajikan sebagai ringkasan bagian dari kalimat yang bersama-sama mencakup semua detail penting dalam posting. Tetapkan hukumansaya, 1sayan, sebuah variabel zsaya{0,1}dimana zsaya=1 menunjukkan bahwa kalimat itu dipilih dan zsaya=0berarti kalimat itu ditinggalkan. Kemudian,zsayazj=1jika dan hanya jika kedua kalimat dipilih. Kami juga akan mendefinisikan pentingnya setiap kalimatwsaya untuk kalimatnya saya dan istilah interaksi wsaya,j antara kalimat saya dan j.

Membiarkan xsaya menjadi vektor fitur untuk kalimat saya. wsaya=w(xsaya) menangkap betapa pentingnya untuk memasukkan kalimat ini (atau topik yang dicakup olehnya) sementara wsaya,j=w(xsaya,xj)menunjukkan jumlah tumpang tindih antara kalimat dalam ringkasan kami. Akhirnya kami menempatkan semua ini dalam masalah minimisasi:

memaksimalkan zsayasayawsayazsaya-wsaya,jzsayazjst zsaya=0 atau 1

Ini mencoba untuk memaksimalkan bobot total dari kalimat yang dicakup dan mencoba untuk meminimalkan jumlah tumpang tindih. Ini adalah masalah pemrograman bilangan bulat mirip dengan menemukan set independen bobot terendah dalam grafik dan banyak teknik yang ada untuk memecahkan masalah tersebut.

Desain ini, menurut pendapat saya, menangkap masalah mendasar dalam peringkasan teks dan dapat diperluas dengan berbagai cara. Kita akan membahasnya sedikit, tetapi pertama-tama, kita perlu menentukan fitur-fiturnya secara lengkapw. wsaya=w(xsaya) bisa jadi hanya fungsi kalimat saya, tetapi bisa juga tergantung pada tempat kalimat dalam dokumen atau konteksnya (Apakah kalimat di awal paragraf? Apakah itu berbagi kata-kata umum dengan judul? Berapa panjangnya? Apakah itu menyebutkan kata benda yang tepat? dll)

wsaya,j=w(xsaya,xj)adalah ukuran kesamaan. Ini mengukur berapa banyak pengulangan yang akan terjadi jika kita memasukkan kedua kata dalam kalimat. Ini dapat didefinisikan dengan melihat kata-kata umum di antara kalimat. Kami juga dapat mengekstrak topik atau konsep dari setiap kalimat dan melihat berapa banyak yang umum di antara mereka, dan menggunakan fitur bahasa seperti kata ganti untuk melihat apakah satu kalimat meluas pada kalimat lainnya.

Untuk meningkatkan desain, pertama, kita bisa melakukan ekstraksi keyphrase, Yaitu mengidentifikasi frasa kunci dalam teks dan memilih untuk mendefinisikan masalah di atas dalam hal mereka daripada mencoba untuk mengambil kalimat. Itu adalah masalah yang mirip dengan apa yang Google lakukan untuk merangkum artikel berita dalam hasil pencarian mereka, tetapi saya tidak mengetahui detail dari pendekatan mereka. Kita juga bisa memecah kalimat menjadi konsep dan mencoba untuk membangun makna semantik dari kalimat (Ponzo dan Fila adalah orang P1 dan P2, mal adalah tempat P, P1 dan P2 pergi ke tempat P pada waktu T (hari) ). Mode transportasi berjalan .... dan sebagainya). Untuk melakukan ini, kita perlu menggunakan ontologi semantik atau database pengetahuan umum lainnya. Namun, semua bagian dari masalah klasifikasi semantik terakhir ini terbuka dan saya belum melihat ada yang membuat kemajuan yang memuaskan.

Kita juga bisa mengubah fungsi kerugian di atas sehingga alih-alih mengatur tradeoff antara kalimat penting wsaya dan skor keanekaragaman wsaya,jdengan tangan, kita bisa mempelajarinya dari data. Salah satu cara untuk melakukan ini adalah dengan menggunakan Bidang Acak Bersyarat untuk memodelkan data, tetapi banyak lainnya pasti ada.

Saya harap jawaban ini menjelaskan masalah mendasar yang perlu dipecahkan untuk membuat kemajuan menuju sistem perangkuman yang baik. Ini adalah bidang penelitian aktif dan Anda akan menemukan makalah terbaru melalui Google Cendekia, tetapi pertama-tama baca halaman Wikipedia untuk mempelajari istilah yang relevan

Keras
sumber