Yandex menghapus Google dan pembelajaran SEO lainnya dari kebocoran kode sumber
Diterbitkan: 2023-01-31“Fragmen” basis kode Yandex bocor secara online minggu lalu. Sama seperti Google, Yandex adalah platform dengan banyak aspek seperti email, peta, layanan taksi, dll. Kebocoran kode menampilkan potongan dari semuanya.
Menurut dokumentasi di dalamnya, basis kode Yandex dilipat menjadi satu repositori besar yang disebut Arcadia pada tahun 2013. Basis kode yang bocor adalah subset dari semua proyek di Arcadia dan kami menemukan beberapa komponen di dalamnya yang terkait dengan mesin pencari di "Kernel", "Library ,” “Robot,” “Search,” dan “ExtSearch” arsip.
Langkah ini sepenuhnya belum pernah terjadi sebelumnya. Tidak sejak data kueri penelusuran AOL tahun 2006 memiliki materi yang begitu terkait dengan mesin pencari web yang masuk ke domain publik.
Meskipun kami kehilangan data dan banyak file yang direferensikan, ini adalah contoh pertama dari tampilan nyata tentang cara kerja mesin telusur modern di tingkat kode.
Secara pribadi, saya tidak dapat melupakan betapa fantastis waktunya untuk dapat benar-benar melihat kode saat saya menyelesaikan buku saya "The Science of SEO" di mana saya berbicara tentang Pengambilan Informasi, bagaimana sebenarnya mesin pencari modern bekerja, dan bagaimana untuk membangun yang sederhana sendiri.
Bagaimanapun, saya telah menguraikan kode sejak Kamis lalu dan insinyur mana pun akan memberi tahu Anda bahwa tidak cukup waktu untuk memahami cara kerja semuanya. Jadi, saya kira akan ada beberapa postingan lagi karena saya terus mengotak-atik.
Sebelum kita masuk, saya ingin menyapa Ben Wills di Ontolo karena telah berbagi kode dengan saya, mengarahkan saya ke arah awal di mana barang bagus berada, dan bolak-balik dengan saya saat kami menguraikan sesuatu. Jangan ragu untuk mengambil spreadsheet dengan semua data yang telah kami kumpulkan tentang faktor peringkat di sini.
Juga, teriaklah kepada Ryan Jones karena telah menggali dan berbagi beberapa temuan penting dengan saya melalui IM.
Oke, mari kita sibuk!
Ini bukan kode Google, jadi mengapa kami peduli?
Beberapa percaya bahwa meninjau basis kode ini adalah gangguan dan tidak ada yang akan memengaruhi cara mereka membuat keputusan bisnis. Saya merasa penasaran mengingat ini adalah orang-orang dari komunitas SEO yang sama yang menggunakan model CTR dari data AOL 2006 sebagai standar industri untuk pemodelan di seluruh mesin telusur selama bertahun-tahun yang akan datang.
Yang mengatakan, Yandex bukan Google. Namun keduanya adalah mesin pencari web canggih yang terus berada di ujung tombak teknologi.
Insinyur perangkat lunak dari kedua perusahaan menghadiri konferensi yang sama (SIGIR, ECIR, dll) dan berbagi temuan dan inovasi dalam Pengambilan Informasi, Pemrosesan/Pemahaman Bahasa Alami, dan Pembelajaran Mesin. Yandex juga hadir di Palo Alto dan Google sebelumnya hadir di Moskow.
Pencarian cepat LinkedIn mengungkap beberapa ratus insinyur yang telah bekerja di kedua perusahaan, meskipun kami tidak tahu berapa banyak dari mereka yang benar-benar bekerja di Pencarian di kedua perusahaan.
Dalam tumpang tindih yang lebih langsung, Yandex juga memanfaatkan teknologi sumber terbuka Google yang sangat penting untuk inovasi dalam Penelusuran seperti TensorFlow, BERT, MapReduce, dan, pada tingkat yang lebih rendah, Protocol Buffers.
Jadi, meskipun Yandex jelas bukan Google, itu juga bukan proyek penelitian acak yang sedang kita bicarakan di sini. Ada banyak hal yang dapat kita pelajari tentang bagaimana mesin telusur modern dibuat dari meninjau basis kode ini.
Paling tidak, kita dapat melepaskan diri dari beberapa gagasan usang yang masih menembus alat SEO seperti rasio teks-ke-kode dan kepatuhan W3C atau keyakinan umum bahwa 200 sinyal Google hanyalah 200 fitur individu di dalam dan di luar halaman daripada kelas dari faktor komposit yang berpotensi menggunakan ribuan ukuran individu.
Beberapa konteks pada arsitektur Yandex
Tanpa konteks atau kemampuan untuk mengkompilasi, menjalankan, dan melewatinya dengan sukses, kode sumber sangat sulit untuk dipahami.
Biasanya, teknisi baru mendapatkan dokumentasi, penelusuran, dan terlibat dalam pemrograman berpasangan untuk bergabung dengan basis kode yang ada. Dan, ada beberapa dokumentasi orientasi terbatas terkait penyiapan proses pembangunan di arsip dokumen. Namun, kode Yandex juga mereferensikan seluruh wiki internal, tetapi itu belum bocor dan komentar dalam kode juga cukup jarang.
Untungnya, Yandex memberikan beberapa wawasan tentang arsitekturnya dalam dokumentasi publiknya. Ada juga beberapa paten yang telah mereka terbitkan di AS yang membantu menjelaskan. Yaitu:
- Metode dan sistem yang diimplementasikan komputer untuk mencari indeks terbalik yang memiliki sejumlah daftar posting
- Ranker hasil pencarian
Karena saya telah meneliti Google untuk buku saya, saya telah mengembangkan pemahaman yang jauh lebih dalam tentang struktur sistem peringkatnya melalui berbagai whitepaper, paten, dan pembicaraan dari para insinyur yang bertentangan dengan pengalaman SEO saya. Saya juga menghabiskan banyak waktu untuk mempertajam pemahaman saya tentang praktik terbaik Pengambilan Informasi umum untuk mesin telusur web. Tidak mengherankan jika memang ada beberapa praktik terbaik dan kesamaan yang dimainkan dengan Yandex.
Dokumentasi Yandex membahas sistem perayap terdistribusi ganda. Satu untuk perayapan waktu nyata yang disebut "Orange Crawler" dan satu lagi untuk perayapan umum.
Secara historis, Google dikatakan memiliki indeks yang dikelompokkan menjadi tiga kelompok, satu untuk menampung perayapan waktu nyata, satu untuk perayapan rutin, dan satu untuk perayapan yang jarang. Pendekatan ini dianggap sebagai praktik terbaik dalam IR.
Yandex dan Google berbeda dalam hal ini, tetapi gagasan umum tentang perayapan tersegmentasi didorong oleh pemahaman tentang frekuensi pembaruan.
Satu hal yang perlu diperhatikan adalah bahwa Yandex tidak memiliki sistem rendering terpisah untuk JavaScript. Mereka mengatakan ini dalam dokumentasi mereka dan, meskipun mereka memiliki sistem berbasis Webdriver untuk pengujian regresi visual yang disebut Gemini, mereka membatasi diri pada perayapan berbasis teks.
Dokumentasi juga membahas struktur basis data terfragmentasi yang memecah halaman menjadi indeks terbalik dan server dokumen.
Sama seperti kebanyakan mesin pencari web lainnya, proses pengindeksan membangun kamus, halaman cache, dan kemudian menempatkan data ke dalam indeks terbalik sehingga bigram dan trigam dan penempatannya dalam dokumen diwakili.
Ini berbeda dari Google karena mereka pindah ke pengindeksan berbasis frasa, yang berarti n-gram yang bisa lebih panjang dari trigram di masa lalu.
Namun, sistem Yandex juga menggunakan BERT dalam salurannya, sehingga pada beberapa titik dokumen dan kueri diubah menjadi penyematan dan teknik pencarian tetangga terdekat digunakan untuk menentukan peringkat.
Proses pemeringkatan adalah saat hal-hal mulai menjadi lebih menarik.
Yandex memiliki lapisan yang disebut Metasearch tempat hasil pencarian populer yang di-cache disajikan setelah mereka memproses kueri. Jika hasil tidak ditemukan di sana, permintaan pencarian dikirim ke ribuan mesin yang berbeda di lapisan Pencarian Dasar secara bersamaan. Masing-masing membuat daftar posting dokumen yang relevan lalu mengembalikannya ke MatrixNet, aplikasi jaringan saraf Yandex untuk pemeringkatan ulang, untuk membangun SERP.
Berdasarkan video di mana teknisi Google berbicara tentang infrastruktur Penelusuran, proses pemberian peringkat tersebut sangat mirip dengan Penelusuran Google. Mereka berbicara tentang keberadaan teknologi Google di lingkungan bersama di mana berbagai aplikasi ada di setiap mesin dan pekerjaan didistribusikan di seluruh mesin tersebut berdasarkan ketersediaan daya komputasi.
Salah satu kasus penggunaannya persis seperti ini, distribusi kueri ke bermacam-macam mesin untuk memproses pecahan indeks yang relevan dengan cepat. Menghitung daftar posting adalah tempat pertama yang perlu kita pertimbangkan faktor peringkat.
Ada 17.854 faktor peringkat di basis kode
Pada hari Jumat setelah kebocoran, Martin MacDonald yang tak ada bandingannya dengan bersemangat membagikan file dari basis kode yang disebut web_factors_info/factors_gen.in. File tersebut berasal dari arsip "Kernel" dalam kebocoran basis kode dan menampilkan 1.922 faktor peringkat.
Secara alami, komunitas SEO telah menjalankan nomor itu dan file itu untuk dengan bersemangat menyebarkan berita tentang wawasan di dalamnya. Banyak orang telah menerjemahkan deskripsi dan membuat alat atau Google Sheets dan ChatGPT untuk memahami datanya. Semuanya adalah contoh hebat dari kekuatan komunitas. Namun, 1.922 hanya mewakili satu dari banyak set faktor peringkat dalam basis kode.
Penyelaman yang lebih dalam ke basis kode mengungkapkan bahwa ada banyak file faktor peringkat untuk subset yang berbeda dari pemrosesan kueri dan sistem peringkat Yandex.
Menyisirnya, kami menemukan bahwa sebenarnya ada total 17.854 faktor peringkat. Termasuk dalam faktor peringkat tersebut adalah berbagai metrik yang terkait dengan:
- Klik.
- Waktu tinggal.
- Memanfaatkan setara Google Analytics Yandex, Metrika.
Ada juga rangkaian notebook Jupyter yang memiliki 2.000 faktor tambahan di luar kode inti. Agaknya, notebook Jupyter ini mewakili pengujian di mana para insinyur sedang mempertimbangkan faktor tambahan untuk ditambahkan ke basis kode. Sekali lagi, Anda dapat meninjau semua fitur ini dengan metadata yang kami kumpulkan dari seluruh basis kode di tautan ini.
Dokumentasi Yandex lebih lanjut mengklarifikasi bahwa mereka memiliki tiga kelas faktor peringkat: Statis, Dinamis, dan yang terkait secara khusus dengan pencarian pengguna dan bagaimana hal itu dilakukan. Dengan kata-kata mereka sendiri:
Dalam basis kode ini ditunjukkan dalam file faktor peringkat dengan tag TG_STATIC dan TG_DYNAMIC. Faktor terkait pencarian memiliki beberapa tag seperti TG_QUERY_ONLY, TG_QUERY, TG_USER_SEARCH, dan TG_USER_SEARCH_ONLY.
Meskipun kami telah menemukan potensi 18k faktor peringkat untuk dipilih, dokumentasi yang terkait dengan MatrixNet menunjukkan bahwa penilaian dibuat dari puluhan ribu faktor dan disesuaikan berdasarkan kueri penelusuran.
Ini menunjukkan bahwa lingkungan peringkat sangat dinamis, mirip dengan lingkungan Google. Menurut paten "Kerangka untuk mengevaluasi fungsi penilaian" Google, mereka telah lama memiliki sesuatu yang serupa di mana beberapa fungsi dijalankan dan serangkaian hasil terbaik dikembalikan.
Terakhir, mengingat dokumentasi merujuk puluhan ribu faktor peringkat, kita juga harus ingat bahwa ada banyak file lain yang dirujuk dalam kode yang hilang dari arsip. Jadi, ada kemungkinan lebih banyak terjadi yang tidak dapat kita lihat. Ini diilustrasikan lebih lanjut dengan meninjau gambar dalam dokumentasi orientasi yang menunjukkan direktori lain yang tidak ada dalam arsip.
Misalnya, saya curiga ada lebih banyak yang terkait dengan DSSM di direktori /semantic-search/.
Pembobotan awal faktor peringkat
Saya pertama kali beroperasi dengan asumsi bahwa basis kode tidak memiliki bobot untuk faktor peringkat. Kemudian saya terkejut melihat bahwa file nav_linear.h di direktori /search/relevance/ menampilkan koefisien awal (atau bobot) yang terkait dengan faktor peringkat pada tampilan penuh.
Bagian kode ini menyoroti 257 dari 17.000+ faktor peringkat yang telah kami identifikasi. ( Harap tip untuk Ryan Jones karena menarik ini dan menyejajarkannya dengan deskripsi faktor peringkat.)
Untuk lebih jelasnya, saat memikirkan algoritme mesin telusur, Anda mungkin memikirkan persamaan matematis yang panjang dan rumit di mana setiap halaman diberi skor berdasarkan serangkaian faktor. Meskipun itu adalah penyederhanaan yang berlebihan, tangkapan layar berikut adalah kutipan dari persamaan tersebut. Koefisien mewakili seberapa penting setiap faktor dan skor yang dihitung yang dihasilkan adalah apa yang akan digunakan untuk menilai halaman pemilih untuk relevansi.
Nilai-nilai ini dikodekan dengan keras menunjukkan bahwa ini tentu saja bukan satu-satunya tempat pemeringkatan terjadi. Alih-alih, fungsi ini kemungkinan besar di mana penilaian relevansi awal dilakukan untuk menghasilkan serangkaian daftar posting untuk setiap shard yang dipertimbangkan untuk diberi peringkat. Dalam paten pertama yang tercantum di atas, mereka berbicara tentang ini sebagai konsep relevansi independen kueri (QIR) yang kemudian membatasi dokumen sebelum meninjaunya untuk relevansi spesifik kueri (QSR).
Daftar posting yang dihasilkan kemudian diserahkan ke MatrixNet dengan fitur kueri untuk dibandingkan. Jadi, meskipun kami belum mengetahui secara spesifik (belum) operasi hilir, bobot ini tetap berharga untuk dipahami karena memberi tahu Anda persyaratan agar laman memenuhi syarat untuk kumpulan pertimbangan.
Namun, hal itu memunculkan pertanyaan berikutnya: apa yang kita ketahui tentang MatrixNet?
Ada kode peringkat saraf di arsip Kernel dan ada banyak referensi ke MatrixNet dan "mxnet" serta banyak referensi ke Deep Structured Semantic Models (DSSM) di seluruh basis kode.
Deskripsi salah satu faktor peringkat FI_MATRIXNET menunjukkan bahwa MatrixNet berlaku untuk semua faktor.
Faktor {
Indeks: 160
CppName: “FI_MATRIXNET”
Nama: “MatrixNet”
Tag: [TG_DOC, TG_DYNAMIC, TG_TRANS, TG_NOT_01, TG_REARR_USE, TG_L3_MODEL_VALUE, TG_FRESHNESS_FROZEN_POOL]
Deskripsi: “MatrixNet diterapkan ke semua faktor – rumus”
}
Ada juga banyak file biner yang mungkin merupakan model pra-terlatih itu sendiri, tetapi saya akan membutuhkan lebih banyak waktu untuk mengungkap aspek-aspek kode tersebut.
Yang langsung jelas adalah bahwa ada beberapa level untuk peringkat (L1, L2, L3) dan ada bermacam-macam model peringkat yang dapat dipilih di setiap level.
File selection_rankings_model.cpp menunjukkan bahwa model peringkat yang berbeda dapat dipertimbangkan pada setiap lapisan selama proses berlangsung. Ini pada dasarnya adalah cara kerja jaringan saraf. Setiap level adalah aspek yang menyelesaikan operasi dan perhitungan gabungannya menghasilkan daftar peringkat ulang dokumen yang pada akhirnya muncul sebagai SERP. Saya akan menindaklanjuti dengan mendalami MatrixNet ketika saya punya lebih banyak waktu. Bagi mereka yang membutuhkan intip, lihat paten ranker hasil Pencarian.
Untuk saat ini, mari kita lihat beberapa faktor peringkat yang menarik.
5 faktor peringkat awal berbobot negatif teratas
Berikut ini adalah daftar faktor peringkat awal berbobot negatif tertinggi beserta bobotnya dan penjelasan singkat berdasarkan uraiannya yang diterjemahkan dari bahasa Rusia.
- FI_ADV: -0,2509284637 -Faktor ini menentukan bahwa ada iklan dalam bentuk apa pun di halaman dan mengeluarkan penalti terberat untuk satu faktor peringkat.
- FI_DATER_AGE: -0.2074373667 – Faktor ini adalah perbedaan antara tanggal saat ini dan tanggal dokumen yang ditentukan oleh fungsi dater. Nilainya adalah 1 jika tanggal dokumen sama dengan hari ini, 0 jika dokumen berusia 10 tahun atau lebih, atau jika tanggal tidak ditentukan. Ini menunjukkan bahwa Yandex memiliki preferensi untuk konten yang lebih lama.
- FI_QURL_STAT_POWER: -0.1943768768 – Faktor ini adalah jumlah tayangan URL yang terkait dengan kueri. Sepertinya mereka ingin mendemosikan URL yang muncul di banyak penelusuran untuk mempromosikan keragaman hasil.
- FI_COMM_LINKS_SEO_HOSTS: -0.1809636391 – Faktor ini adalah persentase tautan masuk dengan teks jangkar “komersial”. Faktor kembali ke 0,1 jika proporsi tautan tersebut lebih dari 50%, jika tidak, disetel ke 0.
- FI_GEO_CITY_URL_REGION_COUNTRY: -0.168645758 – Faktor ini adalah kebetulan geografis dokumen dan negara tempat pengguna menelusuri. Yang ini tidak masuk akal jika 1 berarti dokumen dan negara cocok.
Singkatnya, faktor-faktor ini menunjukkan bahwa, untuk mendapatkan skor terbaik, Anda harus:
- Hindari iklan.
- Perbarui konten lama daripada membuat halaman baru.
- Pastikan sebagian besar tautan Anda memiliki teks jangkar bermerek.
Segala sesuatu yang lain dalam daftar ini berada di luar kendali Anda.
Top 5 faktor peringkat awal berbobot positif
Untuk menindaklanjuti, berikut adalah daftar faktor peringkat positif berbobot tertinggi.
- FI_URL_DOMAIN_FRACTION: +0,5640952971 – Faktor ini merupakan masking aneh yang tumpang tindih dari kueri versus domain URL. Contoh yang diberikan adalah lotere Chelyabinsk yang disingkat chelloto. Untuk menghitung nilai ini, Yandex menemukan tiga huruf yang tertutup (che, hel, lot, olo), lihat berapa proporsi dari semua kombinasi tiga huruf dalam nama domain.
- FI_QUERY_DOWNER_CLICKS_COMBO: +0.3690780393 – Deskripsi faktor ini adalah “gabungan FRC dan RKPT semu secara cerdik”. Tidak ada indikasi langsung tentang apa itu FRC.
- FI_MAX_WORD_HOST_CLICKS: +0.3451158835 – Faktor ini adalah kemampuan mengklik kata yang paling penting dalam domain. Misalnya, untuk semua kueri yang mengandung kata "wikipedia", klik halaman wikipedia.
- FI_MAX_WORD_HOST_YABAR: +0.3154394573 – Deskripsi faktor mengatakan “kata kueri paling khas yang sesuai dengan situs, menurut bilah”. Saya berasumsi ini berarti kata kunci yang paling banyak dicari di Yandex Toolbar terkait dengan situs.
- FI_IS_COM: +0.2762504972 – Faktornya adalah domainnya adalah .COM.
Dengan kata lain:
- Mainkan permainan kata dengan domain Anda.
- Pastikan itu adalah dot com.
- Dorong orang untuk mencari kata kunci target Anda di Yandex Bar.
- Terus dorong klik.
Ada banyak faktor peringkat awal yang tidak terduga
Yang lebih menarik dari faktor peringkat tertimbang awal adalah yang tidak terduga. Berikut ini adalah daftar tujuh belas faktor yang menonjol.
- FI_PAGE_RANK: +0.1828678331 – PageRank adalah faktor tertimbang tertinggi ke-17 di Yandex. Mereka sebelumnya menghapus tautan dari sistem peringkat mereka sepenuhnya, jadi tidak terlalu mengejutkan betapa rendahnya itu dalam daftar.
- FI_SPAM_KARMA: +0.00842682963 – Karma Spam dinamai menurut “antispammers” dan kemungkinan host adalah spam; berdasarkan informasi Whois
- FI_SUBQUERY_THEME_MATCH_A: +0.1786465163 – Seberapa dekat kecocokan kueri dan dokumen secara tematis. Ini adalah faktor tertimbang tertinggi ke-19.
- FI_REG_HOST_RANK: +0.1567124399 – Yandex memiliki faktor peringkat host (atau domain).
- FI_URL_LINK_PERCENT: +0,08940421124 – Rasio tautan yang teks jangkarnya berupa URL (bukan teks) dengan jumlah total tautan.
- FI_PAGE_RANK_UKR: +0.08712279101 – Ada PageRank Ukraina tertentu
- FI_IS_NOT_RU: +0.08128946612 – Merupakan hal yang positif jika domainnya bukan .RU. Rupanya, mesin pencari Rusia tidak mempercayai situs Rusia.
- FI_YABAR_HOST_AVG_TIME2: +0,07417219313 – Ini adalah waktu tinggal rata-rata seperti yang dilaporkan oleh YandexBar
- FI_LERF_LR_LOG_RELEV: +0.06059448504 – Ini adalah relevansi tautan berdasarkan kualitas setiap tautan
- FI_NUM_SLASHES: +0.05057609417 – Jumlah garis miring di URL adalah faktor peringkat.
- FI_ADV_PRONOUNS_PORTION: -0.001250755075 – Proporsi kata ganti kata benda pada halaman.
- FI_TEXT_HEAD_SYN: -0.01291908335 – Keberadaan kata [query] di header, dengan mempertimbangkan sinonim
- FI_PERCENT_FREQ_WORDS: -0,02021022114 – Persentase jumlah kata, yaitu 200 kata yang paling sering muncul dalam bahasa tersebut, dari jumlah semua kata dalam teks.
- FI_YANDEX_ADV: -0.09426121965 – Menjadi lebih spesifik dengan ketidaksukaan terhadap iklan, Yandex menghukum halaman dengan iklan Yandex.
- FI_AURA_DOC_LOG_SHARED: -0.09768630485 – Logaritma jumlah sirap (area teks) dalam dokumen yang tidak unik.
- FI_AURA_DOC_LOG_AUTHOR: -0.09727752961 – Logaritma jumlah sirap di mana pemilik dokumen ini diakui sebagai penulisnya.
- FI_CLASSIF_IS_SHOP: -0.1339319854 – Rupanya, Yandex akan memberi Anda lebih sedikit cinta jika halaman Anda adalah toko.
Pengambilan utama dari meninjau faktor peringkat aneh ini dan susunan yang tersedia di seluruh basis kode Yandex adalah bahwa ada banyak hal yang bisa menjadi faktor peringkat.
Saya menduga bahwa "200 sinyal" yang dilaporkan Google sebenarnya adalah 200 kelas sinyal di mana setiap sinyal merupakan gabungan dari banyak komponen lainnya. Sama seperti Google Analytics memiliki dimensi dengan banyak metrik yang terkait, Google Penelusuran kemungkinan memiliki kelas sinyal peringkat yang terdiri dari banyak fitur.
Yandex menghapus Google, Bing, YouTube, dan TikTok
Basis kode juga mengungkapkan bahwa Yandex memiliki banyak pengurai untuk situs web lain dan layanannya masing-masing. Bagi orang Barat, yang paling menonjol adalah yang saya sebutkan di judul di atas. Selain itu, Yandex memiliki pengurai untuk berbagai layanan yang tidak saya kenal serta untuk layanannya sendiri.
Apa yang langsung terbukti, adalah bahwa parser adalah fitur yang lengkap. Setiap komponen penting dari Google SERP diekstraksi. Faktanya, siapa pun yang mungkin mempertimbangkan untuk menghapus salah satu dari layanan ini sebaiknya meninjau kode ini.
Ada kode lain yang menunjukkan Yandex menggunakan beberapa data Google sebagai bagian dari perhitungan DSSM, tetapi 83 faktor peringkat yang disebutkan Google sendiri memperjelas bahwa Yandex sangat bergantung pada hasil Google.
Jelas, Google tidak akan pernah menarik langkah Bing untuk menyalin hasil mesin pencari lain atau bergantung pada satu untuk perhitungan peringkat inti.
Yandex memiliki batas atas anti-SEO untuk beberapa faktor peringkat
315 faktor peringkat memiliki ambang di mana setiap nilai yang dihitung di luar itu menunjukkan kepada sistem bahwa fitur halaman tersebut terlalu dioptimalkan. 39 dari faktor peringkat ini adalah bagian dari faktor bobot awal yang dapat membuat halaman tidak disertakan dalam daftar posting awal. Anda dapat menemukannya di spreadsheet yang saya tautkan di atas dengan memfilter Koefisien Peringkat dan kolom Anti-SEO.
Tidak terlalu mengada-ada secara konseptual untuk mengharapkan bahwa semua mesin telusur modern menetapkan ambang batas pada faktor-faktor tertentu yang secara historis disalahgunakan oleh SEO seperti teks jangkar, RKT, atau isian kata kunci. Misalnya, Bing dikatakan memanfaatkan penyalahgunaan kata kunci meta sebagai faktor negatif.
Yandex meningkatkan "Host Vital"
Yandex memiliki serangkaian mekanisme peningkatan di seluruh basis kodenya. Ini adalah peningkatan artifisial pada dokumen tertentu untuk memastikan skornya lebih tinggi saat dipertimbangkan untuk diberi peringkat.
Di bawah ini adalah komentar dari "wizard peningkatan" yang menunjukkan bahwa file yang lebih kecil paling diuntungkan dari algoritme peningkatan.
Ada beberapa jenis peningkat; Saya telah melihat satu peningkatan terkait tautan dan saya juga melihat serangkaian "HandJobBoosts" yang hanya dapat saya asumsikan sebagai terjemahan aneh dari perubahan "manual".
Salah satu peningkatan yang menurut saya sangat menarik ini terkait dengan "Host Vital". Di mana host vital dapat berupa situs apa pun yang ditentukan. Disebutkan secara khusus dalam variabel adalah NEWS_AGENCY_RATING yang membuat saya percaya bahwa Yandex memberikan dorongan yang membiaskan hasilnya ke organisasi berita tertentu.
Tanpa masuk ke geopolitik, ini sangat berbeda dari Google karena mereka bersikeras untuk tidak memasukkan bias seperti ini ke dalam sistem peringkat mereka.
Struktur server dokumen
Basis kode mengungkapkan bagaimana dokumen disimpan di server dokumen Yandex. Hal ini berguna untuk memahami bahwa mesin telusur tidak hanya membuat salinan laman dan menyimpannya ke cache-nya, namun menangkap berbagai fitur sebagai metadata untuk kemudian digunakan dalam proses peringkat hilir.
Tangkapan layar di bawah menyoroti sebagian fitur yang sangat menarik. File lain dengan kueri SQL menunjukkan bahwa server dokumen memiliki hampir 200 kolom termasuk pohon DOM, panjang kalimat, waktu pengambilan, rangkaian tanggal, dan skor antispam, rantai pengalihan, dan apakah dokumen diterjemahkan atau tidak. Daftar terlengkap yang pernah saya temukan ada di /robot/rthub/yql/protos/web_page_item.proto.
Yang paling menarik di subset di sini adalah jumlah simhash yang digunakan. Simhash adalah representasi numerik dari konten dan mesin pencari menggunakannya untuk perbandingan cepat untuk penentuan duplikat konten. Ada berbagai contoh dalam arsip robot yang menunjukkan konten duplikat diturunkan secara eksplisit.
Selain itu, sebagai bagian dari proses pengindeksan, basis kode menampilkan TF-IDF, BM25, dan BERT dalam pipa pemrosesan teksnya. Tidak jelas mengapa semua mekanisme ini ada dalam kode karena ada redundansi dalam menggunakan semuanya.
Faktor Tautan dan Prioritas
Cara Yandex menangani faktor tautan sangat menarik karena mereka sebelumnya menonaktifkan dampaknya sama sekali. Basis kode juga mengungkapkan banyak informasi tentang faktor tautan dan bagaimana tautan diprioritaskan.
Kalkulator spam tautan Yandex memiliki 89 faktor yang dilihatnya. Apa pun yang ditandai sebagai SF_RESERVED tidak digunakan lagi. Jika disediakan, Anda dapat menemukan deskripsi faktor-faktor ini di Lembar Google yang ditautkan di atas.
Khususnya, Yandex memiliki peringkat host dan beberapa skor yang tampaknya bertahan lama setelah situs atau halaman mengembangkan reputasi untuk spam.
Hal lain yang dilakukan Yandex adalah meninjau salinan di seluruh domain dan menentukan apakah ada konten duplikat dengan tautan tersebut. Ini bisa berupa penempatan tautan di seluruh situs, tautan pada halaman duplikat, atau sekadar tautan dengan teks jangkar yang sama yang berasal dari situs yang sama.
Ini menggambarkan betapa mudahnya mendiskon banyak tautan dari sumber yang sama dan menjelaskan betapa pentingnya menargetkan tautan yang lebih unik dari sumber yang lebih beragam.
Apa yang bisa kita terapkan dari Yandex ke apa yang kita ketahui tentang Google?
Tentu saja, ini masih menjadi pertanyaan di benak semua orang. Meskipun pasti ada banyak kesamaan antara Yandex dan Google, sejujurnya, hanya Insinyur Perangkat Lunak Google yang bekerja di Penelusuran yang dapat menjawab pertanyaan itu secara definitif.
Namun, itu adalah pertanyaan yang salah.
Sungguh, kode ini akan membantu kita memperluas pemikiran kita tentang pencarian modern. Sebagian besar pemahaman kolektif tentang pencarian dibangun dari apa yang dipelajari komunitas SEO di awal tahun 2000-an melalui pengujian dan dari mulut para insinyur pencarian ketika pencarian jauh lebih tidak buram. Itu sayangnya belum mengikuti laju inovasi yang cepat.
Wawasan dari banyak fitur dan faktor kebocoran Yandex harus menghasilkan lebih banyak hipotesis untuk diuji dan dipertimbangkan untuk peringkat di Google. Mereka juga harus memperkenalkan lebih banyak hal yang dapat diuraikan dan diukur dengan perayapan SEO, analisis tautan, dan alat peringkat.
Misalnya, ukuran kesamaan cosinus antara kueri dan dokumen yang menggunakan penyematan BERT dapat bermanfaat untuk dipahami versus halaman pesaing karena itu adalah sesuatu yang dilakukan sendiri oleh mesin pencari modern.
Sama seperti log Pencarian AOL memindahkan kami dari menebak distribusi klik pada SERP, basis kode Yandex menjauhkan kami dari abstrak ke konkret dan pernyataan "itu tergantung" kami dapat lebih memenuhi syarat.
Untuk itu, basis kode ini adalah hadiah yang akan terus diberikan. Ini baru akhir pekan dan kami telah mengumpulkan beberapa wawasan yang sangat menarik dari kode ini.
Saya mengantisipasi beberapa insinyur SEO yang ambisius dengan lebih banyak waktu di tangan mereka akan terus menggali dan bahkan mungkin mengisi cukup apa yang hilang untuk mengkompilasi hal ini dan membuatnya berfungsi. Saya juga yakin para insinyur di berbagai mesin telusur juga menelusuri dan menguraikan inovasi yang dapat mereka pelajari dan tambahkan ke sistem mereka.
Secara bersamaan, pengacara Google mungkin sedang menyusun surat berhenti dan berhenti yang agresif terkait dengan semua pengikisan.
Saya ingin sekali melihat evolusi ruang kita yang didorong oleh orang-orang penasaran yang akan memaksimalkan kesempatan ini.
Tapi, hei, jika mendapatkan wawasan dari kode sebenarnya tidak berharga bagi Anda, Anda dapat kembali melakukan sesuatu yang lebih penting seperti berdebat tentang subdomain versus subdirektori.
Pendapat yang diungkapkan dalam artikel ini adalah dari penulis tamu dan belum tentu Search Engine Land. Penulis staf tercantum di sini.