11Visualizing document content using language structure
- 格式:pdf
- 大小:986.00 KB
- 文档页数:8
Beyond Reason CodesA Blueprint for Human-Centered,Low-Risk AutoML H2O.ai Machine Learning Interpretability TeamH2O.aiMarch21,2019ContentsBlueprintEDABenchmarkTrainingPost-Hoc AnalysisReviewDeploymentAppealIterateQuestionsBlueprintThis mid-level technical document provides a basic blueprint for combining the best of AutoML,regulation-compliant predictive modeling,and machine learning research in the sub-disciplines of fairness,interpretable models,post-hoc explanations,privacy and security to create a low-risk,human-centered machine learning framework.Look for compliance mode in Driverless AI soon.∗Guidance from leading researchers and practitioners.Blueprint†EDA and Data VisualizationKnow thy data.Automation implemented inDriverless AI as AutoViz.OSS:H2O-3AggregatorReferences:Visualizing Big DataOutliers through DistributedAggregation;The Grammar ofGraphicsEstablish BenchmarksEstablishing a benchmark from which to gauge improvements in accuracy,fairness, interpretability or privacy is crucial for good(“data”)science and for compliance.Manual,Private,Sparse or Straightforward Feature EngineeringAutomation implemented inDriverless AI as high-interpretabilitytransformers.OSS:Pandas Profiler,Feature ToolsReferences:Deep Feature Synthesis:Towards Automating Data ScienceEndeavors;Label,Segment,Featurize:A Cross Domain Framework forPrediction EngineeringPreprocessing for Fairness,Privacy or SecurityOSS:IBM AI360References:Data PreprocessingTechniques for Classification WithoutDiscrimination;Certifying andRemoving Disparate Impact;Optimized Pre-processing forDiscrimination Prevention;Privacy-Preserving Data MiningRoadmap items for H2O.ai MLI.Constrained,Fair,Interpretable,Private or Simple ModelsAutomation implemented inDriverless AI as GLM,RuleFit,Monotonic GBM.References:Locally InterpretableModels and Effects Based onSupervised Partitioning(LIME-SUP);Explainable Neural Networks Based onAdditive Index Models(XNN);Scalable Bayesian Rule Lists(SBRL)LIME-SUP,SBRL,XNN areroadmap items for H2O.ai MLI.Traditional Model Assessment and DiagnosticsResidual analysis,Q-Q plots,AUC andlift curves confirm model is accurateand meets assumption criteria.Implemented as model diagnostics inDriverless AI.Post-hoc ExplanationsLIME,Tree SHAP implemented inDriverless AI.OSS:lime,shapReferences:Why Should I Trust You?:Explaining the Predictions of AnyClassifier;A Unified Approach toInterpreting Model Predictions;PleaseStop Explaining Black Box Models forHigh Stakes Decisions(criticism)Tree SHAP is roadmap for H2O-3;Explanations for unstructured data areroadmap for H2O.ai MLI.Interlude:The Time–Tested Shapley Value1.In the beginning:A Value for N-Person Games,19532.Nobel-worthy contributions:The Shapley Value:Essays in Honor of Lloyd S.Shapley,19883.Shapley regression:Analysis of Regression in Game Theory Approach,20014.First reference in ML?Fair Attribution of Functional Contribution in Artificialand Biological Networks,20045.Into the ML research mainstream,i.e.JMLR:An Efficient Explanation ofIndividual Classifications Using Game Theory,20106.Into the real-world data mining workflow...finally:Consistent IndividualizedFeature Attribution for Tree Ensembles,20177.Unification:A Unified Approach to Interpreting Model Predictions,2017Model Debugging for Accuracy,Privacy or SecurityEliminating errors in model predictions bytesting:adversarial examples,explanation ofresiduals,random attacks and“what-if”analysis.OSS:cleverhans,pdpbox,what-if toolReferences:Modeltracker:RedesigningPerformance Analysis Tools for MachineLearning;A Marauder’s Map of Security andPrivacy in Machine Learning:An overview ofcurrent and future research directions formaking machine learning secure and privateAdversarial examples,explanation ofresiduals,measures of epistemic uncertainty,“what-if”analysis are roadmap items inH2O.ai MLI.Post-hoc Disparate Impact Assessment and RemediationDisparate impact analysis can beperformed manually using Driverless AIor H2O-3.OSS:aequitas,IBM AI360,themisReferences:Equality of Opportunity inSupervised Learning;Certifying andRemoving Disparate ImpactDisparate impact analysis andremediation are roadmap items forH2O.ai MLI.Human Review and DocumentationAutomation implemented as AutoDocin Driverless AI.Various fairness,interpretabilityand model debugging roadmapitems to be added to AutoDoc.Documentation of consideredalternative approaches typicallynecessary for compliance.Deployment,Management and MonitoringMonitor models for accuracy,disparateimpact,privacy violations or securityvulnerabilities in real-time;track modeland data lineage.OSS:mlflow,modeldb,awesome-machine-learning-opsmetalistReference:Model DB:A System forMachine Learning Model ManagementBroader roadmap item for H2O.ai.Human AppealVery important,may require custom implementation for each deployment environment?Iterate:Use Gained Knowledge to Improve Accuracy,Fairness, Interpretability,Privacy or SecurityImprovements,KPIs should not be restricted to accuracy alone.Open Conceptual QuestionsHow much automation is appropriate,100%?How to automate learning by iteration,reinforcement learning?How to implement human appeals,is it productizable?ReferencesThis presentation:https:///navdeep-G/gtc-2019/blob/master/main.pdfDriverless AI API Interpretability Technique Examples:https:///h2oai/driverlessai-tutorials/tree/master/interpretable_ml In-Depth Open Source Interpretability Technique Examples:https:///jphall663/interpretable_machine_learning_with_python https:///navdeep-G/interpretable-ml"Awesome"Machine Learning Interpretability Resource List:https:///jphall663/awesome-machine-learning-interpretabilityAgrawal,Rakesh and Ramakrishnan Srikant(2000).“Privacy-Preserving Data Mining.”In:ACM Sigmod Record.Vol.29.2.URL:/cs/projects/iis/hdb/Publications/papers/sigmod00_privacy.pdf.ACM,pp.439–450.Amershi,Saleema et al.(2015).“Modeltracker:Redesigning Performance Analysis Tools for Machine Learning.”In:Proceedings of the33rd Annual ACM Conference on Human Factors in Computing Systems.URL: https:///en-us/research/wp-content/uploads/2016/02/amershi.CHI2015.ModelTracker.pdf.ACM,pp.337–346.Calmon,Flavio et al.(2017).“Optimized Pre-processing for Discrimination Prevention.”In:Advances in Neural Information Processing Systems.URL:/paper/6988-optimized-pre-processing-for-discrimination-prevention.pdf,pp.3992–4001.Feldman,Michael et al.(2015).“Certifying and Removing Disparate Impact.”In:Proceedings of the21th ACM SIGKDD International Conference on Knowledge Discovery and Data Mining.URL:https:///pdf/1412.3756.pdf.ACM,pp.259–268.Hardt,Moritz,Eric Price,Nati Srebro,et al.(2016).“Equality of Opportunity in Supervised Learning.”In: Advances in neural information processing systems.URL:/paper/6374-equality-of-opportunity-in-supervised-learning.pdf,pp.3315–3323.Hu,Linwei et al.(2018).“Locally Interpretable Models and Effects Based on Supervised Partitioning (LIME-SUP).”In:arXiv preprint arXiv:1806.00663.URL:https:///ftp/arxiv/papers/1806/1806.00663.pdf.Kamiran,Faisal and Toon Calders(2012).“Data Preprocessing Techniques for Classification Without Discrimination.”In:Knowledge and Information Systems33.1.URL:https:///content/pdf/10.1007/s10115-011-0463-8.pdf,pp.1–33.Kanter,James Max,Owen Gillespie,and Kalyan Veeramachaneni(2016).“Label,Segment,Featurize:A Cross Domain Framework for Prediction Engineering.”In:Data Science and Advanced Analytics(DSAA),2016 IEEE International Conference on.URL:/static/papers/DSAA_LSF_2016.pdf.IEEE,pp.430–439.Kanter,James Max and Kalyan Veeramachaneni(2015).“Deep Feature Synthesis:Towards Automating Data Science Endeavors.”In:Data Science and Advanced Analytics(DSAA),2015.366782015.IEEEInternational Conference on.URL:https:///EVO-DesignOpt/groupWebSite/uploads/Site/DSAA_DSM_2015.pdf.IEEE,pp.1–10.Keinan,Alon et al.(2004).“Fair Attribution of Functional Contribution in Artificial and Biological Networks.”In:Neural Computation16.9.URL:https:///profile/Isaac_Meilijson/publication/2474580_Fair_Attribution_of_Functional_Contribution_in_Artificial_and_Biological_Networks/links/09e415146df8289373000000/Fair-Attribution-of-Functional-Contribution-in-Artificial-and-Biological-Networks.pdf,pp.1887–1915.Kononenko,Igor et al.(2010).“An Efficient Explanation of Individual Classifications Using Game Theory.”In: Journal of Machine Learning Research11.Jan.URL:/papers/volume11/strumbelj10a/strumbelj10a.pdf,pp.1–18.Lipovetsky,Stan and Michael Conklin(2001).“Analysis of Regression in Game Theory Approach.”In:Applied Stochastic Models in Business and Industry17.4,pp.319–330.Lundberg,Scott M.,Gabriel G.Erion,and Su-In Lee(2017).“Consistent Individualized Feature Attribution for Tree Ensembles.”In:Proceedings of the2017ICML Workshop on Human Interpretability in Machine Learning(WHI2017).Ed.by Been Kim et al.URL:https:///pdf?id=ByTKSo-m-.ICML WHI2017,pp.15–21.Lundberg,Scott M and Su-In Lee(2017).“A Unified Approach to Interpreting Model Predictions.”In: Advances in Neural Information Processing Systems30.Ed.by I.Guyon et al.URL:/paper/7062-a-unified-approach-to-interpreting-model-predictions.pdf.Curran Associates,Inc.,pp.4765–4774.Papernot,Nicolas(2018).“A Marauder’s Map of Security and Privacy in Machine Learning:An overview of current and future research directions for making machine learning secure and private.”In:Proceedings of the11th ACM Workshop on Artificial Intelligence and Security.URL:https:///pdf/1811.01134.pdf.ACM.Ribeiro,Marco Tulio,Sameer Singh,and Carlos Guestrin(2016).“Why Should I Trust You?:Explaining the Predictions of Any Classifier.”In:Proceedings of the22nd ACM SIGKDD International Conference on Knowledge Discovery and Data Mining.URL:/kdd2016/papers/files/rfp0573-ribeiroA.pdf.ACM,pp.1135–1144.Rudin,Cynthia(2018).“Please Stop Explaining Black Box Models for High Stakes Decisions.”In:arXiv preprint arXiv:1811.10154.URL:https:///pdf/1811.10154.pdf.Shapley,Lloyd S(1953).“A Value for N-Person Games.”In:Contributions to the Theory of Games2.28.URL: http://www.library.fa.ru/files/Roth2.pdf#page=39,pp.307–317.Shapley,Lloyd S,Alvin E Roth,et al.(1988).The Shapley Value:Essays in Honor of Lloyd S.Shapley.URL: http://www.library.fa.ru/files/Roth2.pdf.Cambridge University Press.Vartak,Manasi et al.(2016).“Model DB:A System for Machine Learning Model Management.”In: Proceedings of the Workshop on Human-In-the-Loop Data Analytics.URL:https:///~matei/papers/2016/hilda_modeldb.pdf.ACM,p.14.Vaughan,Joel et al.(2018).“Explainable Neural Networks Based on Additive Index Models.”In:arXiv preprint arXiv:1806.01933.URL:https:///pdf/1806.01933.pdf.Wilkinson,Leland(2006).The Grammar of Graphics.—(2018).“Visualizing Big Data Outliers through Distributed Aggregation.”In:IEEE Transactions on Visualization&Computer Graphics.URL:https:///~wilkinson/Publications/outliers.pdf.Yang,Hongyu,Cynthia Rudin,and Margo Seltzer(2017).“Scalable Bayesian Rule Lists.”In:Proceedings of the34th International Conference on Machine Learning(ICML).URL:https:///pdf/1602.08610.pdf.。
初中生英语阅读技巧指南Guide to English Reading Skills for Middle School StudentsAs young learners embark on their journey to master the English language, developing strong reading skills is crucial for their overall language proficiency. In middle school, students are introduced to more complex texts that require higher comprehension abilities. To help them navigate through this important phase, it is essential to equip them with effective English reading strategies. In this article, we will provide a comprehensive guide to English reading skills for middle school students.1. Set a Reading Goal:Before diving into any text, it is essential to set a clear reading goal. The purpose of reading could be to gain information, understand a concept, analyze a story, or simply enhance vocabulary. Discussing the reading goal with the students helps them focus on the specific task at hand and stay engaged throughout the process.2. Preview the Text:Encourage students to develop the habit of previewing the text before reading it in detail. This involves skimming through the title, headings, subheadings, and graphic features such as pictures, tables, and graphs. Previewing allows students to activate their prior knowledge, make predictions about the content, and set expectations for what they are about to read.3. Activate Prior Knowledge:Help students make connections between their existing knowledge and the text they are about to read. This can be done by asking them to brainstorm everything they already know about the topic. Activating prior knowledge not only enhances comprehension but also builds confidence.4. Build Vocabulary:Middle school is a critical period for expanding vocabulary. Encourage students to create a list of unfamiliar words from the text and use context clues, such as surrounding words or sentence structure, to decipher their meanings. Additionally, suggest using online dictionaries or apps to look up unfamiliar words and reinforce their usage and pronunciation.5. Skim and Scan:Teach students the importance of skimming and scanning while reading. Skimming involves quickly glancing through the text to get a general understanding of the main ideas. Scanning, on the other hand, involves searching for specific information by quickly moving the eyes over the text. These skills help students locate relevant information efficiently.6. Highlight and Annotate:Encourage students to become actively engaged readers by highlighting important details and making annotations in the margins of the text. This practice improves concentration and allows for easy reference when reviewing the material later.7. Take Notes:After completing a reading passage, students should be encouraged to summarize the main points in their own words. Taking notes helps solidify understanding, aids in retention, and serves as a valuable resource for future reference.8. Practice Active Reading:Active reading involves interacting with the text by asking questions, making predictions, and drawing conclusions. Encourage students to pause at certain points and reflect on what they have read. This not only enhances comprehension but also develops critical thinking skills.9. Utilize Graphic Organizers:Graphic organizers, such as concept maps or Venn diagrams, can be invaluable tools for visualizing information and organizing thoughts. Encourage students to use these tools while reading to break down complex concepts and identify relationships between ideas.10. Collaborative Reading:Promoting collaborative reading activities fosters discussion, expands perspectives, and encourages active learning. Group discussions can focus on sharing insights, summarizing the text, or debating different interpretations. Collaborative reading also boosts social skills and teamwork.11. Read Widely:Encourage students to explore a variety of genres, including fiction, non-fiction, poetry, and news articles. Diversifying their reading materialsexposes them to different writing styles, expands their knowledge, and improves their overall language skills.12. Set a Reading Schedule:Establish a consistent reading schedule at home and at school. Designate a specific time for independent reading, making it a daily habit. Consistency is key to building reading stamina and developing a love for reading.13. Seek Guidance:Middle school students should be encouraged to seek guidance from teachers, parents, or tutors when encountering challenging texts. Clarifying doubts and discussing difficult concepts promotes deeper understanding and prevents the development of misconceptions.14. Keep a Reading Journal:Encourage students to maintain a reading journal where they can record their impressions, reflections, and reactions to various texts. This practice not only enhances their writing skills but also allows for self-expression and personal growth.15. Emphasize Reading for Pleasure:Above all, it is crucial to foster a love for reading among middle school students. Encourage them to choose books or articles that align with their interests and passions. Reading for pleasure helps students develop a lifelong habit that will enrich their knowledge, broaden their horizons, and instill a love for the English language.In conclusion, acquiring strong English reading skills is vital for middle school students. By implementing these various strategies, students will develop effective reading habits, improve their comprehension abilities, and ultimately become confident readers. Guiding them through this critical phase empowers them to excel in their English language journey and lays a solid foundation for their future academic success.。
xpsdocument 用法`XpsDocument` 是一个类,属于WPF(Windows Presentation Foundation)中的`System.Windows.Xps.Packaging` 命名空间。
它用于处理XPS(XML Paper Specification)文档,XPS 是一种用于电子文档的开放式标准。
下面是`XpsDocument` 的基本用法:创建XpsDocument```csharpusing System.Windows.Xps.Packaging;// 创建XpsDocumentXpsDocument xpsDocument = new XpsDocument("example.xps", FileAccess.ReadWrite);```获取FixedDocumentSequence```csharp// 获取FixedDocumentSequenceFixedDocumentSequence fixedDocumentSequence = xpsDocument.GetFixedDocumentSequence();```添加页面到XpsDocument```csharpusing System.Windows.Documents;// 创建FixedDocumentFixedDocument fixedDocument = new FixedDocument();// 创建FixedPageFixedPage fixedPage = new FixedPage();fixedPage.Width = 96 * 8.5; // 8.5 inchesfixedPage.Height = 96 * 11; // 11 inches// 添加内容到FixedPageTextBlock textBlock = new TextBlock();textBlock.Text = "Hello, XPS Document!";fixedPage.Children.Add(textBlock);// 将FixedPage 添加到FixedDocumentPageContent pageContent = new PageContent();((IAddChild)pageContent).AddChild(fixedPage);fixedDocument.Pages.Add(pageContent);// 将FixedDocument 添加到XpsDocumentXpsDocumentWriter xpsDocumentWriter = XpsDocument.CreateXpsDocumentWriter(xpsDocument);xpsDocumentWriter.Write(fixedDocument);```关闭XpsDocument```csharp// 关闭XpsDocumentxpsDocument.Close();```这只是一个基本的示例,你可以根据需要使用更多的WPF 元素和功能来创建和编辑XPS 文档。
visual studio 扩展自动整理项目文件结构-概述说明以及解释1.引言1.1 概述概述部分的内容可以根据Visual Studio扩展自动整理项目文件结构的背景和目的来进行编写。
以下是一个概述的例子:Visual Studio是一款广泛使用的集成开发环境(IDE),提供了丰富的功能和工具来帮助开发人员快速、高效地开发各种类型的应用程序。
然而,随着项目规模的扩大和代码的增加,项目文件结构可能变得复杂而混乱,给代码的维护和理解带来了困难。
为了解决这个问题,许多开发人员希望能够自动整理项目文件结构,使其更加清晰和有组织。
通过自动整理项目文件结构,开发人员可以更方便地定位和管理各种资源、文件和文件夹,提高代码的可读性和可维护性。
基于这个目标,我们开发了一个Visual Studio扩展,旨在提供一种自动整理项目文件结构的解决方案。
该扩展可以帮助开发人员快速、轻松地优化项目文件结构,将文件和文件夹按照一定的规则和约定进行组织和排列。
它可以通过自动重命名、移动和排序来实现整理,减少了手动整理的工作量和出错的可能性。
通过使用我们的Visual Studio扩展,您可以节省大量时间和精力来维护项目文件结构,专注于代码的开发和调试工作。
本文将介绍该扩展的概念、项目文件结构的重要性,以及自动整理项目文件结构的必要性和实现方法。
希望通过阅读本文,您能够更加深入地了解和掌握如何利用Visual Studio扩展来自动整理项目文件结构。
文章结构是指文章中各个部分的组织方式和相互之间的关系。
一个良好的文章结构能够帮助读者更好地理解文章的内容,并能够清晰地表达作者的观点。
本文将按照以下结构进行展开:1. 引言1.1 概述在这一部分,我们将介绍Visual Studio扩展自动整理项目文件结构的概念和目的。
我们将讨论Visual Studio扩展的定义以及为什么自动整理项目文件结构对于开发人员来说是非常重要的。
1.2 文章结构(即本部分)在本部分中,我们将介绍整篇文章的结构,以帮助读者更好地理解我们要讨论的内容。
MFG124360Exploring Toolpath and Probe Path Definition and Visualization in VR/ARZhihao CuiAutodeskDescriptionVisualizing and defining 3D models on a 2D screen has always been a challenge for CAD and CAM users. Tool paths and probe paths add other levels of complexity to take into consideration, as the user cannot fully appreciate the problem on a 2D viewer. Imagine yourself trying to define a tool axis on a complex shape—it’s very hard to take every single aspect of the shape into account, except by guessing, calculating, and retrying repeatedly. With augmented reality (AR) and virtual reality (VR) technologies, the user gains the ability to inspect and define accurate 3D transformations (position and rotation) for machine tools in a much more natural way. We will demonstrate one potential workflow to address this during the class, which includes how to export relevant models from PowerMill software or PowerInspect projects; how to reconstruct, edit, and optimize models in PowerShape software and 3ds Max software; and eventually how to add simple model interactions and deploy them in AR/VR environments with game engines like Stingray or Unity.SpeakerZhihao is a Software Engineer in Advanced Consulting team within Autodesk. His focus for AR and VR technologies is in manufacturing industry and he wishes to continuously learn and contribute to it.Data PreparationThe first step of the journey to AR or VR is generating the content to be visualized. Toolpath and probe path need to be put into certain context to be meaningful, which could be models for the parts, tools, machines or even the entire factory.PowerMill ExportFigure 1 Typical PowerMill ProjectPartsExporting models of the part is relatively simple.1. Choose the part from the Explorer -> Models -> Right click on part name -> ExportModel…2. Follow the Export Model dialog to choose the name with DMT format1.1DGK file is also supported if additional CAD modification is needed later. See Convert PowerMill part mesh on page 7Figure 2 PowerMill – Export ModelToolTool in PowerMill consists three parts – Tip, Shank and Holder.To export the geometry of the tool, type in the macro commands shown in Figure 3, which would generate STL files2 contains the corresponding parts. Three lines of commands3 are used instead of exporting three in one file (See Figure 11), or one single mesh would be created instead of three which will make the coloring of the tool difficult.EDIT TOOL ; EXPORT_STL TIP "powermill_tool_tip.stl"EDIT TOOL ; EXPORT_STL SHANK "powermill_tool_shank.stl"EDIT TOOL ; EXPORT_STL HOLDER "powermill_tool_holder.stl"Figure 3 PowerMill Macro - Export ToolToolpathToolpath is the key part of the information generated by a CAM software. They are created based on the model of the part and various shapes of the tool for different stages (e.g. roughing, polishing, etc.). Toolpaths are assumed to be fully defined for visualization purposes in this class, and other classes might be useful around toolpath programming, listed on page 15. Since there doesn’t exist a workflow to directly stream data into AR/VR environment, a custom post-processor4 is used to extract minimal information needed to describe a toolpath, i.e. tool tip position, normal direction and feed rate (its format is described in Figure 17).The process is the same way as an NC program being generated for a real machine to operate. Firstly, create an NC program with the given post-processor shown in Figure 4. Then grab and drop the toolpath onto the NC program and write it out to a text file shown in Figure 5.2DDX file format can also be exported if geometry editing is needed later in PowerShape3 The macro is also available in addition al material PowerMill\ExportToolMesh.mac4 The file is in additional material PowerMill\simplepost_free.pmoptzFigure 4 PowerMill Create NC ProgramFigure 5 PowerMill Insert NC ProgramPowerInspect ExportFigure 6 Typical PowerInspect OMV ProjectCADCAD files can be found in the CAD tab of the left navigation panel. The model can be re-processed into a generic mesh format for visualization using PowerShape, which is discussed in Section Convert PowerMill part mesh on page 7.Figure 7 Find CAD file path in PowerInspectProbeDefault probe heads are installed at the following location:C:\Program Files\Autodesk\PowerInspect 2018\file\ProbeDatabaseCatalogueProbes shown in PowerInspect are defined in Catalogue.xml file and their corresponding mesh files are in probeheads folder. These files will be used to assemble the probe mentioned in Section Model PowerInspect probe on page 9.Probe toolAlthough probe tool is defined in PowerInspect, they cannot be exported as CAD geometries to be reused later. In Model PowerInspect probe section on page 9, steps to re-create the probe tool will be introduced in detail based on the stylus definition.Probe pathLike toolpath in PowerMill, probe path can be exported using post processor5 to a generic MSR file format, which contains information of nominal and actual probing points, measuring tolerance, etc.This can be achieved from Run tab -> NC Program, which is shown in Figure 8.Figure 8 Export Probe Path from PowerInspect5 The file is in additional materialPowerInspect\MSR_ResultsGenerator_1.022.pmoptzModelling using PowerShapeConvert PowerMill part meshDMT or DGK files can be converted to mesh in PowerShape to FBX format, which is a more widely adopted format.DMT file contains mesh definition, which can be exported again from PowerShape after color change and mesh decimation if needed (discussed in Section Exporting Mesh in PowerShape on page 10).Figure 9 PowerShape reduce meshDGK file exported from PowerMill / PowerInspect is still parametric CAD model not mesh, which means further editing on the shape is made possible. Theoretically, the shape of the model won’t be changed since the toolpath is calculated based on the original version, but further trimming operations could be carried here to keep minimal model to be rendered on the final device. For example, not all twelve blades of the impeller may be needed to visualize the toolpath defined on one single surface. It’s feasible to remove ten out of the twelve blades and still can verify what’s going on with the toolpath defined. After editing the model, PowerShape can convert the remaining to mesh and export to FBX format as shown below.Figure 10 Export FBX from PowerShapeModel PowerMill toolImport three parts of the tool’s STL files into PowerShape, and change the color of individual meshes to match PowerMill’s color scheme for easier recognition.Figure 11 PowerShape Model vs PowerMill assembly viewBefore exporting, move the assembled tool such that the origin is at the tool tip and oriented z-axis upwards, which saves unnecessary positional changes during AR/VR setup. Then follow Figure 10 to export FBX file from PowerShape to be used in later stages.Model PowerInspect probeTake the example Probe OMP400. OMP400.mtd file6 contains where the mesh of individual components of the probe head are located and their RGB color. For most of the probe heads, DMT mesh files will be located in its subfolder. They can be dragged and dropped into PowerShape in one go to form the correct shape, but all in the same color (left in Figure 14). To achieve similar looking in PowerInspect, it’s better to follow the definition fi le, and import each individual model and color it according to the rgb value one by one (right in Figure 14).<!-- Head --><machine_part NAME="head"><model_list><dmt_file><!-- Comment !--><path FILE="probeheads/OMP400/body.dmt"/><rgb R="192"G="192"B="192"/></dmt_file>Figure 12 Example probe definition MTD fileFigure 13 PowerShape apply custom colorFigure 14 Before and after coloring probe headFor the actual probe stylus, it’s been defined in ProbePartCatalogue.xml file. For theTP20x20x2 probe used in the example, TP20 probe body, TP20_STD module and M2_20x2_SS stylus are used. Construct them one by one in the order of probe body, module and stylus, and each of them contains the definition like the below, which is the TP20 probe body.6C:\Program Files\Autodesk\PowerInspect 2018\file\ProbeDatabaseCatalogue<ProbeBody name="TP20"from_mounting="m8"price="15.25"docking_height="0"to_mounting="AutoMagnetic"length="17.5"><Manufacturer>Renishaw</Manufacturer><Geometry><Cylinder height="14.5"diameter="13.2"offset="0"reference_length="14.5" material="Aluminium"color="#C8C8C8"/><Cylinder height="3.0"diameter="13.2"offset="0"reference_length="3.0" material="Stainless"color="#FAFAFA"/></Geometry></ProbeBody>Figure 15 Example TP20 probe body definitionAlmost all geometries needed are cylinder, cone and sphere to model a probing tool. Start with the first item in the Geometry section, and use the parameters shown in the definition to model each of the geometries with solid in PowerShape and then convert to mesh. To make the result look as close as it shows in PowerInspect, color parameter can also be utilized (Google “color #xxx” to convert the hex color).Figure 16 Model PowerInspect ToolU nlike PowerMill tool, PowerInspect probe’s model origin should be set to the probe center instead of tip, which is defined in the MSR file. But the orientation should still be tuned to be z-axis facing upwards.DiscussionsExporting Mesh in PowerShapeIn PowerShape, there are different ways that a mesh can be generated and exported. Take the impellor used in PowerMill project as an example, the end mesh polycount is 786,528 if it’s been converted from surfaces to solid and then mesh with a tolerance set to 0.01. However, if the model was converted straight from surface to mesh, the polycount is 554,630, where the 30% reduce makes a big impact on the performance of the final AR/VR visualization.Modifying the tolerance could be another choice. For visualization purposes, the visual quality will be the most impactable factor of choosing the tolerance value. If choosing the value is set too high, it may introduce undesired effect that the simulated tool is clipped into the model in certain position. However, setting the tolerance too small will quickly result in a ridiculous big mesh, which will dramatically slow down the end visualization.Choosing the balance of the tolerance here mainly depends on what kind of end devices will the visualization be running on. If it will be a well-equipped desktop PC running VR, going towards a large mesh won’t ne cessarily be a problem. On the other hand, if a mobile phone is chosen for AR, a low polycount mesh will be a better solution, or it can be completely ignored as a placeholder, which is discussed in Section On-machine simulation on page 12.Reading dataSame set of model and paths data can be used in multiple ways on different devices. The easiest way to achieve this is through game engines like Stingray or Unity 3D, which has built-in support for rendering in VR environment like HTC Vive and mobile VR, and AR environment like HoloLens and mobile AR.Most of the setup in the game engine will be the same for varies platform, like models and paths to be displayed. Small proportion will need to be implemented differently for each platform due to different user interaction availability. For example, for AR when using HoloLens, the user will mainly control the application with voice and gesture commands, while on the mobile phones, it will make more sense to offer on-screen controls.For part and tool models, FBX files can be directly imported into the game engines without problem. Unit of the model could be a problem here, where export from PowerShape is usually in millimeter but units in game engines are normally in meters. Unit change in this case could result in a thousand times bigger, which may cause the user seeing nothing when running the application.For toolpath data, three sets of toolpath information are exported from PowerMill with the given post-processor, i.e. tool tip position, tool normal vector and its feed rate. They can be read line by line, and its positions can be used to create toolpath lines. And together with the normal vector and feed rates, an animation of the tool head can be created.Position(x,y,z) Normal(i,j,k) Feed rate33.152,177.726,52.0,0.713,-0.208,0.67,3000.0Figure 17 Example toolpath output from PowerMillFor probe path data, similar concept could be applied with an additional piece of information7–actual measured point, which means not only the nominal probe path can be simulated ahead of time, but also the actual measured result could be visualized with the same setup.7 See page 14 for MSR file specification.STARTG330 N0 A0.0 B0.0 C0.0 X0.0 Y0.0 Z0.0 I0 R0G800 N1 X0 Y0 Z25.0I0 J0 K1 O0 U0.1 L-0.1G801 N1 X0.727 Y0.209 Z27.489 R2.5ENDFigure 18 Example probe path output from PowerInspectUse casesOn-machine simulationWhen running a new NC program with a machine tool, it’s common to see the machine operator tuning down the feed rate and carefully looking through the glass to see what is happening inside the box. After several levels of collision checking in CAM software and machine code simulator, why would they still not have enough confidence to run the program?Figure 19 Toolpath simulation with AR by Hans Kellner @ AutodeskOne potential solution to this problem is using AR on the machine. Since how the fixture is used nowadays is still fairly a manual job constrained by operator’s experience, variations of fixtures make it a very hard process to verify ahead of machining process. Before hitting the start button for the NC program, the operator could start the AR simulation on the machine bed, with fixtures and part held in place. It will become an intuitive task for the operator to check for collisions between part of the virtual tool and the real part and fixtures. Furthermore, a three-second in advance virtual simulation of the tool head can be shown during machining process to significantly increase the confidence and therefore leave the machine always running at full speed, which ultimately increases the process efficiency.Toolpath programming assistanceProgramming a toolpath within a CAM software can sometimes be a long iterative try and error process since the user always imagines how the tool will move with the input parameters. Especially with multi-axis ability, the user will often be asked to provide not only the basic parameters like step over values but also coordinate or direction in 3D for the calculation to start. Determining these 3D values on a screen becomes increasingly difficult when othersurfaces surround the places needed to be machined. Although there are various ways to let the user to navigate to those positions through hiding and sectioning, workarounds are always not ideal and time-consuming. As shown in Figure 20, there’s no easy and intuitive way to analyze the clearance around the tool within a tight space, which is one of the several places to be considering.Figure 20 Different angles of PowerMill simulation for a 5-axis toolpath in a tight spaceTaking the example toolpath in PowerMill, a user will need to recalculate the toolpath after each modification of the tool axis point, to balance between getting enough clearance8and achieving better machining result makes the user and verify the result is getting better or worth. However, this workflow can be changed entirely if the user can intuitively determine the position in VR. The tool can be attached to the surface and freely moved by hand in 3D, which would help to determine the position in one go.Post probing verificationProbing is a common process to follow a milling process on a machine tool, making sure the result of the manufacturing is within desired tolerance. Generating an examination report in PowerInspect is one of the various ways to control the quality. However, what often happens is that if an out of tolerance position is detected, the quality engineer will go between the PC screen and the actual part to determine what is the best treatment process depending on different kind of physical appearance.8 Distance between the tool and the partFigure 21 Overlay probing result on to a physical partOverlaying probing result with AR could dramatically increase the efficiency by avoiding this coming back and forth. Same color coded probed point can be positioned exactly at the place of occurrence, so that the surrounding area can be considered separately. The same technique could also be applied to scanning result, as shown in Figure 22.Figure 22 Overlaying scanning result on HoloLens by Thomas Gale @ AutodeskAppendixReference Autodesk University classesPowerMillMFG12196-L: PowerMILL Hands on - Multi Axis Machining by GORDON MAXWELL MP21049: How to Achieve Brilliant Surface Finishes for CNC Machining by JEFF JAJE MSR File format9G330 Orientation of the probeG800 Nominal valuesG801 Measured valuesN Item numberA Rotation about the X axisB Rotation about the Y axisC Rotation about the Z axisXYZ Translations along the X, Y and Z axes (these are always zero)U Upper toleranceL Lower toleranceO OffsetI and R (in G330) just reader valuesR (in G801) probe radius9 Credit to Stefano Damiano @ Autodesk。
Reading is an essential skill that not only enhances knowledge but also improves cognitive abilities.Here are some effective methods to make your reading experience more fruitful:1.Set a Purpose for Reading:Before you start reading,decide what you want to achieve from the text.Are you reading for pleasure,to learn a new skill,or to gather information for a project?2.Choose the Right Material:Select books or articles that align with your interests and reading level.This will keep you engaged and motivated to read.3.Create a Reading Environment:Find a quiet and comfortable place where you can focus without distractions.Good lighting and a comfortable chair can make a significant difference.4.PreReading Strategies:Skim through the material before diving in.Look at the headings,subheadings,and any summaries or introductions to get an overview of what the text is about.5.Active Reading:Engage with the text by asking questions,making predictions,and visualizing what you read.This helps in better understanding and retention.6.NoteTaking:Jot down important points,new vocabulary,or any thoughts that come to mind as you read.This not only helps in remembering the content but also in reviewing later.7.Vocabulary Building:When you encounter unfamiliar words,look them up and try to use them in sentences.This will expand your vocabulary and improve your language skills.8.Reading Speed:Practice reading faster without sacrificing comprehension.Speed reading techniques can be helpful,but always ensure that you understand what youre reading.9.Critical Thinking:Analyze the authors arguments,the texts structure,and the evidence presented.This will help you develop your critical thinking skills.10.Discussion and Reflection:Discuss what youve read with others or write a reflection on your thoughts and opinions about the material.This can deepen your understanding and appreciation of the text.11.Regular Reading:Make reading a daily habit.The more you read,the better you become at it.Consistency is key to improving your reading skills.e of Technology:Utilize ereaders,apps,and online resources to enhance your reading experience.These tools can offer features like highlighting,notetaking,and even texttospeech options.13.Diversify Your Reading:Read different genres and styles to broaden your perspective and improve your adaptability to various writing styles.14.Review and Summarize:After finishing a chapter or a section,take a moment to review and summarize what youve learned.This helps in reinforcing the information. 15.Apply What Youve Learned:Try to apply the knowledge gained from your reading to reallife situations or other areas of study.This will make the learning more practical and memorable.By incorporating these methods into your reading routine,you can enhance your comprehension,improve your language skills,and enjoy a more enriching reading experience.。
/cgi/content/full/313/5786/504/DC1Supporting Online Material forReducing the Dimensionality of Data with Neural NetworksG. E. Hinton* and R. R. Salakhutdinov*To whom correspondence should be addressed. E-mail: hinton@Published 28 July 2006, Science313, 504 (2006)DOI: 10.1126/science.1127647This PDF file includes:Materials and MethodsFigs. S1 to S5Matlab CodeSupporting Online MaterialDetails of the pretraining:To speed up the pretraining of each RBM,we subdivided all datasets into mini-batches,each containing100data vectors and updated the weights after each mini-batch.For datasets that are not divisible by the size of a minibatch,the remaining data vectors were included in the last minibatch.For all datasets,each hidden layer was pretrained for50passes through the entire training set.The weights were updated after each mini-batch using the averages in Eq.1of the paper with a learning rate of.In addition,times the previous update was added to each weight and times the value of the weight was sub-tracted to penalize large weights.Weights were initialized with small random values sampled from a normal distribution with zero mean and standard deviation of.The Matlab code we used is available at /hinton/MatlabForSciencePaper.htmlDetails of thefine-tuning:For thefine-tuning,we used the method of conjugate gradients on larger minibatches containing1000data vectors.We used Carl Rasmussen’s“minimize”code(1).Three line searches were performed for each mini-batch in each epoch.To determine an adequate number of epochs and to check for overfitting,wefine-tuned each autoencoder on a fraction of the training data and tested its performance on the remainder.We then repeated thefine-tuning on the entire training set.For the synthetic curves and hand-written digits,we used200epochs offine-tuning;for the faces we used20epochs and for the documents we used 50epochs.Slight overfitting was observed for the faces,but there was no overfitting for the other datasets.Overfitting means that towards the end of training,the reconstructions were still improving on the training set but were getting worse on the validation set.We experimented with various values of the learning rate,momentum,and weight-decay parameters and we also tried training the RBM’s for more epochs.We did not observe any significant differences in thefinal results after thefine-tuning.This suggests that the precise weights found by the greedy pretraining do not matter as long as itfinds a good region from which to start thefine-tuning.How the curves were generated:To generate the synthetic curves we constrained the co-ordinate of each point to be at least greater than the coordinate of the previous point.We also constrained all coordinates to lie in the range.The three points define a cubic spline which is“inked”to produce the pixel images shown in Fig.2in the paper.The details of the inking procedure are described in(2)and the matlab code is at(3).Fitting logistic PCA:Tofit logistic PCA we used an autoencoder in which the linear code units were directly connected to both the inputs and the logistic output units,and we minimized the cross-entropy error using the method of conjugate gradients.How pretraining affectsfine-tuning in deep and shallow autoencoders:Figure S1com-pares performance of pretrained and randomly initialized autoencoders on the curves dataset. Figure S2compares the performance of deep and shallow autoencoders that have the same num-ber of parameters.For all these comparisons,the weights were initialized with small random values sampled from a normal distribution with mean zero and standard deviation. Details offinding codes for the MNIST digits:For the MNIST digits,the original pixel intensities were normalized to lie in the interval.They had a preponderance of extreme values and were therefore modeled much better by a logistic than by a Gaussian.The entire training procedure for the MNIST digits was identical to the training procedure for the curves, except that the training set had60,000images of which10,000were used for validation.Figure S3and S4are an alternative way of visualizing the two-dimensional codes produced by PCA and by an autencoder with only two code units.These alternative visualizations show many of the actual digit images.We obtained our results using an autoencoder with1000units in thefirst hidden layer.The fact that this is more than the number of pixels does not cause a problem for the RBM–it does not try to simply copy the pixels as a one-hidden-layer autoencoder would. Subsequent experiments show that if the1000is reduced to500,there is very little change in the performance of the autoencoder.Details offinding codes for the Olivetti face patches:The Olivetti face dataset from which we obtained the face patches contains ten6464images of each of forty different people.We constructed a dataset of165,6002525images by rotating(to),scaling(1.4to1.8), cropping,and subsampling the original400images.The intensities in the cropped images were shifted so that every pixel had zero mean and the entire dataset was then scaled by a single number to make the average pixel variance be.The dataset was then subdivided into124,200 training images,which contained thefirst thirty people,and41,400test images,which contained the remaining ten people.The training set was further split into103,500training and20,700 validation images,containing disjoint sets of25and5people.When pretraining thefirst layer of2000binary features,each real-valued pixel intensity was modeled by a Gaussian distribution with unit variance.Pretraining thisfirst layer of features required a much smaller learning rate to avoid oscillations.The learning rate was set to0.001and pretraining proceeded for200epochs. We used more feature detectors than pixels because a real-valued pixel intensity contains more information than a binary feature activation.Pretraining of the higher layers was carried out as for all other datasets.The ability of the autoencoder to reconstruct more of the perceptually significant,high-frequency details of faces is not fully reflected in the squared pixel error.This is an example of the well-known inadequacy of squared pixel error for assessing perceptual similarity.Details offinding codes for the Reuters documents:The804,414newswire stories in the Reuters Corpus V olume II have been manually categorized into103topics.The corpus covers four major groups:corporate/industrial,economics,government/social,and markets.The labels were not used during either the pretraining or thefine-tuning.The data was randomly split into 402,207training and402,207test stories,and the training set was further randomly split into 302,207training and100,000validation mon stopwords were removed from the documents and the remaining words were stemmed by removing common endings.During the pretraining,the confabulated activities of the visible units were computed using a“softmax”which is the generalization of a logistic to more than2alternatives:the results using the best value of.We also checked that K was large enough for the whole dataset to form one connected component(for K=5,there was a disconnected component of21 documents).During the test phase,for each query document,we identify the nearest count vectors from the training set and compute the best weights for reconstructing the count vector from its neighbors.We then use the same weights to generate the low-dimensional code for from the low-dimensional codes of its high-dimensional nearest neighbors(7).LLE code is available at(8).For2-dimensional codes,LLE()performs better than LSA but worse than our autoencoder.For higher dimensional codes,the performance of LLE()is very similar to the performance of LSA(see Fig.S5)and much worse than the autoencoder.We also tried normalizing the squared lengths of the document count vectors before applying LLE but this did not help.Using the pretraining andfine-tuning for digit classification:To show that the same pre-training procedure can improve generalization on a classification task,we used the“permuta-tion invariant”version of the MNIST digit recognition task.Before being given to the learning program,all images undergo the same random permutation of the pixels.This prevents the learning program from using prior information about geometry such as affine transformations of the images or local receptivefields with shared weights(9).On the permutation invariant task,Support Vector Machines achieve1.4%(10).The best published result for a randomly initialized neural net trained with backpropagation is1.6%for a784-800-10network(11).Pre-training reduces overfitting and makes learning faster,so it makes it possible to use a much larger784-500-500-2000-10neural network that achieves1.2%.We pretrained a784-500-500-2000net for100epochs on all60,000training cases in the just same way as the autoencoders were pretrained,but with2000logistic units in the top layer.The pretraining did not use any information about the class labels.We then connected ten“softmaxed”output units to the top layer andfine-tuned the whole network using simple gradient descent in the cross-entropy error with a very gentle learning rate to avoid unduly perturbing the weights found by the pretraining.For all but the last layer,the learning rate was for the weights and for the biases.To speed learning,times the previous weight increment was added to each weight update.For the biases and weights of the10output units, there was no danger of destroying information from the pretraining,so their learning rates were five times larger and they also had a penalty which was times their squared magnitude. After77epochs offine-tuning,the average cross-entropy error on the training data fell below a pre-specified threshold value and thefine-tuning was stopped.The test error at that point was %.The threshold value was determined by performing the pretraining andfine-tuning on only50,000training cases and using the remaining10,000training cases as a validation set to determine the training cross-entropy error that gave the fewest classification errors on the validation set.We have alsofine-tuned the whole network using using the method of conjugate gradients (1)on minibatches containing1000data vectors.Three line searches were performed for eachmini-batch in each epoch.After48epochs offine-tuning,the test error was%.The stopping criterion forfine-tuning was determined in the same way as described above.The Matlab code for training such a classifier is available at/hinton/MatlabForSciencePaper.htmlSupporting textHow the energies of images determine their probabilities:The probability that the model assigns to a visible vector,isSupportingfiguresFig.S1:The average squared reconstruction error per test image duringfine-tuning on the curves training data.Left panel:The deep784-400-200-100-50-25-6autoencoder makes rapid progress after pretraining but no progress without pretraining.Right panel:A shallow784-532-6autoencoder can learn without pretraining but pretraining makes thefine-tuning much faster,and the pretraining takes less time than10iterations offine-tuning.Fig.S2:The average squared reconstruction error per image on the test dataset is shown during the fine-tuning on the curves dataset.A784-100-50-25-6autoencoder performs slightly better than a shal-lower784-108-6autoencoder that has about the same number of parameters.Both autoencoders were pretrained.Fig.S3:An alternative visualization of the2-D codes produced by taking thefirst two principal compo-nents of all60,000training images.5,000images of digits(500per class)are sampled in random order.Each image is displayed if it does not overlap any of the images that have already been displayed.Fig.S4:An alternative visualization of the2-D codes produced by a784-1000-500-250-2autoencoder trained on all60,000training images.5,000images of digits(500per class)are sampled in random order.Each image is displayed if it does not overlap any of the images that have already been displayed.A c c u r a c y Fig.S5:Accuracy curves when a query document from the test set is used to retrieve other test set documents,averaged over all 7,531possible queries.References and Notes1.For the conjugate gradient fine-tuning,we used Carl Rasmussen’s “minimize”code avail-able at http://www.kyb.tuebingen.mpg.de/bs/people/carl/code/minimize/.2.G.Hinton,V .Nair,Advances in Neural Information Processing Systems (MIT Press,Cam-bridge,MA,2006).3.Matlab code for generatingthe images of curves is available at/hinton.4.G.E.Hinton,Neural Computation 14,1711(2002).5.S.T.Roweis,L.K.Saul,Science 290,2323(2000).6.The 20newsgroups dataset (called 20news-bydate.tar.gz)is available at/jrennie/20Newsgroups.7.L.K.Saul,S.T.Roweis,Journal of Machine Learning Research 4,119(2003).8.Matlab code for LLE is available at /roweis/lle/index.html.9.Y .Lecun,L.Bottou,Y .Bengio,P.Haffner,Proceedings of the IEEE 86,2278(1998).10.D.V .Decoste,B.V .Schoelkopf,Machine Learning 46,161(2002).11.P.Y .Simard,D.Steinkraus,J.C.Platt,Proceedings of Seventh International Conferenceon Document Analysis and Recognition (2003),pp.958–963.。
Eurographics/IEEE-VGTC Symposium on Visualization2009H.-C.Hege,I.Hotz,and T.Munzner(Guest Editors)Volume28(2009),Number3DocuBurst:Visualizing Document Contentusing Language StructureChristopher Collins1,Sheelagh Carpendale2,and Gerald Penn11University of Toronto,Toronto,Canada;2University of Calgary,Calgary,CanadaAbstractTextual data is at the forefront of information management problems today.One response has been the developmentof visualizations of text data.These visualizations,commonly based on simple attributes such as relative wordfrequency,have become increasingly popular tools.We extend this direction,presenting thefirst visualization ofdocument content which combines word frequency with the human-created structure in lexical databases to createa visualization that also reflects semantic content.DocuBurst is a radial,space-filling layout of hyponymy(theIS-A relation),overlaid with occurrence counts of words in a document of interest to provide visual summariesat varying levels of granularity.Interactive document analysis is supported with geometric and semantic zoom,selectable focus on individual words,and linked access to source text.Categories and Subject Descriptors(according to ACM CCS):Document And Text Processing[I.7.1]:Document andText Editing—Document Management;Computer Graphics[I.3.6]:Methodology and Techniques—InteractionTechniques;Information Storage and Retrieval[H.3.7]:Digital Libraries—User Issues1.Introduction‘What is this document about?’is a common question when navigating large document databases.In a physical library, visitors can browse shelves of books related to their inter-est,casually opening those with relevant titles,thumbing through tables of contents,glancing at some pages,and de-ciding whether this volume deserves further attention.In a digital library(or catalogue search of a traditional library) we gain the ability to coalesce documents which may be lo-cated in several areas of a physical library into a single list-ing of potentially interesting documents.However,the ex-perience is generally quite sterile:people are presented with lists of titles,authors,and perhaps images of book covers.In feature-rich interfaces,page previews and tables of contents may be browsable.If the library contents are e-books,users may even open the entire text,but will have to page through the text slowly,as interfaces are often designed to present a page or two at a time(to dissuade copying).Our goal in this work is to bring some of the visceral exploratory expe-rience to digital libraries,to provide interactive summaries of texts which are comparative at a glance,can serve as de-cision support when selecting texts of interest,and provide entry points to explore specific passages.Prompted by the ever increasing volume and open access to digital text,developing overviews of document content has been an active research area in information visualiza-tion for many years.However,reported works do not make use of existing richly studied linguistic structures,relyinginstead on simple statistical properties of documents(e.g., [AC07]),or analytic methods such as latent semantic analy-sis(e.g.,[DFJGR05]),which can produce unintuitive word associations.The resulting visualizations provide detail on content without a consistent view that can be compared across documents.In DocuBurst,we provide a complement to these works:a visualization of document content based on the human-annotated IS-A noun and verb hierarchies of WordNet[Fel98]which can provide both uniquely-and consistently-shaped glyph representations of documents,de-signed for cross-document comparison(see Figure1).2.Related Work2.1.Document Content VisualizationVisualizations of document content take two common forms: synoptic visualizations for quick overviews and visualiza-tions specialized for discovering patterns within and be-tween documents.Specialization in the type of documentc 2009The Author(s)Journal compilation c 2009The Eurographics Association and Blackwell Publishing Ltd. Published by Blackwell Publishing,9600Garsington Road,Oxford OX42DQ,UK and 350Main Street,Malden,MA02148,USA.Collins et al./DocuBurstFigure1:DocuBurst of a science textbook rooted at{idea}.A search query for words starting with‘pl’has been per-formed.Nodes matching the query are highlighted in gold. used as input further divides the reported research:books and long documents,historical documents,multilingual texts,and computer-mediated communication archives such as emails,instant messages,and threaded discussions.In this space,DocuBurst focuses on long texts,such as books, and provides a visualization that is simultaneously synoptic, comparative,and allows for deeper intra-document analysis of occurrence patterns.In the remainder of this section we will review significant examples in each of these categories, describing how their feature sets compare.Synoptic visualizations of text most often use a selected subset of the language to create a glyph based on word oc-currence counts.Glyphs are then combined in small mul-tiples visualizations to perform comparisons.Glyph tech-niques include Starstruck[HWMT98],which creates glyphs by arranging lines of varying length in a circular pattern, and Gist Icons[DFJGR05],which builds on this idea by drawing a smoothed contour around this pattern.The vo-cabularies used are either restricted user-selected term sets (Starstruck)or automatically selected and potentially unre-lated(Gist Icons).Subtle shape perturbations can be hard to compare in side by side radial glyphs.Other synoptic visu-alizations of document content use space-filling techniques to provide an overview of the vocabulary a single document, such as TextArc[Pal02]and tag clouds(e.g.,[Fei08]).These techniques provide a quick overview of document content.A second category of document visualizations are those created to reveal patterns within texts.FeatureLens [DZG∗07]suggests repeated phrases that may be of inter-Figure2:Comparison of features available(Y),possible with a trivial extension(P),or not possible(N)in document visualizations.*denotes cases that only visualize a selected subset of words;+denotes a coordinated visualization. est,and visualizes selections,while Arc Diagrams[Wat02] provide an overview of repetition throughout a document. DocuBurst also provides views of the distribution of selected words.Other pattern-based visualizations focus on distribu-tions of significant features in a document such as emotion (e.g.,extensions[OBK∗08]of TileBars[Hea95]),or hand-annotated properties(e.g.,Compus[FD00]).The Word Tree [WV08]is an example of a pattern-based visualization fo-cused on repetition in context.While Word Trees provide a unique view on repetition,overall word frequencies and full document overviews are not visible.To compare document visualizations,we order a list of the types of features document visualizations have provided from most unique to DocuBurst to the most common in other visualizations:semantic indicate word meaningcluster generalize by clustering words into concepts overview provide quick overviews of an entire textzoom support varying the semantic or graphical detail freq reveal frequency of individual wordscompare compare multiple documentssearch search for specific words/phrasesread drill-down to original textpattern reveal patterns within or between texts features reveal extracted features(e.g.,emotion) suggest suggest interesting focus words/phrases phrases can show multi-word phrasesall words can show all parts of speechFigure2summarizes how these features relate to DocuBurst and other well known text visualizations.Note that only DocuBurst provides some reflection of seman-tics through integrated word definitions and the use of a semantically-defined linguistic structure.Only DocuBurst and Gist Icons provide word clustering into higher concepts, however in Gist Icons the groups are only one level deepc 2009The Author(s) Journal compilation c 2009The Eurographics Association and Blackwell Publishing Ltd.1040Collins et al./DocuBurstand based on statistical measures whose meaning may not be readily apparent to a reader.Note that all visualizations that provide overviews of entire text suffer from screen real estate issues with large texts.2.2.Graph DrawingRadial graph-drawing techniques have been previously re-ported and serve as the basis of this work.Of particular in-terest are the semi-circular radial space-filling(RSF)hier-archies of Information Slices[AH98]and the focus+con-text interaction techniques of the fully circular Starburst vi-sualization[SZ00].The InterRing[YWR02]visualization expands on the interaction techniques for RSF trees,sup-porting brushing and interactive radial distortion.TreeJux-taposer[MGT∗03]illustrates methods for interacting with very large trees,where nodes may be assigned very few pix-els.We adapt techniques such as tracing the path from a node of interest to the root and performing interactive accordion expansion from this work.3.Background on WordNetDespite the growing dependence on statistical methods, many Natural Language Processing(NLP)techniques still rely heavily on human-constructed lexical resources such as WordNet[Fel98].WordNet is a lexical database composed of words,collocations,synsets,glosses,and edges.Words are literally words as in common usage.A collocation is a set of words such as“information visualization”which are frequently collocated and can be considered a unit with a particular definition.For the purposes of this paper,we will use words to refer to both words and collocations—they are treated equally in the visualization.Sets of synonymous words and collocations are called synsets.Glosses are short definitions that the words in a synset share,thus they are definitions of synsets.An edge in WordNet represents a con-nection between synsets.Synsets are the most important data unit in WordNet. Throughout this paper,we will refer to words in single quotes(e.g‘thought’),and synsets using a bracketed set notation(e.g.{thought,idea}).A word may be a member of multiple synsets,one for each sense of that word.Word senses are ranked,either by order of familiarity(a subjec-tive judgement by the lexicographer)or,in some cases,by using a synset-tagged reference corpus to provide numerical relative frequencies.Synsets in WordNet are connected by many types of edges,depending on the part of speech(noun,verb,etc.). WordNet contains28different types of relations,but the most widely used part of WordNet is the hyponymy(IS-A) partial order.An example of hyponymy is{lawyer,attorney} IS-A{professional,professional person}.When traversing this graph,we remove any cycles(they are very rare)by taking a depth-first spanning tree at the user-selected root. In this work we focus on the noun hyponymy relationships in English WordNet(v2.1),rooted under the synset{entity} having73,736nodes(synsets)and75,110edges,and a max-imum depth of14.Verb hyponymy is also supported—that hierarchy is smaller and takes a more shallow,bushier form. In addition,there is no single“root”verb.The visualizations produced can be generalized to any partial order of a lexicon.3.1.WordNet VisualizationMany interfaces for WordNet exist,the most popular of which is the text-based WordNet Search which is part of the publicly available WordNet package.With the excep-tion of the work of Kamps[KM02],the existing interfaces for WordNet either provide for drill-down textual or graph-ical interaction with the data starting at a single synset of interest or provide path-tracing between two synsets e.g., [Alc04,Thi05].We do not know of any visualization of WordNet that uses the graph structure to enhance a visual-ization of other data such as document content.4.DocuBurst VisualizationThe combined structure of WordNet hyponymy and docu-ment lexical content is visualized using a radial space-filling tree layout implemented with prefuse[HCL05].Traversing the tree from center to periphery follows a semantic path of increasing specificity using the IS-A relation.In WordNet, synset members are ordered according to their polysemy count,which WordNet researchers call familiarity.Since more familiar words comefirst,we chose thefirst word in a synset as the node bel fonts are maximized,ro-tated tofit within the node,and overlap is minimized.4.1.Linguistic Processing and ScoringIn order to populate a hyponymy hierarchy with word counts,several pre-processing steps are necessary.Starting with raw text,we subdivide the text into tiles based on the pre-existing structure,such as section headings.If no structure is detectable,we break the text into roughly co-herent topic segments using a segmenter[Cho00].For each tile,we label parts of speech(NOUN,VERB,etc.)[Bri93]. Nouns and verbs are then extracted and stemmed(e.g.,books →book,going→go)using a morphological processor [Did03].Punctuation is omitted.If short word sequences, noted in WordNet,are found in the document,the words are combined into a collocation,and treated as a single word. Next we look up in which WordNet synsets the(word, part-of-speech)pairs occur.Because pairs usually occur in multiple synsets,we do not perform word sense disambigua-tion.Instead,we divide the word count amongst the available synsets.If WordNet supplies relative sense frequency infor-mation for a word,we use this to distribute the count.Oth-erwise,we distribute the count weighted linearly by sense rank.This results in weighted occurrence counts that are notc 2009The Author(s)Journal compilation c 2009The Eurographics Association and Blackwell Publishing Ltd.1041Collins et al./DocuBurst(a)Node fill transparency proportional to number of occurrences of words in subtree (cumulative view).Node size based on leafcount.(b)Node fill transparency proportional to number of occurrences of words in a single synset (single node view).Node size based on leafcount.(c)Single node view,node size pro-portional to occurrence count total for subtree rooted at that node.Figure 3:DocuBurst of a science textbook rooted at ‘thought’;node hue distinguishes the synsets containing ‘thought’.integers,but the overall results more accurately reflect doc-ument content.By dividing the counts,we dilute the contri-bution of highly ambiguous terms.The full text of tiles and their associated (word,part-of-speech,count )triples are then read into the data structure of the visualization.4.2.Visual Encoding Node SizeWithin the radial tree,angular width can be proportional to the number of leaves in the subtree rooted at that node (leaf count )or proportional to the sum of word counts for synsets in the subtree rooted at that node (occurrence count ).The leaf count view is dependent on WordNet and so is consistent across documents.The word count view maximizes screen space for synsets whose words actually occur in the docu-ment of interest,thus the shape,as well as node colouring,will differ across documents.Depth in the hyponymy tree determines on which concentric ring a node appears.The width of each annulus is maximized to allow for all visible graph elements to fit within the display space.Node ColourIt is possible to look at multiple senses of a word in one view.Views rooted at a single word contain a uniquely coloured subtree for each synset (sense)containing that word.In con-trast,trees rooted at a single synset use a single hue.Since luminance variation in the green region of the spectrum is the most readily perceived,it is the first colour choice [Sto03,30].Gray is used for nodes with zero occurrence counts,since their presence provides a visual reminder of what words are not used.Transparency is used to visualize relative word or synsetcount.Similar to the concept of value,transparency pro-vides a range of light to dark colour gradations,thus of-fering ordered [Ber83]and pre-attentive [War04]visuals.Highly opaque nodes have many occurrences;almost trans-parent nodes have few occurrences.Word senses that are more prominent in the document stand out against the more transparent context.Two ways to visualize word occurrence are provided:single-node and cumulative.In the single-node visualization,only synset nodes whose word members occur in the docu-ment are coloured.In the cumulative view,counts are propa-gated up to the root of the tree.In both views,transparency is normalized so maximum counts achieve full opacity.When multiple documents are visualized,the cross-document max-imum is used to set the scale.These modes support a grad-ual refinement of focus.The cumulative,or subtree,view uses the association of words into synsets and synsets into a hyponymy tree to aggregate counts for related concepts.Similar to the TreeJuxtaposer techniques for visualizing dif-ferences embedded deep in a large tree [MGT ∗03],by high-lighting the entire subtree containing the node,salient small nodes can be more easily located,even if hidden from view by a filter.The single-node view reveals precise concepts in the document and supports the selection of synsets whose word members appear in the document being analyzed.In addition,for a fully expanded graph,the single node view may highlight nodes that are otherwise too small to notice.The subtree and cumulative views are compared in Figure 3.While transparency is an effective visual method for dis-tinguishing large differences and trends,it is impossible to read exact data values using it.To facilitate the exact read-ing of synset occurrence counts for the selected text tiles,we provide a dynamic legend (see Figure 4).c2009The Author(s)Journal compilation c2009The Eurographics Association and Blackwell Publishing Ltd.1042Collins et al./DocuBurst(a)(b)(c)Figure4:DocuBurst of a general science textbook rooted at{animal}.Single-node colouring and occurrence count sizing were used with zero-occurrence synsets hidden.Mouse hover point is revealed by blue trace-to-root colouring.(a)Synset{cattle, cows,kine,oxen}highlighted.(b)Synset{world,human race,humanity,mankind,man,...}highlighted.(c)Detail of thedynamic legend,showing,from top to bottom,no selection,selection from(a),and(b).Figure5:DocuBurst of a general science textbook rooted at{energy}.At right,mouse wheel interaction was used to shrink the angular width of the subtree rooted at{radiation} and expand the subtree under{electricity}exposing the pre-viously illegible node{signal}.5.InteractionA root node can be a word,in which case its immediate chil-dren are the synsets containing that word.Alternatively the visualization can be rooted at a synset.Root nodes in the vi-sualization are selectable by searching for either a word or synset of interest.Once a root is chosen,the visualization is populated with all its hyponyms.As there are more than70,000English noun synsets in WordNet,techniques to abstract andfilter the data are im-portant.First,we provide a highlight search function which visually highlights nodes whose label matches any of the given search terms.Highlight nodes have a gold background and border,and a darker font colour,drawing attention to even the smallest of search results.The transparency of the highlight(gold)background is attenuated to the word occur-rence counts so as to not disrupt this data-carrying value and to provide for stronger pop-out of search results with high occurrence counts.Second,we implement a generalizedfisheye view[Fur86] that collapses all subtrees which are more than a user-specified distance from the central root node.Changing this distance-basedfilter allows for a semantic zoom,creating vi-sual summaries of varying specificity.The presence of non-zero word occurrence counts within collapsed subtrees is in-dicated by using the cumulative colouring,in which counts are propagated to the root.Optionally,all highlight nodes can be exempted from the distancefilter(by increasing their a priori importance in the DOI function),effectively ab-stracting the graph to all synsets within a given distance from the root or highlight nodes(see Figure1).Double clicking on a node of interest restricts the visual-ization to the hyponyms of the node’s synset;double right-clicking reverses this action by reloading the graph at the parent of the clicked node,thus providing bi-directional data navigation through the hyponymy relation.To create more space for the details of the children of a given synset,the angular width of a node and its subtree can be manually in-creased using the mouse wheel.This increase provides a ra-dial detail-in-context view which causes the node’s siblings to be correspondingly compressed.Changes to a node’s an-gular width affect its children equally and its siblings in an inverse manner(see Figure5).The visualization can be based on selected subsections of the document.The initial view is based on all text tiles in the document,but a selection can limit the tiles from which counts are drawn.Unrestricted visual pan and geo-metric zoom of the display space are also supported,as well as a zoom-to-fit control to reset the pan and zoom to a best-fit for the currently visible tree.Rendering is dependent on the zoom factor:node borders are not rendered when the nodes are very small,and labels are not rendered when they would not be legible.All highlighting,navigation,and emphasis in-teractions are provided in real time.c 2009The Author(s)Journal compilation c 2009The Eurographics Association and Blackwell Publishing Ltd.1043Collins et al./DocuBurst(a)Linked visualizations fordetails-on-demand.(b)The details window showing the concordance lines for the selected synset.Figure 6:A search for ‘electricity’reveals synsets containing that word (gold).On selecting a node,the distribution of the word is revealed in the tile browser.Selecting a tile reveals the text with occurrences of the selected synset highlighted.6.Drill DownThe full text can be read through accessing the text tiles at the bottom of the interface.To navigate the text,we use a linked visualization:the text tile browser.Rectangles repre-senting the text tiles appears in a linear,vertical array to the right of the DocuBurst.A fisheye distortion [Bed00]facil-itates navigation and selection of text tiles within this list.Clicking any tile brings it into view.Furthermore,this vi-sualization can be used to see occurrence patterns in the document.By clicking nodes in the DocuBurst visualiza-tion,synsets and entire subtrees can be selected.Text tiles in which selected synsets appear show as varying intensity of orange in the text tile browser,depending on number of oc-currences in the tile.Occurrences of those synsets and words are also highlighted in the full text window.Concordance lines are a standard linguistic analysis toolin which all occurrences of a word of interest are extracted and displayed with their left and right N (usually 5)context words.Concordance lines for selections are extracted and shown in the concordance window.Patterns of orange in the tile browser can indicate how localized concepts are in the document.For example,in Figure 6,we see that {electricity }appears more frequently toward the end of the document.We can use the tile browser and full text window to quickly find occurrences of the terms of interest in context.By clicking the text tile rectangles in the tile browser,we find,in the tile detail window,that there is a chapter on ‘electricity’at the end of the book.7.Example:Document ComparisonDocuBurst can be used to compare multiple documents.Trees rooted at the same synset but coloured based on differ-c2009The Author(s)Journal compilation c2009The Eurographics Association and Blackwell Publishing Ltd.1044Collins et al./DocuBurst(a)First2008debate(b)Third2008debateFigure7:DocuBursts rooted at{skill worker}reveal the traditional US focus on military officers and veterans was eclipsed in the third US Presidential debate by discussions of plumbers.ent texts will reveal relative frequency differences between them.While the other examples in this paper were visualiza-tion of a high school general science text book,we also can apply the technique to other forms of electronic text.In Fig-ure7we applied DocuBurst to the transcripts of two2008 US presidential debates.Note that to ensure comparability when viewing multiple documents,colour scaling is based on the maximum count for visible nodes across all docu-ments.A high level view of the debates rooted at{person}re-vealed strong colour for the{leader}and{serviceman,mil-itary personnel,military man}subtrees.Drill down revealed {senator}is a descendant of{leader}(both participants were senators).Attention to military issues and veterans is also expected given current conflicts.Examining the third debate showed an additional region of colour under the {craftsman}subtree.Further investigation,by switching to the occurrence count size function,revealed a dramatic shift in concentration within the{skilled worker}-itary people became relatively less important compared to craftspeople—specifically,plumbers.This is the effect of Senator McCain’s focus on“Joe the Plumber”in the third debate,and was the genesis point of this phrase which dom-inated the remainder of the campaign.8.Challenges and Future WorkReflecting on this work has suggested several interesting op-portunities for future research in both the data and visual-ization realms.From a data perspective,the original goal of viewing what parts of an entire language are included in a document merits further research.As with all text visual-izations,it is necessary to view a subset of language due to limited display space and computational resources with ex-tremely large data.Views rooted at{entity}and covering all English nouns appear cluttered and interaction is slow.It is commonly held that WordNet sense-divisions are toofine-grained for many computational applications;investigation into other ways to abstract WordNet may help alleviate this problem.Additionally the use of uneven tree cut models to abstract the DocuBurst in a dynamic way may clarify the view.For example,if the subtree under a node has only one leaf with a non-zero count,we may omit that subtree. Finding a place to begin exploration is a challenge with the current implementation.Providing hints for which synsets may be of interest as visualization roots for a partic-ular document or set of documents may assist an analyst to find views of interest.Methods which may be useful include suggesting synsets with a high fraction of non-zero leaves below them,or when the cumulative count divided by the number of leaves is high,indicating an area of unusual con-centration.Word sense disambiguation is an area of active research in computational linguistics that could benefit DocuBurst. Currently,an occurrence of a word is divided among all synsets in which it appears.Thus‘river bank’will augment the count for{bank,savings bank,depositoryfinancial in-stitution}.Incorporating word sense disambiguation into the preprocessing step would greatly enhance the value of the visualization.For example,in the general science textbook used for the examples in this paper,‘man’occurs quite often in the sense of‘people’(“man invented the wheel”).How-ever,these occurrences are also counted towards the biolog-ical{hominid}sense of‘man’,resulting in the incorrectly strong appearance of the{primate}subtree.Additionally, we currently use word occurrence count as the only avail-able word scoring function.Other scoring functions,such as the Dunning Log-likelihood ratio[Dun93],could be used to highlight important or unusual words in a document.Other text features,such as hapax legomena(words which occur only once)could be used with the WordNet-based layout to provide special-purpose summaries of content.Visually,the use of transparency to indicate word occur-rence is useful for the intuitive mapping between data and vi-sual appearance.However,it also introduces the possibility of misleading illusions.For instance,siblings in DocuBurst are unordered;furthermore,non-sibling nodes may be adja-cent.By chance,unrelated nodes that both have high occur-rence counts can appear as a large swath of strong colour. Gestalt perception may lead viewers to impart significance to this coincidence.Stronger node borders would distinguish these regions,but node borders become obstructive on small nodes.Finding an experimentally validated solution to this design trade-off could impact space-filling visualizations in general.9.ConclusionDocuBurst provides an overview visualization of document content which is based on a human-centered view of lan-guage whereas previous works were based on far simpler, derivative statistical analyses.The visual design is grounded in established research on human abilities in colour percep-tion.Semantic and geometric zooming,filtering,search,andc 2009The Author(s)Journal compilation c 2009The Eurographics Association and Blackwell Publishing Ltd.1045。