Incompatible cell positions and morphological extents

As discussed in many-a PR, cell positions and orientations need to be formalised.
A related and more pressing matter is that the in-plane distances between pyramidal cells (10 x 10 grid with 1 um spacing) are inconsistent with the physical extents of the sections:
        'L5Pyr_soma_diam': 28.9,
        'L5Pyr_apicaltrunk_diam': 10.2,
        'L5Pyr_apical1_diam': 7.48,   #etc

The packing density of cells in cortex is insane, but real cells don't intersect, as ours do ;)
I don't know of a principled way to deal with this, since our "cells" aren't really cells, but models of (multiple) cells. But let's say we defined the cell-to-cell lateral distance in HNN to be 30 um. The somas would be 1 um apart, which is quite realistic, and the cortical "column" we model would be 300 um a side. This is still tiny in MEG-terms, but not totally outrageous.
The lamtha-parameter would have to be recast with a new physical identity, but in terms of implementation it would just amount to a scaling (from units of 1 um to 30 um).
I don't think our simulated LFP-values will be physically meaningful until this matter has been resolved (even though qualitatively they might be reasonable). Certainly not for shanks inside the cortical column.
@stephanie-r-jones @jasmainak @ntolley @rythorpe

I think this might be a good opportunity to revisit the Bush and Sejnowski paper from which the HNN model neurons are inspired

Clarification: The cells in the model are in fact meant to represent single cell activity, not multiple cells,  and were tuned to single neuron firing properties. The morphology came from bush and Sejnowski paper who developed a principled way to collapses neural models that were build with hundreds of compartments based on stained cells, to a reduced number of comportments. The goal in their reduction was to have a smaller number of compartments to work with, while maintaining the axial resistance within the cells. Importantly, Bush and Sejnowski only modeled single neurons not networks AND the neurons were purely passive without any active currents in the soma or dendrite. I added active conductances in the soma and dendrites based on literature and tuned the cells to produce "realistic" spiking patterns in an un-connected network, as shown in the  Jones et al J. Neurosci. 2007 paper. The network in the 2007 paper was simple a line of cells. In the 2009 Jones et al J. Neurophys paper, we expanded the network to a 10x10 grid of cells.

Wonderful, thanks for the historical note @stephanie-r-jones !
@cjayb the reason I reference the Sejnowski paper is because I noticed this:

that is to say, the incompitibility with cell-to-cell distance is due to this ...

Thanks for the detailed account @stephanie-r-jones ! I keep on stepping into this model cells-matter. Clearly our cells have identities as biophysical cells: they fire and have subthreshold dynamics! They mimic some aspects of more realistic models, but not all, and your work over the past 10+ years has been to show the links to MEG.
My concern here is mostly wrt LFP, where distances to active elements can be very short. I think increasing the distance might "help" in the sense that more sections would contribute to the field (not just the closest one), creating a more biologically realistic smoothness to the signal.

@jasmainak I'll be the first one admit a less-than-thorough reading of the paper :) As pointed out above though, the concern/objective there was a single cell, right?
But to your point, I guess?, the section diameters should perhaps not be taken to be physically meaningful (literal). (This is actually related to my earlier comment about these not "really" being cells, but I won't labor that point!) As it is now, however, section-to-section distances are 1 um, which in the LFP calculations is taken very literally indeed.

I'm also thinking what happens to the LFP signal of a single cell with the reduction process. As you noted before, the transmembrane currents have to be taken for each segment individually for the LFP calculation. If we do the PSA, then it probably doesn't matter as the reduced cell probably gives a sum of the transmembrane currents (to be verified though?) from individual dendrites. Not sure what happens with LSA. Might be worth thinking this through carefully

I think both PSA and LSA will be affected. The reduced number of sections means that the membrane currents are discretized very crudely, leading to large "errors" at close range. maybe slightly less for LSA, you're right.

Based on our discussion today, I propose we consider taking our somatic diameter literally, even though the dendritic equivalents are abstractions. This would mean placing our cells 30 um apart in a 300 x 300 um grid.
Wrt. LFPs, we should consider what distance limitations we would like to impose. Perhaps the most intuitive is to insist on electrodes staying "out" of our model cells, including the dendrites? So in fact using the dendritic diameters literally, too.
For reference, this is the paper I mentioned introducing 'Neuron_reduce' (find it right here on GH!). I agree that we don't want to be too general, but it's nice to see HNN-like cells outside of HNN :)
Amsalem, O. et al. An efficient analytical reduction of detailed nonlinear neuron models. Nat Commun 11, 288 (2020).

I dug up a few references and the most straightforward is Hari et al., 1997 which has the following figure:

which translates to ~10^5 neurons / mm^2. Depending on who you ask and what paper you refer to, this number can go up and down by an order of magnitude. Here are two more references, if you want to dig:
[1]R. A. Sweet, S. E. Bergen, Z. Sun, A. R. Sampson, J. N. Pierri, and D. A. Lewis, “Pyramidal cell size reduction in schizophrenia: evidence for involvement of auditory feedforward circuits,” Biological Psychiatry, vol. 55, no. 12, pp. 1128–1137, Jun. 2004, doi: 10.1016/j.biopsych.2004.03.002.
[2]B. Pakkenberg and H. J. G. Gundersen, “Neocortical neuron number in humans: Effect of sex and age,” Journal of Comparative Neurology, vol. 384, no. 2, pp. 312–320, 1997.
I was told [1] is more reliable since it's considering only Pyramidal neurons. But let's work with 10^5.
10^5 neurons -> 1000 um x 1000 um means we have,
10^5 * (3 / 10)^2 neurons -> 300 um x 300 um
that is 9000 neurons in that area. We have only 100. So, our cell-spacing is off by almost two orders? I guess the question is: are we comfortable scaling the LFP signal same way we scale the dipole signal?

I find this really hard to rationalise. However, recall that the 1mm^2 refers to surface area. The cells are arranged in depth, so the real question is: how many cells per unit volume? I guess taking the thickness to be on the order 10^3 um is about right.
The theoretical maximum packing density of spheres is about 0.74, which is biologically unrealistic/irrelevant. But that's approximately what would be needed to fit 1e5 cells (20 um diameter spheres) into a 1mm3 cylindrical volume. We could also consider hexagonal packing of circles in a plane that achieves a 0.91 area fraction.  According to my very rough calculation, using hexagonal packing I can fit 322 circles of 30 um diameter into a total area of 1mm2 (or 760 circles of 20 um diameter).
Again, I'm not sure these numbers are very useful... The actual packing is probably somewhere in between (neither volume- nor area-filling, but probably closer to the former). And there's the whole laminar distribution matter to consider. As for a scaling parameter, I don't think we should have one. The LFP is supposed to be "local", and our dendrites a thick (=lots of current=large potentials). A related topic is the number of cells that contribute to M/EEG due to various forms of cancellation and asynchrony: as low as 0.1-1% of the total. There's a few orders of magnitude right there :)

You're right this is a hard problem, but one that is probably worth thinking through :) Also right that the important question is how many cells per unit volume ... but if you assume that the cortex is 1 mm thick, then the numbers are roughly equal. But this also points to another important point: the packing is in 3 dimensions and you can stagger the neurons to fit more than the packing density allows, particularly since the apical dendrites are only around 1 um thick compared to the 20 um for the soma? (old trick we use in India to fit 8 people in a car of 4 :-P) I wonder what's the number of circles you can fit in your calculations if you use 1 um?
One practical thing we could try is to see what is the impact on the measured LFP if we change the spacing or add more neurons to our network. How does it scale etc. for the different kinds of simulations we have done (evoked, gamma). To understand how much we can generalize. I'm happy to help explore this as well!

I just thought of that staggering-idea on my walk! Didn't associate it with anything in India, but hey :) Actually our apical dendrites are on the order of 10 um at the base, but your basic argument is precisely what I came to as well: by staggering the soma by some small amount, we can pack  all 100 of them in a 100 x 100 um square (if we don't allow the apical trunks to overlap). This would not affect the dipole in any way, of course.
And ditto to your second point too: let's simulate what happens. I think it'll be important to low-pass filter the LFP traces, though. I think our LFP will only really be meaningful in the <200 Hz range. What about distance limitations? I'm inclined to say that unless the user explicitly says otherwise:
net.add_electrode_array(..., exact_position=True)

electrodes placed "inside" the network should be shifted to never come within, say, 1 um of a segment center point (extracellular current source). Issue a warning that the move has taken place, and proceed. WDYT?

I guess we need to be extra careful with the LFP implementation since it's going to be used for validating HNN models. I think it might be helpful to pick Matti's brain about this. I need to look more closely at the equations, I am not sure if the LFP voltage (across cells) adds up linearly as the dipole moment does. For a linear system:

with

applies. What happens when the spacing is changed and the voltages add up (non?)-linearly? This may not be such a concern if the LFP signal in the proximity of cells are similar (to be verified for the class of simulations we are performing in HNN) such that non-linear addition is also a scaling.

Actually our apical dendrites are on the order of 10 um at the base

That's true, but the dendrite is tuned to represent firing rates and somatic voltages of a neuron that has apical dendrites of 1 um. Thus, presumably you'd want to measure LFP of a neuron that is actually having dendrites of 1 um? This also comes down to the question of biological realism in the validation.

What about distance limitations?

Agree with you on this. And for our plots and repr, we can show the true positions used.

I'm pretty sure the system is linear. Neuron gives the net transmembrane current (resistive + capacitive), and we're not modelling "ephaptic" interactions.
If our large-calliper dendrites sport larger intracellular currents than the biological cells they are approximations of, the transmembrane currents (and hence LFPs) will be correspondingly larger. Since Bush & Sejnowski explicitly constrained the total Ri to be "biological", the current may indeed be the same. However, that current will disperse into the extracellular medium at orders of magnitude fewer locations compared with a cylinder of tissue (our segment junctions; the longest sections have 13). This means that the precise location of an electrode would have a huge impact on the detected voltage.
It could be interesting to take a, say, NetPyNe model (M1?) to compare with. The fine-grained cellular models there should lead to more smoothly-varying voltages.

that current will disperse into the extracellular medium at orders of magnitude fewer locations compared with a cylinder of tissue (our segment junctions; the longest sections have 13).

yes that is a consideration too! Would be interesting to compare against fine-grained cellular models but I wouldn't consider it a show-stopper.
But also, I was talking about this:

However, after thinking a bit more, even if it's not linear in r, you can indeed apply a scaling to the result if the cell-to-cell distance scales by a certain factor.

Yeah, it's linear in current. It's analogous to the lead field: for a fixed set of locations you can define a a linear system PHI=Lx. In cortically constrained MNE as well as our LFP calculations, the x are the source space locations. The lead field encapsulates all nonlinearities. So for a fixed set of electrode locations and segment centers, PHI is linear in the transmembrane currents. And yes: scaling the distances will amount to a scaling of L.
The LSA also goes as 1/R. I think there'll be differences when electrodes are inside the network, and the position is close to a segment boundary. Otherwise not.
As for filtering... The LFPy group belong to the camp of "cortex is a linear conductor with a flat impedance spectrum". They (and others) have shown that (realistic) dendritic trees lead to bandpass-properties of the LFP. Destexhe and colleagues, on the other hand, argue that cortex acts like an RC lowpass filter due to the capacitive properties of the manymanymany cells in tissue (this is the 3rd option in the Parasuram-paper). I don't think temporal filtering will make our LFPs "more realistic". Spatial smoothing might (to mitigate the coarse steps our dendrite segments have), but that's a very dodgy thing to start doing ;)
We should have a discussion about what we expect to see in the evoked-example. I think we might at first be a little disappointed, but it shouldn't really come as a great surprise. The 'dipole' is only interpretable at mm-scales and larger, and so, I think, might the LFP be too.

