반응형

설명 19

Ranger optimizer

논문을 보다가 Ranger optimizer라는 것을 봤다. 여러 최적화 기법들을 봤는데 Ranger는 처음보는 것 같아 기록을 남겨본다. Ranger는 Radam + Lookahead 이다. Radam - Rectified Adam이라서 RAdam이다. - Adam : adaptive learning rate를 기반으로 하고, 상대적인 업데이트 양에 따라 step size를 조정해줌. -adaptive learning 의 경우 bad local optima convergence problem에 빠질 수 있다. 학습 초기에 샘플이 부족할 경우, learning rate의 분산이 커지고, 이에따라 최적이 아닌 local optima에 너무 일찍 도달하여 학습이 거의 일어나지 않는 현상이다. - 이를 해결하..

연구 2023.04.12

scaffold의 의미

scaffold : 화합물의 코어 구조를 의미 (functional group) Activity와의 관련성 : 1. target에 active한 구조 prototype확인하고, 타겟에 specific하게 active한 compound 만들기 (privileged substructures) 2. compound에서 구조적으로 다른 scaffold인데 같은 activity를 가지는지 확인하기 (scaffold hopping) scaffold를 정의하는 방법 : 1. compound 집합에서 MCS (maximum common substructure) 계산 2. MMP(matched molecular pairs) 계산 - compound의 single site에서 변화가 있을 때만 compound pair로 ..

연구 2022.10.29

Alphafold2 논문 리뷰4 [Evoformer - pair representation]

입력으로 MSA representation, Pair representation이 들어온다. pair representation의 값이 Row wise gated self attention with pair bias에 들어온다. 즉, 공간적 특징과 진화적 특징이 섞이게 된다. MSA representation을 거친후, outer product mean을 통해 진화정보를 공간적 정보로 넣어주게 된다. 그리고 pair representation 인코딩이 시작된다. -pair representation 설명 그리고 pair representation을 인코딩하는 5개의 블럭을 거친다. 이 다섯개의 블럭에 대해서 조금 더 자세히 설명해보겠다. pair representation은 아미노산사이의 공간적인 특징을..

연구 2022.10.25

Alphafold2 논문 리뷰3 [Evoformer - MSA representation]

입력으로 MSA representation, Pair representation이 들어온다. pair representation의 값이 Row wise gated self attention with pair bias에 들어온다. 즉, 공간적 특징과 진화적 특징이 섞이게 된다. 그리고 column wise gated self attention, transition layer를 거친다. 이 세개의 블럭 (Row wise ~, Column wise ~, Transition)은 MSA representation이다. self attention으로, 자기 자신에 대한 정보를 인코딩 한다. transition이 끝나면, outer product mean을 통해 진화정보를 공간적 정보로 넣어주게 된다. - MSA r..

연구 2022.10.25

Alphafold2 논문 리뷰2 [입력 부분]

모델 설명 알파폴드의 입력으로 단백질의 아미노산 시퀀스가 들어간다. - genetic database search를 통해서 MSA 를 구하고, MSA representation으로 나타낸다. - 아미노산에대해서 pairing을 하고, structure database search를 통해서 template을 넣는다. pair representation으로 나타낸다. 이 부분에 대해서 조금 자세히 보도록 하자. supplementary Figure 1이다. -맨 위에 보이는 extra msa feat은 옵션이다. 넣어줘도 되고 안넣어줘도 된다. -pair representation 만들기 : residue_index에 대해서 (r,r,cz) 차원으로 변환을 시켜준다. target feat에 여러 linear..

연구 2022.10.25

Alphafold2 논문 리뷰1 - 성능

알파폴드2 논문리뷰를 해보겠다! -단백질 3차구조를 아미노산 시퀀스만을 가지고 예측 -기존의 방법들은 homologous structure가 없을 때에는 원자수준의 정확도를 보여주지는 못했음 -이 논문에서는 유사한 구조가 알려져 있지 않은 시퀀스에 대해서도, 원자 수준의 정확도로 예측할 수 있는 computational method(Alphafold2)를 제안함 -CASP14에서 다른 method들보다 훨씬 좋은 성능을 보여줌 일단 성능에 대해서 보겠다! Fig 1. Fig 1 a는 알파폴드가 CASP14에 참여한 다른 그룹들보다 훨씬 예측을 잘한다는 것을 보여준다. 실제 단백질 알파카본과 예측된 단백질 알파카본 사이의 rmsd (root mean squared distance, 작을수록 좋음) medi..

연구 2022.10.25

mean field approximation 설명

mean field approximation (평균장 근사)는 상호작용하는 입자로 구성된 시스템에서 approximate partition function(근사 분배 함수) 를 계산하는데 사용한다. 모든 가능한 microstate(미시상태) 에 대한 에너지를 계산 할 때, partition function(분배함수)를 구하려면 brute force 알고리즘으로 풀기에는 시간이 너무 많이 소요되고, hamilton을 이용해서는 풀 수 없다. mean field theory에서 external field로 적절하게 선택함으로서 N-body system을 1-body system으로 대체할 수 있다. 이 external field는 남아있는 입자로 인해서 average field와 동일하게 설정된다. --> ..

연구 2022.09.18

nodejs excel file to json

nodejs에서 excelfile을 읽어와서 json으로 만들어주는 간편한 library가 있다. convert-excel-to-json이다. 설치를 위해서는 아래와 같이 입력한다. npm install convert-excel-to-json 코드 : const excelData = excelToJson({ sourceFile: filepath, sheets: [{ name: 'sheet_name', header: { rows: 1 }, columnToKey: { A: 'key', B: 'name', C: 'road', D: 'staff', } }] }); dataModel.insertMany(excelData.sheet_name, (err, data) => { if (err) { console.log(..

flutter 2022.09.05

A value of type 'Future<dynamic>' can't be returned from the method '' because it has a return type of 'Widget'

위젯에서 showDialog를 리턴해주니 다음과 같은 에러가 나왔다. A value of type 'Future' can't be returned from the method 'AddFriendDialog' because it has a return type of 'Widget' 인터넷에 검색해보니, showDialog가 async 함수이기 때문에 나는 에러라고 한다. (dialog가 닫힐때까지 - 결과가 나올때까지 기다린다는 뜻) 그래서 showDialog의 closing bracket에 .then을 붙여주면 된다. (.then의 의미 : 값을 받을때 ) Future AddFriendDialog(context) async { return showDialog( context: context, builde..

flutter 2022.07.28

mongoose populate

지난 포스팅에서 subdocument를 만들었다. user가 triplist를 가지고있고, triplist안에는 trip을 subdocument로 가지고 있다. 이때, trip 내용을 가져오고 싶을 때 사용하는 것이 populate 이다. router.get("/trips/:userid", (req, res) => { userModel.find({ _id: req.params.userid }, (err, user) => { user[0].populate({ path: 'triplist', populate: { path: 'trip' } }).then(trip => { res.json(trip); }); }); }) 코드 설명을 하자면, 서버에서 userid를 받았다. 그리고 userModel DB에서 u..

flutter 2022.07.22
반응형