Skip to main content
zenodoopen

This repository serves as a replication package for the research paper titled "Typestate-based Fault Localization of API Usage Violations in a Deep Learning Program"

<h2>Overview</h2> <p>This repository serves as a replication package for the research paper titled "An Approach to Detecting Usage Protocol Violations in Deep Learning Programs."</p> <h2>Benchmarks</h2> <p>Two benchmarks were utilized in the research:</p> <ol> <li> <p>Benchmark1 from NeuraLint:</p> <ul> <li>Location:&nbsp;<code>NLBench/SOSamples</code></li> </ul> </li> <li> <p>Benchmark2 from Humbatova et al.:</p> <ul> <li>Location:&nbsp;<code>HumbatovaBench/SOSamples</code></li> </ul> </li> </ol> <h2>Reproducing Results</h2> <p>To replicate the results presented in the paper, follow these steps:</p> <ol> <li>Download the NeuralStateAnalysis Zip file.</li> <li>Extract the file and navigate to the NeuralStateAnlaysis directory.</li> <li>(Optional) Install the necessary requirements by executing&nbsp;<code>pip install requirements.txt</code>. Note: The requirements.txt file is already available in this repository.</li> </ol> <h3>Running NeuralState on <code>NLBench</code>:</h3> <ol> <li>Navigate to the <code>NLBench</code><code>/SOSamples</code>&nbsp;directory.</li> <li>Open any of the programs you wish to execute.</li> <li>Set the path to the NeuralStateAnalysis directory:&nbsp;<code>Path-to-folder/NeuralStateAnalysis/</code></li> <li>Run the program using the command&nbsp;<code>python program_id</code>. Since the 'NeuralStateAnalysis(model).debug()' call is already present in all programs, you will be able to reproduce the results.</li> </ol> <h3>Running NeuralState on <code>HumbatovaBench</code>:</h3> <ol> <li>Navigate to the <code>HumbatovaBench</code><code>/SOSamples</code>&nbsp;directory.</li> <li>Open any of the programs you wish to execute.</li> <li>Set the path to the NeuralStateAnalysis directory:&nbsp;<code>Path-to-folder/NeuralStateAnalysis/</code></li> <li>Run the program using the command&nbsp;<code>python program_id</code>. Since the 'NeuralStateAnalysis(model).debug()' call is already present in all programs, you will be able to reproduce the results.</li> </ol>

ShareScore

32/100

Overall dataset sharing score

Score breakdown

These five areas show where the dataset supports — or may limit — practical reuse.

Stewardship
4
Harmonization
4
Access
16
Reuse readiness
8
Engagement
0

ScienceDex for faculty

Your academic CV and NIH biosketch

Make your CV in your school's format and your NIH biosketch from it, then download both as Word files.