Klasifikasi data yang skalabel untuk keamanan dan privasi





Mengklasifikasikan data berdasarkan konten adalah tugas terbuka. Sistem pencegahan kehilangan data (DLP) tradisional memecahkan masalah ini dengan mengambil sidik jari pada data yang relevan dan memantau titik akhir sidik jari. Mengingat banyaknya aset data yang selalu berubah di Facebook, pendekatan ini tidak hanya gagal untuk menskalakan, tetapi juga tidak efektif dalam menentukan lokasi datanya. Artikel ini membahas tentang sistem ujung ke ujung yang dibuat untuk menemukan jenis semantik sensitif di Facebook dalam skala besar dan secara otomatis menerapkan penyimpanan dan kontrol akses.



Pendekatan yang dijelaskan di sini adalah sistem privasi ujung-ke-ujung pertama kami yang mencoba mengatasi masalah ini dengan memasukkan sinyal data, pembelajaran mesin, dan teknik sidik jari tradisional untuk menampilkan dan mengklasifikasikan semua data di Facebook. Sistem yang dijelaskan dioperasikan dalam lingkungan produksi, mencapai skor F2 rata-rata 0,9+ untuk berbagai kelas privasi sambil memproses sejumlah besar sumber daya data di lusinan penyimpanan. Memperkenalkan terjemahan posting ArXiv Facebook pada klasifikasi data yang dapat diskalakan untuk keamanan dan privasi berdasarkan pembelajaran mesin.



pengantar



Organisasi saat ini mengumpulkan dan menyimpan data dalam jumlah besar dalam berbagai format dan lokasi [1], kemudian data tersebut dikonsumsi di banyak tempat, terkadang disalin atau disimpan dalam cache beberapa kali, sehingga informasi bisnis yang berharga dan sensitif tersebar di banyak gudang data perusahaan. Ketika sebuah organisasi diharuskan untuk mematuhi persyaratan hukum atau peraturan tertentu, misalnya, untuk mematuhi peraturan dalam proses perdata, maka perlu untuk mengumpulkan lokasi data yang relevan. Jika pernyataan privasi menyatakan bahwa organisasi harus menutupi semua Nomor Jaminan Sosial (SSN) saat berbagi informasi pribadi dengan entitas yang tidak sah, langkah pertama yang wajar adalah mencari semua SSN di penyimpanan data di seluruh organisasi.Dalam keadaan seperti itu, klasifikasi data menjadi penting [1]. Sistem klasifikasi akan memungkinkan organisasi untuk secara otomatis memberlakukan kebijakan privasi dan keamanan seperti mengaktifkan kebijakan kontrol akses, penyimpanan data. Facebook memperkenalkan sistem yang kami bangun di Facebook yang menggunakan berbagai sinyal data, arsitektur sistem yang dapat diskalakan, dan pembelajaran mesin untuk menemukan tipe data semantik yang sensitif.arsitektur sistem yang dapat diskalakan dan pembelajaran mesin untuk menemukan tipe data semantik yang sensitif.arsitektur sistem yang dapat diskalakan dan pembelajaran mesin untuk menemukan tipe data semantik yang sensitif.



Menemukan dan mengklasifikasikan data adalah menemukan dan memberi label sehingga Anda dapat dengan cepat dan efisien mengambil informasi yang relevan saat diperlukan. Proses saat ini lebih bersifat manual dan terdiri dari pemeriksaan hukum atau peraturan yang relevan, menentukan jenis informasi apa yang harus dianggap sensitif dan tingkat sensitivitas yang berbeda, dan kemudian dalam pembangunan kelas yang sesuai dan kebijakan klasifikasi [1]. Setelah sistem pencegahan kehilangan data (DLP), data diambil sidik jarinya dan titik akhir dimonitor ke hilir untuk sidik jari. Saat berurusan dengan gudang dengan banyak aset dan petabyte data, pendekatan ini tidak menskalakan.