The 'dipole' is only interpretable at mm-scales and larger, and so, I think, might the LFP be too.

indeed, but that might defeat the purpose of LFP validation since you're only verifying Maxwell's equations at that point ... lots of things to think through! We should also find out what Blake has done so far.

I'm reopening this since I think #370 didn't completely remove the need to discuss it.


gnmi-1.10: add default num of queues for nokia

adds nokia support for qos counters test

This code is a Contribution to the OpenConfig Feature Profiles project ("Work") made under the Google Software Grant and Corporate Contributor License Agreement ("CLA") and governed by the Apache License 2.0. No other rights or licenses in or to any of Nokia’s intellectual property are granted for any other purpose. This code is provided on an "as is" basis without any warranties of any kind.

Pull Request Functional Test Report for #2336 / ec50ac44b1e0f951c880a8a0187fc1d46e59a45e
Virtual Devices

Device
Test
Test Documentation
Job
Raw Log

Arista cEOS

gNMI-1.10: Telemetry: Basic Check

Cisco 8000E

gNMI-1.10: Telemetry: Basic Check

Cisco XRd

gNMI-1.10: Telemetry: Basic Check

Juniper cPTX

gNMI-1.10: Telemetry: Basic Check

Juniper ncPTX

gNMI-1.10: Telemetry: Basic Check

Nokia SR Linux

gNMI-1.10: Telemetry: Basic Check

Openconfig Lemming

gNMI-1.10: Telemetry: Basic Check

Hardware Devices

Device
Test
Test Documentation
Raw Log

Arista 7808

gNMI-1.10: Telemetry: Basic Check

Cisco 8808

gNMI-1.10: Telemetry: Basic Check

Juniper PTX10008

gNMI-1.10: Telemetry: Basic Check

Nokia 7250 IXR-10e

gNMI-1.10: Telemetry: Basic Check

Help


Inherit from ndcube

WIP: let's just see what happens if we try this.

@cadair let's see if we can't get this working.

Tests are definitely not passing!!
Open question: ndcube uses __init__ instead of __new__.

Why?
Should we?
How do we refactor - just s/new/init/g ?


Support push notification switch

No, I got this strange error:
  File "/config/custom_components/reolink_dev/camera.py", line 213, in ReolinkCamera
    self, width: int | None = None, height: int | None = None
TypeError: unsupported operand type(s) for |: 'type' and 'NoneType'

And for the push switch, in my case the API does not support the getPush:
{
"cmd" : "GetPush",
"code" : 1,
"error" : {
"detail" : "send failed",
"rspCode" : -16
}


library issue : DataDrift,DataQuality

Hello community,
when I try to import libraries

from evidently.metric_preset import DataDrift, NumTargetDrift
from evidently.test_preset import DataQuality, DataStability

I am getting following error

cannot import name 'DataDrift' from 'evidently.metric_preset'
cannot import name 'DataQuality' from 'evidently.test_preset'

this was just example notebook from evidently.
Any suggestions are highly appreciated.
thanks,

Hi @IITGoaPyVidya! There was an update to the names of the presets last week, as we now have both Metric presets and Test presets. https://github.com/evidentlyai/evidently/releases/tag/v0.1.59.dev0
Here is the Getting Started tutorial (with updated API): https://github.com/evidentlyai/evidently/blob/main/examples/sample_notebooks/getting_started_tutorial.ipynb
Here are all test presets:
https://github.com/evidentlyai/evidently/blob/main/examples/sample_notebooks/evidently_test_presets.ipynb
Here are all metric presets
https://github.com/evidentlyai/evidently/blob/main/examples/sample_notebooks/evidently_metric_presets.ipynb
In your case, you need to import for Metric Presets:
from evidently.metric_preset import DataDriftPreset
from evidently.metric_preset import TargetDriftPreset
For Test Presets:
from evidently.test_preset import DataStabilityTestPreset
from evidently.test_preset import DataQualityTestPreset

We should have updated all the examples in the documentation but could have overlooked something. Could you point to the example notebook you refer to? We'll update it as well!

@elenasamuylova Thanks for timely response!
I renamed those import statements now its working fine. I was referring getting started tutorial. that colab notebook is yet to be updated as per new changes.
However this is all for structured data, I want to analyse drift for unstructured data, is there any guidebook on this?

Hi @IITGoaPyVidya, thanks - we will update that one soon.
Unfortunately, right now, Evidently only natively supports tabular data inputs. As a workaround, some users feed embeddings in the tools, but it is usually hard to interpret.

Do you have text or image data?

I have text data, I will be working around NLP

Thanks for clarifying! We plan to add support for the text data next, but right now, there is no dedicated implementation yet.

@IITGoaPyVidya, you can also have a look at this example notebook https://github.com/evidentlyai/evidently/pull/427 (work in progress, I believe) by @SangamSwadiK where he demonstrates exactly the idea of how you can feed text data in Evidently right now.


Support auto-reloading of TLS config in C++ implementation

@havardpe @bjorncs please review
By default reloads every 60 minutes. This also reloads all peer
authorization rules. Files referenced by the TLS config are reloaded
transitively.
If reloading fails a warning will be logged and the existing config
will continue to be in effect until the next reload time.

Will address comments in a follow-up


Store information about the target entity in LrRelationship

Add new method LrEntity<?> getTargetEntity() for LrRelationship and update the model's compilation stage accordingly. This new info should make the LR model more informative and useful, as well as help to fix #184

This is a very cool change.


OOM and CUDA Error's

Hi,
I am getting an OOM error on Colab (P-100 16 GB RAM) with the following:
cd DiffAugment-stylegan2
python run_few_shot.py --dataset=100-shot-obama --num-gpus=1

Traceback (most recent call last):
  File "/tensorflow-1.15.2/python3.6/tensorflow_core/python/client/session.py", line 1365, in _do_call
    return fn(*args)
  File "/tensorflow-1.15.2/python3.6/tensorflow_core/python/client/session.py", line 1350, in _run_fn
    target_list, run_metadata)
  File "/tensorflow-1.15.2/python3.6/tensorflow_core/python/client/session.py", line 1443, in _call_tf_sessionrun
    run_metadata)
tensorflow.python.framework.errors_impl.ResourceExhaustedError: 2 root error(s) found.
(0) Resource exhausted: OOM when allocating tensor with shape[32,128,256,256] and type float on /job:localhost/replica:0/task:0/device:GPU:0 by allocator GPU_0_bfc
	 [[{{node GPU0/loss/D_1/256x256/Conv0/FusedBiasAct}}]]
Hint: If you want to see a list of allocated tensors when OOM happens, add report_tensor_allocations_upon_oom to RunOptions for current allocation info.

	 [[TrainG/Apply0/cond_111/pred_id/_2541]]
Hint: If you want to see a list of allocated tensors when OOM happens, add report_tensor_allocations_upon_oom to RunOptions for current allocation info.

  (1) Resource exhausted: OOM when allocating tensor with shape[32,128,256,256] and type float on /job:localhost/replica:0/task:0/device:GPU:0 by allocator GPU_0_bfc
	 [[{{node GPU0/loss/D_1/256x256/Conv0/FusedBiasAct}}]]

So I tried it on 8xV-100's.
It gave an OOM error with my dataset at 1024 but the obama dataset reached till below and then gave another  error.
tick 0     kimg 0.1      lod 0.00  minibatch 32   time 49s          sec/tick 49.1    sec/kimg 383.77  maintenance 0.0    gpumem 6.3
Downloading http://d36zk2xti64re0.cloudfront.net/stylegan1/networks/metrics/inception_v3_features.pkl ... done
network-snapshot-000000        time 3m 09s       fid5k-train 396.6058
2020-07-02 13:34:00.935725: E tensorflow/stream_executor/cuda/cuda_event.cc:29] Error polling for event status: failed to query event: CUDA_ERROR_LAUNCH_FAILED: unspecified launch failure
2020-07-02 13:34:00.935780: F tensorflow/core/common_runtime/gpu/gpu_event_mgr.cc:273] Unexpected Event status: 1
Aborted (core dumped)

CUDA details:
nvcc: NVIDIA (R) Cuda compiler driver
Copyright (c) 2005-2018 NVIDIA Corporation
Built on Sat_Aug_25_21:08:01_CDT_2018
Cuda compilation tools, release 10.0, V10.0.130
What is the max resolution supported on 16 GB RAM? Sorry to mix two issues. I can open a separate issue for the CUDA error if needed.

run_few_shot probably needs 4 GPUs with at least 12 GB DRAM on each, or you may specify a smaller fmap-base to run with 1 GPU.

1024 resolution is supposed to work on 8x V100s. Did you specify --num-gpus=8? Maybe you want to check first whether your cudnn is configured properly or whether the original StyleGAN2 repo works.

Thank you for the reply. Yes, it did work on Colab with batch size 16 and resolution 256!
I will check on the V-100's.  Thanks again.

For anyone reading this later, you may want to edit this line so you aren’t tying GPU-num, GPU batch and minibatch sizes to each other.
https://github.com/dvschultz/data-efficient-gans/blob/master/DiffAugment-stylegan2/run_few_shot.py#L65

The performance can be mainly affected by the minibatch size (= GPU-num * GPU batch), regardless of the actual number of GPUs you are using. So this code intends to keep a constant minibatch size for reproducibility. As someone mentioned, you may get a different performance (sometimes better) if the minibatch size is changed. #4

@zsyzzsoft Comparing your code with vanilla stylegan2 I see a lot of diferences in your version. Are you sure that your paper results are reproducible only by changing loss.py to use the DiffAugment lib?
Your generator network for instance is using truncation none instead of 0.5 along several other changes

@zsyzzsoft Comparing your code with vanilla stylegan2 I see a lot of diferences in your version. Are you sure that your paper results are reproducible only by changing loss.py to use the DiffAugment lib?
Your generator network for instance is using truncation none instead of 0.5 along several other changes

StyleGAN2 uses truncation 0.5 only when generating images rather than calculating FID. The results are reproducible only by changing loss to our StyleGAN2 baseline but not the original StyleGAN2 that is ill-fitted to CIFAR.

@zsyzzsoft I'm sorry but I didn't understood what you meant.
What appendix, the article one? you mentioned only about decreasing gamma and changing the loss to use the diffAugment transformation. Should I do anything else in the original stylegan2 to replicate such results?
You could have used a fork instead, it would be more helpful to people find your repository and also track your change history.

