by

Where communities thrive


  • Join over 1.5M+ people
  • Join over 100K+ communities
  • Free without limits
  • Create your own community
People
Activity
  • May 20 05:04

    ocramz on gh-pages

    Add `sampling` (compare)

  • May 19 09:03

    ocramz on gh-pages

    Add kdt, Supervised Learning se… (compare)

  • Apr 14 01:32
    tonyday567 removed as member
  • Jan 30 07:37

    ocramz on gh-pages

    Add arrayfire (compare)

  • Jan 02 12:51

    ocramz on gh-pages

    add inliterate (compare)

  • Jan 02 12:43

    ocramz on gh-pages

    update hvega entry (compare)

  • Jul 01 2019 09:43
    dmvianna added as member
  • Jun 15 2019 04:55

    ocramz on gh-pages

    Add pcg-random (compare)

  • Jun 14 2019 16:08
    ocramz labeled #42
  • Jun 14 2019 16:08
    ocramz labeled #42
  • Jun 14 2019 16:08
    ocramz labeled #42
  • Jun 14 2019 16:08
    ocramz labeled #42
  • Jun 14 2019 16:08
    ocramz labeled #42
  • Jun 14 2019 16:08
    ocramz labeled #42
  • Jun 14 2019 16:08
    ocramz opened #42
  • Jun 14 2019 16:08
    ocramz opened #42
  • Jun 06 2019 18:21

    ocramz on gh-pages

    Fix graphite link Merge pull request #41 from alx… (compare)

  • Jun 06 2019 18:21
    ocramz closed #41
  • Jun 06 2019 18:21
    ocramz closed #41
  • Jun 06 2019 17:32
    alx741 opened #41
Adam Conner-Sax
@adamConnerSax
@DougBurke Right! Wasn’t trying to get you to do any work! Just trying to get my head around what it might look like. I actually think the “unrepresentable…” bit belongs in a layer above anyway. Probably static vs Dynamic does as well. And doing it that way leaves more room for experimentation.
@o1lo01ol1o An unrelated question: Fiddling with kernmantle has made me realize that I don’t really understand when to use Rec vs. ARec in Frames/Vinyl and that is probably costing performance in some important places. My stuff is not super performance-limited, partly because of caching and partly because all of my costly bits are not in Frames but in multi-level regression runs after I count and copy the data out to matrices, etc. Still, I’d like to get it right, especially in frames-mapreduce. Do you have a quick explanation for where it might be worth a presumptive conversion to ARec? Or how to think about it?
Doug Burke
@DougBurke
hvega is just really (key,value)piled on (key,value)until you get down to JSON. It may be affecting the way I think ;-) Anyway, I have to go and listen to a talk on "Time Delay Cosmography Toward the Hubble Constant Estimation: Past, Present, and Future." so will be off-line a bit. PS I don't want to stop people coming up with improvements for hvega, I've just not got a lot of time for it at the moment.
Adam Conner-Sax
@adamConnerSax
@DougBurke I don’t mind the unrepresentable states as much because my workflow often amounts to a ghcid in a terminal and rerunning on even small changes. Since all my slow calc results are cached in knit-haskell, the chart fiddling is fast. But I suppose preventing some common issues via compile errors would be nice.
@Enjoy your talk!
@DougBurke ^
Tim Pierson
@o1lo01ol1o
@adamConnerSax The profiling I've done on our Frames/Vinyl pipelines have so far told me that the bottlenecks have been pretty far away from field accessors, so I haven't needed to move over from (X)Rec to ARec. I would guess that would depend entirely on the number of fields and the conditions by which you access them? (That said, all of our pipelines are built on streamly because of their size and the concurrent AheadT, so I'm not sure you wouldn't see more of an effect if all the data wasn't already to a degree bounded on IO . . . )
Adam Conner-Sax
@adamConnerSax
@o1lo01ol1o Thanks! I like streamly. I haven’t used it as much, though it’s at the core of the default map-reduce-fold engine. And I couldn’t quite get the concurrency bit working when I tried to use it for concurrent flavors of map-reduce. I should take another shot, I guess. I think I need better benchmarking...
Tim Pierson
@o1lo01ol1o
If you're "splitting" and "merging" streams, I'd check that the semantics are actually doing what you think they are; the api is not a fool-proof as pipes and some operations require using a different primative. (Also, make sure you're using 0.7.1 and and you have the -fstrict-dicts arg as a ghc flag. There's a nasty memory leak that can happen with the constraint dictionaries otherwise.)
Adam Conner-Sax
@adamConnerSax
@o1lo01ol1o Yeah. I’ll have to try again with 0.7.1. I thought I had the primitives right, as well as the switching stream types—some parts needed to be serial—but maybe it’s worth another shot.
Tony Day
@tonyday567

@o1lo01ol1o I've been working with a lhs loop for a while now, and I'm very happy with the flow. Lately, I've tended to construct a separate document to the lhs file I'm working in rather than inject output straight in, mostly because some tooling doesn't like lhs as much as hs, but I miss having the answer right there next to the code.

I tend to have a project loop that produces output markdown which is rendered via a hugo server. Cheesey I know, but it works.

Since we're talking charts, I just have to plug chart-svg. It isn't production, just a pet hobby, but it's not that fragile, and I'm getting happy with the api. It's the opposite corner of the problem space to hvega-lite - it outputs svg, everything is customisable, and it's haskell all the way down. It's not interactive yet, but I'm looking at how to ramp that up.
Tony Day
@tonyday567
@adamConnerSax You can create tooltips in SVG, I think. Just needs a browser to do the right thing.
Tony Day
@tonyday567
@o1lo01ol1o and whilst we're chatting and whilst I'm plugging, you should have a peak at numhask-array. I added in a dynamic array with the same api to the fixed array, a hmatrix version cause it's the fastest we have, and internalised all the type-level shape logic avoiding singletons. I think it has all the primitive operations and is certaintly in the spirit of what we discussed and started working on long ago. Just took some time! Not production ready but close enough for my personal use. It works I tell y'all! Just needs some eyeballs and usage to refine the api. https://github.com/tonyday567/numhask-array/
Rshad Zhran
@rash_zk_twitter
Hi Haskellers!
I'm totally new to Haskell, coming with a Machine Learning background, and really want to start with Haskell. But I'm asking myself, why Haskell and not Scala, if Scala already provide a huge area of already implemented algorithms for data science?
Marco Z
@ocramz
@rash_zk_twitter I'll give my own answer: Haskell is a purely functional language, offering a different way of thinking about programs than object orientation. Not directly comparable to Scala in this sense.
In addition, a number of the features of the language and the runtime make it possible to get both fast programs and safe project iteration
Rshad Zhran
@rash_zk_twitter
Ok. Thank you @ocramz
Bogdan Penkovsky
@masterdezign

@rash_zk_twitter Hello and welcome to the community! Here is a recent article Top Programming Languages for AI Engineers in 2020 you might find helpful: https://towardsdatascience.com/top-programming-languages-for-ai-engineers-in-2020-33a9f16a80b0

SQL, Lisp , and Haskell are the only programming languages that I’ve seen where one spends more time thinking than typing.
-Philip Greenspun

Tim Pierson
@o1lo01ol1o
@rash_zk_twitter If you're familiar with (py)torch, you might look at some of the work on hasktorch: https://github.com/hasktorch/hasktorch
Rshad Zhran
@rash_zk_twitter
Perfect. Thank you both @masterdezign @o1lo01ol1o . I'll be reading these sources soon.
Alejandro Alcalde
@elbaulp
Hello!
Alejandro Alcalde
@elbaulp
It is only me the one that can not see the roadmap?: http://www.datahaskell.org/docs/community/roadmap.html
Rshad Zhran
@rash_zk_twitter
Neither me. It's empty!
Tony Day
@tonyday567
We worked out that there are no roads where we’re heading.
Alejandro Alcalde
@elbaulp
One question, I am learning Haskell right now and would be very interested in contributing to this community, I have some experience with ML and FP (With scala), is there any easy, beginner friendly topic that newbies can help with?
Marco Z
@ocramz

We worked out that there are no roads where we’re heading.

:D :D :D :D :100:

@elbaulp Hi and welcome! beginner friendly things .. can't think of any atm. What kind of problems are you interested in usually?
Alejandro Alcalde
@elbaulp
@ocramz ML in general, FP, Data science, also Data Structures, I saw on your library that you are also developing a library for data structures.
Marco Z
@ocramz
which one?
Alejandro Alcalde
@elbaulp
@ocramz the section “Data Structures” in here for example. http://www.datahaskell.org/docs/community/current-environment.html#data-structures
Marco Z
@ocramz
@elbaulp the current-environment page is a directory of libraries generally built by others
Alejandro Alcalde
@elbaulp
@ocramz I see... I will focus by now in learning Haskell and later on will try to see if I can contribute.
Ada922
@Ada922

Tomorrow Algorand is hosting a live webinar on implementing the world’s first CBDC. I have submitted a few questions and will be attending. This is a great way to spend your quarantine :)

