DREDge differences (parameters, online mode, math)
Maintainer thường phản hồi trong vòng 2 ngày
Chưa có ai nhận issue này.
Đánh giá
- Độ khó
- 3/5
- Thời gian dự kiến
- Nửa ngày
- Mức phù hợp với người mới
- 65/100
- Loại issue
- Lỗi
- Độ rõ ràng
- Khá rõ ràng
- Mức độ hoạt động
- Sôi nổi
- Công nghệ
- python
- Lĩnh vực
- machine-learning
Hướng nghiên cứu
Compare the online DREDge implementation with the cwindolf/dredge repository to identify parameter mismatches (win_scale_um, win_step_um) and missing raster transforms (np.log1p). Fix the time_horizon bug in cross-chunk matrix extraction and add missing weights to the AP version's cross-correlation computation. Run the online algorithm tests to verify changes.
Do mô hình lập chỉ mục viết ra từ nội dung của issue.
Mô tả
Hi all,
After @chrishalcrow and @alejoe91 released the DREDge online mode in SpikeInterface, I was quite excited to integrate it into dartsort, so I started looking into it more. I realized that there were a couple of details that I had not thought of when we discussed the implementation. Separately, I have been meaning to look into possible parameter mismatches between https://github.com/cwindolf/dredge and here for a while. I thought I'd gather up the findings here and break them into pieces so that we can discuss which ones you'd be happy to have changed, then I can open PRs to do so. Apologies for not thinking of these before / having bugs!
Online algorithm issues
There are two main differences between the implementation here and what I just wrote up in the dredge repo:
- Weights. The AP version of dredge does some weighting of each bin when computing cross correlations, but this isn't done in the LFP version. I think it's important to include this, and I'm happy to add it here.
- Cross-chunk time_horizon bug. I wasn't using time_horizon_s much in the LFP code, so I never noticed that it is applied incorrectly in the online algorithm. Right now, it exctracts a "main diagonal band" from the cross-chunk matrices, rather than grabbing elements on the bottom of the lower triangle / top of upper triangle as it should. The main diagonals are used within the same chunk, but the time horizon works differently in the cross-chunk terms!
There was also a math issue in my dredge code, a tiny thing involving one term missed in the prior/regularizer across the online algorithm's chunks. If I'm adding the above stuff, I think it would be cool to fix this smaller thing as well.
Parameters and raster processing
Compared to the dredge repo (D), here (SI) we have:
win_scale_um: D 300 (dredge parametrizes it as 600/2), SI does seem to have the same default, but across several files default values of 150, 400, and 300 all appear.win_step_um: D has 400, in SI values of both 400 and 200 appear. I think 200 is the actually used value, which is a lot of windows!- Raster transform: in D, the raster has a
np.log1papplied, which is not done in SI. I remember this being important in my initial development, but I don't have evidence at the moment.
There are also some other differences which seem minor.
So, what would be the best moves that I could make for you guys? I think that the online algorithm stuff is important to fix before this gets much usage. For the AP stuff, I'd like to at least go to step 400 if that's acceptable. I feel a bit afraid to add the log1p, but I do think it is a good thing to have.
- Ngôn ngữ chính
- Python
- Star
- 858
- Fork
- 281
- Merge trung bình
- 2 ngày 18 giờ
- Pull request đã merge (30 ngày)
- 38
Chuẩn bị môi trường
Dự án này không cung cấp dev container, Dockerfile hay hướng dẫn đóng góp, nên bạn cần tự thiết lập môi trường: hãy bắt đầu từ README và xem hướng dẫn đóng góp lần đầu của chúng tôi để biết các bước chung.
Bắt đầu từ đâu
- Đọc hết issue, rồi đọc hướng dẫn đóng góp của dự án.
- Bình luận trên issue rằng bạn sẽ nhận — tránh hai người làm cùng một việc.
- Fork repository và làm thay đổi trên một nhánh.
- Mở pull request có tham chiếu số hiệu của issue.
Issue khác của SpikeInterface/spikeinterface
-
testing
Độ khó 2/5 1-3 giờ Mức phù hợp với người mới 68/100
SpikeInterface/spikeinterface#4756 ·
Maintainer thường phản hồi trong vòng 2 ngày
-
enhancement
Độ khó 2/5 1-3 giờ Mức phù hợp với người mới 72/100
SpikeInterface/spikeinterface#4510 · 2 bình luận ·
Maintainer thường phản hồi trong vòng 2 ngày
-
Độ khó 3/5 1-2 ngày Mức phù hợp với người mới 57/100
SpikeInterface/spikeinterface#4835 ·
Maintainer thường phản hồi trong vòng 2 ngày
-
Extend `TimeSeriesExecutor` to `num_chunks_per_job`Có thể đã có người làm @samuelgarcia đã nhận hôm nay. Đang mởconcurrency
SpikeInterface/spikeinterface#4831 · 1 bình luận · 1 người được giao ·
Maintainer thường phản hồi trong vòng 2 ngày
-
Độ khó 4/5 3-5 ngày Mức phù hợp với người mới 45/100
SpikeInterface/spikeinterface#4826 · 15 bình luận ·
Maintainer thường phản hồi trong vòng 2 ngày
Tất cả issue của SpikeInterface/spikeinterface
Issue tương tự
-
defect from-review v0.9.2
Độ khó 2/5 1-3 giờ Mức phù hợp với người mới 86/100
khuisman/mcp-gee-sweet#926 ·
Maintainer thường phản hồi trong vòng 1 ngày
-
Độ khó 2/5 Dưới một giờ Mức phù hợp với người mới 84/100
EtanHey/brainlayer#1164 ·
Maintainer thường phản hồi trong vòng 1 ngày
-
bug security
Độ khó 1/5 Dưới một giờ Mức phù hợp với người mới 88/100
yunaremaia/vibeguard#141 ·
Maintainer thường phản hồi trong vòng 1 ngày
-
Độ khó 2/5 1-3 giờ Mức phù hợp với người mới 76/100
PrismorSec/prismor#599 ·
Maintainer thường phản hồi trong vòng 1 ngày
-
Độ khó 2/5 1-3 giờ Mức phù hợp với người mới 72/100
iii-hq/iii#2278 · 1 bình luận ·
Maintainer thường phản hồi trong vòng 1 ngày