Tujuan kami adalah untuk membangun sistem klasifikasi data yang diskalakan untuk data pengguna yang persisten dan mudah menguap, tanpa batasan tambahan pada tipe atau format data. Ini adalah tujuan yang ambisius, dan tentu saja penuh dengan kesulitan. Rekaman data apapun bisa ribuan karakter.





Gambar 1. Aliran perkiraan online dan offline



Oleh karena itu, kita harus merepresentasikannya secara efektif menggunakan sekumpulan fitur umum, yang kemudian dapat digabungkan dan dipindahkan dengan mudah. Fitur ini seharusnya tidak hanya memberikan klasifikasi yang akurat, tetapi juga memberikan fleksibilitas dan ekstensibilitas untuk dengan mudah menambah dan menemukan tipe data baru di masa mendatang. Kedua, Anda perlu berurusan dengan tabel besar yang berdiri sendiri. Data persisten dapat disimpan dalam tabel yang berukuran banyak petabyte. Ini dapat menyebabkan penurunan kecepatan pindai. Ketiga, kita harus mematuhi klasifikasi SLA yang ketat untuk data volatil. Ini membuat sistem menjadi sangat efisien, cepat dan akurat. Terakhir, kami perlu menyediakan klasifikasi data latensi rendah untuk data volatil agar dapat melakukan klasifikasi secara real time, serta untuk kasus penggunaan internet.



Artikel ini menjelaskan cara kami menangani masalah di atas dan menyajikan sistem klasifikasi yang cepat dan skalabel yang mengklasifikasikan item data dari semua jenis, format, dan sumber berdasarkan sekumpulan fitur umum. Kami telah memperluas arsitektur sistem dan membangun model pembelajaran mesin kustom untuk mengklasifikasikan data offline dan online dengan cepat. Artikel ini disusun sebagai berikut: Bagian 2 memperkenalkan desain umum sistem. Bagian 3 membahas bagian-bagian dari sistem pembelajaran mesin. Bagian 4 dan 5 menjelaskan pekerjaan terkait dan menguraikan arah pekerjaan di masa depan.



Arsitektur



Untuk menangani data persisten skala Facebook dan masalah data online, sistem klasifikasi memiliki dua aliran terpisah, yang akan kita bahas secara rinci.



Data persisten



Awalnya, sistem perlu mempelajari berbagai aset informasi Facebook. Untuk setiap gudang, beberapa informasi dasar dikumpulkan, seperti pusat data yang berisi data ini, sistem dengan data ini, dan aset yang terletak di gudang data tertentu. Ini membentuk katalog metadata, memungkinkan sistem untuk mengambil data secara efisien tanpa membebani klien dan sumber daya yang digunakan oleh teknisi lain.



Katalog metadata ini menyediakan sumber tepercaya untuk semua aset yang dipindai dan memungkinkan Anda melacak kesehatan berbagai aset. Informasi ini digunakan untuk memprioritaskan penjadwalan berdasarkan data yang dikumpulkan dan informasi internal dari sistem, seperti waktu pemindaian terakhir yang berhasil dari suatu aset dan waktu pembuatannya, serta persyaratan memori dan prosesor sebelumnya untuk aset tersebut jika sebelumnya dipindai. Kemudian, untuk setiap sumber daya data (saat sumber daya tersedia), tugas pemindaian aktual untuk sumber daya dipanggil.



Setiap pekerjaan adalah biner terkompilasi yang menjalankan sampel Bernoulli atas data terbaru yang tersedia untuk setiap aset. Aset tersebut dipecah menjadi beberapa kolom terpisah, di mana hasil klasifikasi untuk setiap kolom diproses secara terpisah. Selain itu, sistem memindai semua data kaya di dalam kolom. JSON, array, struktur yang dikodekan, URL, data berseri basis 64 dan banyak lagi semuanya dipindai. Ini dapat secara dramatis meningkatkan waktu eksekusi pemindaian, karena satu tabel dapat berisi ribuan kolom bersarang dalam satu blob json.