@zsyzzsoft I'm sorry but I didn't understood what you meant.
What appendix, the article one? you mentioned only about decreasing gamma and changing the loss to use the diffAugment transformation. Should I do anything else in the original stylegan2 to replicate such results?
You could have used a fork instead, it would be more helpful to people find your repository and also track your change history.

So what else are you expecting, exactly? I do have explained why our usage of the truncation is the same as StyleGAN2.

There might be some miscommunication here. Let me try to clarify them here. Feel free to correct me.

For the truncation trick, truncation was only used in StyleGAN2 in some figures (e.g., Fig 12). It is not used in their FID calculation. We also don't use truncation in our FID calculation and figures.

There are multiple experiments that involve StyleGAN2 in the paper. Not sure which one you (@andersonfaaria)  want to replicate. For CIFAR 10 and 100 experiments,  as images are smaller, we modify the architectures and reduce the capacity. It is detailed in Appendix A.2. We also use different losses (which are commonly used in CIFAR experiments)

For few-shot generation experiments, we mostly follow StyleGAN2 losses and architectures and only make small adjustments. (e.g., gamma)

There might be some miscommunication here. Let me try to clarify them here. Feel free to correct me.

For the truncation trick, truncation was only used in StyleGAN2 in some figures (e.g., Fig 12). It is not used in their FID calculation. We also don't use truncation in our FID calculation and figures.
There are multiple experiments that involve StyleGAN2 in the paper. Not sure which one you (@andersonfaaria)  want to replicate. For CIFAR 10 and 100 experiments,  as images are smaller, we modify the architectures and reduce the capacity. It is detailed in Appendix A.2. We also use different losses (which are commonly used in CIFAR experiments)
For few-shot generation experiments, we mostly follow StyleGAN2 losses and architectures and only make small adjustments. (e.g., gamma)

Thank you so much, at first I thought you were only using bigGAN for CIFAR but it was my mistake while reading.
To put in simpler terms I'm actually trying to have a version of stylegan2 that works best for a problem I'm trying to tackle. I'll try to give more background because I'm really amazed by the results you managed to achieve with this version:

I have a very diverse dataset of ~10k pixel art in 32x32 format with pink background. They are basically several different items and creatures from open source databases that I crawled.
Due being so diverse, I've used a classificator to actually separate those in weapons, armor parts, creatures and miscellanous. Inside those separations we have what kind of weapon they are or what kind of armor part (helmet, armor, legs, boots, shields) and so on.

If we consider all weapons, I have around ~300 but if we consider one of kind I have a little less than 100 samples of each kind.
It seems at least to me that I would benefit more training each of them individually rather than considering all of once.
I've been training with stylegan2 for a few months now but even using 0.001 as learning rate it usually tends to model collapse with < 100 samples. Increasing batch size also increase model collapsing and decreasing it turned out to be OK but actually made the GAN pratically overfitted (to the point the results were no longer interpretable). Since my dataset is so small, it seems perfect to work with the approach you were showing.
My question is: from your experience, do you think I should follow the approach on CIFAR 10 described in A2?
My goal is to minimize noisy results and generate outputs that don't look like copies of trained data.
I'd really appreciate if you could share some insights.

There might be some miscommunication here. Let me try to clarify them here. Feel free to correct me.

For the truncation trick, truncation was only used in StyleGAN2 in some figures (e.g., Fig 12). It is not used in their FID calculation. We also don't use truncation in our FID calculation and figures.
There are multiple experiments that involve StyleGAN2 in the paper. Not sure which one you (@andersonfaaria)  want to replicate. For CIFAR 10 and 100 experiments,  as images are smaller, we modify the architectures and reduce the capacity. It is detailed in Appendix A.2. We also use different losses (which are commonly used in CIFAR experiments)
For few-shot generation experiments, we mostly follow StyleGAN2 losses and architectures and only make small adjustments. (e.g., gamma)

Thank you so much, at first I thought you were only using bigGAN for CIFAR but it was my mistake while reading.
To put in simpler terms I'm actually trying to have a version of stylegan2 that works best for a problem I'm trying to tackle. I'll try to give more background because I'm really amazed by the results you managed to achieve with this version:

I have a very diverse dataset of ~10k pixel art in 32x32 format with pink background. They are basically several different items and creatures from open source databases that I crawled.
Due being so diverse, I've used a classificator to actually separate those in weapons, armor parts, creatures and miscellanous. Inside those separations we have what kind of weapon they are or what kind of armor part (helmet, armor, legs, boots, shields) and so on.

If we consider all weapons, I have around ~300 but if we consider one of kind I have a little less than 100 samples of each kind.
It seems at least to me that I would benefit more training each of them individually rather than considering all of once.
I've been training with stylegan2 for a few months now but even using 0.001 as learning rate it usually tends to model collapse with < 100 samples. Increasing batch size also increase model collapsing and decreasing it turned out to be OK but actually made the GAN pratically overfitted (to the point the results were no longer interpretable). Since my dataset is so small, it seems perfect to work with the approach you were showing.
My question is: from your experience, do you think I should follow the approach on CIFAR 10 described in A2?
My goal is to minimize noisy results and generate outputs that don't look like copies of trained data.
I'd really appreciate if you could share some insights.

The adaptations described in A2 are all minor compared to the DiffAugment. So the first step for you, I recommend, is to throw away all those hyperparameter changes, and just apply the strongest DiffAugment and see whether it works. After that, there are tons of hyperparameters to play with, but gamma and batch size seem to affect the most (for 32x32, a small gamma e.g. 0.1 is likely to be a better choice). Maybe you can also simply try out run_few_shot.py.


Question: De-duplication is returning two metric results instead of one

We have two Prometheus instances scraping metrics from same services and Thanos sidecar is running in the same pod where Prometheus is running and pushing metrics to S3 storage. Thanos querier is configured to read metrics from sidecars and storage gateway and replica label as "prometheus_replica".
We got a multiple series error in Grafana when we queried metrics from thanos querier  for last 30 days metrics. We were expecting only metric result in the output for our query but when we look at the raw data, we have two metric results. We are trying to understanding if controller_revision_hash is causing the issue or something else ? controller_revision_hash is the only value which is different in the output after de-duplication.
Metrics data before replication (removed values for readability).
	"status": "success",
	"data": {
		"resultType": "matrix",
		"result": [
			{
				"metric": {
					"__name__": "cassandra_clientrequest_latency_mean",
					"app": "myapp",
					"controller_revision_hash": "myapp-5595778584",
					"instance": "myapp-0",
					"job": "kubernetes-pods",
					"kubernetes_namespace": "myapp",
					"kubernetes_pod_name": "myapp-0",
					"prometheus": "monitoring/prom-prometheus-operator-prometheus",
					"prometheus_replica": "prometheus-prom-prometheus-operator-prometheus-0",
					"run": "1",
					"statefulset_kubernetes_io_pod_name": "myapp-0",
					"type": "Read"
				},
				"values": [
				]
			},
			{
				"metric": {
					"__name__": "cassandra_clientrequest_latency_mean",
					"app": "myapp",
					"controller_revision_hash": "myapp-5595778584",
					"instance": "myapp-0",
					"job": "kubernetes-pods",
					"kubernetes_namespace": "myapp",
					"kubernetes_pod_name": "myapp-0",
					"prometheus": "monitoring/prom-prometheus-operator-prometheus",
					"prometheus_replica": "prometheus-prom-prometheus-operator-prometheus-1",
					"run": "1",
					"statefulset_kubernetes_io_pod_name": "myapp-0",
					"type": "Read"
				},
				"values": [
				]
			},
			{
				"metric": {
					"__name__": "cassandra_clientrequest_latency_mean",
					"app": "myapp",
					"controller_revision_hash": "myapp-58f9997c55",
					"instance": "myapp-0",
					"job": "kubernetes-pods",
					"kubernetes_namespace": "myapp",
					"kubernetes_pod_name": "myapp-0",
					"prometheus": "monitoring/prom-prometheus-operator-prometheus",
					"prometheus_replica": "prometheus-prom-prometheus-operator-prometheus-0",
					"run": "1",
					"statefulset_kubernetes_io_pod_name": "myapp-0",
					"type": "Read"
				},
				"values": [
				]
			},
			{
				"metric": {
					"__name__": "cassandra_clientrequest_latency_mean",
					"app": "myapp",
					"controller_revision_hash": "myapp-58f9997c55",
					"instance": "myapp-0",
					"job": "kubernetes-pods",
					"kubernetes_namespace": "myapp",
					"kubernetes_pod_name": "myapp-0",
					"prometheus": "monitoring/prom-prometheus-operator-prometheus",
					"prometheus_replica": "prometheus-prom-prometheus-operator-prometheus-1",
					"run": "1",
					"statefulset_kubernetes_io_pod_name": "myapp-0",
					"type": "Read"
				},
				"values": [
				]
			}
		]
	}
}

Metrics data after de-duplication  (removed values for readability).
	"status": "success",
	"data": {
		"resultType": "matrix",
		"result": [
			{
				"metric": {
					"__name__": "cassandra_clientrequest_latency_mean",
					"app": "myapp",
					"controller_revision_hash": "myapp-5595778584",
					"instance": "myapp-0",
					"job": "kubernetes-pods",
					"kubernetes_namespace": "myapp",
					"kubernetes_pod_name": "myapp-0",
					"prometheus": "monitoring/prom-prometheus-operator-prometheus",
					"replica": "A",
					"run": "1",
					"statefulset_kubernetes_io_pod_name": "myapp-0",
					"type": "Read"
				},
				"values": [
				]
			},
			{
				"metric": {
					"__name__": "cassandra_clientrequest_latency_mean",
					"app": "myapp",
					"controller_revision_hash": "myapp-58f9997c55",
					"instance": "myapp-0",
					"job": "kubernetes-pods",
					"kubernetes_namespace": "myapp",
					"kubernetes_pod_name": "myapp-0",
					"prometheus": "monitoring/prom-prometheus-operator-prometheus",
					"replica": "A",
					"run": "1",
					"statefulset_kubernetes_io_pod_name": "myapp-0",
					"type": "Read"
				},
				"values": [
				]
			}
		]
	}
}

@venugopalthati Hi, the result after deduplication seems to be correct, in prometheus, if two samples have the same labels, they will be in one series. So in your result of series, those have different value in label controller_revision_hash, they could not be deduplicated.

@jojohappy is correct :+1:
Closing as it's working as intended.

Thanks @jojohappy @bwplotka


build: create v0.16.3 release branch

This PR makes a new release branch for a point release to further improve performance of the new mempool logic, and also fix a bug to ensure we try to force a reconnect if a connection or remote stale machine seems stalled.
Included PRs:

https://github.com/lightningnetwork/lnd/pull/7705
https://github.com/lightningnetwork/lnd/pull/7711 (pending build)
https://github.com/lightningnetwork/lnd/pull/7681

Milestone: https://github.com/lightningnetwork/lnd/milestone/44

moved the release note entry for 7705 from 0.17 to 0.16.3 here: https://github.com/lightningnetwork/lnd/pull/7720 so we should probs include that here too


Create code-samples-links.md

Created new page of links to WebView2 sample code, loosely following the top level README file.

Docs Build status updates of commit fc5698f:
:warning: Validation status: warnings

File
Status
Preview URL
Details

