# affinity — Data

来源：https://www.kaggle.com/competitions/affinity/data

本地 Meta Kaggle 快照；不是本次实时页面。

# Dataset Description

<h3>Overview</h3>
<p>In a common for crystallographers form, protein structures are stored as lists of atom names and atom coordinates, you can read more about PDB format <a href="http://www.wwpdb.org/documentation/file-format-content/format33/sect9.html#ATOM">here</a>. The input to the network is, typically, a 3D matrix for which empty space (cubic angstrom) is marked as 0, and every atom is marked with a certain number N. Since every cube has a few orders of magnitude more zeros than numbers, especially, if the size of the cell is small, it’s more efficient to read the images as sparse tensors and perform conversion on GPU.</p>
<p><br />Luckily, all of the structures ever crystallized are stored in a single place called <a href="http://www.rcsb.org/pdb/home/home.do">Protein Data Bank</a>. We provide a hand-cleaned dataset created from a whole PDB in which proteins and ligands are split and stored in different folders.</p>
<p><br />Since Protein Data Bank contains only structures observed in reality, fake structures have to be generated separately. In our task we <a href="https://en.wikipedia.org/wiki/Docking_(molecular)">dock</a> the ligands back to their targets and select best (lowest in terms of negative binding energy) structures in which position of the ligand is incorrect enough to consider the ligand as a negative example.</p>
<p><strong>There are two datasets available for this task:</strong></p>
<p><br /><strong>Primary dataset</strong> (6589 Positive examples, 292075 Negative Examples).</p>
<p><br />Contains all of the existing in the PDB drug-protein complexes from <a href="http://www.rcsb.org/">Protein Data Bank</a> (Oct 2016) with 10 or more atoms for which there exists a record in <a href="https://www.bindingdb.org/">bindingDB</a>. There are up to 50 decoys for each of the positive examples.<br />Decoys have been generated with <a href="https://github.com/mwojcikowski/smina">AutoDock Smina</a> by docking ligands back to their targets and selecting ones with most negative binding energy and RMSD &gt; 6A. Only the ligands that have 10 or more atoms have been considered in this dataset.<br />We have extracted 10% of the primary dataset and masked protein protein and ligand names to use it as evaluation set for Kaggle.</p>
<p><br /><strong>Auxiliary dataset</strong> (43 775 positive examples 1 844 074 negative examples)<br />Contains the same data as primary dataset, except absence in BindingDB is not considered for exclusion. While this dataset is much bigger, it has some positives labeled incorrectly. This appears because small molecular weight compounds can be added to protein to increase the quality of the crystal.</p>
<h3>File descriptions</h3>
<ul>
<li><strong>labeled_pdb.zip</strong> - the training set in pdb format</li>
<li><strong>labeled_npy.zip </strong>- the training set in npy format (in this case every structure is saved as numpy array with 4 columns of float32. First column is a hash for atom type. Three following columns are the atom coordinate.</li>
<li><strong>unlabeled_pdb.zip</strong> - set with hidden labels for submission</li>
<li><strong>unlabeled_npy.zip </strong>- set with hidden labels in npy format</li>
</ul>