Untuk setiap baris yang dipilih dalam aset data, sistem klasifikasi mengekstrak float dan objek teks dari konten dan mengaitkan kembali setiap objek dengan kolom tempat pengambilannya. Hasil dari langkah ekstraksi fitur adalah peta dari semua fitur untuk setiap kolom yang terdapat pada aset data.



Untuk apa tanda-tandanya?



Konsep ciri adalah kuncinya. Alih-alih karakter float dan teks, kita bisa meneruskan pola string mentah yang langsung diambil dari setiap sumber data. Selain itu, model pembelajaran mesin dapat dilatih secara langsung pada setiap sampel, bukan ratusan penghitungan fitur yang hanya mencoba memperkirakan sampel. Ada beberapa alasan untuk ini:



  1. : , , . , . , , .
  2. : . . , , .
  3. : , . .



Fitur tersebut kemudian dikirim ke layanan prediksi di mana kami menggunakan klasifikasi berbasis aturan dan pembelajaran mesin untuk memprediksi label data setiap kolom. Layanan ini bergantung pada pengklasifikasi aturan dan machine learning, serta memilih perkiraan terbaik yang diberikan dari setiap objek perkiraan.



Pengklasifikasi aturan adalah heuristik manual yang menggunakan penghitungan dan koefisien untuk menormalkan objek dalam rentang 0 hingga 100. Setelah skor awal semacam itu dibuat untuk setiap tipe data dan nama kolom yang terkait dengan data tersebut, itu tidak termasuk dalam "daftar penolakan" apa pun , pengklasifikasi aturan memilih skor normalisasi tertinggi di antara semua tipe data.



Karena kerumitan klasifikasi, penggunaan heuristik manual murni menghasilkan akurasi klasifikasi yang rendah, terutama untuk data tidak terstruktur. Karena alasan ini, kami mengembangkan sistem pembelajaran mesin untuk bekerja dengan klasifikasi data tidak terstruktur seperti alamat dan konten yang dibuat pengguna. Pembelajaran mesin memungkinkan kami untuk mulai beralih dari heuristik manual dan menerapkan sinyal data tambahan (misalnya, nama kolom, asal data), yang secara signifikan meningkatkan akurasi deteksi. Kami akan mendalami arsitektur pembelajaran mesin kami nanti.



Layanan Prediksi menyimpan hasil untuk setiap kolom bersama dengan metadata tentang waktu dan status pemindaian. Setiap konsumen dan proses hilir yang bergantung pada data ini dapat membacanya dari kumpulan data harian yang dipublikasikan. Kumpulan ini menggabungkan hasil dari semua tugas pemindaian ini, atau API real-time dari katalog data. Perkiraan yang dipublikasikan adalah dasar untuk penegakan otomatis kebijakan privasi dan keamanan.



Terakhir, setelah layanan prediksi menulis semua data dan semua prediksi disimpan, API Katalog Data kami dapat menampilkan semua prediksi jenis data untuk sumber daya secara real time. Setiap hari, sistem menerbitkan kumpulan data yang berisi semua prediksi terbaru untuk setiap aset.



Data yang mudah menguap



Meskipun proses di atas dirancang untuk aset persisten, lalu lintas non-persisten juga dianggap sebagai bagian dari data organisasi dan dapat menjadi penting. Karena alasan ini, sistem menyediakan API online untuk menghasilkan prediksi klasifikasi waktu nyata untuk semua lalu lintas yang tidak stabil. Prediksi waktu nyata banyak digunakan untuk mengklasifikasikan lalu lintas keluar, lalu lintas masuk dalam model pembelajaran mesin, dan data pengiklan.



API mengambil dua argumen utama di sini: kunci pengelompokan dan data mentah untuk diprediksi. Layanan melakukan pengambilan objek yang sama seperti yang dijelaskan di atas dan mengelompokkan objek bersama-sama untuk kunci yang sama. Gejala ini juga didukung di cache persisten untuk failover. Untuk setiap kunci pengelompokan, layanan memastikan bahwa ia telah melihat cukup banyak sampel sebelum memanggil layanan prediksi, mengikuti proses yang dijelaskan di atas.



Optimasi



