Nama saya Artem, saya kepala periklanan kinerja di VK. Tim kami terlibat dalam fakta bahwa, di satu sisi, membuat iklan di VK lebih efektif, lebih menguntungkan bagi pengiklan, lebih menarik bagi pengguna. Ini adalah tujuan produk yang besar.
Di sisi lain, secara teknis, kami adalah tim insinyur ML, pengembang yang cukup biasa yang menghabiskan banyak waktu untuk tugas-tugas yang berkaitan dengan ilmu data dan ML. Hari ini saya ingin berbicara tentang dua topik ini, karena keduanya menarik bagi saya, saya suka membicarakannya. Saya sangat berharap bahwa kita akan memiliki komunikasi langsung; jika seseorang menonton siarannya, akan lebih menarik jika Anda menulis pertanyaan.
Secara keseluruhan, saya ingin membagi percakapan kita menjadi dua blok. Yang pertama, saya akan berbicara tentang berbagai tugas yang dihadapi dalam periklanan di persimpangan dengan ilmu data. Itulah mengapa periklanan dapat menjadi area yang menarik bagi spesialis ML, untuk spesialis ilmu data. Di sisi lain, saya ingin berbagi pengalaman saya pindah ke proyek ML engineering, apa yang saya pelajari selama empat tahun saya melakukan ML sebagai bagian dari sejarah teknik. Dan bicarakan tentang hal-hal apa yang ditemukan di perusahaan besar, tetapi tidak dibahas dalam kursus yang berbeda; Keterampilan apa saja yang sulit dipelajari saat Anda mempelajari data science atau ML di universitas atau pendidikan online. Saya akan mencoba mengabdikan setengah jam untuk setiap topik.
Pertama, saya akan berbicara tentang periklanan, teknologi periklanan, periklanan komputasi sebagai bidang untuk penelitian, kegiatan ilmiah dan teknik - yaitu, bidang pengetahuan; tugas apa yang ada di sana, dan mengapa menyenangkan untuk melakukannya ketika ada NLP dan hal-hal hype lainnya, tetapi periklanan tidak sering dibicarakan.
Tantangan keseluruhannya adalah: kami memiliki sekumpulan pengiklan. Mereka dapat menjadi pengguna mana saja yang ingin mempromosikan pengetahuan tentang produk mereka, bisnis mereka. Mereka semua memiliki tujuan yang berbeda-beda. Seseorang hanya ingin menampilkan iklannya kepada sebanyak mungkin orang; Misalnya, Coca-Cola bersyarat memiliki tugas membuat semua orang tahu tentang merek mereka, sehingga semua orang ingat bahwa ada minuman seperti itu, bahwa ini adalah tahun baru, dan tidak ada alternatif lain selain minuman ini jika Anda pergi ke toko. Contoh bagus lainnya adalah Fairy: berapa banyak deterjen lain yang kamu tahu selain dia? Ini semua adalah kesadaran merek; pengiklan besar menetapkan tujuan - untuk memastikan bahwa setiap orang memiliki pengetahuan di kepala mereka tentang keberadaan produk tertentu.
Ada tujuan lain. Misalnya, lebih banyak diterapkan, yang disebut tujuan kinerja. Ini adalah saat pengiklan ingin Anda mengikuti iklan dan mengambil tindakan. Misalnya, mereka pergi ke situs dan meninggalkan aplikasi untuk pinjaman. Atau Anda membeli sesuatu dari toko online. Dll
Secara umum, tugas periklanan adalah membawa pengguna baru ke beberapa bisnis (yang disebut prospek) dan membuat pengguna ini melakukan sesuatu yang berguna bagi pengiklan dan mendatangkan keuntungan bagi bisnisnya.
Kami memiliki platform - tempat kami mengizinkan Anda untuk menampilkan iklan. Dalam kasus VK, ini adalah rekaman; dalam kasus beberapa situs lain, ini dapat berupa, misalnya, spanduk. Tujuan situs ini adalah untuk menghasilkan uang dari iklan; itu menjual perhatian pengguna untuk mendapatkan uang. Berkat ini, VK tetap menjadi proyek gratis; model monetisasi lainnya dapat dipertimbangkan, tetapi model iklan berfungsi dengan baik untuk layanan serupa.
Pengguna biasanya tidak ingin melihat iklan: itu bukan alasan mereka datang ke layanan. Tetapi ternyata kontrak iklan bekerja persis seperti ini: pengguna membayar dengan perhatiannya untuk menggunakan layanan tersebut. Oleh karena itu, tujuan kami sebagai jaringan periklanan adalah untuk memastikan bahwa pengguna tidak marah, iklan tidak membuat mereka menjauh atau menakut-nakuti mereka.
Akan sangat indah jika iklan ternyata bermanfaat bagi pengguna - yaitu, bisnis dan postingan yang dipromosikan ternyata sama menariknya dengan konten biasa bagi pengguna. Ini umumnya sempurna.
Kami memiliki tiga kekuatan: pengguna, pengiklan, dan situs. Kita harus membangun interaksi seperti itu di antara mereka sehingga masing-masing memenuhi tujuannya. Bayangkan: Anda pergi ke layanan VK, buka feed - dan Anda melihat tempat kami memasukkan iklan. Ada banyak pengiklan yang mengajukan permohonan untuk sumber daya ini dan ingin iklan mereka ditampilkan persis - tetapi bagaimana cara memilih iklan yang perlu ditampilkan pada saat tertentu kepada setiap pengguna?
Metode standar yang digunakan secara aktif dalam periklanan adalah lelang online. Anda mungkin pernah melihat opsi lelang yang berbeda dalam kehidupan nyata atau di Ebay, misalnya: ini bisa menjadi situasi di mana setiap orang dapat menawar. Seorang pengguna berkata - Saya bertaruh 10 rubel, yang lain masuk - bertaruh 20, yang ketiga - 100, dan seterusnya. Namun, tidak praktis untuk melakukan lelang seperti "siapa yang membayar lebih, menang" di lingkungan Internet, oleh karena itu digunakan lelang tertutup. Dalam hal ini, masing-masing peserta membuat taruhan secara diam-diam. Secara kiasan, semua potongan kertas dengan taruhan dimasukkan ke dalam pot, dan kemudian seseorang datang, mengambilnya, menemukan kertas dengan angka tertinggi dan berkata - Anda menang.
Misalkan ada dua pengiklan - misalnya Nike dan Coca-Cola. Salah satu dari mereka bersedia membayar 5 kopeck untuk setiap tampilan, dan yang lainnya - 10. Yang lainnya menang, dan perkembangan cerita selanjutnya tergantung pada jenis pelelangan. Ada dua jenis periklanan utama: lelang harga pertama dan kedua. Dalam lelang harga pertama, pemenang membayar harga yang dia sebutkan. Misalnya, Coca-Cola mengatakan, "Saya akan membayar 10 kopeck", tanpa melihat tarif pengguna lain; lelang mengatakan - OK, 10 kopecks. Nike mengatakan "5 kopeck", Coca-Cola menang dan membayar 10 kopeck.
Namun, ada juga lelang harga kedua: dalam kasus ini, pemenang harus membayar uang sebanyak yang diperlukan untuk memenangkan semua tawaran lainnya. Dalam kasus kami, langkah 1 kopeck dapat digunakan, misalnya. Bayangkan situasinya: Coca-Cola dan Nike yang sama datang. Coca-Cola berkata: "Saya siap membayar 100 rubel untuk pertunjukan," dan Nike berkata: "Saya siap membayar 1 kopeck." Dan Coca-Cola akan sangat tersinggung mengetahui bahwa mereka bisa menang dengan membayar 2 kopeck, bukan 100 rubel. Lelang harga kedua dianggap lebih adil bagi semua peserta.
Berdasarkan hal ini, properti tertentu dianggap sangat penting bagi pengiklan: untuk selalu memberikan harga maksimum yang jujur pada lelang yang bersedia Anda bayarkan untuk sebuah tayangan. Ini diperlukan untuk membangun strategi perdagangan yang kompeten.
Dalam lelang harga pertama, Anda perlu membuat strategi yang cerdik, pikirkan - di sini, pengiklan ini dan itu dapat menawar begitu banyak, tetapi dalam lelang harga kedua ini tidak perlu. Setiap orang menempatkan tarif yang bersedia mereka bayarkan sebesar-besarnya. Jika Anda menang, Anda membayar jumlah yang sama atau kurang; jika tidak, maka Anda belum siap untuk membayar lebih. Ini adalah properti hebat dari jenis lelang ini, yang telah menyebar dari teori ke penggunaan luas dalam sistem periklanan.
Namun, bukan itu masalahnya. Tampaknya, dari sudut pandang teoretis, lelang harga kedua sangat bagus, dan propertinya memungkinkannya menjadi sangat praktis. Namun nyatanya, ketika kita dihadapkan pada sistem nyata, ternyata ada beberapa faktor yang memastikan popularitas lelang harga pertama - entah mengapa orang lebih memilih menggunakannya, ketimbang lelang harga kedua. Salah satu dari dua poin utama yang ingin saya katakan adalah bahwa lelang harga kedua tidak transparan. Artinya, ketika lelang iklan diselenggarakan oleh beberapa platform yang Anda tidak tahu apa-apa - Anda hanya berpartisipasi sebagai pengiklan - itu memberi tahu Anda bahwa tawaran Anda (katakanlah) 10 kopeck menang, dan Anda harus membayar harga kedua - biarlah 9 kopecks. Harga kedua ini buram; tidak jelas dari mana asalnya. Umumnya,situs ini dapat dengan mudah menipu pengiklan dengan membuat apa yang disebut taruhan palsu. Ada juga mekanisme yang adil untuk tawaran tambahan - misalnya, “harga terbalik”: Anda menyatakan bahwa lelang tertentu tidak dapat dijual kurang dari 9 kopeck, dan tawaran yang jujur seperti itu muncul. Tetapi transparansi sangat penting, dan kurangnya transparansi mematikan pengiklan. Ketika Anda tidak tahu apa yang terjadi di balik terpal sistem periklanan, Anda lagi-lagi harus memikirkan beberapa strategi: Anda tidak bisa begitu saja mengambil dan menggunakan pendekatan untuk menetapkan hanya harga-harga yang bersedia Anda bayarkan.dan ketidakhadirannya mematikan pengiklan. Ketika Anda tidak tahu apa yang terjadi di balik terpal sistem periklanan, Anda lagi-lagi harus memikirkan beberapa strategi: Anda tidak bisa begitu saja mengambil dan menggunakan pendekatan untuk menetapkan hanya harga-harga yang bersedia Anda bayarkan.dan ketidakhadirannya mematikan pengiklan. Ketika Anda tidak tahu apa yang terjadi di balik terpal sistem periklanan, Anda lagi-lagi harus memikirkan beberapa strategi: Anda tidak bisa begitu saja mengambil dan menggunakan pendekatan untuk menetapkan hanya harga-harga yang bersedia Anda bayar.
Poin kedua adalah bahwa lelang harga kedua bekerja dengan baik dalam pengaturan yang ideal dengan hanya satu lelang yang berjalan pada satu waktu. Dalam sistem periklanan nyata, jutaan di antaranya terjadi per detik, secara konvensional. Dalam kondisi seperti itu, strategi sudah diperlukan, dan gagasan bahwa pengiklan selalu memiliki strategi yang sederhana dan siap pakai untuk perdagangan yang sempurna di lelang menjadi rusak.
Saya ingin berbicara tentang momen-momen yang muncul dengan latar belakang tugas mendesain lelang - bagaimana Anda dapat mendesainnya dengan lebih menarik, lebih bermanfaat, dan seterusnya. Saya ingin menyebutkan dua hal. Pertama, dalam lelang, tampaknya, segala sesuatu harus terjadi berdasarkan nilai maksimum, jumlah maksimum uang yang diperoleh jaringan iklan dengan menjual ruang; Namun, pada kenyataannya, nilai yang dijual dalam pelelangan dapat dinyatakan dengan berbagai cara untuk situs - tidak hanya dalam jumlah yang bersedia dibayar pengiklan. Misalnya, sangat penting bagi kami agar pengguna tidak marah dengan iklan kami - sebaiknya iklan bermanfaat bagi mereka. Sebagai bagian dari tugas mendesain lelang, Anda harus membuat metrik tambahan untuk menentukan peringkat iklan. Ini menghasilkan sejumlah metrik: keuntungan yang diharapkan, kemungkinan reaksi pengguna yang negatif, dan sebagainya.
Varian kedua dari masalah ini adalah lelang "tidak serakah". Dalam hal ini, kami memahami bahwa kami, sebagai jaringan periklanan, dapat memperoleh lebih banyak jika kami tidak selalu menjual ruang iklan kepada pemenang, tetapi mendistribusikannya di antara semua pengiklan sedemikian rupa untuk memaksimalkan semua anggaran iklan mereka, sambil menyisakan beberapa lalu kejujuran dalam pelelangan. Artinya, jika kita memiliki beberapa pengiklan, dan salah satunya lebih kaya dari yang lain dan terus-menerus membeli lelang, mungkin kita tidak harus selalu memberinya tawaran pemenang. Seperti "masalah ransel" - mungkin Anda ingat kursus tentang pemrograman atau algoritme struktur data, jika Anda memiliki riwayat seperti itu. Ini adalah tugas yang sangat keren, sangat menarik untuk dilakukan, dan ada artikel ilmiah di dalamnya.
Di VK kita baru saja mengerjakan tugas ini; Kami memiliki banyak tugas, dan sebagian besar tugas yang ada di periklanan sudah mendekati ML. Karena kenyataan bahwa kami harus memenuhi tujuan pengiklan yang berbeda, kami perlu memprediksi dengan probabilitas berapa pengguna akan mengambil tindakan ini atau itu untuk menggunakan pengetahuan ini dalam membentuk strategi penawaran untuk lelang.
Artinya, pengiklan berkata: Saya ingin pembelian di toko saya sebanyak mungkin, menghabiskan anggaran saya sebaik mungkin. Kami, sebagai platform periklanan, sedang memikirkan tentang cara menyorot pengguna yang kemungkinan besar akan membeli sesuatu di toko. Masalah ML yang khas muncul. Klasifikasi biner: '1' - pengguna mengklik iklan dan melakukan sesuatu yang baik (membeli), '0' - pengguna mengabaikan iklan tersebut. Berdasarkan masalah ini, kita perlu membangun klasifikasi biner, di mana pada keluarannya kita menggunakan probabilitas peristiwa yang berguna sebagai bagian dari kalkulasi lebih lanjut tentang tawaran mana yang akan kita gunakan pada lelang. Tugas tersebut terdengar sangat basi dalam istilah ML - seperti, terima dan lakukan. Tetapi dalam kehidupan nyata, tugas seperti itu memiliki banyak kesulitan, dan saya akan memberi tahu Anda beberapa. Yang utama adalahbahwa periklanan biasanya merupakan proyek beban tinggi. Baik dari segi data maupun dari segi beban. Anda perlu menanggapi permintaan dengan sangat cepat. Jendelanya, katakanlah, 100 milidetik - dan Anda perlu punya waktu untuk merespons. Berdasarkan hal ini, pembatasan tertentu diberlakukan pada kami - khususnya, tentang cara - dalam rekayasa - model yang kami gunakan untuk memprediksi iklan dapat berfungsi. Anda dapat menemukan banyak hal keren, membuat jaringan neural kompleks yang, melalui beberapa lapisan, menyoroti interaksi non-linier antar fitur, tetapi dalam kehidupan ini semua ini harus bekerja dengan sangat cepat.yang kami gunakan untuk memprediksi iklan. Anda dapat menemukan banyak hal keren, membuat jaringan neural kompleks yang, melalui beberapa lapisan, menyoroti interaksi non-linier antar fitur, tetapi dalam kehidupan ini semua ini harus bekerja dengan sangat cepat.yang kami gunakan untuk memprediksi iklan. Anda dapat menemukan banyak hal keren, membuat jaringan neural kompleks yang, melalui beberapa lapisan, menyoroti interaksi non-linier antar fitur, tetapi dalam kehidupan ini semua ini harus bekerja dengan sangat cepat.
Ini dilatih pada data dalam jumlah besar. Tugasnya berskala besar, dengan kumpulan data terabyte. Berdasarkan ini, Anda biasanya harus melakukan hal-hal seperti komputasi terdistribusi, pelatihan model terdistribusi, memikirkan model mana yang akan digunakan sama sekali. Periklanan secara tradisional menggunakan model linier seperti regresi logistik atau peningkatan gradien; terkadang mereka beralih ke hal-hal yang lebih dingin seperti mesin faktorisasi. Artinya, pilihan modelnya besar, tetapi biasanya yang digunakan cukup sederhana - karena bebannya yang berat.
Hal lain yang mendekati ML: kami menggunakan data yang sangat tidak seimbang dalam hal umpan balik. Ada satu unit per 10.000 angka nol. Bagaimana cara melatih mesin ML dalam kondisi seperti ini adalah pertanyaan yang bagus. Anda harus menggunakan trik yang berbeda; Yang utama justru rumusan masalahnya: jangan coba-coba memprediksi apakah akan ada klik (beli) atau tidak, misalnya gunakan pendekatan yang berkaitan dengan probabilitas, kelancaran data dengan kardinalitas rendah hingga maksimal, dan sebagainya. Banyak yang dapat dipikirkan, tetapi kesulitannya adalah bahwa kejadian positif jarang terjadi dalam tugas.
Saat Anda mengklik iklan dan membeli sesuatu, Anda tidak selalu langsung melakukannya. Artinya, sering kali peristiwa yang ditargetkan yang diinginkan pengiklan terjadi dengan penundaan yang lama. Ini bukan hanya pembelian - misalnya, dapat mendaftar di game dan memompa karakter ke level 10, atau menyetujui pengajuan pinjaman. Hal-hal ini bisa terjadi dalam beberapa hari. Dan, saat kami perlu melatih model, yang menurut iklan, sekarang mengatakan bahwa pengguna akan melakukan sesuatu, tetapi, pada kenyataannya, kami menerima umpan balik positif hanya beberapa hari setelah sesuatu terjadi, dan ini menciptakan masalah tambahan. Untuk mengatasi masalah ini, ada beberapa solusi berbeda yang muncul dalam sains dan praktik. Kompleksitas yang lucu.
Poin lain: ketika pengguna melihat iklan untuk produk tertentu, mereka dapat berhubungan dengan mereka dari berbagai saluran pemasaran. Misalnya, Anda pergi ke jalan - Anda melihat papan iklan "Taxi VKontakte"; mulai membalik-balik feed - ada juga iklan untuk "Taxi VKontakte", pergi ke layanan lain - dan ada juga iklan untuk "Taxi VKontakte", dari layanan periklanan Yandex atau Google. Anda berkata - ya, saya sudah mengerti, letakkan aplikasi. Dan setelah itu Yandex, VK, Google, papan reklame perlu mencari tahu partisipasi siapa dalam proses ini - dalam tindakan yang berguna bagi pengiklan - berapa persen.
Proses ini disebut "atribusi" - masalah pengalokasian kontak mana dengan pengiklan yang sangat memengaruhi keputusan Anda untuk mengambil tindakan yang ditargetkan. Biasanya model sederhana digunakan - misalnya, "atribusi klik terakhir": iklan terakhir yang Anda klik mendapatkan semua hadiahnya. Namun kemudian ternyata tidak menguntungkan untuk terlibat dalam "kontak dingin" pertama - menampilkan iklan kepada pengguna yang tidak memahami produk tersebut. Berdasarkan hal ini, ada banyak model ML berbeda (termasuk) yang memungkinkan Anda mendistribusikan keuntungan dari tayangan dengan lebih baik. Mereka menggunakan, antara lain, chip tipe perhatian, beberapa hal yang lebih menarik dari jaringan saraf. Tugas keren. Dan tujuannya, pada akhirnya, adalah menawar di lelang dengan lebih baik, lebih tepat, lebih tepat, dan seterusnya.
Semakin baik Anda memahami siapa yang memengaruhi keputusan pembelian akhir, semakin baik Anda memahami berapa banyak yang harus dikirimkan pada saat tertentu. Akibatnya, seluruh industri bergerak menuju kesadaran bahwa bekerja dengan prediksi kemungkinan bahwa Anda akan membeli sesuatu kurang efektif daripada bekerja dengan gagasan tentang tingkat pengaruh terhadap keputusan pembelian. Mungkin Anda sudah siap membeli permainan papan yang Anda kunjungi. Tetapi periklanan online mulai mengejar Anda. Mungkin iklan ini tidak akan ada jika semua orang pada awalnya memutuskan bahwa Anda akan membeli game ini, dan iklan tambahan tidak diperlukan - Anda telah membuat keputusan. Saya memikirkan istilah "pengujian inkrementalitas" dan masih ada hubungannya dengan domain ML dari "kesimpulan kausal". Artinya, kita beralih dari tugas memprediksi kemungkinan melakukan tindakan target ke memprediksi dampak - yaitu,perbedaan kemungkinan apa yang akan Anda beli setelah melihat iklan, dikurangi apa yang sudah Anda beli. Ini juga merupakan transisi yang sangat keren, transisi ke ide baru tentang cara bekerja, cara memprediksi beberapa peristiwa.
Secara umum, banyak tugas dalam periklanan, dan hampir semuanya mengikuti dari keinginan awal untuk memenuhi tugas pengiklan. Sasaran "Saya ingin pembelian di toko saya sebanyak mungkin" berubah menjadi urutan tawaran di lelang, karena semua pengiklan dipotong dalam lelang untuk mendapatkan tayangan. Ini adalah strategi. Dan kita perlu melakukan transisi paling keren dari tujuan awal ke urutan taruhan. Ini menyiratkan keinginan untuk memahami perilaku pengguna, mengekstrak minat komersial, menargetkan iklan secara otomatis, mengumpulkan materi iklan - seperti inilah tampilan iklan - dan sebagainya.
Jika seseorang tertarik untuk mempelajari lebih lanjut tentang ini, saya berbicara di pertemuan, di mana saya berbicara secara rinci tentang apa yang dapat dilakukan oleh data scientist dalam periklanan, dan mengapa mengerjakannya dapat menarik. Ternyata itu menjadi penemuan bagi saya. Awalnya, ketika saya pertama kali memasuki industri ini, saya berpikir - yah, periklanan, apa yang menarik. Tahun pertama, kedua, ketiga berlalu - dan saya menyadari betapa banyak tugas keren yang ada, dan betapa menariknya melakukannya dari sudut pandang seorang insinyur.
Sekarang saya akan beralih ke ML dalam produksi. Sekarang Anda telah mengambil kursus pembelajaran mesin, atau belajar di universitas. Anda adalah spesialis Kegel yang hebat, katakanlah, dan Anda melakukan tugas analisis data mengklik yang mengagumkan dalam sebuah kompetisi. Anda datang ke perusahaan nyata di mana produk besar dikembangkan secara berulang dan konsisten. Dan di sini terjadi beberapa pengikisan. Ternyata Anda tidak memiliki banyak keterampilan yang ingin Anda miliki saat Anda memasuki industri ini. Tidak ada yang mengajari Anda ini atau menjelaskan cara kerjanya dalam kenyataan; apa saja kesulitan yang dihadapi industri ini, betapa berbedanya menyelesaikan masalah dengan rumusan yang jelas. Kalau di bidang pemrograman masih banyak yang dibicarakan, di bidang data science saja belum cukup.
Kesulitan apa yang dihadapi pendatang baru di tim produk yang telah mengerjakan produk yang sama untuk waktu yang lama - misalnya, membuat iklan VK efektif? Yang saya maksud dengan "pemula" adalah diri saya sendiri, termasuk; Saya telah melakukan ini selama empat tahun dan saya masih merasa seperti noob. Ini adalah hal yang sangat sulit dan menarik untuk dipahami.
Hal pertama yang ingin saya katakan adalah keinginan untuk segera memulai tugas yang ada dengan beberapa metode progresif keren yang dapat ditemukan dalam sains; keinginan untuk datang dengan pesawat luar angkasa yang akan melakukan segalanya dengan baik sekaligus. Dalam kehidupan nyata, di bidang pengembangan produk, ilmu data adalah tempat di mana kita tidak dapat memprediksi metode mana yang akan berhasil pada akhirnya. Sangat sulit untuk bekerja dengan persyaratan produk asli, karena Anda tidak tahu cara menyelesaikan masalah.
Anda memiliki rumusan tugas: misalnya, untuk membuat sistem moderasi otomatis yang seharusnya menyelesaikan beberapa masalah awal. Anda dapat menjalankan dan menemukan beberapa artikel super-top, di mana tugas diselesaikan dengan sempurna, berakhir di transformer. Atau Anda dapat membuat heuristik sederhana yang akan melihat berapa kali kami menyetujui pengiklan tertentu sebelumnya, ambil bagian dari jumlah ini, bandingkan dengan 70%, misalnya, dan katakan: yang ini sering disetujui sebelumnya. Hal seperti itu dapat segera membantu bisnis, membawa informasi yang berguna. Dan sistem yang kompleks membutuhkan waktu lama, dan itu bukan fakta bahwa ia akan berhasil. Dalam ilmu data, Anda harus segera sampai pada ide ini: Anda terus bekerja dalam mode hipotesis, Anda tidak tahu apa yang akan berhasil, dan untuk mengurangi risiko dan memberikan nilai kepada pengguna akhir dan bisnis secepat mungkin,Anda perlu menangani tugas dari solusi sederhana hingga solusi kompleks. Seringkali - untuk belajar, dimulai dengan heuristik, tanpa ML - mungkin tidak ada datanya. Hal ini dapat mengganggu data scientist yang tertarik dengan model saraf pemintalan. Tetapi tanpa ini, Anda tidak bisa mendapatkan baseline awal - langkah kecil untuk memulai. Anda dapat melakukan untuk waktu yang sangat lama apa yang tidak akan berhasil sama sekali.
Hal yang paling sulit dan tidak biasa tentang bekerja di industri ini adalah setelah Anda membuat model, meluncurkannya ke produksi, hidupnya baru saja dimulai. Itu perlu secara aktif didukung dan diubah. Dengan model itu, selama dia hidup, ada banyak perubahan berbeda. Pertama, pelatihan melayani skew.
Secara sederhana: jika model bekerja dalam produksi pada data tertentu, atau pada sekumpulan tugas umum yang harus diselesaikan model Anda - dan dilatih pada data lain yang diperoleh dengan cara lain - maka kesalahan sering terjadi pada titik ini, dan model mulai bekerja dengan buruk. Idealnya, Anda perlu membangun sistem di mana model, selama analitik dan selama persiapan awal, dilatih dengan data yang sama yang akan digunakan untuk bekerja dalam produksi.
Kedua, setiap saat beberapa fitur, atau model itu sendiri, dapat mulai bekerja secara tidak benar dan tidak memadai. Anda memiliki repositori yang menyimpan karakteristik; sesuatu telah berubah, bukannya nol, nol mulai mengalir, bukannya "-1" nilai-nilai lain mulai dikembalikan; atau seseorang mengalikan nilai ini dengan 100 karena mereka mengira itu persentase, bukan pecahan. Dan model Anda tiba-tiba mulai rusak. Anda perlu memperhatikan perubahan ini. Kualitas paling keren dari model ML adalah silent error; dia tidak akan pernah mengatakan bahwa ada yang tidak beres - dia akan selalu memberikan hasil, tergantung pada apa yang Anda berikan padanya. Sampah masuk sampah keluar. Ini harus dipantau entah bagaimana caranya. Berdasarkan hal ini, ada banyak hal yang perlu dilacak saat model berjalan dalam produksi. Anda perlu membangun sistem pemantauan, monitor,agar pendistribusian fitur tidak banyak berubah, dan sebagainya. Anda harus memahami bahwa model dapat memberikan permainan penuh kapan saja, dan entah bagaimana hidup dalam kondisi ini. Bagaimana jika hasil ini langsung menarik uang dari pengguna kami - menawar di lelang iklan, atau berdagang di bursa, atau apa pun? Ada banyak cara untuk melakukan ini, tetapi penting untuk dipikirkan terlebih dahulu.
Berdasarkan hal ini, bagaimana kehidupan seorang data scientist berubah ketika ia berada di lingkungan di mana model perlu dikembangkan secara berulang? Menurut saya, Anda harus menjadi insinyur yang baik dulu, dan peneliti yang baik kedua. Karena kode dan kesimpulan Anda, wawasan yang Anda peroleh selama penelitian dan analisis, model Anda - semua yang merupakan produk dari pekerjaan ilmuwan data Anda - tidak akan digunakan 2 atau 10 kali. Banyak orang akan melihat bagaimana eksperimen dibuat, bagaimana hasil diperoleh, mengapa, di mana, bagaimana bekerja, dan bagaimana eksperimen itu digunakan dalam produksi. Oleh karena itu, yang paling kurang dari orang-orang yang datang ke industri dari awal - misalnya, dari universitas, terbawa oleh topik data science, atau analytics, atau ML - adalah keterampilan teknik. Pertama-tama, data scientist adalah subtipe dari developer.Dia juga bekerja dengan kode, dia juga bekerja dengan sesuatu yang kemudian bekerja dalam produksi di lingkungan yang dapat diubah yang digunakan orang. Mereka akan membaca kode Anda. Anda perlu menghasilkan solusi yang efektif, didukung dengan baik, dan dapat diuji. Ini adalah bagian yang tidak dimiliki banyak kandidat. Oleh karena itu, jika Anda adalah seorang pemula dalam ilmu data, perhatikan banyak keterampilan pengembang. Bagaimana menulis kode yang efisien, mudah dimengerti, dan terpelihara dengan baik; solusi rekayasa untuk secara efektif membangun proses pertukaran data. Semua ini akan sangat membantu Anda dalam karir Anda.yang tidak dimiliki oleh banyak kandidat. Oleh karena itu, jika Anda adalah orang pemula dalam ilmu data, perhatikan baik-baik keterampilan pengembang. Bagaimana menulis kode yang efisien, mudah dimengerti, dan terpelihara dengan baik; solusi rekayasa untuk secara efektif membangun proses pertukaran data. Semua ini akan sangat membantu Anda dalam karir Anda.yang tidak dimiliki oleh banyak kandidat. Oleh karena itu, jika Anda seorang pemula dalam ilmu data, perhatikan banyak keterampilan pengembang. Bagaimana menulis kode yang efisien, mudah dimengerti, dan terpelihara dengan baik; solusi rekayasa untuk secara efektif membangun proses pertukaran data. Semua ini akan sangat membantu Anda dalam karir Anda.
Tips kedua dan hal kedua yang memisahkan ilmuwan data keren dari mereka yang bekerja keras adalah menyelami konteks produk dan bagian teknik lingkungan model Anda. Misalkan Anda mengembangkan model, dan sebagai data scientist, mudah bagi Anda untuk mengatakan, “Tugas saya adalah mengembangkan model, semua hal lain di luar tanggung jawab saya. Saya mengajar model, itu urusan saya. Backend akan menyematkannya, teknisi data akan menyiapkan data, penguji akan mengujinya, manajer produk akan memutuskan cara menggunakannya. " Tetapi sejumlah besar implikasi dan cara untuk membuat model lebih keren dan lebih berharga berada di luar proses desain model itu sendiri. Contoh: jika Anda memeringkat hasil pencarian, maka Anda memeringkat dokumen yang berasal dari luar; ada semacam seleksi calon. Jika Anda tahu cara kerja pemilihan ini, Anda dapat dengan mudah memahaminyabahwa hambatan dalam pekerjaan bukanlah karena modelnya tidak berfungsi dengan baik, tetapi dokumen yang salah, tidak menarik, dan tidak lengkap diserahkan ke pintu masuk. Di sisi lain, jika Anda tahu bahwa dalam produk Anda, model Anda mungkin, dalam keadaan tertentu, tidak berfungsi seperti yang Anda inginkan, tetapi sangat sulit untuk membuatnya berfungsi lebih baik, maka Anda dapat mengubah produk untuk model tersebut. Kita dapat mengatakan: sekarang produk diatur secara berbeda, sekarang bukan pengguna yang memanggil model, tetapi model memanggil semacam alat otomatis yang mengoordinasikan beberapa parameter yang tidak dapat diikuti oleh pengguna. Idenya adalah Anda dapat mengubah produk untuk model, dan bukan sebaliknya. Jika Anda tenggelam dalam area ini, sebagai data scientist dan insinyur ML, Anda dapat menghasilkan keuntungan dan manfaat yang sangat besar untuk produk dan pengguna Anda.bahwa model tidak berfungsi dengan baik, tetapi dokumen yang salah, tidak menarik, dan tidak lengkap diserahkan untuk dimasukkan. Di sisi lain, jika Anda tahu bahwa dalam produk Anda model Anda mungkin, dalam keadaan tertentu, bekerja secara berbeda dari yang Anda inginkan, tetapi sangat sulit untuk membuat ini bekerja lebih baik, maka Anda dapat mengubah produk untuk model tersebut. Kita dapat mengatakan: sekarang produk diatur secara berbeda, sekarang bukan pengguna yang memanggil model, tetapi model memanggil semacam alat otomatis yang mengoordinasikan beberapa parameter yang tidak dapat diikuti oleh pengguna. Idenya adalah Anda dapat mengubah produk untuk model, dan bukan sebaliknya. Jika Anda tenggelam dalam area ini, maka Anda, sebagai ilmuwan data dan insinyur ML, dapat menghasilkan keuntungan dan manfaat yang sangat besar untuk produk dan pengguna Anda.bahwa model tidak berfungsi dengan baik, tetapi dokumen yang salah, tidak menarik, dan tidak lengkap diserahkan untuk dimasukkan. Di sisi lain, jika Anda tahu bahwa dalam produk Anda model Anda mungkin, dalam keadaan tertentu, bekerja secara berbeda dari yang Anda inginkan, tetapi sangat sulit untuk membuat ini bekerja lebih baik, maka Anda dapat mengubah produk untuk model tersebut. Kita dapat mengatakan: sekarang produk diatur secara berbeda, sekarang bukan pengguna yang memanggil model, tetapi model memanggil semacam alat otomatis yang mengoordinasikan beberapa parameter yang tidak dapat diikuti oleh pengguna. Idenya adalah Anda dapat mengubah produk untuk modelnya, dan bukan sebaliknya. Jika Anda tenggelam dalam area ini, maka Anda, sebagai ilmuwan data dan insinyur ML, dapat menghasilkan keuntungan dan manfaat yang sangat besar untuk produk dan pengguna Anda.dokumen yang tidak lengkap. Di sisi lain, jika Anda tahu bahwa dalam produk Anda model Anda mungkin, dalam keadaan tertentu, bekerja secara berbeda dari yang Anda inginkan, tetapi sangat sulit untuk membuat ini bekerja lebih baik, maka Anda dapat mengubah produk untuk model tersebut. Kita dapat mengatakan: sekarang produk diatur secara berbeda, sekarang bukan pengguna yang memanggil model, tetapi model memanggil semacam alat otomatis yang mengoordinasikan beberapa parameter yang tidak dapat diikuti oleh pengguna. Idenya adalah Anda dapat mengubah produk untuk model, dan bukan sebaliknya. Jika Anda tenggelam dalam area ini, maka sebagai ilmuwan data dan insinyur ML, Anda dapat menghasilkan keuntungan dan manfaat yang sangat besar untuk produk dan pengguna Anda.dokumen yang tidak lengkap. Di sisi lain, jika Anda tahu bahwa dalam produk Anda, model Anda mungkin, dalam keadaan tertentu, tidak berfungsi seperti yang Anda inginkan, tetapi sangat sulit untuk membuatnya berfungsi lebih baik, maka Anda dapat mengubah produk untuk model tersebut. Kita dapat mengatakan: sekarang produk diatur secara berbeda, sekarang bukan pengguna yang memanggil model, tetapi model memanggil semacam alat otomatis yang mengoordinasikan beberapa parameter yang tidak dapat diikuti oleh pengguna. Idenya adalah Anda dapat mengubah produk untuk model, dan bukan sebaliknya. Jika Anda tenggelam dalam area ini, sebagai data scientist dan insinyur ML, Anda dapat menghasilkan keuntungan dan manfaat yang sangat besar untuk produk dan pengguna Anda.seperti yang kami inginkan, tetapi sangat sulit untuk membuat ini bekerja lebih baik, maka Anda dapat mengubah produk untuk modelnya. Kita dapat mengatakan: sekarang produk diatur secara berbeda, sekarang bukan pengguna yang memanggil model, tetapi model memanggil semacam alat otomatis yang mengoordinasikan beberapa parameter yang tidak dapat diikuti oleh pengguna. Idenya adalah Anda dapat mengubah produk untuk modelnya, dan bukan sebaliknya. Jika Anda tenggelam dalam area ini, sebagai data scientist dan insinyur ML, Anda dapat menghasilkan keuntungan dan manfaat yang sangat besar untuk produk dan pengguna Anda.seperti yang kami inginkan, tetapi sangat sulit untuk membuat ini bekerja lebih baik, lalu Anda dapat mengubah produk untuk modelnya. Kita dapat mengatakan: sekarang produk diatur secara berbeda, sekarang bukan pengguna yang memanggil model, tetapi model memanggil semacam alat otomatis yang mengoordinasikan beberapa parameter yang tidak dapat diikuti oleh pengguna. Idenya adalah Anda dapat mengubah produk untuk model, dan bukan sebaliknya. Jika Anda tenggelam dalam area ini, sebagai data scientist dan insinyur ML, Anda dapat menghasilkan keuntungan dan manfaat yang sangat besar untuk produk dan pengguna Anda.yang tidak dapat diikuti oleh pengguna. Idenya adalah Anda dapat mengubah produk untuk model, dan bukan sebaliknya. Jika Anda tenggelam dalam area ini, sebagai data scientist dan insinyur ML, Anda dapat menghasilkan keuntungan dan manfaat yang sangat besar untuk produk dan pengguna Anda.yang tidak dapat diikuti oleh pengguna. Idenya adalah Anda dapat mengubah produk untuk modelnya, dan bukan sebaliknya. Jika Anda tenggelam dalam area ini, maka sebagai ilmuwan data dan insinyur ML, Anda dapat menghasilkan keuntungan dan manfaat yang sangat besar untuk produk dan pengguna Anda.
Kembali ke pertanyaan bahwa ML adalah ranah spekulasi. Kami tidak pernah tahu bagaimana menghasilkan produk yang hebat, kami harus mencoba jalan yang berbeda menuju solusi akhir. Oleh karena itu, Anda perlu membuat alur kerja sedikit berbeda. Seringkali orang, terutama insinyur pada periode awal pengembangan karir, berpikir bahwa semua jenis chip manajerial - SCRUM, Agile - semuanya omong kosong, dan tidak berfungsi. Namun, mereka seringkali tidak benar-benar berfungsi karena digunakan dalam konteks yang salah. Misalnya, jika Anda pernah bergabung dengan tim ilmu data SCRUM, itu akan sulit dan menyakitkan bagi Anda. Tiba-tiba ternyata penelitian menjadi sulit untuk diprediksi, dan Anda tidak akan tahu bagaimana Anda akan sampai pada hasilnya, tetapi di sini - iterasi dua minggu, sesuatu yang lain, secara umum, manajemen menghasilkan sampah yang tidak perlu. Proses kerja,di mana Anda bekerja harus membantu Anda, bukan menghalangi. Artinya, ketika ilmu data mengambil dan menerapkan metode dari pengembangan perangkat lunak konvensional, itu tidak selalu efektif.
Oleh karena itu, saya ingin mengatakan secara terpisah: jika Anda bekerja sebagai data scientist, dan Anda harus berinteraksi dengan orang yang berbeda - pelanggan, kolega, bekerja sama di tempat kerja - sebaiknya Anda berhati-hati dalam memahami cara membangun proses kolaboratif yang lebih baik, aktivitas tim yang diatur sendiri. Cara yang baik untuk memahami cara melakukan ini adalah dengan mengunjungi komunitas yang disebut LeanDS. Di sana berkumpul orang-orang yang tertarik untuk memahami bagaimana membangun proses yang lebih baik dalam menangani masalah ML dalam lingkungan pengembangan produk. Dari sana, Anda dapat mempelajari banyak hal keren yang telah dibuat orang-orang, dan berbagai pakar yang digunakan di berbagai perusahaan. Dan dari apa yang saya sarankan, pertama-tama perlu untuk beralih ke pendekatan saat Anda merumuskan semua tugas melalui hipotesis produk. Ketika Anda tidak tahuyang akan membawa hasil, tetapi Anda mengetahuinya: Saya pikir hal ini dan itu akan membantu mempromosikan tugas pengguna, memompa metrik, dan pada saat ini dan itu dapat diperiksa. Hipotesis seperti itu jauh lebih mudah untuk dikerjakan. Berdasarkan aliran pekerjaan yang tidak bisa dipahami, di mana sangat sulit untuk memprediksi berapa lama tugas Anda akan berlangsung, kapan Anda akan sampai pada hasilnya, dan dengan cara apa, menurut saya, Kanban bekerja dengan sangat baik. Saya tidak akan membicarakan hal ini untuk waktu yang lama, hanya rekomendasi: coba lihat komunitas LeanDS. Lihat materi mereka. Saya pikir setiap orang yang bekerja dalam ilmu data dan dihadapkan pada proses yang bermigrasi dari pengembangan konvensional akan tertarik untuk memahami apa yang dapat dilakukan secara berbeda dan bagaimana menggunakan proses untuk keuntungan mereka.bahwa hal ini dan itu akan membantu untuk mempromosikan tugas-tugas pengguna, metrik pompa, dan pada saat tertentu dapat diperiksa. Hipotesis seperti itu jauh lebih mudah untuk dikerjakan. Berdasarkan alur kerja yang tidak bisa dipahami, di mana sangat sulit untuk memprediksi berapa lama tugas Anda akan berlangsung, kapan Anda akan sampai pada hasilnya, dan dengan cara apa, menurut saya, Kanban bekerja dengan sangat baik. Saya tidak akan membicarakan hal ini untuk waktu yang lama, saya hanya merekomendasikan: coba lihat komunitas LeanDS. Lihat materi mereka. Saya pikir setiap orang yang bekerja dalam ilmu data dan dihadapkan pada proses yang bermigrasi dari pengembangan konvensional akan tertarik untuk memahami apa yang dapat dilakukan secara berbeda dan bagaimana menggunakan proses untuk keuntungan mereka.bahwa hal ini dan itu akan membantu untuk mempromosikan tugas-tugas pengguna, metrik pompa, dan pada saat tertentu dapat diperiksa. Hipotesis seperti itu jauh lebih mudah untuk dikerjakan. Berdasarkan alur kerja yang tidak bisa dipahami, di mana sangat sulit untuk memprediksi berapa lama tugas Anda akan berlangsung, kapan Anda akan sampai pada hasilnya, dan dengan cara apa, menurut saya, Kanban bekerja dengan sangat baik. Saya tidak akan membicarakan hal ini untuk waktu yang lama, hanya rekomendasi: coba lihat komunitas LeanDS. Lihat materi mereka. Saya pikir setiap orang yang bekerja dalam ilmu data dan dihadapkan pada proses yang bermigrasi dari pengembangan konvensional akan tertarik untuk memahami apa yang dapat dilakukan secara berbeda dan bagaimana menggunakan proses untuk keuntungan mereka.Hipotesis semacam itu jauh lebih mudah untuk dikerjakan. Berdasarkan alur kerja yang tidak bisa dipahami, di mana sangat sulit untuk memprediksi berapa lama tugas Anda akan berlangsung, kapan Anda akan sampai pada hasilnya, dan dengan cara apa, menurut saya, Kanban bekerja dengan sangat baik. Saya tidak akan membicarakan hal ini untuk waktu yang lama, saya hanya merekomendasikan: coba lihat komunitas LeanDS. Lihat materi mereka. Saya pikir setiap orang yang bekerja dalam ilmu data dan dihadapkan pada proses yang bermigrasi dari pengembangan konvensional akan tertarik untuk memahami apa yang dapat dilakukan secara berbeda dan bagaimana menggunakan proses untuk keuntungan mereka.Hipotesis seperti itu jauh lebih mudah untuk dikerjakan. Berdasarkan aliran pekerjaan yang tidak bisa dipahami, di mana sangat sulit untuk memprediksi berapa lama tugas Anda akan berlangsung, kapan Anda akan sampai pada hasilnya, dan dengan cara apa, menurut saya, Kanban bekerja dengan sangat baik. Saya tidak akan membicarakan hal ini untuk waktu yang lama, saya hanya merekomendasikan: coba lihat komunitas LeanDS. Lihat materi mereka. Saya pikir setiap orang yang bekerja dalam ilmu data dan dihadapkan pada proses yang bermigrasi dari pengembangan konvensional akan tertarik untuk memahami apa yang dapat dilakukan secara berbeda dan bagaimana menggunakan proses untuk keuntungan mereka.hanya tip: coba lihat komunitas LeanDS. Lihat materi mereka. Saya pikir setiap orang yang bekerja dalam ilmu data dan dihadapkan pada proses yang bermigrasi dari pengembangan konvensional akan tertarik untuk memahami apa yang dapat dilakukan secara berbeda dan bagaimana menggunakan proses untuk keuntungan mereka.hanya tip: coba lihat komunitas LeanDS. Lihat materi mereka. Saya pikir setiap orang yang bekerja dalam ilmu data dan dihadapkan pada proses yang bermigrasi dari pengembangan konvensional akan tertarik untuk memahami apa yang dapat dilakukan secara berbeda dan bagaimana menggunakan proses untuk keuntungan mereka.
Sebagai hasilnya, saya akan memberi tahu Anda apa yang hilang dari orang-orang yang datang untuk melakukan tugas sains data di awal karir mereka, dan bagaimana Anda bisa menjadi lebih keren sebagai seorang spesialis dan meningkatkan peluang mendapatkan pekerjaan di tempat yang Anda sukai.
Pertama, seperti yang saya katakan sebelumnya, keterampilan teknik sangat penting bagi data scientist. Tidak kurang dari keterampilan yang terkait dengan ML, analisis data, teori probabilitas, dan sebagainya. Pertama-tama, saya ingin Anda menjadi insinyur yang keren, dan kedua, seorang pengembang. Kedua, banyak orang tidak memiliki keterampilan yang jelas untuk merumuskan kembali masalah bisnis menjadi masalah ilmu data. Ini adalah keterampilan terpisah. Ini adalah situasi ketika Anda perlu memahami apa yang sebenarnya diinginkan pelanggan dari Anda - sebut saja orang yang menginginkan sesuatu bekerja dengan baik. Kembali ke contoh moderasi otomatis: apa sebenarnya yang dia inginkan? Bagaimanapun, tugas moderasi otomatis dapat diatur dengan cara yang sangat berbeda, dengan hal spesifik berbeda yang ingin kami lakukan lebih baik di sistem kami. Berdasarkan tugas tersebut, tugas data science dirumuskan dengan cara yang berbeda; berdasarkan masalah ilmu data, metrik yang dioptimalkan diformulasikan dalam berbagai cara,metode untuk memilih dataset, menilai kualitas, dan sebagainya. Keterampilan ini sangat berharga bagi semua ilmuwan data. Katakanlah seorang pelanggan mengatakan bahwa moderatornya tidak dapat mengatasi aliran tugas pemrosesan untuk memeriksa apakah iklannya bagus atau perlu dilarang dengan topik tertentu. Kemudian Anda akan mengetahui bahwa ada banyak alasan berbeda untuk larangan tersebut, dan selama moderasi Anda perlu menjelaskannya dengan jelas sehingga pengiklan dapat memperbaiki iklan tersebut. Berdasarkan ini, Anda memutuskan bahwa Anda perlu melakukan beberapa jenis klasifikasi kelas jamak yang akan menghasilkan teks yang menjelaskan alasannya, dan tugas tersebut akan sangat sulit. Tapi tunggu - mungkin masalahnya bisa dirumuskan kembali dengan cara yang berbeda. Dan ternyata Anda bisa fokus bukan pada menolak iklan, tapi memilih iklan yang tepat. Jika iklannya bagus, lewati saja,jika buruk, dapat diberikan kepada moderator langsung, dan tidak perlu penjelasan. Berdasarkan ini, Anda memahami: jika Anda perlu berkonsentrasi pada apa yang baik, apa yang dapat dilewati, Anda perlu memahami bagaimana mengelola bisnis ini - aliran iklan yang akan melewati sistem Anda. Anda mengerti: ya, berdasarkan tugas ini, saya dapat memilih ROC AUC sebagai metrik yang cocok untuk saya, ini menjelaskan dengan baik hubungan antara keakuratan model dan jumlah iklan yang secara otomatis akan melewati sistem kami. Dll Artinya, berdasarkan dialog antara pelanggan bersyarat dan Anda, sebagai spesialis, Anda dapat sangat menyederhanakan tugas Anda, memiliki pemahaman yang baik tentang cara merumuskan kembali tugas bisnis menjadi tugas ilmu data.Anda memahami: jika Anda perlu fokus pada apa yang baik, apa yang dapat dilewati, maka Anda perlu memahami bagaimana mengelola bisnis ini - aliran iklan yang akan melewati sistem Anda. Anda mengerti: ya, berdasarkan tugas ini, saya dapat memilih ROC AUC sebagai metrik yang cocok untuk saya, ini menjelaskan dengan baik hubungan antara keakuratan model dan jumlah iklan yang secara otomatis akan melewati sistem kami. Dll Artinya, berdasarkan dialog antara pelanggan bersyarat dan Anda, sebagai spesialis, Anda dapat sangat menyederhanakan tugas Anda, memiliki pemahaman yang baik tentang cara merumuskan kembali tugas bisnis menjadi tugas ilmu data.Anda memahami: jika Anda perlu fokus pada apa yang baik, apa yang dapat dilewati, maka Anda perlu memahami bagaimana mengelola bisnis ini - aliran iklan yang akan melewati sistem Anda. Anda mengerti: ya, berdasarkan tugas ini, saya dapat memilih ROC AUC sebagai metrik yang cocok untuk saya, ini menjelaskan dengan baik hubungan antara keakuratan model dan jumlah iklan yang secara otomatis akan melewati sistem kami. Dll Artinya, berdasarkan dialog antara pelanggan bersyarat dan Anda, sebagai spesialis, Anda dapat sangat menyederhanakan tugas Anda, memiliki pemahaman yang baik tentang cara merumuskan kembali tugas bisnis menjadi tugas ilmu data.Anda mengerti: ya, berdasarkan tugas ini, saya dapat memilih ROC AUC sebagai metrik yang cocok untuk saya, ini menjelaskan dengan baik hubungan antara keakuratan model dan jumlah iklan yang secara otomatis akan melewati sistem kami. Dll Artinya, berdasarkan dialog antara pelanggan bersyarat dan Anda, sebagai spesialis, Anda dapat sangat menyederhanakan tugas Anda, memiliki pemahaman yang baik tentang cara merumuskan kembali tugas bisnis menjadi tugas ilmu data.Anda mengerti: ya, berdasarkan masalah ini, saya dapat memilih ROC AUC sebagai metrik yang cocok untuk saya, ini menggambarkan dengan baik hubungan antara keakuratan model dan jumlah iklan yang secara otomatis akan melewati sistem kami. Dll Artinya, berdasarkan dialog antara pelanggan bersyarat dan Anda, sebagai spesialis, Anda dapat sangat menyederhanakan tugas Anda, memiliki pemahaman yang baik tentang cara merumuskan kembali tugas bisnis menjadi tugas ilmu data.bagaimana merumuskan kembali masalah bisnis menjadi masalah ilmu data.bagaimana merumuskan kembali masalah bisnis menjadi masalah ilmu data.
Saya ingin memberi tahu Anda tentang satu hal lagi yang sangat membantu. Ini adalah memahami sinyal spesifik apa yang diteruskan ke dalam model yang Anda kembangkan dalam bentuk fitur, dan cara memprosesnya. Ini adalah keterampilan yang secara langsung dimiliki oleh kompetensi tim pengembang ML. Untuk beberapa alasan, banyak kandidat, menurut pengalaman saya, mengikuti pendekatan "ML akan makan semuanya" - taruh semuanya dalam peningkatan gradien, dan itu akan berhasil. Saya melebih-lebihkan, tetapi, secara umum, sangat keren ketika Anda memahami dengan jelas bahwa tanda yang Anda gunakan sama persis dengan informasi yang Anda sampaikan, dan bukan informasi yang ingin Anda sampaikan.
Misalnya, Anda memutuskan bahwa indikator yang baik dari ketanggapan pengguna terhadap iklan adalah rasio klik-tayang. Artinya, kami mengambil jumlah iklan yang dilihat sepanjang waktu dan jumlah klik pada iklan, membaginya satu dengan lainnya dan mendapatkan indikator pengguna. Dalam satu kasus, dia mengatakan bahwa pengguna suka mengklik iklan, di kasus lain, dia tidak mengklik sama sekali. Dan kami meneruskan angka ini ke dalam model kami - peningkatan gradien atau regresi linier. Kemudian sebuah pemikiran mungkin muncul: model tersebut tidak memiliki cara untuk membedakan antara pengguna yang statistiknya banyak kami miliki, dari mereka yang sedikit. Satu metrik mungkin tidak berarti bahwa pengguna selalu mengklik iklan, tetapi mereka hanya memiliki satu tayangan. Timbul pertanyaan: bagaimana menyajikan fitur ini sedemikian rupa sehingga model membedakan sejumlah besar statistik dari yang kecil? Pertama,yang terlintas dalam pikiran adalah memasukkan jumlah tayangan iklan ke dalam model Anda dapat menentukan jumlah tayangan, tetapi kepercayaan kami pada statistik tentang jumlah tayangan iklan yang dimiliki pengguna tidak linier. Ternyata Anda tidak hanya perlu menempatkan tayangan, tetapi juga persegi atau logaritma tayangan. Kemudian ternyata jika kita memiliki model linier, maka kedua fitur ini tidak berinteraksi satu sama lain dengan cara apapun. Tidak mungkin membuat skema seperti "jika pengguna memiliki jumlah statistik ini dan itu, maka kami mempercayainya untuk banyak orang, gunakan fitur dengan bobot ini dan itu". Regresi linier tidak dapat membangun koneksi seperti itu, tetapi peningkatan gradien dapat. Atau Anda dapat merumuskan ulang fitur tersebut. Alih-alih statistik mentah, Anda dapat memuluskannya, menggunakan pendekatan dari transisi Bayesian, menambahkan beberapa pengetahuan apriori tentang bagaimana pengguna mengklik rata-rata,dan menggunakan formula tertentu untuk mencampurkannya. Dll Ternyata sangat penting untuk memahami sinyal spesifik apa yang Anda pancarkan sebagai tanda.
Dan kedua, sangat penting untuk mengetahui bagaimana fitur ini akan digunakan dalam model. Dalam regresi linier, ini akan digunakan satu per satu, dalam peningkatan gradien dengan cara yang berbeda, dan jika itu adalah jaringan saraf, maka itu bekerja dengan jenis data yang berbeda, dan bagaimana konteks bekerja di sana.
Anda tidak perlu tahu persis bagaimana model itu bekerja, tetapi Anda membutuhkan pemahaman intuitif tentang apa yang mungkin dan apa yang tidak. Ini adalah keterampilan yang keren untuk seorang spesialis ML. Jika Anda bertanya kepada saya bagaimana algoritme tertentu bekerja dalam peningkatan gradien, akan sulit bagi saya untuk menjelaskan secara detail, tetapi dengan jari saya, saya dapat melakukannya. Dan dalam kebanyakan situasi praktis, ini cukup untuk menggunakan alat secara efektif.
Pada akhirnya, saya ingin menyarankan semua orang untuk menggunakan pendekatan berulang seperti itu dalam kehidupan nyata, dalam produk, ketika Anda beralih dari yang sederhana ke yang rumit. Anda mulai dengan hipotesis sederhana yang dengan cepat diuji, dan perlahan-lahan sampai pada artikel ilmiah yang sangat kompleks dan menarik itu. Dan kemudian garis dasarnya sudah siap, dan Anda sudah bisa menulis artikel untuk KDD, misalnya.
Saya juga ingin mengatakan - mungkin mereka akan membantu saya; Saya memiliki dua pertunjukan di pertemuan. Satu dikhususkan untuk jenis tugas ilmu data apa yang dapat dilakukan dalam periklanan (dan secara umum, mengapa spesialis ilmu data dapat tertarik pada teknologi periklanan sebagai batu loncatan untuk menerapkan keterampilan mereka dengan tantangan teknik yang menarik). Dan yang kedua adalah cerita tentang jebakan yang kami hadapi sebagai tim pengembang ML sistem, tentang bagaimana kami keluar dari mereka, dan bagaimana Anda tidak jatuh ke dalam jebakan yang sama dengan saat kami jatuh karena kurangnya pengalaman. Saya ingin berbagi pengalaman ini. Saya rasa ada banyak hal berguna untuk dicari di sini.
Namun - sebelum itu saya berbicara tentang komunitas LeanDS yang didedikasikan untuk proses sains data, manajemen proyek sains data di ML. Saya juga sangat menyarankan Anda untuk melihat materi mereka, orang-orang melakukan hal-hal yang sangat keren.
Apakah Anda pernah membuat model saluran penjualan yang lengkap?
Faktanya, kami tidak melakukan ini. Tetapi di sini sangat penting bagi pengiklan eksternal untuk mengatur semuanya dengan sangat baik. Oleh karena itu, menangani funnel penjualan adalah hal yang baik jika Anda adalah data scientist di pihak pengiklan. Katakanlah Anda bekerja untuk perusahaan besar yang bekerja dengan banyak saluran pemasaran dan mencoba membangun analitik yang memungkinkan Anda memiliki pemahaman yang baik tentang cara kerja saluran pemasaran yang berbeda, seberapa baik saluran penjualan bekerja, dan sebagainya. Bagi kami, dari sisi VK sebagai sistem untuk pengiklan, ketika bekerja dengan hal-hal seperti itu, sangat penting bagi pengiklan untuk memiliki semuanya dengan baik dikonfigurasi. Sehingga piksel iklan selalu memberikan informasi yang benar tentang bagaimana pengguna memasuki situs, menambahkan sesuatu ke keranjang dan membeli. Dan kemudian kita harus menggunakan informasi ini untukuntuk membuat strategi periklanan lebih baik dan lebih efektif. Aku ingin melakukan ini; praktis kami tidak melakukan ini, karena menyiapkan sistem seperti itu sering kali sulit bagi pengiklan. Mungkin lebih mudah untuk melakukan ini jika Anda memiliki kendali penuh.
Dan pertanyaan seperti itu: bagaimana menghubungkan entitas (mengatur atribut) saat membangun model?
Misalnya, pengunjung situs -> klien
Mungkin bagus untuk memulai dari beberapa aktivitas pengguna sebelumnya. Secara umum, ini dilakukan dengan berbagai cara; Saya dapat memberi tahu Anda tentang salah satu yang digunakan dalam pembangunan sistem periklanan, yang disebut mirip. Anda mungkin pernah mendengar tentang dia. Ini adalah situasi ketika kami mengatakan: berikut adalah pengguna yang telah mengunjungi situs kami, dan berikut adalah mereka yang membeli sesuatu. Mari kita lihat pengguna mana yang paling menyukai mereka yang membeli sesuatu dan lebih sedikit yang menyukai mereka yang tidak melakukan apa-apa. Saat kami melatih model seperti itu, di mana "1" adalah mereka yang membeli, "0" adalah mereka yang tidak melakukan apa-apa, dan secara bersyarat "0,5" adalah mereka yang mengunjungi situs, kita dapat mempelajari cara memberi peringkat untuk semua pengguna sistem kami dengan kesamaan dengan klien potensial. Kita dapat menggunakan pengetahuan ini dalam model kita dan memberi tahu klien fitur apa,dalam hal model, mereka memisahkan pelanggan dari pengunjung biasa.