microsoft-edge/webview2/code-samples-links.md
:warning:Warning
View
Details

microsoft-edge/webview2/code-samples-links.md

Line 44, Column 28: [Warning-file-not-found] Invalid file link: './concepts/distribution'.

For more details, please refer to the build report.
If you see build warnings/errors with permission issues, it might be due to single sign-on (SSO) enabled on Microsoft's GitHub organizations. Please follow instructions here to re-authorize your GitHub account to Docs Build.
Note: Broken links written as relative paths are included in the above build report. For broken links written as absolute paths or external URLs, see the broken link report.
Note: Your PR may contain errors or warnings unrelated to the files you changed. This happens when external dependencies like GitHub alias, Microsoft alias, cross repo links are updated. Please use these instructions to resolve them.
For any questions, please:Try searching the docs.microsoft.com contributor guidesPost your question in the Docs support channel

Docs Build status updates of commit 5532aa7:
:white_check_mark: Validation status: passed

File
Status
Preview URL
Details

microsoft-edge/webview2/code-samples-links.md
:white_check_mark:Succeeded
View

For more details, please refer to the build report.
Note: Broken links written as relative paths are included in the above build report. For broken links written as absolute paths or external URLs, see the broken link report.
For any questions, please:Try searching the docs.microsoft.com contributor guidesPost your question in the Docs support channel

Docs Build status updates of commit 508574c:
:white_check_mark: Validation status: passed

File
Status
Preview URL
Details

microsoft-edge/webview2/code-samples-links.md
:white_check_mark:Succeeded
View

For more details, please refer to the build report.
Note: Broken links written as relative paths are included in the above build report. For broken links written as absolute paths or external URLs, see the broken link report.
For any questions, please:Try searching the docs.microsoft.com contributor guidesPost your question in the Docs support channel

Docs Build status updates of commit 7ab3ca1:
:white_check_mark: Validation status: passed

File
Status
Preview URL
Details

microsoft-edge/toc.yml
:white_check_mark:Succeeded
View

microsoft-edge/webview2/code-samples-links.md
:white_check_mark:Succeeded
View

microsoft-edge/webview2/media/solution-file-webview2samples.png
:white_check_mark:Succeeded
View

For more details, please refer to the build report.
Note: Broken links written as relative paths are included in the above build report. For broken links written as absolute paths or external URLs, see the broken link report.
For any questions, please:Try searching the docs.microsoft.com contributor guidesPost your question in the Docs support channel

Docs Build status updates of commit f1e928d:
:white_check_mark: Validation status: passed

File
Status
Preview URL
Details

microsoft-edge/webview2/code-samples-links.md
:bulb:Suggestion
View
Details

microsoft-edge/toc.yml
:white_check_mark:Succeeded
View

microsoft-edge/webview2/media/solution-file-webview2samples.png
:white_check_mark:Succeeded
View

microsoft-edge/webview2/code-samples-links.md

Line 45, Column 195: [Suggestion: preserve-view-not-set - See documentation] Did you mean to link to a specific version? It's usually better not to specify a version, so the link always goes to the canonical version. If you really need to link to a specific version, add &preserve-view=true to the URL: /uwp/api/windows.ui.composition?view=winrt-19041. Otherwise, remove the view parameter.

For more details, please refer to the build report.
Note: Broken links written as relative paths are included in the above build report. For broken links written as absolute paths or external URLs, see the broken link report.
For any questions, please:Try searching the docs.microsoft.com contributor guidesPost your question in the Docs support channel

Docs Build status updates of commit dcced41:
:white_check_mark: Validation status: passed

File
Status
Preview URL
Details

microsoft-edge/toc.yml
:white_check_mark:Succeeded
View

microsoft-edge/webview2/code-samples-links.md
:white_check_mark:Succeeded
View

microsoft-edge/webview2/media/solution-file-webview2samples.png
:white_check_mark:Succeeded
View

For more details, please refer to the build report.
Note: Broken links written as relative paths are included in the above build report. For broken links written as absolute paths or external URLs, see the broken link report.
For any questions, please:Try searching the docs.microsoft.com contributor guidesPost your question in the Docs support channel

Docs Build status updates of commit 03fd7d9:
:white_check_mark: Validation status: passed

File
Status
Preview URL
Details

microsoft-edge/toc.yml
:white_check_mark:Succeeded
View

microsoft-edge/webview2/code-samples-links.md
:white_check_mark:Succeeded
View

microsoft-edge/webview2/media/solution-file-webview2samples.png
:white_check_mark:Succeeded
View

For more details, please refer to the build report.
Note: Broken links written as relative paths are included in the above build report. For broken links written as absolute paths or external URLs, see the broken link report.
For any questions, please:Try searching the docs.microsoft.com contributor guidesPost your question in the Docs support channel

Docs Build status updates of commit 1920a7a:
:white_check_mark: Validation status: passed

File
Status
Preview URL
Details

microsoft-edge/toc.yml
:white_check_mark:Succeeded
View

microsoft-edge/webview2/code-samples-links.md
:white_check_mark:Succeeded
View

microsoft-edge/webview2/media/solution-file-webview2samples.png
:white_check_mark:Succeeded
View

For more details, please refer to the build report.
Note: Broken links written as relative paths are included in the above build report. For broken links written as absolute paths or external URLs, see the broken link report.
For any questions, please:Try searching the docs.microsoft.com contributor guidesPost your question in the Docs support channel

Docs Build status updates of commit 44f97a8:
:white_check_mark: Validation status: passed

File
Status
Preview URL
Details

microsoft-edge/toc.yml
:white_check_mark:Succeeded
View

microsoft-edge/webview2/code-samples-links.md
:white_check_mark:Succeeded
View

microsoft-edge/webview2/media/solution-file-webview2samples.png
:white_check_mark:Succeeded
View

For more details, please refer to the build report.
Note: Broken links written as relative paths are included in the above build report. For broken links written as absolute paths or external URLs, see the broken link report.
For any questions, please:Try searching the docs.microsoft.com contributor guidesPost your question in the Docs support channel


Some thoughts

This is my comment on https://gitter.im/SpatioTemporal-Asset-Catalog/Lobby?at=62b41f1a568c2c30d3dfa48b
It seems like there should be an explanation of how this relates to the existing keywords field and how it relate to other ontology schemes. I've been wanting to have a glossary type section parallel to an existing catalog that has a STAC Catalog for each keyword that explains the keyword and links to all the STAC Collections / Items that have that keyword (the Earth Engine catalog is currently completely static). How might that idea relate?

https://github.com/radiantearth/stac-spec/blob/master/collection-spec/collection-spec.md#collection-fields
Existing keywords:

Element
Type
Description

keywords
[string]
List of keywords describing the Collection.

ok I see the ambiguity here. The idea is to have a space for free keywords without any reference. Pretty much as tags. Terms are bond to a reference system.
Initially, there are no links intended here between the 2 fields. I'd like a system easy to implement and quick for searching in STAC API.
I think there are enough ontology reference system to tap into but we could imagine the reference system pointing to a local existing catalog.

Actually no differences with the field keywords of a collection except they apply to an item. We could extend the keyword field for the items.
Nevertheless, the core of this extension is about system referenced terms with the field subjects:terms.

Yes, I think that is a good idea and would be very much in line with the common metadata model STAC is embracing. So generalize keywords for Items and Collections and then extend it.
In that case, it might make sense to call the terms field something like "keyword:terms"?

Indeed, it could. So could we keep it as an extension or make it part of the core spec?

They keyword list should be core spec, i.e. common metadata: https://github.com/radiantearth/stac-spec/blob/master/item-spec/common-metadata.md This is likely just a copy/paste from the Collection spec.
And then the separate extension would basically be the terms. But this is just my opinion right now.

I agree with @m-mohr on the keywords for items. It should be in the core spec as a copy/paste from the collection spec i.e. a field named keywords

Reading up on RDF and OWL2 was pretty frustrating.
This looks interesting: https://www.earthdata.nasa.gov/learn/find-data/idn/gcmd-keywords
e.g. ATMOSPHERIC OZONE
https://gcmd.earthdata.nasa.gov/KeywordViewer/scheme/all/dd316647-9043-40c3-9329-f22f9215fefa

ATMOSPHERIC OZONE
Full Path EARTH SCIENCEATMOSPHEREATMOSPHERIC CHEMISTRYOXYGEN COMPOUNDSATMOSPHERIC OZONE
UUID dd316647-9043-40c3-9329-f22f9215fefa
Category Earth Science
Earthdata Search Client
Definition
Atmospheric Ozone is one of the most important trace gases in our atmosphere that both benefits and harms life on Earth. High ground-level ozone amounts contribute to poor air quality, adversely affecting human health, agricultural productivity, and forested ecosystems. Ozone absorbs infrared radiation, and is most potent as a greenhouse gas in the cold upper troposphere located 8–15 km above the surface. In the stratosphere, between approximately 15 and 50 km above the Earth’s surface, a layer rich in ozone serves as a “sunscreen” for the world by shielding the Earth’s surface from harmful ultraviolet radiation. This absorption of solar energy also affects atmospheric circulation patterns and thus influences weather around the globe. Moreover, throughout the atmosphere, ozone is the key ingredient that initiates chemical cleansing of the atmosphere of various pollutants, such as carbon monoxide and methane, among others, which could otherwise accumulate to harmful levels or exert a stronger influence on climate. Therefore, changes to ozone anywhere in the atmosphere can have major impacts on the Earth.
Reference
https://www.ametsoc.org/index.cfm/ams/about-ams/ams-statements/statements-of-the-ams-in-force/atmospheric-ozone1/
Broader OXYGEN COMPOUNDS
Narrower OZONE PROFILESOZONE SURFACETOTAL OZONE

Following OGC API - Records now, keywords is the free-form equivalent in STAC, see the corresponding PR in stac-spec.


template used as default slot

Version
2.6.10
Reproduction link
https://codepen.io/hulkyhawk/pen/QWWKjyR
Steps to reproduce
solution：

replace 'template' with div to show 'should render'
add slot="default" to template to show 'should render'

What is expected?
should render

What is actually happening?
render nothing

The content is there, is not visible because of the meaning of a tag template. these are compiled a bit differently by Vue. Check: https://template-explorer.vuejs.org/#<div id%3D"app">
  <template>
    <span>hey<%2Fspan>
  <%2Ftemplate>
<%2Fdiv>
You probably want to do
new Vue({
  el: "#app",
  render(h) {
    return h(
      ComponentA,
      null,
     [h("span", null, ["should render"])]
    );
  }
});

Also, make sure that only one child is returned by the component render function. Otherwise it won't work

since it works well with template syntax, it should work with jsx;
and for my case i do not wanna add a non-used tag, like what React did with Fragment
you mean it is done intentionally to let jsx render template?

I don't know what would be the way here in JSX. Maybe @sodatea or @nickmessing know