Kami menggunakan pustaka dan teknik pengoptimalan baca hot storage [2] untuk memindai beberapa repositori dan memastikan bahwa tidak ada gangguan dari pengguna lain yang mengakses repositori yang sama.



Untuk tabel yang sangat besar (50+ petabyte), terlepas dari semua pengoptimalan dan efisiensi memori, sistem bekerja untuk memindai dan menghitung semuanya sebelum kehabisan memori. Lagi pula, pemindaian sepenuhnya dihitung dalam memori dan tidak disimpan selama pemindaian. Jika tabel besar berisi ribuan kolom dengan potongan data yang tidak terstruktur, pekerjaan mungkin gagal karena sumber daya memori yang tidak mencukupi saat membuat prediksi untuk seluruh tabel. Ini akan mengurangi cakupan. Untuk mengatasi ini, kami telah mengoptimalkan sistem untuk menggunakan kecepatan pemindaian sebagai mediator tentang seberapa baik sistem menangani beban saat ini. Kami menggunakan kecepatan sebagai mekanisme prediksi untuk melihat masalah memori dan secara proaktif menghitung peta fitur.Namun, kami menggunakan lebih sedikit data dari biasanya.



Sinyal data



Sistem klasifikasi hanya sebaik sinyal dari data. Di sini kita akan melihat semua sinyal yang digunakan oleh sistem klasifikasi.



  • Berbasis Konten: Tentu saja, sinyal pertama dan terpenting adalah konten. Sampel Bernoulli diambil untuk setiap aset data yang kami pindai dan ekstraksi fitur berdasarkan konten data. Banyak tanda datang dari isinya. Sejumlah float dimungkinkan, yang merepresentasikan kalkulasi berapa kali jenis pola tertentu telah terlihat. Misalnya, kami mungkin memiliki tanda mulut untuk jumlah email yang terlihat dalam sampel, atau indikasi berapa banyak emotikon yang terlihat dalam sampel. Penghitungan fitur ini dapat dinormalisasi dan digabungkan di berbagai pemindaian.
  • : , , . — . , , . , .
  • : , . . , .
  • — , , . , , , , . , . , .




Komponen penting adalah metodologi yang ketat untuk mengukur metrik. Metrik utama dari iterasi peningkatan klasifikasi adalah keakuratan dan perolehan kembali setiap label, dengan skor F2 menjadi yang paling penting.



Menghitung metrik ini memerlukan metodologi independen untuk memberi label pada aset data yang tidak bergantung pada sistem itu sendiri, tetapi dapat digunakan untuk membandingkannya secara langsung. Di bawah ini, kami menjelaskan bagaimana kami mengumpulkan kebenaran dasar dari Facebook dan menggunakannya untuk melatih sistem klasifikasi kami.



Mengumpulkan data yang andal



Kami mengumpulkan data yang dapat diandalkan dari setiap sumber yang tercantum di bawah ini dalam tabelnya sendiri. Setiap tabel bertanggung jawab untuk menggabungkan nilai observasi terbaru dari sumber tertentu. Setiap sumber memiliki pemeriksaan kualitas data untuk memastikan bahwa nilai yang diamati untuk setiap sumber berkualitas tinggi dan berisi label tipe data terbaru.



  • Konfigurasi platform pencatatan: bidang tertentu dalam tabel sarang lebah diisi dengan data yang termasuk jenis tertentu. Penggunaan dan penyebaran data ini berfungsi sebagai sumber data yang andal.
  • : , , . , , .
  • , .
  • : Facebook . , , , . .
  • : , , , , . , .
  • : , . , , GPS.
  • : , , . .


Kami menggabungkan setiap sumber utama data yang valid menjadi satu korpus dengan semua data ini. Masalah terbesar dengan validitas adalah memastikan bahwa itu adalah representasi dari penyimpanan data. Jika tidak, mesin klasifikasi bisa overfit. Dalam perang melawan ini, semua sumber di atas digunakan untuk memberikan keseimbangan saat melatih model atau menghitung metrik. Selain itu, pemasar manusia secara merata memilih kolom yang berbeda di toko dan memberi label data dengan tepat untuk menjaga kumpulan nilai yang valid tidak bias.



