RSSearch (RNA Similarity Search) is a deep learning method for efficient and accurate RNA remote homology detection.
git clone https://github.com/Bruce-ywj/ERNIE-RNA.git
cd ./ERNIE-RNA
conda env create -f environment.yml
conda activate ERNIE-RNA
Processing in ERNIE-RNA environment. python extract_embedding.py --seqs_path='./data/test_seqs.txt' --device='cuda:0'
We can obtain RNA embeddings processed with ERNIE-RNA. cd RSSearch
conda env create -f environment.yml
conda activate RSSearch
Processing in RSSearch environment. python /RSSearch/code/predict.py \
--model_path="/RSSearch/model/model.pth" \
--test_csv="/RSSearch/example/example_testing_data.csv" \
--npy_path="/RSSearch/example/embeddings/representations/" \
--output_csv="/RSSearch/example/results/example_similarity.csv"
We can obtain RNA similarity through the RSSearch model.DB_clu_rep.fasta), preprocess all RNA sequences using ERNIE-RNA tools and save the generated RNA embeddings to the specified directory /RSSearch/Database_construction_and_search/RNAcentral_search/embeddings/.
cd RSSearch/code
python search_in_RNAcentral_database.py --mode build \
--model_path="/RSSearch/model/model.pth" \
--input_dir="/RSSearch/embeddings/representations/" \
--index_output="/RSSearch/Database_construction_and_search/RNAcentral_search/faiss_index.fa" \
--hdf5_output="/RSSearch/Database_construction_and_search/RNAcentral_search/rna_vectors.h5" \
--query_file="/RSSearch/Database_construction_and_search/RNAcentral_search/queries" \
--results_dir="/RSSearch/Database_construction_and_search/RNAcentral_search/results
Description of key parameters:--mode build: Set to build mode.--model_path: The trained RSSearch model path.--input_dir: RNA embeddings input directory.--index_output: FAISS index output file. --hdf5_output: RNA vector data file. python search_in_RNAcentral_database.py --mode query \
[Other parameters remain unchanged]
Mode switching instructions:
--mode build--mode query/RSSearch/Database_construction_and_search/RNAcentral_search/results/query_results.txt.--mode).