due to the original code, it does not check template when it is a default slot,
however, explictly adding slot="deafult" can make it work.
to make it go with template syntax  and still can make a user omit the slot="default",
i suggest to solve it.
by the way, it bit me the first time.
@posva @sodatea @nickmessing
    if ((child.context === context || child.fnContext === context) &&
      data && data.slot != null
    ) {
      const name = data.slot
      const slot = (slots[name] || (slots[name] = []))
      if (child.tag === 'template') {
        slot.push.apply(slot, child.children || [])
      } else {
        slot.push(child)
      }
    } else {
      (slots.default || (slots.default = [])).push(child)
    }


Header styling slow to render on site load

When the site is first loaded in a browser the header is slow to fully render. Nav links appear first without proper styling, then after less than a second render properly at which time the logo appears.

Fixed.


apt-install does not create lock

While performing a
sudo apt-get upgrade
I can open another Bash on Ubuntu on Windows and do a
sudo apt-get install build-essentials
which then both crashes. But I suspect the first apt-get updgrade should have created a lock in /var/lock/ ?
Currently running Insider Builds 15031.

We do not own the apt binary, and this seems to be an issue in user-mode.  Relying on the behavior the presence of a folder that that user can delete seems like a bad idea.
I haven't ever seen this locally.  Did you do anything in particular like delete things in the /var directory?

I have tried to not mess with the /var/ directory, but I can check whether this behaviour still occurs the next days.
Unfortunately then on a "rather" clean install of BoW, as I checked out the current windows store WSL bash yesterday.
So maybe this is fixed by now ...

@benhillis -- "relying on the behavior ... bad idea" -- welcome to Linux command-line tools :-)  Though, in this case, it looks to me like this is in fact a kernel (WSL) bug or limitation.
I am able to reproduce this reliably on my own machine, using build 15031.  My repro is as follows:

Open two terminal windows, in a clean WSL install that has neither of the following two large packages already installed (any two big packages should do; the install just needs to take enough time that you can get both going at once)
In window 1:

sudo apt install eclipse

In window 2, simultaneously:

sudo apt install libreoffice

Expected:

One of the commands will error out, unable to acquire a lock

WSL:

Both commands attempt to proceed concurrently

If I strace the two commands, I see the following:
open("/var/lib/dpkg/lock", O_RDWR|O_CREAT|O_NOFOLLOW, 0640) = 4
fcntl(4, F_SETFD, FD_CLOEXEC)           = 0
fcntl(4, F_SETLK, {l_type=F_WRLCK, l_whence=SEEK_SET, l_start=0, l_len=0}) = 0

/var/lib/dpkg/lock exists on my machine.  It has correct permissions.  The kernel (well, WSL) is granting apt an exclusive lock on that file.  In fact, it is generously granting two exclusive locks on that file at the same time.  That ain't right :-)

@aseering - thanks for the additional information.  I know our file locking implementation is incomplete, I'll take a look and see if I can see what's going on.

FWIW, I found out that flock seems to work correctly under WSL 1, contrary to lockf and fnctl-based locking.  Of course, it is "less powerful", but for some applications, it is good enough.

Note: this issue is duplicated by https://github.com/microsoft/WSL/issues/1927, which should probably be the primary ticket.

/dupe #1927


Add a magnifying glass example

https://github.com/Shopify/react-native-skia/assets/1683922/70b0a4fe-9e04-48a1-b5ce-7225330b5eb9

can you please fix the linting/tsc errors? yarn lint --fix should do it. See: https://github.com/shopify/react-native-skia?tab=readme-ov-file#contributing

Done!

thanks a lot :)


How to copy source .ts files to output dir?

//compile app typescript files
gulp.task('compile:app', function(){
  return gulp.src(['src/**/*.ts', 'typings/browser/**/*.d.ts'])
    .pipe(ts(tsProject))
    .pipe(gulp.dest('./dist'))
    .pipe(connect.reload());
});

How can I get a handle on the source files and have them copy to the outdir as well?

You could do that in a separate task:
gulp.task('copy', function(){
  return gulp.src(['src/**/*.ts'])
    .pipe(gulp.dest('./dist'));
});

You are right I could. I was just wondering whether it was possible or not.


Add a method for downloading an applications config.json file

Connects to #311
change-type: minor

@pimterry Travis did two builds here

m.chai.expect(...).to.eventually.become.a is not a function

Also, I'm assuming you're pushing failing builds because you can't easily test these locally. It is a bit painful to run the whole suite (takes about 10m+, depending on latency). Most of the time though you only want to run the set of tests closely related to what you're changing, and you should be able to do so very quickly and easily by adding .only to the individual tests you care about (i.e. changing to describe.only and it.only). That should take it down to about 20s for a small set.
You'll also need to set yourself up with a test user, and add their settings to a .env file in your local checkout, if you haven't already. The README has docs for this: https://github.com/resin-io/resin-sdk#tests

Oh, and @emirotin it ran two builds because I'd changed the Travis settings to enable branch builds, but #312 hadn't yet been merged. It now has. From now, any PRs that are based on top of current master should only run a single build for the PR, not the branch.

@pimterry Should be good to go now!


Error message in mc_sample_path

I receive an error message on using mc_sample_path()
julia> using QuantEcon
julia> P = [0.4 0.6; 0.8 0.2]
2x2 Array{Float64,2}:
0.4  0.6
0.8  0.2
julia> P = MarkovChain(P)
Discrete Markov Chain
stochastic matrix:
2x2 Array{Float64,2}:
0.4  0.6
0.8  0.2
julia> mc_sample_path(P, [0.5, 0.5], 100000)
ERROR: type cannot be constructed
in map at abstractarray.jl:1328
I'm using Julia version 0.3.9 on Mac OS X 10.10.3

Working fine here on v0.3.10, can you try updating Julia then running Pkg.update() and see if this still persists?

Reproduced the same error message with version 0.3.10 + QuantEcon 0.1.2 (on Mac OS X 10.9.5),
while it works fine with 0.4.0-dev.

@oyamad can you run Pkg.update() on your v0.3 since we're calling some things from Distributions.jl that I want to exclude as potential causes.

Thanks for reporting. I'm considering re-writing this routine anyway as I think we can make it more performant. Implementing an algorithm like what we just did in the numba version (the one with embedded bisection) may be faster than calling out to Categorical from Distributions.jl

@ZacCranko Got the same error.

I'm unable to reproduce this on v0.3.10 or v0.4.0-dev+5645

Scratch my previous comment. I was confusing the new implementation of this algorithm with a different implementation I saw earlier.
I still wouldn't be surprised if using searchsortedfirst was more efficient than calling Categorical. Maybe we just write up an implementation and run some benchmarks against the two?