Integrasi berkelanjutan



Untuk memungkinkan iterasi dan peningkatan yang cepat, penting untuk selalu mengukur kinerja sistem secara real time. Kami dapat mengukur setiap peningkatan dalam klasifikasi dibandingkan dengan sistem saat ini, sehingga secara taktis kami dapat menargetkan data untuk peningkatan lebih lanjut. Di sini kita melihat bagaimana sistem melengkapi loop umpan balik yang disediakan dengan data yang valid.



Saat sistem penjadwalan menemukan aset yang diberi tag dari sumber tepercaya, kami menjadwalkan dua tugas. Yang pertama menggunakan pemindai produksi kami dan dengan demikian kemampuan produksi kami. Tugas kedua menggunakan pemindai build terbaru dengan fitur terbaru. Setiap tugas menulis outputnya ke tabelnya sendiri, menandai versi bersama dengan hasil klasifikasinya.



Begitulah cara kami membandingkan hasil klasifikasi kandidat rilis dan model produksi secara real time.



Sementara set data membandingkan fitur RC dan PROD, banyak variasi mesin klasifikasi ML dari layanan prediksi yang dicatat. Model machine learning terbaru yang dibuat, model terkini dalam produksi, dan model eksperimental apa pun. Pendekatan yang sama memungkinkan kita untuk "memotong" versi model yang berbeda (bukan pengklasifikasi aturan) dan membandingkan metrik secara real time. Sangat mudah untuk mengetahui kapan eksperimen ML siap untuk diproduksi.



Setiap malam, RC yang dihitung untuk hari itu dikirim ke pipeline pelatihan ML, tempat model dilatih menggunakan RC terbaru dan mengevaluasi performanya terhadap kumpulan data yang valid.



Setiap pagi model menyelesaikan pelatihan dan secara otomatis dipublikasikan sebagai eksperimental. Ini secara otomatis disertakan dalam daftar percobaan.



Beberapa hasil



Lebih dari 100 jenis data yang berbeda ditandai dengan presisi tinggi. Jenis yang terstruktur dengan baik, seperti email dan nomor telepon, diklasifikasikan dengan skor f2 di atas 0,95. Tipe data longgar seperti konten dan nama kustom juga berkinerja sangat baik, dengan skor F2 lebih dari 0,85.



Sejumlah besar kolom terpisah dari data persisten dan volatil diklasifikasikan setiap hari di semua penyimpanan. Lebih dari 500 terabyte dipindai setiap hari di lebih dari 10 penyimpanan data. Sebagian besar repositori ini memiliki cakupan lebih dari 98%.



Klasifikasi menjadi sangat efisien dari waktu ke waktu karena tugas klasifikasi dalam aliran offline persisten membutuhkan waktu rata-rata 35 detik dari pemindaian aset hingga menghitung prediksi untuk setiap kolom.





Angka: 2. Diagram yang menggambarkan aliran integrasi yang berkelanjutan untuk memahami bagaimana objek RC dihasilkan dan dikirim ke model.





Gambar 3. Diagram tingkat tinggi dari komponen pembelajaran mesin.



Komponen sistem pembelajaran mesin



Di bagian sebelumnya, kita mendalami arsitektur keseluruhan sistem, menyoroti skala, pengoptimalan, dan aliran data offline dan online. Pada bagian ini, kita akan melihat layanan perkiraan dan mendeskripsikan sistem pembelajaran mesin yang mendukung layanan perkiraan.



Dengan lebih dari 100 tipe data dan beberapa konten tidak terstruktur seperti data pos dan konten yang dibuat pengguna, menggunakan heuristik manual murni menghasilkan akurasi klasifikasi subparametrik, terutama untuk data tidak terstruktur. Karena alasan ini, kami juga mengembangkan sistem pembelajaran mesin untuk menangani kerumitan data yang tidak terstruktur. Penggunaan pembelajaran mesin memungkinkan Anda untuk mulai beralih dari heuristik manual dan bekerja dengan fitur dan sinyal data tambahan (misalnya, nama kolom, asal data) untuk meningkatkan akurasi.



