[{"data":1,"prerenderedAt":277},["ShallowReactive",2],{"project-22174412":3},{"id":4,"name":5,"line":6,"line_source":7,"title":8,"url":9,"domain":10,"maker":11,"posted_at":12,"year":13,"points":14,"comments":15,"rank_in_year":16,"shown_in_year":17,"top":18,"tier":19,"category":20,"subcategory":21,"format":22,"keywords":23,"reception":29,"sentiment":30,"stance_mix":31,"scored_comments":36,"aspects":37,"strip":43,"post_text":45,"what":46,"said":98,"maker_in_thread":191,"shape":194,"grid":198,"attempts":238,"same_week":239,"maker_shows":44,"maker_hidden":269,"reader_version":270,"card":271},"22174412","Thinc","A new deep learning library by the makers of spaCy and FastAPI","title","Show HN: Thinc, a new deep learning library by the makers of spaCy and FastAPI","https:\u002F\u002Fthinc.ai\u002F","thinc.ai","tiangolo",1580248091,2020,250,17,189,3028,7,"legend","languages","deep learning library","library",[24,25,26,27,28],"deep learning","type hints","numpy","pytorch","machine learning library","curious",0.042,{"positive":32,"neutral":33,"mixed":34,"critical":35},5,8,1,2,16,{"idea":38,"design":40,"execution":41,"performance":42},{"positive":35,"critical":39},0,{"positive":34,"critical":34},{"positive":34,"critical":39},{"positive":39,"critical":34},[32,32,32,32,44,44,39,44,44,44,44,32,44,44,34,44,34],3,null,{"problem":47,"audience":55,"pricing":45,"motivation":64,"time_to_build":45,"stack":68,"openness":95,"stage":96,"team_size":97},{"value":48,"source":49,"evidence":50},"Lets developers build deep learning models that work alongside existing frameworks","commenter",[51],{"id":52,"by":53,"text":54},"22174710","syllogism","I've been working on various versions of Thinc for a long time --- it's always been the name for the machine learning code powering spaCy. But previous versions really weren't…",{"value":56,"source":57,"evidence":58},"Deep learning developers and Python NLP practitioners","inferred",[59,60],{"id":52,"by":53,"text":54},{"id":61,"by":62,"text":63},"22178381","kriro","I'm going to try this simply because spaCy is so great. It's my goto for NLP in different languages (notably German) and a joy to work with.",{"value":65,"source":49,"evidence":66},"Maker wanted a new, usable version of the library powering spaCy",[67],{"id":52,"by":53,"text":54},[69,77,83,87,91],{"value":70,"source":71,"evidence":72},"Python","maker",[73,74],{"id":52,"by":53,"text":54},{"id":75,"by":11,"text":76},"22174662","FastAPI creator here. If you've used FastAPI you'll probably like Thinc. It uses Python type hints extensively and even includes a Mypy plugin. So, you'll get nice and clear…",{"value":78,"source":49,"evidence":79},"CuPy",[80],{"id":81,"by":53,"text":82},"22178495","You can write custom CUDA kernels, and I've written a few to support operations over our ragged format. Actually Thinc makes it pretty easy to optimise a specific bit of code…",{"value":84,"source":49,"evidence":85},"Cython",[86],{"id":81,"by":53,"text":82},{"value":88,"source":49,"evidence":89},"CUDA",[90],{"id":81,"by":53,"text":82},{"value":92,"source":49,"evidence":93},"NumPy",[94],{"id":52,"by":53,"text":54},"unknown","launched","company",{"praise":99,"objections":117,"requests":138,"questions":146,"alternatives":172},[100,108,113],{"value":101,"source":49,"evidence":102},"Type hints and mypy plugin make numpy and tensor code easier to check",[103,104],{"id":75,"by":11,"text":76},{"id":105,"by":106,"text":107},"22177003","ZeroCool2u","Damn, SpaCy and FastAPI, not to mention Prodigy, make up a huge percentage of our teams development stack. It took us a while to even realize that tiangolo and syllogism work…",{"value":109,"source":71,"evidence":110},"Wrapping PyTorch, TensorFlow and MXNet models within one network",[111,112],{"id":75,"by":11,"text":76},{"id":52,"by":53,"text":54},{"value":114,"source":49,"evidence":115},"Simple, functional design praised as beautiful and productive",[116],{"id":105,"by":106,"text":107},[118,125,132],{"value":119,"source":49,"evidence":120},"Performance concerns from no custom CUDA kernels and no compiled optimisation",[121],{"id":122,"by":123,"text":124},"22178290","kmbriedis","So no custom CUDA kernels, just CuPy? Isn't that a performance issue? (Based on installation notes)",{"value":126,"source":49,"evidence":127},"Seems more complicated and confusing than plain PyTorch",[128],{"id":129,"by":130,"text":131},"22179719","m0zg","I must be missing something but this looks more complicated and confusing than plain PyTorch.",{"value":133,"source":49,"evidence":134},"Type system for variadic tensor types is difficult",[135],{"id":136,"by":53,"text":137},"22178530","The best answer is, \"with some difficulty\". I've written a bit about the struggles here: https:\u002F\u002Fthinc.ai\u002Fdocs\u002Fusage-type-checking#model-types There are basically two approaches,…",[139],{"value":140,"source":49,"evidence":141},"Multi-GPU and multi-node training support",[142],{"id":143,"by":144,"text":145},"22176992","yzh","But Keras does not support PyTorch or MXNet. I think the design of Model, Block, and Layer like this is very intuitive and shared among several frameworks. I wish it could have…",[147,158,165],{"value":148,"source":49,"evidence":149},"How does it compare to TensorFlow, Keras, PyTorch and fast.ai",[150,154],{"id":151,"by":152,"text":153},"22176554","guybedo","how does it compare to Tensorflow, Keras, PyTorch ?",{"id":155,"by":156,"text":157},"22177562","sharp11","... and fast.ai?",{"value":159,"source":49,"evidence":160},"Is it a Keras replacement",[161],{"id":162,"by":163,"text":164},"22174704","amrrs","Just for clarification, is it like a Keras replacement?",{"value":166,"source":49,"evidence":167},"How does the type system handle variadic tensor types",[168],{"id":169,"by":170,"text":171},"22176851","ipsum2","Interesting project! How does the type system work with variadic types and arbitrary tensor manipulations? e.g. a function transforms tensor[A, B] -> tensor[A].",[173,178,183,187],{"value":174,"source":49,"evidence":175},"Keras",[176,177],{"id":162,"by":163,"text":164},{"id":143,"by":144,"text":145},{"value":179,"source":49,"evidence":180},"PyTorch",[181,182],{"id":151,"by":152,"text":153},{"id":129,"by":130,"text":131},{"value":184,"source":49,"evidence":185},"TensorFlow",[186],{"id":151,"by":152,"text":153},{"value":188,"source":49,"evidence":189},"fast.ai",[190],{"id":155,"by":156,"text":157},{"comments":34,"answered":39,"key":192},[193],{"id":75,"text":76},{"commenters":195,"max_depth":44,"maker_replies":34,"first_comment_mins":196,"lifespan_hours":197},13,23,22,[199,201,205,206,208,212,214,216,218,220,222,224,227,230,231,233,235],[52,39,32,200,53,39],"project\u002Fpositive\u002Fidea",[202,39,32,203,204,39],"22177903","maker\u002Fpositive\u002Fdesign","oddnearfuture",[61,39,32,200,62,39],[105,34,32,207,106,39],"maker\u002Fpositive\u002Fexecution",[209,34,44,210,211,39],"22177922","maker\u002Fneutral\u002Fnone","iandanforth",[213,34,44,210,106,39],"22180940",[75,35,39,215,11,34],"project\u002Fpositive\u002Fdesign",[162,35,44,217,163,39],"project\u002Fneutral\u002Fidea",[143,35,44,219,144,39],"project\u002Fmixed\u002Fidea",[169,44,44,221,170,39],"project\u002Fneutral\u002Fdesign",[136,44,44,223,53,39],"maker\u002Fneutral\u002Fdesign",[225,44,32,226,170,39],"22184993","maker\u002Fpositive\u002Fnone",[151,228,44,229,152,39],4,"project\u002Fneutral\u002Fnone",[155,228,44,229,156,39],[122,32,34,232,123,39],"project\u002Fcritical\u002Fperformance",[81,32,44,234,53,39],"maker\u002Fneutral\u002Fperformance",[129,236,34,237,130,39],6,"project\u002Fcritical\u002Fdesign",[],[240,245,250,255,260,265],{"id":241,"name":242,"points":243,"category":244},"22152736","usb-hubs.org",560,"web_saas",{"id":246,"name":247,"points":248,"category":249},"22154088","botium-speech-processing",438,"ai",{"id":251,"name":252,"points":253,"category":254},"22128385","Women Make",345,"consumer_social",{"id":256,"name":257,"points":258,"category":259},"22164212","Binarysearch.io",279,"learning_science",{"id":261,"name":262,"points":263,"category":264},"22139975","Postgresqlco.nf",223,"dev_tools",{"id":266,"name":267,"points":268,"category":244},"22145168","Userbase",206,false,"v2",{"id":272,"name":5,"line":6,"ai":269,"cat":20,"year":13,"points":14,"comments":15,"rec":29,"s":273,"top":18,"kw":274,"maker":11,"domain":10,"tier":19,"attempts":39,"strip":275,"url":9,"mix":276,"praise":101,"objection":119,"sub":21},22174412,0.04,[24,25,26,27,28],"55553303333533131",[32,33,34,35],1794036585924]