@ZacCranko Just as @oyamad said, I'm getting the same error on Julia v0.3.10 on Mac OS X 10.10.3 as well. On a 16 day old master of Julia , I got this error while trying "using QuantEcon"
using QuantEcon
Warning: New definition
serialize(Any, DataStructures.HashDict) at /Users/ranjan/.julia/v0.4/DataStructures/src/hashdict.jl:91
is ambiguous with:
serialize(Base.SerializationState, Any) at serialize.jl:399.
To fix, define
serialize(Base.SerializationState, DataStructures.HashDict)
before the new definition.
Warning: New definition
serialize(Any, DataStructures.HashDict) at /Users/ranjan/.julia/v0.4/DataStructures/src/hashdict.jl:91
is ambiguous with:
serialize(Base.IO, Any) at serialize.jl:421.
To fix, define
serialize(Base.IO, DataStructures.HashDict)
before the new definition.
Warning: New definition
deserialize(Any, Type{DataStructures.HashDict{#K<:Any, #V<:Any, #O<:Any}}) at /Users/ranjan/.julia/v0.4/DataStructures/src/hashdict.jl:100
is ambiguous with:
deserialize(Base.SerializationState, DataType) at serialize.jl:653.
To fix, define
deserialize(Base.SerializationState, Type{DataStructures.HashDict{#K<:Any, #V<:Any, #O<:Any}})
before the new definition.
ERROR: LoadError: LoadError: LoadError: UndefVarError: Range1 not defined
in include at ./boot.jl:254
in include_from_node1 at ./loading.jl:133
in include at ./boot.jl:254
in include_from_node1 at ./loading.jl:133
in reload_path at ./loading.jl:157
in _require at ./loading.jl:69
in require at ./loading.jl:55
in include at ./boot.jl:254
in include_from_node1 at ./loading.jl:133
in reload_path at ./loading.jl:157
in _require at ./loading.jl:69
in require at ./loading.jl:52
while loading /Users/ranjan/.julia/v0.4/Graphs/src/edge_list.jl, in expression starting on line 11
while loading /Users/ranjan/.julia/v0.4/Graphs/src/Graphs.jl, in expression starting on line 127
while loading /Users/ranjan/.julia/v0.4/QuantEcon/src/QuantEcon.jl, in expression starting on line 6
Building a new master now, and will report what happens next.

@ranjanan, I've confirmed the issue on 0.3.9 and 0.3.10 also.
I'm implementing a fix right now.
The issue you just reported in the previous traceback indicates that the Graphs.jl package is not up to date for 0.4.

Ah I see. Thanks, @spencerlyon2

Closed by #53


Setting different texts to each card

Hello,
Thanks for the implementation, it is of great help.
I am having some trouble with changing the content of each card dynamically. not from the layout xml. I would like to set different texts to each card. How can I achive this by using the adapter you've designed?
Thank you

Take a look at CardPagerAdapter: https://github.com/rubensousa/ViewPagerCards/blob/master/app/src/main/java/com/github/rubensousa/viewpagercards/CardPagerAdapter.java
You need to provide a list of data (in that example, I use a list of strings) and then assign the text on
instantiateItem

From the example, you can populate the mData array with the strings you want to set and then you can assign the strings to any of the textviews (either the title or the body). Great library by the way. Thanks @rubensousa


Alerts without header

Code of Conduct

[X] I have read and agree to the GitHub Docs project's Code of Conduct

What article on docs.github.com is affected?
Multiple articles.
What part(s) of the article would you like to see updated?
There are still alerts in the documentation which are using the following notation:
{% note %}
Text
{% endnote %}

// same for tip and warning

These alerts don#t have any header (Note, Tip, Warning) and are rendered just with the colored strip.
Examples:

Note
Tip
Warning

Additional information
Maybe some are ment to be that way. If not I could provide a PR with fixes.

A list of affected files:
Note

content\actions\hosting-your-own-runners\managing-self-hosted-runners-with-actions-runner-controller\deploying-runner-scale-sets-with-actions-runner-controller.md
content\actions\writing-workflows\choosing-when-your-workflow-runs\triggering-a-workflow.md
content\admin\managing-iam\iam-configuration-reference\saml-configuration-reference.md
content\apps\creating-github-apps\authenticating-with-a-github-app\authenticating-as-a-github-app-installation.md
content\authentication\managing-commit-signature-verification\telling-git-about-your-signing-key.md
content\billing\managing-billing-for-your-products\managing-billing-for-github-packages\about-billing-for-github-packages.md
content\code-security\adopting-github-advanced-security-at-scale\introduction-to-adopting-github-advanced-security-at-scale.md
content\code-security\adopting-github-advanced-security-at-scale\phase-1-align-on-your-rollout-strategy-and-goals.md
content\code-security\adopting-github-advanced-security-at-scale\phase-2-preparing-to-enable-at-scale.md
content\code-security\adopting-github-advanced-security-at-scale\phase-3-pilot-programs.md
content\code-security\adopting-github-advanced-security-at-scale\phase-4-create-internal-documentation.md
content\code-security\adopting-github-advanced-security-at-scale\phase-5-rollout-and-scale-code-scanning.md
content\code-security\adopting-github-advanced-security-at-scale\phase-6-rollout-and-scale-secret-scanning.md
content\code-security\code-scanning\introduction-to-code-scanning\about-code-scanning-with-codeql.md
content\code-security\code-scanning\managing-code-scanning-alerts\tracking-code-scanning-alerts-in-issues-using-task-lists.md
content\code-security\codeql-cli\getting-started-with-the-codeql-cli\analyzing-your-code-with-codeql-queries.md
content\code-security\security-advisories\working-with-repository-security-advisories\adding-a-collaborator-to-a-repository-security-advisory.md
content\code-security\security-overview\filtering-alerts-in-security-overview.md
content\codespaces\getting-started\understanding-the-codespace-lifecycle.md
content\codespaces\setting-up-your-project-for-codespaces\configuring-dev-containers\adding-features-to-a-devcontainer-file.md
content\communities\maintaining-your-safety-on-github\blocking-a-user-from-your-personal-account.md
content\communities\using-templates-to-encourage-useful-issues-and-pull-requests\syntax-for-issue-forms.md
content\get-started\writing-on-github\editing-and-sharing-content-with-gists\creating-gists.md
content\graphql\guides\forming-calls-with-graphql.md
content\graphql\guides\using-the-explorer.md
content\issues\organizing-your-work-with-project-boards\managing-project-boards\changing-project-board-visibility.md
content\issues\planning-and-tracking-with-projects\managing-your-project\managing-access-to-your-projects.md
content\pages\getting-started-with-github-pages\changing-the-visibility-of-your-github-pages-site.md
content\repositories\managing-your-repositorys-settings-and-features\customizing-your-repository\displaying-a-sponsor-button-in-your-repository.md
content\repositories\managing-your-repositorys-settings-and-features\enabling-features-for-your-repository\managing-security-and-analysis-settings-for-your-repository.md
content\sponsors\sponsoring-open-source-contributors\sponsoring-an-open-source-contributor-through-github.md
contributing\translations-for-translators.md

Reusables

data\reusables\cli\cli-learn-more.md
data\reusables\codeql-cli\download-codeql-cli.md
data\reusables\codeql-cli\man-pages-version-note.md
data\reusables\enterprise\rate_limit.md
data\reusables\organizations\team-discussions-api-deprecation.md
data\reusables\package_registry\packages-classic-pat-only.md
data\reusables\pages\visit-site.md
data\reusables\user-settings\classic-projects-api-classic-pat-only.md
data\reusables\user-settings\enterprise-admin-api-classic-pat-only.md
data\reusables\user-settings\imports-api-classic-pat-only.md
data\reusables\user-settings\notifications-api-classic-pat-only.md

Tip

content\apps\oauth-apps\building-oauth-apps\authenticating-to-the-rest-api-with-an-oauth-app.md
content\authentication\connecting-to-github-with-ssh\using-ssh-agent-forwarding.md
content\authentication\keeping-your-account-and-data-secure\about-anonymized-urls.md
content\authentication\keeping-your-account-and-data-secure\updating-your-github-access-credentials.md
content\authentication\troubleshooting-ssh\using-ssh-over-the-https-port.md
content\get-started\accessibility\github-command-palette.md
content\get-started\working-with-subversion-on-github\what-are-the-differences-between-subversion-and-git.md
content\graphql\guides\forming-calls-with-graphql.md
content\issues\tracking-your-work-with-issues\using-issues\filtering-and-searching-issues-and-pull-requests.md
content\issues\using-labels-and-milestones-to-track-work\associating-milestones-with-issues-and-pull-requests.md
content\migrations\importing-source-code\using-the-command-line-to-import-source-code\importing-an-external-git-repository-using-the-command-line.md
content\pull-requests\committing-changes-to-your-project\creating-and-editing-commits\changing-a-commit-message.md
content\repositories\managing-your-repositorys-settings-and-features\enabling-features-for-your-repository\disabling-issues.md
content\site-policy\site-policy-deprecated\amendment-to-github-terms-of-service-applicable-to-us-federal-government-users.md

Reusables

data\reusables\pages\build-failure-email-server.md

Warning

content\apps\github-marketplace\using-the-github-marketplace-api-in-your-app\handling-new-purchases-and-free-trials.md
content\apps\github-marketplace\using-the-github-marketplace-api-in-your-app\testing-your-app.md
content\get-started\using-git\using-git-rebase-on-the-command-line.md
content\pull-requests\committing-changes-to-your-project\creating-and-editing-commits\changing-a-commit-message.md
content\pull-requests\committing-changes-to-your-project\troubleshooting-commits\why-are-my-commits-linked-to-the-wrong-user.md
content\rest\licenses\licenses.md

Reusables

data\reusables\actions\jobs\section-defining-outputs-for-jobs.md
data\reusables\apps\deprecating_auth_with_query_parameters.md
data\reusables\repositories\legacy-issue-template-tip.md

@akordowski Thank you for putting this list of inconsistencies together! Reviewing the list of files now 💛


Fix feedhenry/fh-db#6 : CSV import of columns surrounded w/ quotes

CSV importer uses csvtojson
csvtojson takes a parameter called "quote" to identify if there is a character that may surround columns
This parameter was passed as undefined which is probably thought of using default value. However, it simply causes csvtojson to not use any character.
Changed that quote parameter to " so that quote will be used as defined in the CSV spec

Before doing the code change, I wrote some characterization tests for the module that converts CSV to JSON. As there were no tests before, I wanted to make sure basic functionality is unchanged after fixing the bug.
I wrote a test case for the requirement which was failing: I've verified that columns were split even though they were surrounded with quote chars.
Fixed the problem: test started passing.

Pull Request Quality Guidelines
As we continue to focus on quality, here are a few things to keep in mind:

The code changes conform to the contributing & code style guides for this component (if they exist)
A component owner should review your change (we've tagged these above)
Automated testing has been added or updated for this change (e.g. UART, Unit/Acceptance tests)
If updating server component this PR should be deployed to a grid somewhere (via fhcap-cli) - please provide a link to this
Ensure JIRA is up to date before & after merge (e.g. deployment notes, tester notes, release notes, fix version)
Any SonarQube issues should be addressed where applicable (use your own judgement)

Please ping a component owner (see fh contrib) when your builds are complete, changes are deployed and you're ready for a review.
Fhcap PR will be generated automatically.
To deploy your changes to a cluster place comment in this PR with pattern [x][y] where x=deploy and y=clustername you wish to deploy.
You can also deploy your change manually using fhcap-cli

LGTM


I got the message "OAuth access token found in commit" and after that it stopped working.

I was reading to some commits of this repo and also saw somewhere something like "Github doesn't like OAuth in repo" what is the deal?

GitHub doesn't want you to commit OAuth tokens into a public repository for security reasons. To workaround this in the jekyll-anon example I simple used divshot to host the page. However, if your keen on hosting on Github Pages, you can use a build process with Travis CI and supply them with token as an environment variable. This walkthrough might help, though you have to infer how to encrypt the OAuth token from how they encrypt the github credentials:
Auto-deploying built products to gh-pages with Travis


error to run the project

Hello, I couldn't run the project as I got an error :
no matching function for call to ‘llvm::AtomicRMWInst::AtomicRMWInst(llvm::AtomicRMWInst::BinOp, llvm::Value*&, llvm::ConstantInt*, llvm::AtomicOrdering, llvm::SyncScope::, llvm::Instruction*)’
83 |                              SyncScope::System, it->getFirstNonPHI ());
|                                                                      ^
could you please help me how can I solve the issue ??

@Sirin-il Hello, I ran into the same problem, please tell me if you were able to solve it?

hello, no not yet

@Sirin-il I'm not sure, but maybe this repo will be helpfull for you
https://github.com/EugeneDar/stack-alloc-counter

thank you so much and if you get any update concerning this repo let me know please


VS2017: no "Start Debugging" / "Debug In Interactive" menu option in FSI

Repro steps

Right click the FSI window or in a .fsx file
look for "Start Debugging" ("Debug In Interactive" in the text editor)

Expected behavior
Can start debugging.
Actual behavior
The menu item is not present
Known workarounds
manually attach to fsi.exe
Related information
VS 2017 15.6.6, worked before I upgraded, I was running 15.4.x.

In fact, the debugger was attached to a python script at that time.


Widget proposal: clearAll

It would be good to be able to have a very simple widget that allows you to clear all the refinements and current query.
It's like a "start over" button in case of emergency/lost user.
API
search.addWidget(
  instantsearch.widgets.hitsPerPageSelector({
    container: '#clear-all-selector',
    // cssClasses: {root, header, body, item, footer}
    // templates: {header, item, footer}
    // label: ❌ clear all
    // disableWhenNoRefinements: true => unsure for a first version
    // hideContainerWhenNoRefinements: false => unsure for a first version
  })
);

Default rendering output:

[custom header template]

         <button class="ais-clear-all--button">❌ clear all</button>

[custom footer template]

Data passed to the item template:

url, in case you want to have a link instead of a button

Put the onClick on the item template, like it's done for toggle

@pixelastic I would like your input on this one :)

I would prefer a span for the icon (and template for class or content). That should help css to use font icons easier.
❌ clear all

^ updated with this, very nice

I'm ok with creating this widget, this is definitely needed.

I don't think the wrapping
 is needed. The --item class is used when there is several elements (like for a refinement list). When there is only one button, I would get rid of it.
I would not add a span or a i for the icon, and let the theme.css handle that (using :before). If people really want to add an icon, they could add it in a custom template. We need to have the bare minimum markup to make the default.css theme usable, no more.
I'd rather pu a a than a button (we already have a everywhere)
Not sure we need the header/footer for that one.

I don't think the wrapping  is needed. The --item class is used when there is several elements (like for a refinement list). When there is only one button, I would get rid of it.

I also thought the same but toggle has label + item and found that maybe we should do the same here?

I'd rather pu a a than a button (we already have a everywhere)

Indeed, passing a  to a button is only some css while passing a button to an  is tricky.

Not sure we need the header/footer for that one.

Since it could be located on the left top refinement list, maybe we still need it. Also more consistent to have it everywhere (but the hits).

I would not add a span or a i for the icon, and let the theme.css handle that (using :before). If people really want to add an icon, they could add it in a custom template. We need to have the bare minimum markup to make the default.css theme usable, no more.

Not sure about your proposition

Could we add an option to be able to clear:

Refinements only
Query only
Refinements and Query

Query only

Not sure about clearing the query only

If we are talking about clearing the query, I may have an idea for the search box :)

If we are talking about clearing the query, I may have an idea for the search box :)

Yes clearing only the query seems like a searchBox option

:+1:

I also thought the same but toggle has label + item and found that maybe we should do the same here?

Toggle has an item wrapper because it internally uses the refinementList component (but only display one item). I'd rather we fix it in toggle than adding it in this widget :)
Makes sense to keep the header/footer, I agree.
Regarding the span/i for the icon: I think the icon is a secondary concern for this widget. It is not needed to make the widget work, it is only styling. So I would not add any markup for it in the default template. Like we would no add a strong node around active element in default template, we should not add a span to denote a possible icon in the default template. This can be handled through either CSS or custom templates.

Like we would no add a strong node around active element in default template, we should not add a span to denote a possible icon in the default template. This can be handled through either CSS or custom templates.

Ok right makes sense

Toggle has an item wrapper because it internally uses the refinementList component (but only display one item). I'd rather we fix it in toggle than adding it in this widget :)

Hm I think it did not have one at first and then we made it so for consistency (https://github.com/algolia/instantsearch.js/commit/498bad6a299b9997a3fe12985b52b44e246c5fde). We had the discussion together I believe.

Like we would no add a strong node around active element in default template, we should not add a span to denote a possible icon in the default template. This can be handled through either CSS or custom templates.
Ok right makes sense

On the other hand, if by default there's a cross, should it be in default.css or in the default template? (much like the css/input checkbox discussion we had).

Hm I think it did not have one at first and then we made it so for consistency (498bad6). We had the discussion together I believe.

In my head the consistency was more about naming it item instead of body. If there is to be a list of one item, let it at least be named item. I can understand there is some display consistency between a toggle and a refinementList, so using the same markup makes sense. But for a clearAll, I would go without the superfluous item here.

On the other hand, if by default there's a cross, should it be in default.css or in the default template? (much like the css/input checkbox discussion we had).

There's a bit of déjà-vu here :). I also think the icon is not mandatory for the widget to work, nor for the user to understand how it works. A simple link/button with "Remove all filters" is more explicit than the icon. So I would put it in the themes.

There's a bit of déjà-vu here :). I also think the icon is not mandatory for the widget to work, nor for the user to understand how it works. A simple link/button with "Remove all filters" is more explicit than the icon. So I would put it in the themes.

WFM

@pixelastic I updated the widget proposal, let me know

WFM regarding the markup.
But I do not understand the difference between disableWhenNoRefinements and hideContainerWhenNoRefinements.

Yep sorry, updated

Looks good :+1:

I think that widget should be merged with #112 -> it's very similar & you generally have that "clear all" button next to the active refinements..

I think that widget should be merged with #112 -> it's very similar & you generally have that "clear all" button next to the active refinements..

Not against it, we only need a precise api proposal for this one and then we are good

Here is the API I'm going for (using #378) :
instantsearch.widgets.clearAll({
  container: '#clear-all-link',
  cssClasses: {root, header, item, link, footer},
  templates: {
    header: '',
    item: 'Clear all', // Called with {cssClasses, url}
    footer: ''
  },
  hideContainerWhenNoRefinements: true
})

I didn't include the label parameter from the main API proposal because we don't have it in the stats widget.

Oh I would rename clearAll to clearAllRefinedValues to make it more clear (and fit the other widget's naming).

@redox :+1:, making it clearer
Still not sure we need to wrap the link in an item element, but WFM anyway.

:+1:

Is this issue still the one we are working on? The API proposal seems outdated.

If you have a final widget proposal, best option is to reopen a new issue and close this one to avoid confusions


Merge initial backend changes into main

Merged all work on models, polished backend, added READMEs, and updated the deploy action to only run when changes are made to the frontend

bruh that finally fixed it, needed to specify run build + deploy on both push and pull request, made it so we always check build but only deploy when pushing to main


Bot automatically follows private accounts repeatedly even when follow request is denied

I don't know if this applies to public accounts that softblock it too, but it's still not good and pretty annoying.

thanks for the report, I need to check how to cope with that and maintain a blacklist of accounts not to follow.

Can you check that if you ban the bot it stops trying to add you ?

Actually, I don't see any notifications for your refusal on the bot account.
Need to research a bit more...

Fix deployed in testing, will commit it later, thanks for the report !

done and commited


(BUG)[StatusBarUtil version 1.7.4 ] The application does not install in my mobile phone

Project Information

Repository---------------:Here
Project Name------------: StatusBarUtil
Publisher-----------------: Leaf Ye-Miao
My GitHub account--------:Here

Expected behavior
I was expecting the application to be installed in my mobile phone when I install the application.
Actual behavior
The application does not install in my mobile phone
How to reproduce

Download and open the application

Try installing in your mobile phone

Note the Bug

Browser/App version-: 1.7.4

Operating system----: 9.0.0

Recording Of The Bug

The processed android9.0 phone can not be installed, please install the latest version

sir @Ye-Miao  The latest version (1.7.5) is not installed too
I downloaded the application form here  https://fir.im/scv6

hi  @XAMIR555  I already know your situation, but I need your phone model for a simulation test

MY Phone modole SM_A205F

I did a cloud test on a Samsung 8.0 or higher machine (including the SM-A20MF). The strange thing is that they can all be installed and run normally. Does your phone limit prohibit the installation of third-party applications？ @XAMIR555

okay sir maybe problem in my mobile phone

This is still issue or not


AggregationResult to include totalResults like SearchResult

SearchResult currently returns the totalResults of a query, while AggregationResult does not appear to.
It would be nice to have functional parity, unless there's a compelling reason it was omitted? I can submit a PR, if this request is acceptable.
Thanks!

@timmixell thanks for the comment, if you can submit a PR that will be great


create and use a single TS client library entrypoint (index.ts)

Makes the library easier to use, while also keeping it modular.  I realize that this is a breaking change because the *.js files are now bundled into one index.js.  Good thing we're still pre 1.0.

I changed this to a WIP as we collaborate on this change.  I prefer structuring the install layout like I have it here in ./out/ with the server in ./bin and the jars in ./lib, so we don't need to go about this business of figuring out the version to find the right server directory.  The reduction in complexity means that we can also get rid of this Artifact class in server.ts which will clean up that code.

Also does this close #584 ?


Wrap html5HistoryAdapter inside a function

Fix #144

You should add yourself as a contributor to package.json too!

Done!

I have published https://www.npmjs.com/package/with-url-state/v/2.1.0


New metrics: Mean Directional Accuracy & Logarithm of the Accuracy Ratio

Hi!
How about some time series regression metrics which are not present in scikit-learn? So far, scikit-learn has the MAPE. This measure has some serious shortcomings, see here. If you are interested in this topic, the following could be good additions:
Mean directional accuracy
I think this one is especially interesting when you only want to predict the direction of your time series correctly. Up or down nothing else. A classic problem to apply this is when dealing with the prediction of stock prices. I don't really care if my model can tell me if the stock price rises by 10% or 20%, it's important that it rises. And the model won't output accurate percentages anyway. It makes it potentially easier to design a well-performing model according to this metric.
Logarithm of the accuracy ratio
Here, the author explains why it is a good measure. What I like about this measure: Usually, the MAPE punishes over and underestimating differently. If the actual value A is 2 and the forecast F is 1, the APE here is 0.5. If A=2 and F=4, the APE is 1. Two different scores, although the prediction is half or double the actual value, and I would like these errors to be the same. The Logarithm of the accuracy ratio does exactly that (0.48 in both cases). (By the way, the Mean directional accuracy does this, too.)
Another nice property is that the best constant prediction for some label vector y is the geometric mean of y. This is analog to the mean, which is the best constant prediction for the MSE metric, or the median for the MAD metric.
You can find my implementations here.
If you like, I can do a pull request.
Best
Robert

Brilliant, that would be nice!
Before you open a PR, there is already one on metrics, #672, and an issue, #671. Your metrics are not included as far as I can tell, but they would be nice additions.
However, since there was a bit of design discussion on the metrics interface (related to metrics that need training data), I would suggest to align with @RNKuhns and the PR to ensure we end up with a single metrics interface.
Other notes:

An interesting (other) discussion would also be whether we should make metrics composable, e.g., take any classification metric, and turn it into an up/down metric, or an up/down/mid metric as yours are. Where the user could select thresholds between up/down/mid.
should your second metric be the mean/average of logarithmic percentage errors, or the logarithm of mean percentage errors? If it is the first (as it seems), that's the same as the mean absolute error of forecasting the logarithmic series (because a logarithm of a fraction is a difference of logarithms). In that case, would it not be better to first take the logarithms of your series and just use MAE?

@Garve We have been discussing the interface for forecasting metrics in #672 and #712. Both of these could potentially be added since both just depend on the true and predicted data (along with optional weights and multioutput values like the propsed API in #672).
We are close to committing #672 and these could probably be added as a pull request on top of that once it is finished.
One question I had about the log-quotient metric is the squaring of the quotient. I was scanning through the source paper and missed the squared term there. It seems like this would cause the metric to penalize errors when the prediction is close to zero (so the quotient is close to zero) more rapidly than when the the error is due to the y_pred being > y_true.

In terms of code, at first glance it looks like it matches up pretty much exactly with what I've got in the other (soon to be) new metrics (this makes sense since we are both following the style of scikit-learn's regression metrics). So I think the log-quotient metric can probably be added with minor tweaks to handle cases where the true valeus are zero and also to the docstrings (including some additional information on use case the values the metric can take, etc. ) as long as @fkiraly and @mloning  think it makes sense.
The other main thing I'd note on my end, would be in the docstring it would be helpful to have a description of when users would want to use this metrics since other metrics like MASE also make up for some issues with MAPE and SMAPE and also work well for intermittent demand (don't have divide by zero issue when y_true = 0).
On the mean directional accuracy, and directional accuracy, @fkiraly makes a good point on potentially generalizing the directional accuracy metric. I think having a mean_directional_accuracy function is useful, but is also a specific case.
Pesaran and Timmerman (2009) discuss directional accuracy as a multicategory generalization of binary directional accuracy.
The (Blaskowitz and Herwartz) referenced in wikipedia entry for mean directional accuracy is also a interesting discussion of accounting for economic cost of directional accuracy (not just 1 or 0).
Maybe we could have a more general function that is used in the calculation of mean_directional_accuracy? That way users could choose different options and create their own scoring functions based on economic cost of incorrect directional accuracy.
I can post a potential function definition tomorrow.

Hi again!
Thanks for the feedback :)

Other notes:
* An interesting (other) discussion would also be whether we should make metrics composable, e.g., take any classification metric, and turn it into an up/down metric, or an up/down/mid metric as yours are. Where the user could select thresholds between up/down/mid.

That's indeed interesting! Do you know a good use-case for a "mean directional f1 score" for example?

* should your second metric be the mean/average of logarithmic percentage errors, or the logarithm of mean percentage errors? If it is the first (as it seems), that's the same as the mean absolute error of forecasting the logarithmic series (because a logarithm of a fraction is a difference of logarithms). In that case, would it not be better to first take the logarithms of your series and just use MAE?

Yeah, one could do that. But one could also argue that the MAPE is just the MAE + samples weights np.abs(1/y_true). And still, it is offered as a separate metric. I understand your point, of course :) it's a design choice about how far to go to make something more accessible to people that don't know the mathematical connections. I'm fine with whatever you people say since I'm still very new here.

@Garve, @RNKuhns, your discussion to me also highlights one additional thing:
We (will soon) have a lot of metrics implemented, but it is unlikely entirely clear to the user what all of these are. E.g., do you take log or fraction before or after taking the average, which average or of what the average is meant (squared or unsquared), and so on.
I do think we need a piece of documentation, e.g., markdown with TeX, that for each metric name or acronym fully spells out the definition in formulae, say in a set-up where you have forecasts $\widehat{y}_1,\dots, \widehat{y}_N$ and observations $y_1,\dots, y_N$.
Optimally, this comes with:

a statement what is the best uninformed predictor, i.e., constant prediction, in i.i.d. setting, and/or in the forecasting setting (if applicable, e.g., 1-step)
a taxonomy of metrics, e.g., separating genuine forecasting metrics from up/down or directional metrics

What do you think?

@RNKuhns, @Garve, would you like to ping me (plus each other) on the sktime slack for a quick align call for how to split the work and PR, plus possible design discussions? @mloning is on a short thesis writing sabattical but will be catching up.

Hi @Garve take a look at #745 and let us know if that would be useful for you!


AMBARI-25253. Missed support for abfs protocol.

What changes were proposed in this pull request?
Valid protocols list for view properties per-check has been extended with abfs protocol. Also ranger hive plugin uses abfs in default parameters during install and upgrade.
How was this patch tested?
Manual check.

Refer to this link for build results (access rights to CI server needed):
https://builds.apache.org/job/Ambari-Github-PullRequest-Builder/5150/
Test PASSed.


MutationBatcher uses BulkMutators' streaming.

Per design, MutationBatcher should admit mutations as soon as other
mutations finish, not by the time the whole batch exhausts its retry
limit. This PR implements exactly this via:

confirming mutations to the user as soon as we know they are done
admitting more mutations in such an event
releasing a slot for a next batch as soon as the first attempt
retry finishes.

This change is

I've managed to split it in 5 commits. You can find a preview of what I want to eventually merge here:
https://github.com/dopiera/google-cloud-cpp/commits/batching_split
I'm closing this PR and I'm going to open a fresh one for the first commit from that branch.


Set up sign up form JS

Adding JS to handle form submission and adding script link to main handlebar

https://github.com/otekolste/answer-hive/pull/61


Uncommon ELisp project structure

Could you please add support for uncommon ELisp project structure, e.g. if *.el source code files located not in root directory but in src one?

Does that not already work? In the README there is this example:
(undercover "*.el" "awesome-extensions/*.el" (:exclude "awesome-examples.el"))

so I think you could indicate "src/*.el" there?

Yes exactly. Thank you.


Building with Docker takes too much time

It takes so much time to build with Docker

Hey yeah first time it takes time, you can wait a little

使用 Docker 构建需要花费很多时间
需要多久呢我构建了十几个小时了

It takes so much time to build with Docker

How long will it take? I've been building for more than ten hours

It takes so much time to build with Docker

How long will it take? I've been building for more than ten hours

I found the problem. I had not enough space on my drive. Maybe it could also be because of slow internet connection.


Remove compiled js and make build from ts on package

This removes the compiled javascript from the library. During packaging and publishing the ts sources will be compiled so the package will still contain the javascript sources.

Can be updated later when the real features are merged - should be rebased on top of that.


Docs: Fix esm link in readme

Fixed in https://github.com/gulpjs/gulp/commit/25c1a28b19c174bef10d24e3e8fd3992364d28b0
We put the links at the bottom of the Readme


Pageload Improvements

As mentioned in #398 this PR should increase the pageload performance of the website. In my testing it boosts the pagespeed insights scores by about 20 - 25 for mobile. This is mainly through self-hosting all resources to reduce the number of DNS requests and TLS handshakes to external services.
My apologies for the number of commits being merged. I was trying one optimization at a time and thus needed lots of them to trigger a rebuild on Netlify.
If you have any questions about any of the changes please ping me and I can go over them. I really do need to learn how to make helpful commit messages.
Before:

After:

I'm afraid I've made a couple of more commits to this PR. I've started re factoring the semantic ui CSS to remove unused components - seems to have reduced the filesize by about 250k.

I'll try to have a proper look at this over the weekend, it looks good at first glance.
Just for clarity, are all these Semantic UI files just taken from https://github.com/Semantic-Org/Semantic-UI-CSS (with file extensions changes for SCSS)?

I'll try to have a proper look at this over the weekend, it looks good at first glance.
Just for clarity, are all these Semantic UI files just taken from https://github.com/Semantic-Org/Semantic-UI-CSS (with file extensions changes for SCSS)?

Sorry, should have clarified that one. They are all the files taken from the official download, just renamed so they can be imported.

Some initial thoughts:
* `_semantic.min.scss` should probably just be called `_semantic.scss`, since it's not minified any more.

* The `_site.scss` component has an import for the Google Fonts version of the Lato font - do we need to remove that?

  * Perhaps we could move the `font-face` definitions there? Then `_semantic.scss` could just be  for enabling/disabling chunks.

* It seems a bit weird that `static/assets` contains `js/semantic` and `semantic` - ideally I would like there to be an obvious seperation between our stuff and the stuff we've taken from Semantic UI, rather than it being spread across multiple folders.

* I don't believe we use `loader`, `placeholder`, `reveal`, `message`, `embed` or `video` - unless they're used under the hood by some of the JS stuff?

The fact that this is largely just a copy and paste from the official repo is nice - reduces the maintanance burden if we do pull these into the repo.

I've just pushed a commit up to address those issues. I totally agree on the separation of concerns and thank you for spotting the google fonts creeping back in. Looks like I might have been just a little too quick to push the refactor up :sweat_smile:.

Thank you so much for the PR!

Thank you so much for the PR!

Not a problem at all. I'm really glad I could help! I'm also glad we could manage to improve things in a way that doesn't add too much additional maintenance burden on you.
While I was going through I did spot a few minor changes that could be made to improve the accessibility of the page (mainly replacing the structural divs with more semantic equivalents). Would you be happy for me to have a play around with that when I next get some time and open another PR?
None of the a11y changes would alter the visual appearance of the page, just improve things for screen-reader users and crawlers.

Any accessibility improvements would be welcomed (even if they did alter the visual appearence, within reason)!
Similar to the performance stuff, we've made some improvements on that front (mainly around color contrast), but I'd definitely love to make things even better where possible.


require jupyterhub-0.8-d462e1c

There are some JupyterHub configuration fixes: https://github.com/jupyterhub/zero-to-jupyterhub-k8s/compare/5e087da...d462e1c

Thanks!


Adding Travis-CI building.

Closing this as the HDMI2USB-jahanzeb-firmware is no longer under development.
All active development is now on the HDMI2USB-misoc-firmware which supports both the Atlys and Opsis boards and has loads of other new features!


Object reference not set to an instance of an object.    at Microsoft.AspNetCore.DataProtection.RegistryPolicyResolver.<>c.<.ctor>b__2_0()

Should handle null check gracefully and provide meaningful action when run into this scenario.
'System.RA' reported Warning for property 'ReplicaOpenStatus'.
Replica had multiple failures during open on Node.1. API call: IStatelessServiceInstance.Open(); Error = System.NullReferenceException (-2147467261)
Object reference not set to an instance of an object.
at Microsoft.AspNetCore.DataProtection.RegistryPolicyResolver.<>c.<.ctor>b__2_0()
at Microsoft.AspNetCore.DataProtection.RegistryPolicyResolver.ResolvePolicy()
at Microsoft.AspNetCore.DataProtection.Internal.KeyManagementOptionsSetup.Configure(KeyManagementOptions options)
at Microsoft.Extensions.Options.OptionsFactory1.Create(String name)    at System.Lazy1.CreateValue()
at System.Lazy1.LazyInitValue()    at Microsoft.AspNetCore.DataProtection.KeyManagement.XmlKeyManager..ctor(IOptions1 keyManagementOptions, IActivator activator, ILoggerFactory loggerFactory, IDefaultKeyStorageDirectories keyStorageDirectories)
at Microsoft.AspNetCore.DataProtection.KeyManagement.XmlKeyManager..ctor(IOptions`1 keyManagementOptions, IActivator activator, ILoggerFactory loggerFactory)
--- End of stack trace from previous location where exception was thrown ---
at System.Runtime.ExceptionServices.ExceptionDispatchInfo.Throw()
at Microsoft.Extensions.DependencyInjection.ServiceLookup.CallSiteRuntimeResolver.VisitConstructor(ConstructorCallSite constructorCallSite, ServiceProviderEngineScope scope)
at Microsoft.Extensions.DependencyInjection.ServiceLookup.CallSiteRuntimeResolver.VisitScoped(ScopedCallSite scopedCallSite, ServiceProviderEngineScope scope)
at Microsoft.Extensions.DependencyInjection.ServiceLookup.CallSiteRuntimeResolver.VisitConstructor(ConstructorCallSite constructorCallSite, ServiceProviderEngineScope scope)
at Microsoft.Extensions.DependencyInjection.ServiceLookup.CallSiteRuntimeResolver.VisitScoped(ScopedCallSite scopedCallSite, ServiceProviderEngineScope scope)
at Microsoft.Extensions.DependencyInjection.ServiceLookup.CallSiteRuntimeResolver.VisitConstructor(ConstructorCallSite constructorCallSite, ServiceProviderEngineScope scope)
at Microsoft.Extensions.DependencyInjection.ServiceLookup.CallSiteRuntimeResolver.VisitScoped(ScopedCallSite scopedCallSite, ServiceProviderEngineScope scope)
at Microsoft.Extensions.DependencyInjection.ServiceLookup.CallSiteRuntimeResolver.VisitIEnumerable(IEnumerableCallSite enumerableCallSite, ServiceProviderEngineScope scope)
at Microsoft.Extensions.DependencyInjection.ServiceLookup.DynamicServiceProviderEngine.<>c__DisplayClass1_0.b__0(ServiceProviderEngineScope scope)
at Microsoft.Extensions.DependencyInjection.ServiceProviderServiceExtensions.GetService[T](IServiceProvider provider)
at Microsoft.AspNetCore.Hosting.Internal.WebHost.BuildApplication()
at Microsoft.AspNetCore.Hosting.Internal.WebHost.d__26.MoveNext()
--- End of stack trace from previous location where exception was thrown ---
at System.Runtime.ExceptionServices.ExceptionDispatchInfo.Throw()
at System.Runtime.CompilerServices.TaskAwaiter.HandleNonSuccessAndDebuggerNotification(Task task)
at Microsoft.AspNetCore.Hosting.Internal.WebHost.Start()
at Microsoft.ServiceFabric.Services.Communication.AspNetCore.AspNetCoreCommunicationListener.OpenAsync(CancellationToken cancellationToken)
at Microsoft.PowerApps.CoreFramework.AspNetCore.LoggingCommunicationListener.<>c__DisplayClass6_0.<b__0>d.MoveNext()
--- End of stack trace from previous location where exception was thrown ---
at System.Runtime.ExceptionServices.ExceptionDispatchInfo.Throw()
at System.Runtime.CompilerServices.TaskAwaiter.HandleNonSuccessAndDebuggerNotification(Task task)

We tracked this to a dependency issue that caused Registry.LocalMachine. to return null.