Model yang diimplementasikan mempelajari representasi vektor [3] pada objek padat dan jarang secara terpisah. Mereka kemudian bergabung untuk membentuk vektor yang melewati serangkaian langkah normalisasi batch [4] dan non-linearitas untuk menghasilkan hasil akhir. Hasil akhirnya adalah angka floating point antara [0-1] untuk setiap label, yang menunjukkan kemungkinan bahwa contoh tersebut adalah jenis sensitivitas yang diberikan. Menggunakan PyTorch untuk model memungkinkan kami bergerak lebih cepat, memungkinkan pengembang di luar tim untuk membuat dan menguji perubahan dengan cepat.



Saat mendesain arsitektur, penting untuk memodelkan objek renggang (misalnya, teks) dan padat (misalnya, numerik) secara terpisah karena perbedaan internalnya. Arsitektur akhir juga penting untuk melakukan penyapuan parameter guna menemukan nilai optimal untuk kecepatan pembelajaran, ukuran paket, dan hyperparameter lainnya. Pemilihan pengoptimal juga merupakan hyperparameter penting. Kami menemukan bahwa pengoptimal Adam yang populer sering kali menyebabkan overfitting, sedangkan model SGDlebih stabil. Ada nuansa tambahan yang harus kami sertakan langsung ke dalam model. Misalnya, aturan statis yang memastikan bahwa model membuat prediksi deterministik saat fitur memiliki nilai tertentu. Aturan statis ini ditentukan oleh klien kami. Kami menemukan bahwa memasukkan mereka secara langsung ke dalam model menghasilkan arsitektur yang lebih mandiri dan kuat, dibandingkan dengan menerapkan langkah pasca-pemrosesan untuk menangani kasus edge khusus ini. Perhatikan juga bahwa aturan ini dinonaktifkan selama pelatihan agar tidak mengganggu proses pelatihan penurunan gradien.



Masalah



Mengumpulkan data yang berkualitas tinggi dan andal adalah salah satu tantangannya. Model membutuhkan validitas untuk setiap kelas agar dapat mempelajari asosiasi antara objek dan label. Pada bagian sebelumnya, kita membahas metode pengumpulan data untuk mengukur sistem dan model pelatihan. Analisis telah menunjukkan bahwa kelas data seperti kartu kredit dan nomor rekening bank tidak terlalu umum dalam penyimpanan kami. Hal ini mempersulit pengumpulan data yang andal dalam jumlah besar untuk model pelatihan. Untuk mengatasi masalah ini, kami telah mengembangkan proses untuk mendapatkan data valid sintetis untuk kelas ini. Kami menghasilkan data tersebut untuk jenis sensitif, termasuk SSN , nomor kartu kredit , dan IBAN-nomor yang tidak dapat diprediksi model sebelumnya. Pendekatan ini memungkinkan jenis data sensitif untuk ditangani tanpa risiko privasi yang terkait dengan menyembunyikan data sensitif yang sebenarnya.



Selain masalah validitas data, ada masalah arsitektur terbuka yang sedang kami tangani, seperti mengisolasi perubahan dan menghentikan lebih awal.... Isolasi perubahan penting agar ketika berbagai perubahan dilakukan ke berbagai bagian jaringan, dampaknya diisolasi dari kelas tertentu dan tidak berdampak luas pada kinerja perkiraan secara keseluruhan. Meningkatkan kriteria penghentian awal juga penting agar kita dapat menghentikan pelatihan pada titik yang stabil untuk semua kelas, dan bukan pada titik di mana beberapa kelas dilatih ulang dan yang lainnya tidak.



Tandatangani pentingnya