Register and submit questions here: https://register.gotowebinar.com/register/5273854108710515471

Karl-Oskar Rikås
@funrep
anyone familiar with random-fu who knows why gamma does not define a pdf?
3 replies
Alexey Kuleshevich
@lehins
@funrep Not sure, but I know a person who might know the answer to that question. @idontgetoutmuch any ideas? ^
Karl-Oskar Rikås
@funrep
not a big issue because it's defined in the statistics package, just wondered in case there is some mathematical reason im unaware of :)
anyone know how I can make a set a tensor.require_grad = True in hasktorch?
Karl-Oskar Rikås
@funrep
https://gist.github.com/funrep/ced4c79fd97cbc945e8a5a83c4b30dc8 not really sure I understand how to use the grad API, i want to perform AD using hasktorch to compute the gradient in stochastic gradient descent
would be cool to use the optimizer api directly, but starting out with just the grad as I didn't find any bindings to zero_grad
Austin Huang
@austinvhuang
Screenshot 2020-05-31 at 12.28.18 PM.png
@funrep Just saw this. I'm in the middle of writing up a step-by-step tutorial in fact... here's a rough draft of the ad intro
Screenshot 2020-05-31 at 12.28.36 PM.png
super early version... this is for untyped tensors, working on sections for typed tensors. will have more on optimization but hopefully this at least gets the basic ideas on AD and how requires_grad looks like from the Haskell side of things
Karl-Oskar Rikås
@funrep
@austinvhuang hey thanks a lot, where will the tutorial be published?
Marco Z
@ocramz
@funrep you could use the 'gamma' package and implement the Gamma pdf from the Gamma function
Austin Huang
@austinvhuang
@funrep will eventually get the writeup on arxiv, but I think I'll also make a markdown version to include in the repo. there's a section that's basically a port of pytorch's 60 min blitz.
Bogdan Penkovsky
@masterdezign
Hi @austinvhuang, just wonder if the tutorial is already available
Adam Conner-Sax
@adamConnerSax
Hi! I put a new version of “knit-haskell” (https://hackage.haskell.org/package/knit-haskell-0.8.0.0) on hackage today. Adds a few features. The most useful one, for my workflow, is a caching system. Allows caching of anything serializable to an in-memory map and also disk. Has some basic but useful support for tracking when cached items need to be rebuilt. See the readme and examples for more info! All feedback/ideas most welcome.