Saat fitur baru diperkenalkan ke model, kami ingin mengetahui dampak keseluruhannya pada model. Kami juga ingin memastikan prediksi dapat diinterpretasikan oleh manusia sehingga kami dapat memahami dengan tepat fitur mana yang digunakan untuk setiap jenis data. Untuk ini, kami telah mengembangkan dan memperkenalkan kelas demi kelaspentingnya fitur untuk model PyTorch. Perhatikan bahwa ini berbeda dari kepentingan umum suatu sifat, yang biasanya dipertahankan karena tidak memberi tahu kita sifat mana yang penting untuk kelas tertentu. Kami mengukur kepentingan suatu objek dengan menghitung peningkatan kesalahan perkiraan setelah mengatur ulang objek. Sebuah fitur menjadi "penting" ketika permutasi nilai meningkatkan kesalahan model, karena dalam hal ini model mengandalkan fitur tersebut dalam peramalan. Sebuah fitur menjadi "tidak penting" ketika pengocokan nilainya membuat kesalahan model tidak berubah, karena dalam kasus ini model mengabaikannya [5].



Pentingnya fitur untuk setiap kelas memungkinkan kita membuat model dapat ditafsirkan sehingga kita dapat melihat apa yang diperhatikan model saat memprediksi label. Misalnya, ketika kita menganalisis ADDR, lalu kami memastikan bahwa sifat terkait alamat seperti AddressLinesCount mendapat peringkat tinggi dalam tabel kepentingan sifat untuk setiap kelas, sehingga intuisi manusia kami cocok dengan apa yang telah dipelajari model.



Penilaian



Penting untuk menentukan metrik umum untuk sukses. Kami memilih F2 - keseimbangan antara recall dan akurasi (bias recall sedikit lebih besar). Umpan balik lebih penting dalam kasus penggunaan privasi daripada akurasi, karena sangat penting bagi tim untuk tidak membocorkan data sensitif apa pun (sambil memastikan keakuratan yang wajar). Perkiraan aktual performa F2 model kami berada di luar cakupan artikel ini. Namun, dengan penyetelan yang cermat, kami dapat mencapai skor F2 yang tinggi (0,9+) untuk kelas sensitif yang paling penting.



Pekerjaan yang berhubungan



Terdapat banyak algoritma untuk klasifikasi otomatis dokumen tidak terstruktur menggunakan berbagai metode seperti pencocokan pola, pencarian kesamaan dokumen, dan berbagai metode pembelajaran mesin (Bayesian, pohon keputusan, k-tetangga terdekat, dan banyak lainnya) [6]. Semua ini dapat digunakan sebagai bagian dari klasifikasi. Namun, masalahnya adalah skalabilitas. Pendekatan klasifikasi dalam artikel ini bias terhadap fleksibilitas dan kinerja. Hal ini memungkinkan kami mendukung kelas baru di masa mendatang dan menjaga latensi tetap rendah.



Ada juga banyak pekerjaan sidik jari data. Misalnya, penulis dalam [7] menjelaskan solusi yang berfokus pada masalah menangkap kebocoran data rahasia. Asumsi utamanya adalah bahwa sidik jari data mungkin cocok dengan sekumpulan data sensitif yang diketahui. Para penulis di [8] menjelaskan masalah kebocoran privasi yang serupa, tetapi solusi mereka didasarkan pada arsitektur Android tertentu dan diklasifikasikan hanya jika tindakan pengguna mengakibatkan pengiriman informasi pribadi atau saat data pengguna bocor di aplikasi yang mendasarinya. Situasi di sini sedikit berbeda, karena data pengguna juga bisa sangat tidak terstruktur. Oleh karena itu, diperlukan teknik yang lebih canggih dari pada mengambil cetakan.



Terakhir, untuk mengatasi kekurangan data untuk beberapa jenis data sensitif, kami memperkenalkan data sintetis. Ada banyak literatur tentang augmentasi data, misalnya, penulis dalam [9] menyelidiki peran injeksi kebisingan selama pembelajaran dan mengamati hasil positif dalam pembelajaran yang diawasi. Pendekatan kami terhadap privasi berbeda karena memasukkan data yang berisik dapat menjadi kontraproduktif, dan sebaliknya kami berfokus pada data sintetis berkualitas tinggi.



Kesimpulan



Pada artikel ini, kami telah menyajikan sebuah sistem yang dapat mengklasifikasikan suatu data. Ini memungkinkan kami membuat sistem untuk memastikan kepatuhan dengan kebijakan privasi dan keamanan. Kami telah menunjukkan bahwa infrastruktur yang dapat diskalakan, integrasi berkelanjutan, pembelajaran mesin, dan data dengan ketepatan data berkualitas tinggi adalah kunci keberhasilan banyak inisiatif privasi kami.



Ada banyak area untuk pekerjaan masa depan. Ini dapat mencakup memberikan dukungan untuk data (file) non-skematik, mengklasifikasikan tidak hanya tipe data, tetapi juga tingkat sensitivitas, dan menggunakan pembelajaran yang diawasi sendiri secara langsung selama pelatihan dengan menghasilkan contoh sintetis yang akurat. Yang, pada gilirannya, akan membantu model tersebut mengurangi kerugian dalam jumlah terbesar. Pekerjaan di masa mendatang juga dapat berfokus pada alur kerja investigasi, di mana kami melampaui deteksi dan menyediakan analisis akar penyebab untuk berbagai pelanggaran privasi. Ini akan membantu dalam kasus-kasus seperti analisis sensitivitas (yaitu apakah sensitivitas privasi tipe data tinggi (misalnya, IP pengguna) atau rendah (misalnya, IP internal Facebook)).



Bibliografi
  1. David Ben-David, Tamar Domany, and Abigail Tarem. Enterprise data classification using semantic web technolo- gies. In Peter F.Ï Patel-Schneider, Yue Pan, Pascal Hitzler, Peter Mika, Lei Zhang, Jeff Z. Pan, Ian Horrocks, and Birte Glimm, editors, The Semantic Web – ISWC 2010, pages 66–81, Berlin, Heidelberg, 2010. Springer Berlin Heidelberg.
  2. Subramanian Muralidhar, Wyatt Lloyd, Sabyasachi Roy, Cory Hill, Ernest Lin, Weiwen Liu, Satadru Pan, Shiva Shankar, Viswanath Sivakumar, Linpeng Tang, and Sanjeev Kumar. f4: Facebook’s warm BLOB storage system. In 11th USENIX Symposium on Operating Systems Design and Implementation (OSDI 14), pages 383–398, Broomfield, CO, October 2014. USENIX Association.
  3. Tomas Mikolov, Ilya Sutskever, Kai Chen, Greg S Corrado, and Jeff Dean. Distributed representations of words and phrases and their compositionality. In C. J. C. Burges, L. Bottou, M. Welling, Z. Ghahramani, and K. Q. Weinberger, editors, Advances in Neural Information Processing Systems 26, pages 3111–3119. Curran Associates, Inc., 2013.
  4. Sergey Ioffe and Christian Szegedy. Batch normalization: Accelerating deep network training by reducing internal covariate shift. In Francis Bach and David Blei, editors, Proceedings of the 32nd International Conference on Machine Learning, volume 37 of Proceedings of Machine Learning Research, pages 448–456, Lille, France, 07–09 Jul 2015. PMLR.
  5. Leo Breiman. Random forests. Mach. Learn., 45(1):5–32, October 2001.
  6. Thair Nu Phyu. Survey of classification techniques in data mining.
  7. X. Shu, D. Yao, and E. Bertino. Privacy-preserving detection of sensitive data exposure. IEEE Transactions on Information Forensics and Security, 10(5):1092–1103, 2015.
  8. Zhemin Yang, Min Yang, Yuan Zhang, Guofei Gu, Peng Ning, and Xiaoyang Wang. Appintent: Analyzing sensitive data transmission in android for privacy leakage detection. pages 1043–1054, 11 2013.
  9. Qizhe Xie, Zihang Dai, Eduard H. Hovy, Minh-Thang Luong, and Quoc V. Le. Unsupervised data augmentation.


gambar


, Level Up , - SkillFactory:





E







All Articles